From 7b5fdd04de66710a62fa7a763ddd3c0d2f8676ea Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Fri, 4 Jan 2013 04:49:16 +0100 Subject: [PATCH] locodec: flip RGBA Fixes Ticket1222 Signed-off-by: Michael Niedermayer --- libavcodec/loco.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/libavcodec/loco.c b/libavcodec/loco.c index 14b2fe93b81..b437aaa214f 100644 --- a/libavcodec/loco.c +++ b/libavcodec/loco.c @@ -216,17 +216,17 @@ static int decode_frame(AVCodecContext *avctx, -p->linesize[0], buf, buf_size, 3); break; case LOCO_CRGBA: case LOCO_RGBA: - decoded = loco_decode_plane(l, p->data[0], avctx->width, avctx->height, - p->linesize[0], buf, buf_size, 4); + decoded = loco_decode_plane(l, p->data[0] + p->linesize[0]*(avctx->height-1), avctx->width, avctx->height, + -p->linesize[0], buf, buf_size, 4); ADVANCE_BY_DECODED; - decoded = loco_decode_plane(l, p->data[0] + 1, avctx->width, avctx->height, - p->linesize[0], buf, buf_size, 4); + decoded = loco_decode_plane(l, p->data[0] + p->linesize[0]*(avctx->height-1) + 1, avctx->width, avctx->height, + -p->linesize[0], buf, buf_size, 4); ADVANCE_BY_DECODED; - decoded = loco_decode_plane(l, p->data[0] + 2, avctx->width, avctx->height, - p->linesize[0], buf, buf_size, 4); + decoded = loco_decode_plane(l, p->data[0] + p->linesize[0]*(avctx->height-1) + 2, avctx->width, avctx->height, + -p->linesize[0], buf, buf_size, 4); ADVANCE_BY_DECODED; - decoded = loco_decode_plane(l, p->data[0] + 3, avctx->width, avctx->height, - p->linesize[0], buf, buf_size, 4); + decoded = loco_decode_plane(l, p->data[0] + p->linesize[0]*(avctx->height-1) + 3, avctx->width, avctx->height, + -p->linesize[0], buf, buf_size, 4); break; } stop: -- 2.39.5