【发布时间】:2014-03-27 22:43:26
【问题描述】:
- 我有一个来自 FormatContext 的视频 AVStream。 [avstream]
- 读取数据包
- 如果数据包来自视频,则对其进行解码。
-
现在显示以下内容。
Packet DTS -> 7200.00 [ from packet ] Frame PTS -> -9223372036854775808.000000 stream time_base -> 0.000011 Offset -> 0.080000 [ pts * time_base ]
代码:
double pts = (double) packet.dts;
printf (" dts of packet %f , Frame pts: %f, timeBase %f Offset: %f ",
pts,
(double)pFrame->pts,
av_q2d (avstream->time_base) ,
pts
*av_q2d(avstream->time_base));
- 为什么 Frame pts 为负数?这是预期的行为吗?
- 我是否需要考虑来自数据包 DTS 的帧 pts [ 即:帧 pts = 数据包 dts]
【问题讨论】:
-
ffprobe.c 的源代码可能很有趣,因为它输出类似的东西,不是吗?
标签: c ffmpeg libavcodec