FFmpeg常用命令
分为六大类
录屏命令
Mac 上的指令有所不同要注意
ffmpeg -f avfoundation -video_size 2560x1440 -framerate 30 -i 1 out.mpg
抽取音频
ffmpeg -i test.mp4 -acodec copy -vn out.aac
看结果
抽视频
ffmpeg -i test.mp4 -vcodec copy -an out.h264
看结果
把原视频换个背景音乐试试
ffmpeg -i out.h264 -i mojito.m4a -vcodec copy -acodec copy out.mp4
注意:音频文件比视频要长,经过测试,上面的命令,最终合成的视频以相对较长的音频长度一致。
视频格式转换
ffmpeg -i out.mp4 -vcodec copy -acodec copy out.mov
把视频提取原始数据
提取YUV数据
ffmpeg -i test.mp4 -an -c:v rawvideo -pix_fmt yuv420p out.yuv
-i test.mp4 要转换的视频
-an 只要视频 不要音频
-c:v 把视频格式转换成原始数据
-rawvideo 我要生成一个新的文件格式
-pix_fmt 转换原始数据的编码
yuv420p 元数据的编码格式
原始数据文件非常大,原视频28mb 提取完 4个g
如果想播放yuv,可以用ffpaly
需要输入视频尺寸
ffplay -s 1080x1920 out.yuv
提取音频原始数据
ffmpeg -i test.mp4 -vn -ar 44100 -ac 2 -f s16le out.pcm
同样如果想播放,可以用ffplay
ffplay -ar 44100 -ac 2 -f s16le out.pcm
ffmpeg 滤镜
ffmpeg -i test.mp4 -vf crop=in_w-200:in_h-200 -c:v libx264 -c:a copy crop.mp4
-vf 我们需要用到视频的滤镜
crop crop滤镜
=in_w-200:in_h-200 输入的宽高 裁剪视频后的宽高
-c:v 裁剪之后用什么编码
libx264 是个工具,用此工具编码
-c:a copy 对音频直接进行copy
裁剪后 视频的变化
视频滤镜有很多
fps
音频滤镜
具体文档可查阅官方文档
官方文档连接