日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

FFMPEG使用参数详解

發(fā)布時間:2024/2/28 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 FFMPEG使用参数详解 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

目前又開始測MPEG1和MPEG2的解碼,在準(zhǔn)備編碼好的測試序列過程中,需要通過編碼器來進(jìn)行原始視頻序列的編碼操作,以生成我們需要的測試數(shù)據(jù)。由于IPP example提供的Encoder不支持MPEG1,經(jīng)過查詢,決定MPEG1的編碼使用FFMPEG。FFMEPG是個啥子?xùn)|西呢,這里簡單說一下:FFmpeg是用于錄制、轉(zhuǎn)換和流化音頻和視頻的完整解決方案,一套領(lǐng)先的音/視頻編解碼類庫。?
FFmpeg的官方網(wǎng)址是?http://ffmpeg.mplayerhq.hu/?。?
中文Wiki是?http://www.ffmpeg.com.cn/?,資料很多。?
由于其免費(fèi)開源性,遂決定就用它來進(jìn)行視頻格式的壓縮轉(zhuǎn)換啦。首先再來啰嗦一點(diǎn)兒基本的FFmpeg主主要組成部分:?
1). libavcodec: 一個包含了所有FFmpeg音視頻編解碼器的庫。?
2). libavformat: 一個包含了所有的普通音視格式的解析器和產(chǎn)生器的庫。?
三個實(shí)例程序(這三個實(shí)例基本可以作為API使用手冊):?
ffmpeg:命令行的視頻格式轉(zhuǎn)換程序。?
ffplay:視頻播放程序。(需要SDL支持)?
ffserver:多媒體服務(wù)器?

了解了它的大體組織結(jié)構(gòu),就明確了ffmpeg當(dāng)然是我在尋找視頻格式壓縮轉(zhuǎn)換的第一選擇!?
由于FFmpeg 在Linux上開發(fā)的開源項(xiàng)目,把它放在windows下進(jìn)行編譯實(shí)在是比較復(fù)雜啊,這個過程往往弄得新手很是頭大!!!,比如鄙人。好了,今天的重點(diǎn)不在于ffmpeg的編譯,因而就不在此一一記錄了,網(wǎng)上去找,關(guān)于ffmpeg編譯的方法何其之多,這里給大家?guī)讉€不錯的參考鏈接:?
對于linux上的用戶,可以參考?
http://www.ffmpeg.com.cn/index.php/Ffmpeg%E7%BC%96%E8%AF%91%E8%AF%A6%E8%A7%A3?
對于Windows用戶,可參考?
http://bbs.chinavideo.org/viewthread.php?tid=1897&extra=page%3D1?或?
http://blog.sina.com.cn/s/blog_4673bfa501008xie.html?
總之編譯是個很復(fù)雜的過程,我們還是加快速度,來領(lǐng)略ffmpeg的風(fēng)采。?
在命令行下,鍵入ffmepg.exe -h ,以看其幫助,好家伙,其參數(shù)之多,還真是覺得無從下手啊,這么多參數(shù),又該如何正確的設(shè)置呢??
于是連Google帶使用摸索,將ffmpeg的參數(shù)在這里做一簡要整理和記錄,以備日后使用時查看方便。?
基本使用方式:ffmpeg [[options][`-i’ input_file]] {[options] output_file}?
a) 通用選項(xiàng)?
-L license?
-h 幫助?
-fromats 顯示可用的格式,編解碼的,協(xié)議的。。。?
-f fmt 強(qiáng)迫采用格式fmt?
-i filename 輸入文件?

-y 覆蓋輸出文件(即如果test.*文件已經(jīng)存在的話,不經(jīng)提示就覆蓋掉了)?
-t duration 設(shè)置紀(jì)錄時間 hh:mm:ss[.xxx]格式的記錄時間也支持?
-ss position 搜索到指定的時間 [-]hh:mm:ss[.xxx]的格式也支持。使用-ss參數(shù)的作用,可以從指定時間點(diǎn)開始轉(zhuǎn)換任務(wù),-ss后的時間單位為秒?
-title string 設(shè)置標(biāo)題(比如PSP中顯示影片的標(biāo)題)?
-author string 設(shè)置作者?
-copyright string 設(shè)置版權(quán)?
-comment string 設(shè)置評論?
-target type 設(shè)置目標(biāo)文件類型(vcd,svcd,dvd) 所有的格式選項(xiàng)(比特率,編解碼以及緩沖區(qū)大小)自動設(shè)置 ,只需要輸入如下的就可以了:ffmpeg -i myfile.avi -target vcd vcd.mpg?
-hq 激活高質(zhì)量設(shè)置?
-itsoffset offset 設(shè)置以秒為基準(zhǔn)的時間偏移,該選項(xiàng)影響所有后面的輸入文件。該偏移被加到輸入文件的時戳,定義一個正偏移意味著相應(yīng)的流被延遲了 offset秒。 [-]hh:mm:ss[.xxx]的格式也支持。?
b) 視頻選項(xiàng)?
-b bitrate 設(shè)置比特率,缺省200kb/s?
-vb bitrate set bitrate (in bits/s)?
-vframes number 設(shè)置要編碼多少幀?
-r fps 設(shè)置幀頻 缺省25?
-s size 設(shè)置幀大小 格式為W*H 缺省160X128.也可以直接使用簡寫,也認(rèn):Sqcif qcif cif 4cif 等?
-s size 設(shè)置幀大小 格式為WXH 缺省160X128.下面的簡寫也可以直接使用:?

Sqcif 128X96 qcif 176X144 cif 252X288 4cif 704X576?
-aspect aspect 設(shè)置橫縱比 4:3 16:9 或 1.3333 1.7777?
-croptop size 設(shè)置頂部切除帶大小 像素單位?
-cropbottom size -cropleft size -cropright size?
-padtop size 設(shè)置頂部補(bǔ)齊的大小 像素單位?
-padbottom size -padleft size -padright size -padcolor color 設(shè)置補(bǔ)齊條顏色(hex,6個16進(jìn)制的數(shù),紅:綠:蘭排列,比如 000000代表黑色)?
-vn 不做視頻記錄?
-bt tolerance 設(shè)置視頻碼率容忍度kbit/s (固定誤差)?
-maxrate bitrate設(shè)置最大視頻碼率容忍度 (可變誤差)?
-minrate bitreate 設(shè)置最小視頻碼率容忍度(可變誤差)?
-bufsize size 設(shè)置碼率控制緩沖區(qū)大小?
-vcodec codec 強(qiáng)制使用codec編解碼方式,如-vcodec xvid 使用xvid壓縮 如果用copy表示原始編解碼數(shù)據(jù)必須被拷貝。?
-sameq 使用同樣視頻質(zhì)量作為源(VBR)?
-pass n 選擇處理遍數(shù)(1或者2)。兩遍編碼非常有用。第一遍生成統(tǒng)計(jì)信息,第二遍生成精確的請求的碼率?
-passlogfile file 選擇兩遍的紀(jì)錄文件名為file?
c)高級視頻選項(xiàng)?
-g gop_size 設(shè)置圖像組大小 這里設(shè)置GOP大小,也表示兩個I幀之間的間隔?
-intra 僅適用幀內(nèi)編碼?
-qscale q 使用固定的視頻量化標(biāo)度(VBR) 以質(zhì)量為基礎(chǔ)的VBR,取值0.01-255,約小質(zhì)量越好,即qscale 4和-qscale 6,4的質(zhì)量比6高 。此參數(shù)使用次數(shù)較多,實(shí)際使用時發(fā)現(xiàn),qscale是種固定量化因子,設(shè)置qscale之后,前面設(shè)置的-b好像就無效了,而是自動調(diào)整了比特率。?
-qmin q 最小視頻量化標(biāo)度(VBR) 設(shè)定最小質(zhì)量,與-qmax(設(shè)定最大質(zhì)量)共用?
-qmax q 最大視頻量化標(biāo)度(VBR) 使用了該參數(shù),就可以不使用qscale參數(shù)?
-qdiff q 量化標(biāo)度間最大偏差 (VBR)?
-qblur blur 視頻量化標(biāo)度柔化(VBR)?
-qcomp compression 視頻量化標(biāo)度壓縮(VBR)?
-rc_init_cplx complexity 一遍編碼的初始復(fù)雜度?
-b_qfactor factor 在p和b幀間的qp因子?
-i_qfactor factor 在p和i幀間的qp因子?
-b_qoffset offset 在p和b幀間的qp偏差?
-i_qoffset offset 在p和i幀間的qp偏差?
-rc_eq equation 設(shè)置碼率控制方程 默認(rèn)tex^qComp?
-rc_override override 特定間隔下的速率控制重載?
-me method 設(shè)置運(yùn)動估計(jì)的方法 可用方法有 zero phods log x1 epzs(缺省) full?
-dct_algo algo 設(shè)置dct的算法?可用:?
0 FF_DCT_AUTO 缺省的DCT?
1 FF_DCT_FASTINT?
2 FF_DCT_INT?
3 FF_DCT_MMX?
4 FF_DCT_MLIB?
5 FF_DCT_ALTIVEC?
-idct_algo algo 設(shè)置idct算法。可用的有:?
0 FF_IDCT_AUTO 缺省的IDCT?
1 FF_IDCT_INT?
2 FF_IDCT_SIMPLE?
3 FF_IDCT_SIMPLEMMX?
4 FF_IDCT_LIBMPEG2MMX?
5 FF_IDCT_PS2?
6 FF_IDCT_MLIB?
7 FF_IDCT_ARM?
8 FF_IDCT_ALTIVEC?
9 FF_IDCT_SH4?
10 FF_IDCT_SIMPLEARM?
-er n 設(shè)置錯誤殘留為n?
1 FF_ER_CAREFULL 缺省?
2 FF_ER_COMPLIANT?
3 FF_ER_AGGRESSIVE?
4 FF_ER_VERY_AGGRESSIVE?
-ec bit_mask 設(shè)置錯誤掩蔽為bit_mask,該值為如下值的位掩碼 1 FF_EC_GUESS_MVS (default=enabled) 2 FF_EC_DEBLOCK (default=enabled)
-bf frames 使用frames個B 幀,支持mpeg1,mpeg2,mpeg4(即如果-bf 2的話,在兩個非b幀中間隔的b幀數(shù)目為2,即IBBPBBPBBP結(jié)構(gòu))?
-mbd mode 宏塊決策?
0 FF_MB_DECISION_SIMPLE 使用mb_cmp?
1 FF_MB_DECISION_BITS 2 FF_MB_DECISION_RD?
-4mv 使用4個運(yùn)動矢量 僅用于mpeg4?
-part 使用數(shù)據(jù)劃分 僅用于mpeg4?
-bug param 繞過沒有被自動監(jiān)測到編碼器的問題?
-strict strictness 跟標(biāo)準(zhǔn)的嚴(yán)格性?
-aic 使能高級幀內(nèi)編碼 h263+?
-umv 使能無限運(yùn)動矢量 h263+?
-deinterlace 不采用交織方法?
-interlace 強(qiáng)迫交織法編碼 僅對mpeg2和mpeg4有效。當(dāng)你的輸入是交織的并且你想要保持交織以最小圖像損失的時候采用該選項(xiàng)。可選的方法是不交織,但是損失更大?
-psnr 計(jì)算壓縮幀的psnr?
-vstats 輸出視頻編碼統(tǒng)計(jì)到vstats_hhmmss.log?
-vhook module 插入視頻處理模塊 module 包括了模塊名和參數(shù),用空格分開?
-bitexact 使用標(biāo)準(zhǔn)比特率?
-max_qdiff 視頻中所有楨(包括i/b/P)的最大Q值差距?
-b_qfactor 表示i/p與B的Q值比例因子,值越大B楨劣化越嚴(yán)重?
-b_qoffset 表示1/p與B的Q值比例的偏移量,值越大B楨劣化越嚴(yán)重.如果大于0,那么下一個B的Q=前一個P的Q乘以b_quant_factor再加上offset,如果小于0,則B的Q=負(fù)的normal_Q乘以factor加上offset.?
-i_qfactor p和i的Q值比例因子,越接近1則P越優(yōu)化.?
-i_qoffset p和i的Q的偏移量

D)音頻選項(xiàng)?
-ab bitrate 設(shè)置音頻碼率?
-ar freq 設(shè)置音頻采樣率?
-ac channels 設(shè)置通道 缺省為1,即單通道?
-an 不使能音頻紀(jì)錄?
-acodec codec 使用codec編解碼 如:-acodec AAC 使用AAC音頻編碼?

好了,先整理這些吧,其實(shí)鍵入ffmpeg -h后給出的參數(shù)等說明還有更多,這里就不一一列舉了。紅色部分標(biāo)注了測試中經(jīng)常使用到的,其他的以后用到了再一一補(bǔ)充吧。

總結(jié)

以上是生活随笔為你收集整理的FFMPEG使用参数详解的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。