我需要将视频拆分为如下所示的一系列片段:(数字为mm:ss)00:00至03:05,03:00至06:05,06:00至09:05等换句话说,每个片段与下一个片段有5秒的重叠。这个目的是为了转录程序。每3分钟片段将分别转录。 5秒的重叠将有助于将转录的文本片段拼接在一起。
我是否需要分别提取每个3分钟和5秒的片段?例如,通过执行以下操作:
ffmpeg -ss 00:03:00 -i in.mp4 -t 00:06:05 -vcodec copy -acodec copy -y out.mp4
或者有没有办法在一次通过中完成所有细分?
[项目是:Govmeeting]
答案 0 :(得分:2)
FFmpeg有一个段复用器,它可以在一个命令中对文件进行分段,但它不会创建重叠段,因此不适合。
您必须运行单独的命令,例如
ffmpeg -ss 00:03:00 -t 00:03:10 -i in.mp4 -c copy -avoid_negative_ts make_zero out-300.mp4
由于您正在复制流,因此细分可能无法从确切的起点开始。因此,我已经将持续时间增加了一点,以确保时间戳从0开始,因为并非所有玩家都能正确处理带有负时间戳的MP4播放。如果文件分割点不是关键帧,则通常会出现负时间戳。