summaryrefslogtreecommitdiff
path: root/libavcodec/intelh263dec.c
diff options
context:
space:
mode:
authorAnton Khirnov <anton@khirnov.net>2011-06-09 22:29:40 +0200
committerAnton Khirnov <anton@khirnov.net>2011-06-09 22:53:17 +0200
commit95a05030ca73076a8e5127e69596ade5964af60b (patch)
tree186ce668df3ff1aed6b386046bd5c5c8620dff56 /libavcodec/intelh263dec.c
parentc673c90515ab553c9ed9f4e1997600d1b3e4e2bb (diff)
intelh263dec: fix "Strict H.263 compliance" file playback
fixes issue2449 patch submitted by xvid_fan freenet de
Diffstat (limited to 'libavcodec/intelh263dec.c')
-rw-r--r--libavcodec/intelh263dec.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/libavcodec/intelh263dec.c b/libavcodec/intelh263dec.c
index c3d4d26872..b60608cd31 100644
--- a/libavcodec/intelh263dec.c
+++ b/libavcodec/intelh263dec.c
@@ -46,7 +46,7 @@ int ff_intel_h263_decode_picture_header(MpegEncContext *s)
skip_bits1(&s->gb); /* freeze picture release off */
format = get_bits(&s->gb, 3);
- if (format != 7) {
+ if (format == 0 || format == 6) {
av_log(s->avctx, AV_LOG_ERROR, "Intel H263 free format not supported\n");
return -1;
}
@@ -64,7 +64,10 @@ int ff_intel_h263_decode_picture_header(MpegEncContext *s)
s->obmc= get_bits1(&s->gb);
s->pb_frame = get_bits1(&s->gb);
- if(format == 7){
+ if (format < 6) {
+ s->width = h263_format[format][0];
+ s->height = h263_format[format][1];
+ } else {
format = get_bits(&s->gb, 3);
if(format == 0 || format == 7){
av_log(s->avctx, AV_LOG_ERROR, "Wrong Intel H263 format\n");