Fix colors for YV12 case (u/v planes are swapped)
authorRoberto Togni <r_togni@tiscali.it>
Thu, 7 Apr 2005 22:02:28 +0000 (22:02 +0000)
committerRoberto Togni <r_togni@tiscali.it>
Thu, 7 Apr 2005 22:02:28 +0000 (22:02 +0000)
Fixes locoRGBA.avi (the file is really YV12, even if it's called RGBA)

Originally committed as revision 4111 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavcodec/loco.c

index cace4bb..a012554 100644 (file)
@@ -188,11 +188,11 @@ static int decode_frame(AVCodecContext *avctx,
         decoded = loco_decode_plane(l, p->data[0], avctx->width, avctx->height,
                                     p->linesize[0], buf, buf_size, 1);
         buf += decoded; buf_size -= decoded;
-        decoded = loco_decode_plane(l, p->data[1], avctx->width / 2, avctx->height / 2,
-                                    p->linesize[1], buf, buf_size, 1);
-        buf += decoded; buf_size -= decoded;
         decoded = loco_decode_plane(l, p->data[2], avctx->width / 2, avctx->height / 2,
                                     p->linesize[2], buf, buf_size, 1);
+        buf += decoded; buf_size -= decoded;
+        decoded = loco_decode_plane(l, p->data[1], avctx->width / 2, avctx->height / 2,
+                                    p->linesize[1], buf, buf_size, 1);
         break;
     case LOCO_CRGB: case LOCO_RGB:
         decoded = loco_decode_plane(l, p->data[0], avctx->width, avctx->height,