用于更换多媒体数据的格式(封装格式)
解复用 - 本质是音视频数据的分离。
复用 - 将音视频数据重新封装。
转换音视频格式
- # -vcodec 视频解复用
- # -acodec 音频解复用
- # copy 表示不更改变解复用后的编码格式,完全copy
- ffmpeg -i test.mp4 -vcodec copy -acodec copy out.flv
提取视频流
- # -an 表示不要音频流
- ffmpeg -i test.mp4 -an -vcodec copy out.h264
提取音频流
ffmpeg -i test.mp4 -acodec copy -vn out.h264
- # -c:v 对视频进行解码,使用的编解码器是 rawvideo
- # -pix_fmt 每一帧图像编码为 yuv 4:2:0
- ffmpeg -i input.mp4 -an -c:v rawvideo -pix_fmt yuv420p out.yuv
提取音频原数据
- # -ar 即 audio read,音频采样率为44100
- # -ac 即 audio channel,声道,ac2表示双声道
- # -f 抽取出的音频pcm数据的格式,s16le s表示有符号,16位,le-little end 表示小头。
- ffmpeg -i out.mp4 -vn -ar 44100 ac 2 -f s16le out.pcm
播放音频原数据
ffplay -ar 44100 -ac 2 -f s16le out.pcm
4:滤镜命令
- # -vf 指定滤镜
- # crop,一个滤镜的名字,=后面是参数,in_w 表示宽度减少200,in_h表示高度减少200
- # -c:v 指定使用的编解码器,前面有说过
- # -c:a copy 不对音频做处理
- ffmpeg -i test.mov -vf crop=in_w-200:in_h-200 -c:v libx264 -c:a copy out.mp4