【问题标题】:MLT / melt: concatenate clips, fade-in/fade-out audio and videoMLT/melt:拼接剪辑、淡入淡出音视频
【发布时间】:2017-02-07 00:11:24
【问题描述】:

我正在尝试自动化我每周执行的一项平凡的视频编辑任务。我想使用melt 来执行此操作。

假设我有视频abc。我想做以下事情:

  1. abc 中剪切a<sup>1</sup>b<sup>1</sup>c<sup>1</sup>
  2. a<sup>1</sup>b<sup>1</sup>c<sup>1</sup> 连接到一个视频中。
  3. a<sup>1</sup>b<sup>1</sup>c<sup>1</sup> 之间转换时淡入/淡出黑色一秒钟。
  4. a<sup>1</sup>b<sup>1</sup>c<sup>1</sup> 的串联输出应用配乐,同时保留原始音频。
  5. 随着c<sup>1</sup> 逐渐变黑(视频结束),原声带淡出。

在哪里:

  1. abc 的长度是任意的。
  2. abc 都是以每秒 60 帧的速度拍摄的 1080p 视频。
  3. abca<sup>1</sup>b<sup>1</sup>c<sup>1</sup>都是.mp4文件。
  4. 配乐是一个.mp3 文件。

这是我得到的最接近的:

#!/bin/sh
melt \
  colour:black out=59 $VIDEO1 in=0 out=600 -mix 60 -mixer luma \
  colour:black out=59 -mix 60 -mixer luma \
  colour:black out=59 $VIDEO2 in=0 out=600 -mix 60 -mixer luma \
  colour:black out=59 -mix 60 -mixer luma \
  colour:black out=59 $VIDEO3 in=0 out=600 -mix 60 -mixer luma \
  colour:black out=59 -mix 60 -mixer luma \
  -audio-track $AUDIO -transition mix

(我在上面的示例中为相关文件和淡入/淡出时间使用了任意占位符。)

这成功地剪切和连接a<sup>1</sup>b<sup>1</sup>c<sup>1</sup> 与动画过渡。然而:

  1. 如果$AUDIOa<sup>1</sup>b<sup>1</sup>c<sup>1</sup> 的串联长,则视频结束后音频继续播放(白屏)。

  2. c<sup>1</sup> 淡出(即视频结束时)时,配乐不会淡出。

根据我收集到的信息,可以通过“为音量音频过滤器设置动画”来淡出配乐,但我没有成功尝试过。

我应该尝试什么?

感谢您的帮助。

【问题讨论】:

    标签: command-line-interface mlt melt-framework


    【解决方案1】:

    对于#1,您需要为音频设置一个出点。您有三个 601 帧剪辑(第零帧计为一帧),总共 1803 帧。所以出发=1802。

    对于#2,您可以将音量过滤器应用到音轨的末尾以使其淡出。

    请参阅音量滤波器的文档以了解增益和结束参数: https://www.mltframework.org/plugins/FilterVolume/

    #!/bin/sh
    melt \
      colour:black out=59 $VIDEO1 in=0 out=600 -mix 60 -mixer luma \
      colour:black out=59 -mix 60 -mixer luma \
      colour:black out=59 $VIDEO2 in=0 out=600 -mix 60 -mixer luma \
      colour:black out=59 -mix 60 -mixer luma \
      colour:black out=59 $VIDEO3 in=0 out=600 -mix 60 -mixer luma \
      colour:black out=59 -mix 60 -mixer luma \
      -audio-track $AUDIO out=1802 -attach-track volume:0db end=-70db in=1703 out=1802 \
      -transition mix in=0 out=1802
    

    【讨论】:

    • 所以这解决了第 1 项(视频结束时结束音频),非常感谢!但是,由于某种原因,电影结束时它似乎并没有淡出音频(#2)。但是,您链接的文档表明它应该起作用,所以我不清楚它为什么不起作用:/我会继续深入研究文档,如果我得到这个,我会在这里发布答案工作。
    • 在我看来,“混合”可能无法满足您的需求,因为它实际上是一种交叉淡入淡出,它应用的是线性过渡,而不是对数。也许尝试按照我更新的答案中的建议应用“音量”过滤器。
    • 这完全符合我的要求,并满足我的问题中所述的所有目标。非常感谢你的帮助! (只要 SO 允许,我将奖励 100 分作为感谢,感谢您的回答,因为这是值得的。)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-08-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多