我需要制作翻转视频并添加 2 个水印,但我的脚本由于某种原因不起作用?ffmpeg

我需要制作翻转视频并添加 2 个水印,但我的脚本由于某种原因不起作用?ffmpeg

我需要制作翻转视频并添加 2 个水印,但我的脚本由于某种原因不起作用(该脚本只是翻转视频,但不应用水印)。

ffmpeg -i input.mp4 -i watermark.png -i watermark2.png -filter_complex "hflip;[1:v]scale=iw*0.5:-1[top];[2:v]scale=iw*0.1:-1[top2];[0:v][top]overlay=x=(W-w)/40:y=(H-h)/40[tmp];[tmp][top2]overlay=5:H-h-5" -preset superfast output.mp4

答案1

我们必须hflip用临时名称(如[v0])存储的输出,然后将其用作overlay过滤器的输入:

ffmpeg -y -i input.mp4 -i watermark.png -i watermark2.png -filter_complex "[0:v]hflip[v0];[1:v]scale=iw*0.5:-1[top];[2:v]scale=iw*0.1:-1[top2];[v0][top]overlay=x=(W-w)/40:y=(H-h)/40[tmp];[tmp][top2]overlay=5:H-h-5" -preset superfast output.mp4


在原始命令中,hflip;由于没有输出接收器,因此将其映射到输出视频。
默认情况下,FFmpeg 将第一个没有接收器的视频映射到输出。

  • [0:v]hflip[v0]- 水平翻转第一个输入的视频,并将结果存储在中[v0]
  • [v0][top]overlay...- 覆盖[top]于其顶部[v0]

相关内容