VC1: Fix skiploopfilter=all.
authorReimar Döffinger <Reimar.Doeffinger@gmx.de>
Wed, 21 Mar 2012 21:52:33 +0000 (22:52 +0100)
committerReimar Döffinger <Reimar.Doeffinger@gmx.de>
Thu, 22 Mar 2012 18:41:09 +0000 (19:41 +0100)
It is currently only handled in the parser code for WMV/ASF style
header, but not the one used in the bytestream format used when
muxed into MPEG-TS as on e.g. BluRay.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
libavcodec/vc1.c

index c5979f4..937fc1a 100644 (file)
@@ -535,6 +535,8 @@ int ff_vc1_decode_entry_point(AVCodecContext *avctx, VC1Context *v, GetBitContex
     v->panscanflag    = get_bits1(gb);
     v->refdist_flag   = get_bits1(gb);
     v->s.loop_filter  = get_bits1(gb);
+    if (v->s.avctx->skip_loop_filter >= AVDISCARD_ALL)
+        v->s.loop_filter = 0;
     v->fastuvmc       = get_bits1(gb);
     v->extended_mv    = get_bits1(gb);
     v->dquant         = get_bits(gb, 2);