|
|
@ -826,7 +826,10 @@ void ff_compute_frame_duration(int *pnum, int *pden, AVStream *st, |
|
|
|
*pnum = st->codec->time_base.num; |
|
|
|
*pnum = st->codec->time_base.num; |
|
|
|
*pden = st->codec->time_base.den; |
|
|
|
*pden = st->codec->time_base.den; |
|
|
|
if (pc && pc->repeat_pict) { |
|
|
|
if (pc && pc->repeat_pict) { |
|
|
|
*pnum = (*pnum) * (1 + pc->repeat_pict); |
|
|
|
if (*pnum > INT_MAX / (1 + pc->repeat_pict)) |
|
|
|
|
|
|
|
*pden /= 1 + pc->repeat_pict; |
|
|
|
|
|
|
|
else |
|
|
|
|
|
|
|
*pnum *= 1 + pc->repeat_pict; |
|
|
|
} |
|
|
|
} |
|
|
|
//If this codec can be interlaced or progressive then we need a parser to compute duration of a packet
|
|
|
|
//If this codec can be interlaced or progressive then we need a parser to compute duration of a packet
|
|
|
|
//Thus if we have no parser in such case leave duration undefined.
|
|
|
|
//Thus if we have no parser in such case leave duration undefined.
|
|
|
|