2

我有一个视频文件,带有这个视频流:

ffmpeg -i original.avi

流 #0:0:视频:h264(主)(H264 / 0x34363248)、yuv420p(电视、bt709、渐进式)、1920x1080 [SAR 1:1 DAR 16:9]、4204 kb/s、59.94 fps、59.94 tbr、 59.94 TB,59.94 TB

我可以通过运行获取 PTS 信息:

ffprobe -v 0 -of csv=p=0 -select_streams v -show_entries packet=pts_time original.avi

我逐行得到每一帧的PTS:

0.016683
0.116783
0.033367
0.050050
0.166833
0.083417
0.100100
0.216883
...

现在我需要将视频编码为 H264 并且之后能够获得相同的 PTS 信息,所以我使用了:

ffmpeg -i original.avi -vcodec libx264 output.avi

使用此视频流:

流 #0:0:视频:h264(高)(H264 / 0x34363248)、yuv420p(渐进式)、1920x1080 [SAR 1:1 DAR 16:9]、2289 kb/s、59.94 fps、59.94 tbr、59.94 tbn、119.88待定

但是,当我尝试从中获取 PTS 信息时,output.avi我只得到:

N/A
N/A
N/A
N/A
N/A
N/A
...

为了保留 PTS 信息,我应该在命令中进行哪些更改?

4

1 回答 1

2

AVI 并不真正支持 H.264。

有一些技巧可以让它工作,但你会有一些副作用也就不足为奇了。考虑改用 MP4 或 MKV。

于 2019-03-01T15:16:41.057 回答