gpt4 book ai didi

video - 使用 FFmpeg 修剪视频并在其上添加飞旋镖效果

转载 作者:行者123 更新时间:2023-12-04 22:45:50 25 4
gpt4 key购买 nike

我有一个总长 30 秒的给定源视频。现在我想修剪前 5 秒并对其应用回旋镖效果。这是我目前所在的命令:

ffmpeg -i src.mp4 -y -an -filter_complex "[0]trim=start=0:end=5[a];[a]reverse[r];[a][r]concat,loop=0:250,setpts=N/30/TB" out.mp4

我是 ffmpeg 的新手,我正在尝试理解其原理,但我有点吃力。阅读一些文档后,我了解到第一个括号 [0] 是操作的源流,前导结尾括号是输出流名称,因此我可以继续使用其他操作(如 concat 等)对其进行处理。

这就是我对 [a] 所做的尝试,它应该作为我修剪过的视频的输出流。但这并不奏效。

我发现的另一种方法是使用 -ss 0 -t 5,但这会在处理结束时对其进行修剪,因为 ffmpeg 会在整个过程中应用我的操作,所以效率很低30 秒,然后扔掉 25 秒。

我哪里理解错了,我该如何解决?

最佳答案

Another approach what I found is to use -ss 0 -t 5,but this would trim it at the end of the processing, what would be inefficient since ffmpeg would apply my manipulation on the complete 30 seconds and throw away the 25secs afterwards.

请记住,所有标志都适用于下一个 输入/输出文件。

如果你只想读取输入文件的前 5 秒,你必须将 -ss 0 -t 5 放在 -i 之前 标志:

ffmpeg -ss 0 -t 5 -an -i src.mp4 -y -filter_complex "[0]split[b][c];[c]reverse[r];[b][r]concat" out.mp4

这将仅在 src.mp4 的前 5 秒运行过滤器链。

如果您将 -ss 0 -t 5 放在输入文件之后,它将应用于输出 out.mp4,因此完整的输入文件将是已处理,但仅将结果的前 5 秒写入 out.mp4

关于video - 使用 FFmpeg 修剪视频并在其上添加飞旋镖效果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65874316/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com