lowres width/height cleanup 3rd try
[ffmpeg.git] / libavcodec / h263dec.c
index 6ba0564..f968005 100644 (file)
@@ -37,10 +37,8 @@ int ff_h263_decode_init(AVCodecContext *avctx)
     s->avctx = avctx;
     s->out_format = FMT_H263;
 
-    s->width  = avctx->width;
-    s->height = avctx->height;
-    avctx->width = -((-s->width )>>avctx->lowres);
-    avctx->height= -((-s->height)>>avctx->lowres);
+    s->width  = avctx->coded_width;
+    s->height = avctx->coded_height;
     s->workaround_bugs= avctx->workaround_bugs;
 
     // set defaults
@@ -639,8 +637,8 @@ retry:
         /* FIXME: By the way H263 decoder is evolving it should have */
         /* an H263EncContext                                         */
     
-    if (   -((-s->width )>>avctx->lowres) != avctx->width 
-        || -((-s->height)>>avctx->lowres) != avctx->height) {
+    if (   s->width  != avctx->coded_width 
+        || s->height != avctx->coded_height) {
         /* H.263 could change picture size any time */
         ParseContext pc= s->parse_context; //FIXME move these demuxng hack to avformat
         s->parse_context.buffer=0;
@@ -648,8 +646,7 @@ retry:
         s->parse_context= pc;
     }
     if (!s->context_initialized) {
-        avctx->width  = -((-s->width)>>avctx->lowres);
-        avctx->height = -((-s->height)>>avctx->lowres);
+        avcodec_set_dimensions(avctx, s->width, s->height);
 
         goto retry;
     }