主要参数

-i 设定输入流-f 设定输出格式(format)-ss 开始时间-t 时间长度

视频参数

-vframes 设置要输出的视频帧数-b 设定视频码率-b:v 视频码率-r 设定帧率-s 设定画面的宽与高-vn 不处理视频-aspect aspect 设置横纵比4:3 或16:9 或1.333或 1.7777-vcodec 设定视频编解码器,如果用copy表示原始编码数据必须被拷贝-vf 视频过滤器

音频参数

-aframes 设置要输出的音频帧数-b:a 音频码率-ar 设定采样率-ac 设定声音的Channel数-acodec 设定声音编解码器,如果用copy表示原始编解码数据必须被拷贝-an 不处理音频-af 音频过滤器

例子1

原格式 16:9 1920*1080 6声道

转换格式(设定输出格式)

ffmpeg.exe -i test.mp4 -f flv test.flv

转换格式 音频拷贝

ffmpeg.exe -i test.mp4-acodec copy -f flv test.flv

转换格式 视频拷贝

ffmpeg.exe -i test.mp4-vcodec copy -f flv test.flv

转换格式 音视频拷贝

ffmpeg.exe -i test.mp4-codec copy -f flv test.flv

片段截取

输出格式可以不用特定指定输出格式-f
l从840秒开始截取60秒片段

ffmpeg.exe -i test.mp4 -ss 840 -t 60 -codec copy out.mp4

设置视频码率等

设置转换成800帧 码率1500k 帧率30 分辨率640*480

ffmpeg.exe -i test.mp4-vframes 800 -b:v 1500k -r 30-s 640x480out1.mp4

转码效果

已变形

设置16:9

ffmpeg.exe -i test.mp4-vframes 800 -b:v 1500k -r 30-s 640x480 -aspect 16:9 out1.mp4

16:9 不会改变分辨率

播放效果(拉伸)

使用h265编码

ffmpeg.exe -i test.mp4-vframes 800 -b:v 1500k -r 30-s 640x480 -aspect 16:9-vcodec libx265 out1.mp4

提取视频

去掉音频-an

>ffmpeg.exe -i test.mp4-vframes 800 -b:v 1500k -r 30-s 640x480 -aspect 16:9-vcodec libx265 -anvideo.mp4

提取音频

去掉视频-vn

ffmpeg.exe -i test.mp4-acodec copy -vnaudio.mp4

视频转mp3

ffmpeg.exe -i out.mp4 -ac 2out.mp3

设置音频码率和采样率

ffmpeg.exe -i out.mp4 -ac 2 -b:a 192k -ar 48000out.mp3

指定MP3编码器

ffmpeg.exe -i out.mp4 -ac 2 -b:a 192k -ar 48000 -acodec libmp3lameout.mp3

指定输出帧数

指定200帧数,即截断

ffmpeg.exe -i out.mp4 -ac 2 -b:a 192k -ar 48000 -acodec libmp3lame-aframes 200out.mp3