Bash 使用ffmpeg分割视频会产生奇怪的输出

Bash 使用ffmpeg分割视频会产生奇怪的输出,bash,video,ffmpeg,split,Bash,Video,Ffmpeg,Split,我想把一段视频分成(大部分)120秒长的相等部分。下面的代码可以工作,但只有第一个视频输出是正常的mp4格式。其他人似乎是从上一个视频结束的地方开始的,但只是视频文件从未被剪切过 第一个视频时间线图像: 下一个视频时间线,正如您所看到的,作为一个单独的视频,它从2分钟开始,而不是从0开始。即使文件统计数据仍显示视频长度为2分钟: ffmpeg-i 1146redmp4.mp4-c:v libx264-crf 22-map 0-segment_time 120-g 120-sc_thresho

我想把一段视频分成(大部分)120秒长的相等部分。下面的代码可以工作,但只有第一个视频输出是正常的mp4格式。其他人似乎是从上一个视频结束的地方开始的,但只是视频文件从未被剪切过

第一个视频时间线图像:

下一个视频时间线,正如您所看到的,作为一个单独的视频,它从2分钟开始,而不是从0开始。即使文件统计数据仍显示视频长度为2分钟:

ffmpeg-i 1146redmp4.mp4-c:v libx264-crf 22-map 0-segment_time 120-g 120-sc_threshold 0-force_key_frames“expr:gte(t,n_forced*120)”-f segment 1146输出%03d.mp4

如果这是正确的输出,而不是错误。如何将视频分割输出为自己的视频?

看起来您的播放机不希望开始时间戳为非零


ffmpeg-i 1146redmp4.mp4-c:v libx264-crf 22-map 0-segment_time 120-g 120-sc_threshold 0-force_key_frames“expr:gte(t,n_forced*120)”-reset_timestamps 1-f segment 1146; output%03d.mp4

简单的方法是:
ffmpeg-i input.mp4-ss$((i*120))-t 120段-$i.mp4