[FFmpeg-cvslog] Fix Intel I.263 "Strict H.263 compliance" file playback / issue2449

XV git at videolan.org
Fri Mar 25 01:49:46 CET 2011


ffmpeg | branch: master | XV <?@?> | Thu Mar 24 22:29:31 2011 +0100| [b14748dd7563b5cf026a198bd011f70d3af5f4e3] | committer: Michael Niedermayer

Fix Intel I.263 "Strict H.263 compliance"  file playback / issue2449

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=b14748dd7563b5cf026a198bd011f70d3af5f4e3
---

 libavcodec/intelh263dec.c |    8 ++++++--
 1 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/libavcodec/intelh263dec.c b/libavcodec/intelh263dec.c
index 00b15ce..42a51e3 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,11 @@ 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");




More information about the ffmpeg-cvslog mailing list