FFMpeg 滤镜处理(视频水印以及音频回声)

总体流程:

输入文件—demuxer–编码数据包—decoder–解码数据帧–encoder–编码数据包–muxer输出文件

demuxer 表示拆分,比如音频和视频的分离
decoder 表示对音频进行解码为PCM ,对音频数据解码为YUV
encoder 表示对音频PCM重新编码为想要的格式,比如MP3;对YUV数据重新编码,比如MP4等
muxer 表示重新将编码后的音频和视频合并

PS:上面都是我猜的

滤镜处理 滤镜处理都是对解码数据帧进行处理。

滤镜裁剪命令

ffmpeg -i video.flv -vf crop=in_w-200:in_h-200 -c:v libx264 -c:a copy video_out.mp4

-vf crop 表示滤镜类型为crop,后面为crop的参数
-c:v 表示视频编码器
-c:a 表示音频编码器

给视频添加一个图片水印

ffmpeg -i video.flv -vf "movie=f1.png,scale= 60: 30[watermask];[in][watermask] overlay=30:10" watermark.flv

另外一种方式

ffmpeg -i  video.flv -i p1.png -filter_complex "overlay=10:10" watermark.mp4

overlay=10:10" 指的是指定水印具体的位置。
距离左边10个像素,距离顶部10个像素,也就是固定在了左上角的位置
在一些例子中,你并不会知道确切的分辨率,所以这里有一些变量,你可以更好的添加水印到你想要的任何位置:
main_h – 传入的视频的高度
main_w – 传入的视频的宽度
overlay_h – 传入的覆盖水印的高度
overlay_w – 传入的覆盖水印的宽度

给声音添加回声

ffmpeg -i video.flv -af  aecho=0.6:0.3:1000:0.5 -c:v copy video_out.mp4

-af 表示音频滤镜
-aecho 表示音频滤镜类型为回声,后面紧跟的是回声的4个参数

你可能感兴趣的:(ffmpeg)