[FFmpeg-cvslog] vc1: only disable interlaced b-frames for software decoding
Hendrik Leppkes
git at videolan.org
Sat Oct 20 00:08:27 CEST 2012
ffmpeg | branch: master | Hendrik Leppkes <h.leppkes at gmail.com> | Sun Sep 23 13:52:52 2012 +0200| [33f2a4942380184f3a28cbf2a36366c8ed105232] | committer: Michael Niedermayer
vc1: only disable interlaced b-frames for software decoding
Tested-by: Gwenole Beauchesne <gb.devel at gmail.com>
Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=33f2a4942380184f3a28cbf2a36366c8ed105232
---
libavcodec/vc1.c | 1 -
libavcodec/vc1dec.c | 3 +++
2 files changed, 3 insertions(+), 1 deletion(-)
diff --git a/libavcodec/vc1.c b/libavcodec/vc1.c
index c24951b..c1b73d6 100644
--- a/libavcodec/vc1.c
+++ b/libavcodec/vc1.c
@@ -1158,7 +1158,6 @@ int ff_vc1_parse_frame_header_adv(VC1Context *v, GetBitContext* gb)
if (v->bfraction == 0) {
return -1;
}
- return -1; // This codepath is still incomplete thus it is disabled
}
if (v->extended_mv)
v->mvrange = get_unary(gb, 0, 3);
diff --git a/libavcodec/vc1dec.c b/libavcodec/vc1dec.c
index 3832b2a..fde1dda 100644
--- a/libavcodec/vc1dec.c
+++ b/libavcodec/vc1dec.c
@@ -5603,6 +5603,9 @@ static int vc1_decode_frame(AVCodecContext *avctx, void *data,
goto err;
}
} else {
+ if (v->fcm == ILACE_FRAME && s->pict_type == AV_PICTURE_TYPE_B)
+ goto err; // This codepath is still incomplete thus it is disabled
+
ff_er_frame_start(s);
v->bits = buf_size * 8;
More information about the ffmpeg-cvslog
mailing list