我一直在寻找这个,似乎无法找到它。我有一个RTSP流,我正在使用ffmpeg。我可以使用的对象包括AVPacket,AVFrame,AVCodecContext和AVFormatContext。我想得到一个框架的绝对时间。 (理想情况下,粒度小至毫秒,但这并非完全必要)。
使用ffmpeg库有一种简单的方法吗?我查看了av_frame_get_best_effort_timestamp
以及codec_context->time_base
,但这似乎在视频开始后的几秒钟内给出了答案,而且我不一定知道视频何时开始。
答案 0 :(得分:1)
使用int64_t AVFormatContext::start_time_realtime
,然后添加自流开始以来的帧时间。
<强> [编辑] 强>
另请注意,start_time_realtime
以毫秒表示,AVFrame::best_effort_timestamp
表示为AVStream->time_base units