转:MediaCoder H.264格式编码参数设置及详解
轉: http://mediacoder.com.cn/node/81
由于現(xiàn)在大部分視頻轉碼都選擇H.264格式進行編碼,同時CUDA編碼的畫質(zhì)還達不到x264軟編碼的質(zhì)量(如果你對畫質(zhì)無要求,可以直接忽略該教程。)所以該教程對Mediacoder H.264格式編碼參數(shù)設置進行一次詳解,希望對畫質(zhì)有一定要求編碼愛好者有所幫助。
視頻選項欄界面:
視頻質(zhì)量/碼率比例?可選百分比,選擇是否對原始視頻碼率進行壓縮。如果對畫質(zhì)要求較高,建議選擇100%,即不對原始視頻碼率進行壓縮。
碼率模式:設置轉換視頻時所采用的編碼方式??蛇x項:
1.?平均碼率模式;
2.?固定質(zhì)量模式;
3.?恒定碼率模式;
4.?恒定量化參數(shù);
5.?2次編碼模式;
6.?3次編碼模式;
建議:選擇固定質(zhì)量模式?即對原始視頻畫質(zhì)質(zhì)量進行固定,編碼后視頻大小不可控。
格式:設置轉換后臨時的視頻文件(未與音頻文件封裝之前)的格式??蛇x項:XviD、H.264、MPEG1、MPEG2、MPEG4、Theora、Flash Video、Dirac Video、Windows Media Video、RealMedia、H.263、H.263+、H.261、MS-MPEG4-V2、DV Video、Motion JPEG、Lossless JPEG、Huffyuv、Snow、AMV、Raw Video
建議:選擇H.264
(注意:格式的選擇會影響下面容器的選擇,不是所有的格式都能封裝到一個容器中的!)
容器:最后進行封裝時使用的容器,如XXXX.AVI就是使用的AVI作為容器??蛇x項:Default、AVI、MP4、Matroska、MPEG1、MPEG2、MPEG2-TS、Flash Video、ASF、3GP、3GP2、MOV、MJPEG、RealMedia、DV Forma、OGG、NUT、PMP、Raw Stream
建議:選擇MP4(MP4具有良好的播放兼容性,iphone、ipad等均可以直接點播)如果對兼容性沒要求,建議選擇MKV
(注意:很多轉換任務一開始就報有關容器的錯誤,是因為混流軟件對轉換后的音頻文件或視頻文件無法混流所致.具體MediaCoder的混流器能封裝什么格式的視頻文件和音頻文件,請參考其他有關資料!)
復制視屏流:當勾選參數(shù)時,MediaCoder不會對原始視頻進行轉換,而是直接無損提取。
建議:不勾選?
編碼器:設置MediaCoder對視頻編碼時所使用的編碼器。可選項:MEncoder、FFmpeg、x264、JM Encoder、XviD、Theora Encoder、Dirac、WM Encoder、VFW Encoder、AMV Encoder、Stream Dumper、Frame Dumper、x264 Remote
建議:選擇x264??對畫質(zhì)有要求的同學無視后面的吧,目前用CPU軟編碼還是無奈的唯一選擇。
(注意:只有不勾選自動選擇后才能選擇以上編碼器。不正確選擇會導致轉換失敗.)
來源:設置MediaCoder對原視屏解碼時所使用的解碼方式??蛇x項:Bypass、MPlayer、MEncoder、FFmpeg、WM Decoder、JM Decoder、AviSynth、File Stream
建議:勾選自動選擇?
(注意:只有不勾選自動選擇時才能選擇以上解碼方式,不正確的選擇會導致文件轉換失敗!)
x264編碼器選項欄界面:
規(guī)格:壓縮時使用規(guī)格模式。可選項:Auto、Baseline、Main、High、High10。具體各規(guī)格概況如下圖:(圖片來源于網(wǎng)絡)
建議:選擇Main及以上(考慮到編碼后視頻的兼容性,不建議選擇Main以下的規(guī)格。如果你對編碼時間無要求,同時又是畫質(zhì)的骨灰級發(fā)燒友,那請你選擇High及以上。)
級別:表示編、解碼等級
建議:選擇級別4.0?
預設:x264為我們提供了預設這么一個選項,總共有placebo、veryslow、slower、slow、medium、fast、faster、veryfast、ultrafast、custom這幾個預設,不同的預設編碼出來的視頻效果自然不同,當然編碼時間也大不相同。
如果您的CPU好,或者視頻時間較短,碼率和分辨率較低,請盡可能使用較高的預設,如果視頻時間較長,碼率和分辨率較低,或者您的CPU較為一般,可以適當降低預設來幫助您壓制。以我來說,我壓1080P一般用slower。有骨灰玩家說了:“那我選擇custom呢?怎么設置呢?”好吧,給大家些資料參考一下吧,篇幅有限,各個參數(shù)請大家自己查閱相關資料了。
運動估算模式:--me:對全像素塊動態(tài)預測搜索的方式,可選項:
Diamond:菱形搜索;
Hexagonal:正六邊形搜索;
Uneven Multi-Hexagon:可變半徑六邊形搜索;
Exhaustive:全面搜索;
Hadamard Exhaustive:用Hadamard方式進行全面搜索,比Exhaustive更慢。
建議:選擇Uneven Multi-Hexagon
(注意:建議設為Uneven Multi-Hexagon;Exhaustive和Hadamard Exhaustive實在太慢了,而且畫面質(zhì)量提高極不明顯。除非你不怕浪費時間且追求高質(zhì)量畫面的骨灰級玩家并且很相信自己機器配置那么就選Hadamard Exhaustive吧!)。
范圍:運動估算半徑:--merange:4-64。計算機對像素塊進行預測搜索的半徑。
建議:設置為16
參考幀數(shù):參考幀數(shù):--ref:最大參考幀數(shù),范圍0-16。該參數(shù)對質(zhì)量和壓縮比都有提高
建議:設置大于1
子像素優(yōu)化::--subme:動態(tài)預測和分區(qū)方式,可選項1-9
1:用全像素塊進行動態(tài)搜索,對每個塊再用快速模式進行四分之一像素塊精確搜索
2:用半像素塊進行動態(tài)搜索,對每個塊再用快速模式進行四分之一像素塊精確搜索
3:用半像素塊進行動態(tài)搜索,對每個塊再用質(zhì)量模式進行四分之一像素塊精確搜索
4:用快速模式進行四分之一像素塊精確搜索
5:用質(zhì)量模式進行四分之一像素塊精確搜索
6:進行I、P幀像素塊的速率失真最優(yōu)化(rdo)
7:進行全部幀像素塊的速率失真最優(yōu)化
8:進行I、P幀運動矢量及塊內(nèi)部的速率失真最優(yōu)化
9:進行全部幀運動矢量及塊內(nèi)部的速率失真最優(yōu)化
建議:選擇7
(注意:該選項選擇的數(shù)值越大畫面質(zhì)量越好,而編碼的速度越慢!)
優(yōu)化:對特定視頻進行算法優(yōu)化。選項有:normal(普通)、film(電影)、animation(動畫)、grain(顆粒)、stillimage(靜態(tài)圖像)、psnr(PSNR測試)、ssim(SSIM測試)、fastdecode(快速解碼)、zerolatency(零延遲)。
建議:一般選擇normal。
B幀數(shù):--bframes:在I幀與P幀之間可插入B幀數(shù)量的最大值,范圍0-16。
直觀的說,對于大多數(shù)視頻,絕大多數(shù)的冗余資源在離幀最近的位置被編碼。?這就是說,只要設置這個值超過4或者5,就會增加編碼時間,同時帶來的價值并不大。?我通常使用的值是4.
建議:設置大于1
?
????上述就是Mediacoder H.264格式編碼參數(shù)設置的一些有關建議,當然高級選項里還有很多對視頻編碼畫質(zhì)和編碼效率有關的選項,這里就不一一給大家解釋了。如果感興趣的話,多多查閱一些相關資料吧。祝大家編碼愉快!
?
總結
以上是生活随笔為你收集整理的转:MediaCoder H.264格式编码参数设置及详解的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 程序员学习笔记
- 下一篇: acfun json 弹幕 转换 bil