ffmpeg为视频添加水印watermark【转加补充】

http://blog.csdn.net/alpeace/article/details/5706794

ffmpeg为视频添加水印watermark【转加补充】

7月7日

ffmpeg为视频添加水印watermark【转加补充】

想为视频添加水印,可是好多共享软件都要收费,也不是命令行方式。
google上找了半天,在一个国外的论坛看到ffmpeg,我想可能有门,因为ffmpeg是用来格式转换的,顺便添加一下水印也不是不可阿。
然后到 ffmpeg的网站在hooks页面找到了关于watermark的信息。
通过调用
$ ffmpeg -i infile -vhook ‘/path/watermark.so -m 1 -f watermark.gif’ -an outfile
就可以将watermark添加到infile对应的视频文件了。
其中-i 对应输入文件,watermark.so的路径要注意填写正确。
-m用来指定工作模式,这里设置为1,表示如果watermark对应图片的像素颜色如果比-t指定的临界值大,则采用watermark对应像素颜色。
-f为水印图片对应的路径(注意采用png图片效果较好)
-an为输出文件名称
我本地上的命令为:
$ffmpeg -i /home/erlang/1.wmv -vhook ‘/usr/lib/vhook/watermark.so -m 1 -f logo.png’ test_1.mpg
处理完成后,查看test_1.mpg 我们的水印已经打进去了!
是不是发现水印图片被拉伸了,呵呵,最后提醒的是,水印图片要于视频的尺寸一直,这样才能保证水印不被拉伸!
比如我的视频尺寸为320*240则我的水印图片尺寸也要如此
 
-----------------------------------
注意点:
1:千万要主意路径权限
2:图片一定要和视频一样大,背景用透明即可
模块watermark.so是ffmepg自带的;解压后在vhook目录下;
有3个参数-m -t -f:
-f是必须的;
-t是水印图片的颜色的掩码
详细的参数说明可以参考这个文件vi /opt/software/ffmpeg/ffmpeg/vhook/watermark.c
-m 1 -t 222222 可以不用
用了图像就被水印文件的颜色给覆盖了
其实-m 和 -t 还是有用的
通过调这两个参数可以控制水印和图像本身的对比关系;
而且jpg图片本身是有要求的,不是所有的都能加上。

猜你喜欢

转载自wangxiaoxu.iteye.com/blog/1985224