如何根据可用帧修复或更改 mp4 视频时间戳(帧速率)?

如何根据可用帧修复或更改 mp4 视频时间戳(帧速率)?

我有一个创建为 x264、26 fps、20MB 的视频文件。

用于转换的命令avconv -i infile.mp4 -c:v libx265 -c:a libmp3lame outfile.mp4

将其转换为 x265 HEVC 后,它会得到错误的时间戳,因此帧速率为 1 fps,它有 1MB,帧看起来不错,只是时间混乱了。

警告消息示例:

mp4 @ 0x10e8660] Non-monotonous DTS in output stream 0:0; 
previous: 114400515, current: 454496; changing to 114400516. 
This may result in incorrect timestamps in the output file.

Past duration 0.644524 too large

x264 文件报告持续时间为 23 秒,新的 x265 为 11 分 46 秒……

这不会解决它:avconv -i infile.mp4 -c:v copy -c:a copy -r 26 outfile.mp4

观察:mp4 是使用 Android 上的“DU Recorder”创建的,捕获屏幕。

相关内容