我有一系列要从.mov
转换为.ts
的视频,然后为其创建HLS播放列表。我能够找出任何给定视频的音频和视频流的结束点,并在转换序列中的后续视频时应用该结束(累积)偏移量。例如:
ffmpeg -y -i 1.mov \
-filter:a "asetpts=PTS-STARTPTS+367534" \
-filter:v "setpts=PTS-STARTPTS+363000" \
-codec:v libx264 -crf 18 -preset veryfast \
-acodec aac -muxdelay 0 1.ts
这可行,但需要相当数量的CPU。我希望能够理想地复制视频/音频流。有什么方法可以对.ts
文件的音频/视频流应用统一的pts偏移,而无需重新编码整个内容?
答案 0 :(得分:1)
这样做的名义方法是
ffmpeg -y -i 1.mov -c copy -output_ts_offset 4.54 -muxdelay 0 -muxpreload 0 1.ts
如果您需要对n
流应用不同的偏移量,那么您将需要生成n
输出,每个输出具有1个映射流,且其唯一偏移量。将所有输出重新混合在一起,并添加-copyts
。