给影片转码的同时需要添加水印,我使用的ffmpeg 1+ 版本中已经废弃了vhook,所以可以使用avfilter来添加水印。

编译ffmpeg的时候可以添加参数avfilter ,

ffmpeg -codecs看看有没有png decoder,如果没有则自行安装zlib 和 libpng的库。

然后重新编译你的ffmpeg

--enable-gpl --enable-libmp3lame --enable-libx264 --enable-filter=movie --enable-avfilter --enable-decoder=png --enable-encoder=png

就可以使用命令添加水印了。

Top left corner
ffmpeg -i inputvideo.avi -vf "movie=watermarklogo.png [watermark]; [in][watermark] overlay=10:10 [out]" outputvideo.flv

Top right corner
ffmpeg -i inputvideo.avi -vf "movie=watermarklogo.png [watermark]; [in][watermark] overlay=main_w-overlay_w-10:10 [out]" outputvideo.flv

Bottom left corner
ffmpeg -i inputvideo.avi -vf "movie=watermarklogo.png [watermark]; [in][watermark] overlay=10:main_h-overlay_h-10 [out]" outputvideo.flv

Bottom right corner
ffmpeg -i inputvideo.avi -vf "movie=watermarklogo.png [watermark]; [in][watermark] overlay=main_w-overlay_w-10:main_h-overlay_h-10 [out]" outputvideo.flv