avformat/utils: use r_frame_rate only in the demuxer for ff_compute_frame_duration()
authorMichael Niedermayer <michaelni@gmx.at>
Sun, 14 Dec 2014 00:36:29 +0000 (01:36 +0100)
committerMichael Niedermayer <michaelni@gmx.at>
Sun, 14 Dec 2014 01:12:49 +0000 (02:12 +0100)
This is primarly to maintain current behavior when r_frame_rate is set for muxers
and could be reverted if it has some advantage

Fixes Ticket3629 part1

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
libavformat/utils.c

index 80e6be9..9328d6b 100644 (file)
@@ -745,7 +745,7 @@ void ff_compute_frame_duration(AVFormatContext *s, int *pnum, int *pden, AVStrea
     *pden = 0;
     switch (st->codec->codec_type) {
     case AVMEDIA_TYPE_VIDEO:
-        if (st->r_frame_rate.num && !pc) {
+        if (st->r_frame_rate.num && !pc && s->iformat) {
             *pnum = st->r_frame_rate.den;
             *pden = st->r_frame_rate.num;
         } else if (st->time_base.num * 1000LL > st->time_base.den) {