在 Windows 中批量将视频转换为带水印的 FLV 格式

在 Windows 中批量将视频转换为带水印的 FLV 格式

是否有一个 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 是水印。

您基本上想要做的就是将其放入您的工作流程中,并在项目中的每个文件上运行它,它应该可以完成这项工作。

相关内容