当我将视频文件分割成 5 秒的片段时:
ffmpeg -i input.mp4 -c copy -f segment -segment_time 5 -segment_format mp4 chunk-%d.mp4
每个块的长度恰好为 5 秒,但在 VLC 之类的程序中播放视频时,时间码如下所示:
右侧显示正确的视频时长(5 秒),而左侧显示的是观看原始文件时的时间。
我如何确保每个视频文件都有正确的时间码数据(最好无需重新编码)?
这个问题描述了与我类似的问题,但唯一的解决方案是复制编解码器,上面的命令已经做到了。
答案1
存在的一个选项是添加-reset_timestamps 1
到命令行:
ffmpeg -i input.mp4 -c copy -f segment -reset_timestamps 1 -segment_time 5 -segment_format mp4 chunk-%d.mp4