ffmpeg windows下加水印成功

经过今天一天的折腾,终于搞定了ffmpeg在windows下添加水印的功能。
为了解决这个问题我首先是查看了中华视频网上的ffmpeg工作组相关的资料,因为在windows下编译要装一些环境,比较耗时,因此我首先尝试搜索ffmpeg.exe和watermark.dll看能否有现成的供我使用,可是很遗憾,我下载了将近10个不同版本的ffmpeg,都不支持-vhook选项。因为大部分的ffmpeg编译的时候都指定了–disable-vhook的配置。
找寻不到,只有自己动手了!
参照中国视频网上的一篇文章,我进行编译,可是中间遇到了很多错误,原谅我没有一一记录,大部分是mingw环境配置的问题,比如缺少某个lib,某个头文件等,上google搜索即可。搜索的过程中,我发现了一个E文网站,专门描述windows下的FFmpeg编译,很全面很详细,包含vhook,ffplay等相关内容!因为内容较多,我就不翻译了,各位就照着做就可以。需要说明的是,这个URL因为GFW的原因,国内用户无法访问,解决的方法只能是使用代理:使用coralcdn的.nyud.net后缀,或者使用tor匿名访问软件。怪不得国内的兄弟们无法好好学习,都是这些封锁导致,怎么能够和国外先进水平接轨?如果您还是无法访问以上内容,请与我联系,我把保存的内容发给你。
最后就是奉献我编译的ffmpeg.exe以及vhook的相关dll,因为不时搞视频的,所以编译的可能不够专业,望见谅!
内容放置在esnips上(5G的免费存储空间)
下载ffmpeg.exe watermark.dll(内附使用说明)
连接已更新!
2008.11.19更新:这个windows下编译生成的ffmpeg,没有包含mp3相关的解码库,因此对于FLV格式的声音处理有问题。由于当初仅仅是为WMV添加水印,对于想进行FLV相关处理的朋友,需要自己编译FFMPEG。
windows下编译ffmpeg请参考这里
http://ffmpeg.arrozcru.org/wiki/index.php?title=Main_Page

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则我的水印图片尺寸也要如此!