mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-01-24 13:56:33 +02:00
Change duration computation to use time_base instead of TB/2.
Patch by Ivan Schreter, schreter gmx net Originally committed as revision 17570 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
a05aa821b6
commit
810c451b02
@ -3098,12 +3098,9 @@ typedef struct AVCodecParserContext {
|
||||
* It signals, how much longer the frame duration of the current frame
|
||||
* is compared to normal frame duration.
|
||||
*
|
||||
* frame_duration = (2 + repeat_pict) / (2*fps)
|
||||
* frame_duration = (1 + repeat_pict) * time_base
|
||||
*
|
||||
* It is used by codecs like H.264 to display telecined material.
|
||||
*
|
||||
* @note This field can also be set to -1 for half-frame duration in case
|
||||
* of field pictures.
|
||||
*/
|
||||
int repeat_pict; /* XXX: Put it back in AVCodecContext. */
|
||||
int64_t pts; /* pts of the current frame */
|
||||
|
@ -680,10 +680,7 @@ static void compute_frame_duration(int *pnum, int *pden, AVStream *st,
|
||||
*pnum = st->codec->time_base.num;
|
||||
*pden = st->codec->time_base.den;
|
||||
if (pc && pc->repeat_pict) {
|
||||
// NOTE: repeat_pict can be also -1 for half-frame durations,
|
||||
// e.g., in H.264 interlaced field picture stream
|
||||
*pden *= 2;
|
||||
*pnum = (*pnum) * (2 + pc->repeat_pict);
|
||||
*pnum = (*pnum) * (1 + pc->repeat_pict);
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
Loading…
x
Reference in New Issue
Block a user