gpt4 book ai didi

ffmpeg 剪切每个剪辑的第一秒和最后一秒

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

我想对文件夹中的所有文件进行批处理。
对于每个文件,我需要删除剪辑的第一秒和最后一秒,并将其保存到目标文件夹。
这是我使用的命令:

for %f in (“*.*”) do c:\ffmpeg\bin\ffmpeg -i "%f" -ss 00:00:01.000 -sseof 00:00:01.000 -c:v copy -c:a copy “u:\footage\%f”

该命令不起作用。它会剪切第一秒,但保留文件的其余部分。
也许我需要更改有关 -sseof 的语法。 .

最佳答案

sssseof两者都告诉 ffmpeg 从哪里开始,因此您的命令指定了两个开始时间并且没有结束时间。你的命令更喜欢 ss (可能是因为它最接近输入)并忽略 sseof ,然后工作到文件的末尾。

您可以使用 to (在文件中占据一个位置)或t (这需要一段时间)告诉它在哪里结束,但如果你的视频不是完全相同的长度,你将需要为每个文件计算这个值。您可以使用 ffprobe 获取视频的长度像这样:

ffprobe -i <file> -show_entries format=duration -v quiet -of csv="p=0"

这将为您提供以秒为单位的文件长度。然后,您需要减去所需的数量(在您的情况下,如果使用 to,则为 1 秒;如果使用 t,则为 2 秒)并将结果输入 ffmpeg 命令中的适当标志。

关于ffmpeg 剪切每个剪辑的第一秒和最后一秒,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46384166/

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