我发现了一些有关两个图像或视频之间交叉淡入淡出的问题和答案,但是需要哪些 ffmpeg CLI 命令来淡入淡出视频本身?
期望效果说明:
小智 5
使用我正在工作的时间来扩展一下 @llogan 的答案:
-filter_complex "[0]trim=end=1,setpts=PTS-STARTPTS[begin];[0]trim=start=1,setpts=PTS-STARTPTS[end];[end][begin]xfade=wipedown:duration=1:offset=2"
在弄乱过滤器以弄清楚它们实际上做了什么之后,这几乎正是我所寻找的(将视频的结尾淡入其自己的循环开头)。首先,这里有一个对 xfade 过滤器稍微更清晰的解释,它实际上非常棒,我很高兴知道它的存在。尝试使用一种更戏剧性的淡入淡出,以获得更清晰的过渡画面。
稍微分解一下过滤器图(时间戳反映了我循环播放的 4 秒视频):
-filter_complex
调用过滤图
"[0]trim=end=1,setpts=PTS-STARTPTS[begin];
采用第一个输入 ( [0]),使用trim过滤器制作要在视频末尾淡入的部分。将此摘录的时间设置end为第二1(可以是任何内容,这将生成 1 秒的摘录)。然后使用setpts过滤器将时间戳(摘录的?)设置为从零开始。[begin]是第一个过滤器链的输出的任意标签,但您可以调用它[thomas]或其他任何名称。
[0]trim=start=1,setpts=PTS-STARTPTS[end];
现在用于trim创建另一个输入,该输入实际上是整个视频,减去最后将淡入的 1 秒。这让我有点困惑,直到我意识到你将第一个块的结尾设置在主块开始的同一点。这个主要块获得标签[end]。
[end][begin]xfade=fade:duration=1:offset=2"
现在使用xfade过滤器使用fade模式(上面的链接中有所有其他示例)将 from 溶解[end]为[begin]。您将淡入淡出的持续时间设置为最后1一秒,并将淡入淡出的起点偏移到2第二个标记处。请记住,这是一个 4 秒的视频,只是将第一秒基本修剪并覆盖到最后,所以您现在有一个 3 秒的视频。您也可以轻松地将[end]块从 at 开始0(OP 要求提供此处描述的内容)。
给它一条output.mov路径,你就可以开始了。
| 归档时间: |
|
| 查看次数: |
1694 次 |
| 最近记录: |