FFMPEG通过libavfilter增加水印

ffmpeg利用libavfilter在视频中生成水印,替换原来的vhook方法,

Linux 环境下:

编译ffmpeg的时候记得加上 --enable-avfilter

完整的编译参数: 

 

--enable-libx264  --disable-ffplay --enable-shared  --enable-gpl   --enable-pthreads --enable-libfaac --enable-postproc --enable-x11grab --enable-swscale --enable-nonfree --enable-avfilter --disable-mmx

 

 

在视频中加入水印

 

ffmpeg -i input.mp4 -s 640x360 -vf "movie=0:png:logo.png [wm];[in][wm] overlay=(main_w-overlay_w)/2:main_h-overlay_h:1 [out]" -b 512k  -y output.mp4

 水印logo.png将增加到视频底部中间位置,水印的位置由(main_w-overlay_w)/2:main_h-overlay_h:1来控制

 

 

Windows环境下:

先下载特点版本的ffmpeg,

在视频中加入水印方法

 

ffmpeg -i input.mp4 -vfilter "movie=0:png:logo.png [logo]; [in][logo] overlay=(mainW-overlayW)/2:(mainH-overlayH):1 [out]" -s 640x360 -pix_fmt yuv420p -ab 64K -b 200K  output.mp4

 

 

这样生成水印版视频质量不是很好,有点模糊,可以参考我另一篇文章《FFMPEG生成高质量的h264编码视频http://gudao8192.iteye.com/blog/903204

,只要将参数-vf "movie=0:png:logo.png [wm];[in][wm] overlay=(main_w-overlay_w)/2:main_h-overlay_h:1 [out]"

(这是linux下的命令,windows下请用相应命令)加入到第一条命令中即可

你可能感兴趣的:(linux,windows,Blog)