比較詳細的ffmpeg參數功能
ffmpeg項目由以下幾部分組成:
www.2cto.com
ffmpeg 視頻檔案轉換命令列工具,也支援經過即時電視卡抓取和編碼成視頻檔案.
ffserver 基於HTTP(RTSP正在開發中)用於即時廣播的多媒體伺服器.也支援時間平移
fplay 用 SDL和FFmpeg庫開發的一個簡單的媒體播放器
libavcodec 一個包含了所有FFmpeg音視頻轉碼器的庫.為了保證最優效能和高可複用性,大多數轉碼器從頭開發的.
libavformat 一個包含了所有的普通音視格式的解析器和產生器的庫.
Ffmpeg選項說明
通用選項
www.2cto.com
-L license
-h 協助
-fromats 顯示可用的格式,編解碼的,協議的。。。
-f fmt 強迫採用格式fmt
-I filename 輸入檔案
-y 覆蓋輸出檔案
-t duration 設定紀錄時間 hh:mm:ss[.xxx]格式的記錄時間也支援
-ss position 搜尋到指定的時間 [-]hh:mm:ss[.xxx]的格式也支援
-title string 設定標題
-author string 設定作者
-copyright string 設定著作權
-comment string 設定評論
-target type 設定目標檔案類型(vcd,svcd,dvd)
所有的格式選項(位元速率,編解碼以及緩衝區大小)自動化佈建 ,只需要輸入如下的就可以了:
ffmpeg -i myfile.avi -target vcd /tmp/vcd.mpg
-hq 啟用高品質設定
-itsoffset offset 設定以秒為基準的時間位移,該選項影響所有後面的輸入檔案。該位移被加到輸入檔案的時戳,定義一個正位移意味著相應的流被延遲了 offset秒。 <br>[-]hh:mm:ss[.xxx]的格式也支援
視頻選項
-b bitrate 設定位元速率,預設200kb/s
-r fps 設定幀頻 預設25
-s size 設定幀大小 格式為WXH 預設160X128.下面的簡寫也可以直接使用:
Sqcif 128X96 qcif 176X144 cif 252X288 4cif 704X576
-aspect aspect 設定橫縱比 4:3 16:9 或 1.3333 1.7777
-croptop size 設定頂部切除帶大小 像素單位
-cropbottom size –cropleft size –cropright size
-padtop size 設定頂部補齊的大小 像素單位
-padbottom size –padleft size –padright size –padcolor color 設定補齊條顏色(hex,6個16進位的數,紅:綠:蘭排列,比 如000000代表黑色)
-vn 不做視頻記錄
-bt tolerance 設定視頻碼率容忍度kbit/s
-maxrate bitrate設定最大視頻碼率容忍度
-minrate bitreate 設定最小視頻碼率容忍度
-bufsize size 設定碼率控制緩衝區大小
-vcodec codec 強制使用codec編解碼方式。 如果用copy表示原始編解碼資料必須被拷貝。
-sameq 使用同樣視頻品質作為源(VBR)
-pass n 選擇處理遍數(1或者2)。兩遍編碼非常有用。第一遍產生統計資訊,第二遍產生精確的請求的碼率
-passlogfile file 選擇兩遍的紀錄檔案名稱為file
進階視頻選項
-g gop_size 設定映像組大小
-intra 僅適用幀內編碼
-qscale q 使用固定的視頻量化標度(VBR)
-qmin q 最小視頻量化標度(VBR)
-qmax q 最大視頻量化標度(VBR)
-qdiff q 量化標度間最大偏差 (VBR)
-qblur blur 視頻量化標度柔化(VBR)
-qcomp compression 視頻量化標度壓縮(VBR)
-rc_init_cplx complexity 一遍編碼的初始複雜度
-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 設定碼率控制方程 預設tex^qComp
-rc_override override 特定間隔下的速率控制重載
-me method 設定運動估計的方法 可用方法有 zero phods log x1 epzs(預設) full
-dct_algo algo 設定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 設定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 設定錯誤殘留為n 1 FF_ER_CAREFULL 預設 2 FF_ER_COMPLIANT 3 FF_ER_AGGRESSIVE 4 FF_ER_VERY_AGGRESSIVE
-ec bit_mask 設定錯誤掩蔽為bit_mask,該值為如下值的位元遮罩 1 FF_EC_GUESS_MVS (default=enabled) 2 FF_EC_DEBLOCK (default=enabled)
-bf frames 使用frames B 幀,支援mpeg1,mpeg2,mpeg4
-mbd mode 宏塊決策 0 FF_MB_DECISION_SIMPLE 使用mb_cmp 1 FF_MB_DECISION_BITS 2 FF_MB_DECISION_RD
-4mv 使用4個運動向量 僅用於mpeg4
-part 使用資料劃分 僅用於mpeg4
-bug param 繞過沒有被自動監測到編碼器的問題
-strict strictness 跟標準的嚴格性
-aic 使能進階幀內編碼 h263+
-umv 使能無限運動向量 h263+
-deinterlace 不採用交織方法
-interlace 強迫交織法編碼 僅對mpeg2和mpeg4有效。當你的輸入是交織的並且你想要保持交織以最小映像損失的時候採用該選項。可選的方法是不交織,但是損失更大
-psnr 計算壓縮幀的psnr
-vstats 輸出視頻編碼統計到vstats_hhmmss.log
-vhook module 插入視頻處理模組 module 包括了模組名和參數,用空格分開
音頻選項
-ab bitrate 設定音頻碼率
-ar freq 設定音頻採樣率
-ac channels 設定通道 預設為1
-an 不使能音頻紀錄
-acodec codec 使用codec編解碼
音頻/視頻捕獲選項
-vd device 設定視頻擷取裝置。比如/dev/video0
-vc channel 設定視頻捕獲通道 DV1394專用
-tvstd standard 設定電視標準 NTSC PAL(SECAM)
-dv1394 設定DV1394捕獲
-av device 設定音訊裝置 比如/dev/dsp
進階選項
-map file:stream 設定輸入資料流映射
-debug 列印特定調試資訊
-benchmark 為基準測試加入時間
-hex 傾倒每一個輸入包
-bitexact 僅使用位精確演算法 用於編解碼測試
-ps size 設定包大小,以bits為單位
-re 以本地幀頻讀資料,主要用於類比擷取裝置
-loop 迴圈輸入資料流。只工作於映像流,用於ffserver測試