[教學] 關於real檔的壓縮
下面的教學參看一些網路資料還有自己分析歸納整理來的
***不一定正確 僅供參考*** 可以把本篇當成是一篇心得筆記
有任何建議或是修正 網友也隨時可以補充
real這種格式比較封閉拉,網路上相關詳細的技術背景介紹也比較少,
有的通常是一些壓片大組的參數配置討論,滿奇怪的東西,有它自己一套.
目前普遍看到的三種壓縮是real8.real9.real10
real8是比較舊式的real video code,只支援cbr模式,壓出來就是早期的rm檔,
雖然也可以命名為rmvb,壓片配置上也可以設置vbr,不過壓出來還是cbr的東西.
real9支援vbr壓片模式,也就是後來的rmvb,要使用real9得配置vbr才能得到效益.
real10跟real9幾乎沒多大差異,差別在於說EHQ模式下,real9的high所花的時間
幾乎等同於real10的low,因此網路上才有人說real10畫質跟real9差不多,但是壓片
時間卻長了很多(這是官方文件寫的),至於real10跟real9若是EHQ同開high的話,
在盡可能相同的配置下,壓出來的畫面real10或許有些微進步,不過時間花費更久更久
是肯定的(不太合效益比),然後要用real10的話建議搭配real10的audio code,
不然跟real9是幾乎沒差的.
(real8也有提供real audio code,real9沒有,因此壓出來的real9 rmvb是套用
real8的audio code的,到real10又有自己的一套audio code,我想這才是real9
跟real10比較大的差異)
也會在網路上看到所謂real11的東西,real11的話似乎指的是一個系統,不是確切的
real code (real這種東西真的很怪,有時候一些詞彙不同狀況下有不同的用意,很亂)
接著談到real的壓片軟體,目前real的壓片軟體有兩種走向,利用官方的壓片軟體
指令模式工具為核心,再不然就是直接存取real的核心(我猜是直接存取 *.dll
動態連結檔的意思),然後官方又有提供它們自己的一套,官方的軟體分成免付費
的basic版跟付費的plus版,差別是在於plus版會把一些配置的功能鎖住,軟體本身差異
不是非常大,然後老實說官方的軟體介面還滿不手的就是了.
基本上上面那些軟體都是擁有GUI介面的,你自己也可以把指令模式的工具和相關檔案
抽取出來,我自己抽取Helix Producer Basic轉檔的最基本相關檔案,壓縮起來1mb
左右,很輕巧(當然是刪除了一些不必要的codec.plugin.tool等等).
GUI介面的配置,網路上教學很多,就不談了.
談一下指令模式的東西.
REAL相當奇怪,能夠配置的的東西相當少 (屬於encoder本身的部份少,但是相關的
filter plugin配置還不少),而且是採取配置檔讀取的方式 (rpad)
類似下面這樣
producer.exe -i "in.avs" -o "out.rmvb" -dt -ad "setup.rpad"
^^^^^^ ^^^^^^^^ ^^ ^^^^^^^^^^^
支援avs 轉出檔名 1-pass 設定配置檔
最重大的配置設定寫在setup.rpad,此外直接寫指令數行比較重要的大概只剩下
1.轉什麼檔
2.轉出什麼檔
3.是否2-pass
設定配置可以參考官方的一些預先寫好的設置檔來改就好了,需要改.能改的項目真的不多
,大部份照預設就好.
開一個我已經寫好了的範例rpad檔說明
下面是部份的重要內容
<avgBitrate type="uint">375000</avgBitrate>
<maxBitrate type="uint">3000000</maxBitrate>
<streams>
<videoStream>
<pluginName type="string">rn-videocodec-realvideo</pluginName>
<codecName type="string">rv9</codecName>
<encodingType type="string">vbrBitrate</encodingType>
<quality type="uint">70</quality>
<maxStartupLatency type="double">4</maxStartupLatency>
<maxFrameRate type="double">29.97</maxFrameRate>
<maxKeyFrameInterval type="double">10</maxKeyFrameInterval>
<enableLossProtection type="bool">false</enableLossProtection>
</videoStream>
<encodingType type="string">vbrBitrate</encodingType>
這邊可以替換成 cbrBitrate vbrQuality 加起來共三種模式
cbrBitrate模式下影響轉出來的只有avgBitrate(直接把avgBitrate當固定碼率去了)
vbrBitrate則avgBitrate與maxBitrate都有影響
vbrQuality則只受限於maxBitrate與quality type
Bitrate的單位以bps(不是一般慣用的kbps,因此請自動加上三個零)
rmvb要壓最難在決定於avgBitrate與maxBitrate的參數(考慮到fps.和解析度後),
這種最佳參數的配置在對岸的壓片大組中有時候是有點保密的.
如果沒什麼概念,也建議可以用vbrQuality模式,基本上quality 60還是相當OK的,
maxBitrate要依照畫面大小決定,原則是配置高一點比較好,最少3000起跳
(設定時要寫3000000),壓出來檔案也滿小.畫質也OKOK,缺點是檔案大小難掌控.
vbrBitrate要壓一定要用2-PASS,如果是vbrQuality 1-PASS就夠了,轉檔的時候
可以多加 -dt 強制 1-pass.其他配置就按照預設就可以了,然後fps自己看你轉的影片
fps調整.
附帶一提的是,強烈建議使用real9,real10很怪,不知道是我自己的問題還是怎樣,
壓出來會lag....(碼率設高一點比較流暢.偏低的話畫面會自動自己丟掉,超奇怪的).
然後最後特別聲明的是,rmvb本身以壓縮比為導向,適合把檔案壓小一點網路分享用,
或是硬碟空間不夠,還要塞一堆影集放著,但是並不是很在乎畫質本身,過得去就好了,
如果你的需求是這樣,rmvb還滿適合你用的,如果要求畫質的人就別用rmvb了.
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.129.150.241
※ 編輯: erspicu 來自: 220.129.150.241 (06/18 11:05)
推
06/19 05:34, , 1F
06/19 05:34, 1F