OSDN Git Service

lavf: don't set AVCodecContext.has_b_frames in compute_pkt_fields().
authorAnton Khirnov <anton@khirnov.net>
Thu, 5 Jan 2012 15:55:33 +0000 (16:55 +0100)
committerAnton Khirnov <anton@khirnov.net>
Wed, 22 Feb 2012 18:31:06 +0000 (19:31 +0100)
It is not supposed to be done outside lavc.

This is basically a revert of 818062f2f346df30f4ec0c0c1f54e8025cc3a80a.

It is unclear what issue this was supposed to fix, if it reappears again
it will have to be fixed in a more proper place.

The wtv-demux test change is because the sample starts with a B-frame.

libavformat/utils.c
tests/ref/fate/wtv-demux

index 2417522..d6aab56 100644 (file)
@@ -854,10 +854,6 @@ static void compute_pkt_fields(AVFormatContext *s, AVStream *st,
     if((s->flags & AVFMT_FLAG_IGNDTS) && pkt->pts != AV_NOPTS_VALUE)
         pkt->dts= AV_NOPTS_VALUE;
 
-    if (st->codec->codec_id != CODEC_ID_H264 && pc && pc->pict_type == AV_PICTURE_TYPE_B)
-        //FIXME Set low_delay = 0 when has_b_frames = 1
-        st->codec->has_b_frames = 1;
-
     /* do we have a video B-frame ? */
     delay= st->codec->has_b_frames;
     presentation_delayed = 0;
index d20d041..6174604 100644 (file)
@@ -33,9 +33,9 @@
 1,    7199998,    7199998,   240000,      576, 0xeb4b0d93
 1,    7439998,    7439998,   240000,      576, 0xde1322f5
 1,    7679998,    7679998,   240000,      576, 0xc3131f35
+0,    7886331,    9486442,   400000,    41980, 0xd4920915
 1,    7919998,    7919998,   240000,      576, 0x708f1381
 1,    8159998,    8159998,   240000,      576, 0x1f00137e
-0,    8286442,    9486442,   400000,    41980, 0xd4920915
 1,    8399998,    8399998,   240000,      576, 0x05131eb0
 1,    8639998,    8639998,   240000,      576, 0x78151c22
 0,    8686442,    8686442,   400000,     7228, 0x1b141fa3