OSDN Git Service

Set and use h->mb_xy in SVQ3 too.
authorAlexander Strange <astrange@ithinksw.com>
Sun, 11 May 2008 20:26:35 +0000 (20:26 +0000)
committerAlexander Strange <astrange@ithinksw.com>
Sun, 11 May 2008 20:26:35 +0000 (20:26 +0000)
Originally committed as revision 13129 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavcodec/svq3.c

index bb2e8eb..ac16cd8 100644 (file)
@@ -411,7 +411,7 @@ static int svq3_decode_mb (H264Context *h, unsigned int mb_type) {
   uint32_t vlc;
   int8_t *top, *left;
   MpegEncContext *const s = (MpegEncContext *) h;
-  const int mb_xy = s->mb_x + s->mb_y*s->mb_stride;
+  const int mb_xy = h->mb_xy;
   const int b_xy = 4*s->mb_x + 4*s->mb_y*h->b_stride;
 
   h->top_samples_available        = (s->mb_y == 0) ? 0x33FF : 0xFFFF;
@@ -681,9 +681,11 @@ static int svq3_decode_mb (H264Context *h, unsigned int mb_type) {
 
 static int svq3_decode_slice_header (H264Context *h) {
   MpegEncContext *const s = (MpegEncContext *) h;
-  const int mb_xy = s->mb_x + s->mb_y*s->mb_stride;
+  int mb_xy;
   int i, header;
 
+  mb_xy = h->mb_xy = s->mb_x + s->mb_y*s->mb_stride;
+
   header = get_bits (&s->gb, 8);
 
   if (((header & 0x9F) != 1 && (header & 0x9F) != 2) || (header & 0x60) == 0) {