You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

FFmpeg:基于时间戳列表为可变帧率视频设置PTS值

需求可以实现,具体操作如下

完全可以通过ffmpeg达成你的目标:以流复制方式将无容器H.264封装到MKV,同时应用自定义毫秒级时间戳,精准保留可变帧率。

操作步骤

1. 整理时间戳文件

将毫秒级时间戳转换为秒为单位的数值,每行对应一帧,顺序必须和H.264流的帧顺序严格一致。比如原时间戳是100ms、250ms、400ms,就写成:

0.100
0.250
0.400
...

将内容保存为timestamps.txt。

2. 执行ffmpeg封装命令

用以下命令完成封装,全程流复制视频流,应用自定义时间戳:

ffmpeg -i input.h264 -read_timestamps timestamps.txt -c:v copy -f matroska output.mkv

关键说明

  • -read_timestamps 参数会强制ffmpeg使用文件中的时间戳作为每帧的PTS,完全替换原流的时间信息
  • -c:v copy 确保视频流直接复制,不重新编码,既保证画质又提升效率
  • MKV容器原生支持可变帧率,会根据PTS自动计算帧间隔,精准保留你设定的帧率变化
  • 必须保证时间戳文件的行数和H.264流的帧数完全匹配,否则会出现帧时间戳错位的问题

内容的提问来源于stack exchange,提问作者DanWheeler

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.29 21:32:09