我猜测有一个 ffmpeg 命令可以做到这一点。
我有一个文件夹,里面装满了一堆视频,这些视频开头都有一段不必要的 20 秒片段。
我不想对它们重新编码或者改变任何其他东西,只是想删掉那个介绍。
答案1
mkdir output
for f in *.mp4; do ffmpeg -i "$f" -ss 20 -map 0 -c copy "output/$f"; done
对于非帧内格式,这将需要在关键帧上进行剪切(如今大多数“消费者”视频都是非帧内的),因此可能不会在正好 20 秒时剪切。
如果您的输入是内部输入(例如 DV),或者您知道关键帧在 20 秒或接近 20 秒,那么在其-ss
之前移动-i
,处理速度就会稍微快一些。
如果你必须削减确切地20 秒后您将需要重新编码:删除-c copy
,但同样,如果您需要这样做,它取决于格式。