Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/156.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何使用ffmpeg获得正确的帧持续时间?_C++_Ffmpeg_Timestamp_Duration - Fatal编程技术网

C++ 如何使用ffmpeg获得正确的帧持续时间?

C++ 如何使用ffmpeg获得正确的帧持续时间?,c++,ffmpeg,timestamp,duration,C++,Ffmpeg,Timestamp,Duration,在我的文件“Video.avi”中,Video AVFrame中的所有pkt_duration属性都等于1。 但是AVFrame中第一个视频帧的最佳工作时间戳属性是:0、3、4、5、7。。etc,这意味着例如第一帧的持续时间是3而不是1。(时基为1/30) 有没有比读取下一帧并获取其最大努力时间戳和计算两个最大努力时间戳之间的差值更好的方法来了解帧的正确持续时间? 如果没有,是否有一种方法可以只读取下一个数据包的报头,以获得其最佳时间戳,而不浪费时间解压缩任何内容? 谢谢你的帮助

在我的文件“Video.avi”中,Video AVFrame中的所有pkt_duration属性都等于1。
但是AVFrame中第一个视频帧的最佳工作时间戳属性是:0、3、4、5、7。。etc,这意味着例如第一帧的持续时间是3而不是1。(时基为1/30)
有没有比读取下一帧并获取其最大努力时间戳和计算两个最大努力时间戳之间的差值更好的方法来了解帧的正确持续时间?
如果没有,是否有一种方法可以只读取下一个数据包的报头,以获得其最佳时间戳,而不浪费时间解压缩任何内容?
谢谢你的帮助