1、avi轉nv12
ffmpeg -i source.avi -f rawvideo -pix_fmt nv12 output.nv12
ffmpeg -i source.avi -f rawvideo -pix_fmt yuv420p output.420p
注意:
YUV420 Semi-Planar
這個格式的數據量跟YUV420 Planar的一樣,但是U、V是交叉存放的,如下圖。
其在ffmpeg 中定義 爲:
PIX_FMT_NV12, ///< planar YUV 4:2:0, 12bpp, 1 plane for Y and 1 plane for the UV components, which are interleaved (first byte U and the following byte V)
2、MP4轉H264
ffmpeg –i test.mp4 –vcodec h264 –s 352*278 –an –f m4v test.264
-s 設置輸出視頻的分辨率
-f fmt 強迫採用格式fmt
3、ffmpeg裁剪mp4視頻尺寸,然後保存爲avi格式
ffmpeg –i test.mp4 -r 25 -b 3M –s 704*576 -aspect=1.222 crop= 704:576:0:12 test.avi
-r: 設置幀率;
-b:設置碼率
crop=(width, height,x,y): 裁剪窗口的寬高及起始座標
-aspect:設置寬高比
4、多線程+縮放
ffmpeg.exe -threads 2 -i ch05_20180701133703.mp4 -c:v libx264 -aspect 11:9 -s 352x288-vf crop=704:576:12:251 -r 25 -g 25 -bf 0 -b 3.2M -y tst.avi
-c:v 指定視頻編碼格式,功能同 -vcode ;
-g: 指定I幀間隔;
-bf: 指定B幀數量。爲0表示不輸出B幀;
-threads: 指定進行編解碼的線程數量
5、列出ffmpeg支持的編碼格式
ffmpeg -codecs