【问题标题】:ffmpeg watermark first 30 secondffmpeg水印前30秒
【发布时间】:2012-02-06 13:27:13
【问题描述】:
ffmpeg -i v.3gp -acodec copy -vf "movie=w.png [logo]; [in][logo] overlay=10:main_h-overlay_h-10 [out]" nv.3gp

它工作正常,但我只想要前 30 秒的水印。 有什么想法吗?

【问题讨论】:

    标签: ffmpeg


    【解决方案1】:

    您可以将徽标转换为具有 png 编解码器和 Alpha 通道的 30 秒视频,并将视频应用为叠加层。

    徽标视频的持续时间应通过以主视频的帧速率(在您的情况下为 v.3pg)的帧数来指定。例如,对于 30 fps 的主视频运行:

    ffmpeg.exe -loop 1 -i w.png -vframes 901 -vf "fade=out:899:1:alpha=1" 
        -vcodec png -pix_fmt rgba w.mov
    

    标志需要淡出;否则它不会消失。然后将徽标视频用作另一个视频的叠加层:

    ffmpeg -i v.3gp -acodec copy -vf "movie=w.mov [logo]; [in][logo]
        overlay=10:main_h-overlay_h-10 [out]" nv.3gp
    

    或者,标志可以逐渐淡出,而不是突然结束,例如使用-vf "fade=out:870:30:alpha=1" 在 30 帧内。

    【讨论】:

    • 选项“循环”的值“1”无效
    • 而且不会消失 ffmpeg -i w.png -vframes 901 -vf "fade=out:870:30:alpha=1" -vcodec png -pix_fmt rgba logo.mov ffmpeg -i v.3gp -acodec copy -vf "movie=logo.mov [logo]; [in][logo] overlay=10:main_h-overlay_h-10 [out]" nv.3gp
    • 奇怪。您使用的是较旧的 ffmpeg 吗?那就试试-loop-input,或者获取最新的
    • ffmpeg -loop_input -f image2 -i w.png -vframes 901 -vf "fade=out:870:30:alpha=1" -vcodec png logo.mov // ffmpeg -i v. 3gp -acodec copy -vf "movie=logo.mov [logo]; [in][logo] overlay=10:main_h-overlay_h-10 [out]" nv.3gp // 可以,但是没有 alpha,我看到了淡出后的黑色方块。如果我在没有 -vf 的情况下制作 logo.mov 一切正常,但水印会在整个持续时间内出现。
    • 您没有通过-pix_fmt rgba 选项。另外,试试最新的 ffmpeg。
    【解决方案2】:

    overlay滤镜支持时间线编辑;您可以简单地从 png 文件中读取,然后 overlay=enable='lte(t,30)':...

    【讨论】:

    • @kev 多么冷淡的评论。我喜欢它。
    【解决方案3】:

    意识到已经很晚了,但是当我在研究一个类似的问题时,我设法解决了这个问题。 它从开始 0.5 秒开始淡入,然后在 30 秒后淡出

    ffmpeg \
    -i v.3gp \
    -loop 1 -i w.png \
    -acodec copy \
    -filter_complex \
    "[1:v] fade=in:st=0:d=0.5,fade=out:st=30:d=0.5 [logo]; [0:v][logo] overlay=10:main_h-overlay_h-10" \
    nv.3gp
    

    【讨论】:

    • 如何避免无限的编码循环(由 -loop 1 引起)?另一方面,当我在复杂过滤器中使用 eof_action=pass[out1] 并将其映射到输出时,输出没有工作音频。有什么想法吗?
    • @fiveDust 试试-shortest 参数(参见advanced options documentation)。
    【解决方案4】:

    你可以剪掉前 30 秒,给它加水印,然后把它和剩下的部分结合起来。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-17
      • 1970-01-01
      • 2015-08-07
      • 1970-01-01
      • 2010-09-07
      • 2019-01-31
      相关资源
      最近更新 更多