是否有一个 Windows 程序可以转换大量视频并以 FLV 格式输出并包含水印?
答案1
使用最新的 ffmpeg 执行此操作的正确方法是使用覆盖滤镜。以下命令将放置watermark.png
在水印的顶部input.flv
,水印的左上角位于主视频左上角右侧十五个像素处,下方十个像素处:
ffmpeg -i input.flv -i watermark.png -filter_complex \
'[0:v][1:v]overlay=15:10[outv]' -map [outv] -map 0:a \
-c:a copy -c:v libx264 -crf 22 -preset veryfast output.mp4
显然,将 15 或 10 更改为您想要的任何值。
如果您要在具有不同分辨率的多个视频上添加水印,您可能还会发现一些有用的常量:
- W 和 H 分别是主视频的宽度和高度(
input.flv
) - w 和 h 分别是叠加视频的宽度和高度(
watermark.png
)
这些可以派上用场。例如,要将水印置于视频的中心,您可以使用:
'[0:v][1:v]overlay=(W-w)/2:(H-h)/2[outv]'
类似地,要将水印置于视频左上角六分之一处的中央:
'[0:v][1:v]overlay=(W-w)/6:(H-h)/6[outv]'
对于视频左下角的六分之一:
'[0:v][1:v]overlay=(W-w)/6:(H-h)/(6/5)[outv]'
你几乎可以做任何你需要做的事情。
查看覆盖过滤器文档以获取更多信息。
答案2
您可以使用 Java 创建脚本徐格尔正如这里解释的那样https://stackoverflow.com/questions/1559691/ffmpeg-watermark-without-vhook
另一个非常流行的工具是ffmpeg因此你可以谷歌搜索 ffmpeg 水印并找到很多方法。
答案3
我首先想到的是FFmpeg。
对于水印来说,它是这样的:
ffmpeg -i input.avi -vhook 'vhook/imlib2.so -x 0 -y 0 -i overlay.png' output.avi
其中 overlay.png 是水印。
您基本上想要做的就是将其放入您的工作流程中,并在项目中的每个文件上运行它,它应该可以完成这项工作。