aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2014-10-03 12:32:21 +0200
committerMichael Niedermayer <michaelni@gmx.at>2014-10-03 12:55:17 +0200
commitd225b0f7aaa65eafccc87165130e1c4bab71708b (patch)
tree7a6a2daa3e9336e18f0a250e086f5f86dcbe1f58
parent105654e376a736d243aef4a1d121abebce912e6b (diff)
downloadffmpeg-d225b0f7aaa65eafccc87165130e1c4bab71708b.tar.gz
avcodec/h263dec: Fix decoding messenger.h263
Fixes http://samples.mplayerhq.hu/V-codecs/h263/h263-raw/messenger.h263 Fixes regression since b239f3f6 Found-by: Josh Allmann Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r--libavcodec/h263dec.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/libavcodec/h263dec.c b/libavcodec/h263dec.c
index b39a63bfa9..e5870faa29 100644
--- a/libavcodec/h263dec.c
+++ b/libavcodec/h263dec.c
@@ -336,6 +336,14 @@ static int decode_slice(MpegEncContext *s)
s->padding_bug_score += 32;
}
+ if (s->codec_id == AV_CODEC_ID_H263 &&
+ (s->workaround_bugs & FF_BUG_AUTODETECT) &&
+ get_bits_left(&s->gb) >= 64 &&
+ AV_RB64(s->gb.buffer_end - 8) == 0xCDCDCDCDFC7F0000) {
+
+ s->padding_bug_score += 32;
+ }
+
if (s->workaround_bugs & FF_BUG_AUTODETECT) {
if (s->padding_bug_score > -2 && !s->data_partitioning)
s->workaround_bugs |= FF_BUG_NO_PADDING;