aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec/loco.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2013-01-04 04:49:16 +0100
committerMichael Niedermayer <michaelni@gmx.at>2013-01-04 04:49:16 +0100
commit7b5fdd04de66710a62fa7a763ddd3c0d2f8676ea (patch)
tree75dc659ecad49cce2ddae7eb18bbd27248bbd9ff /libavcodec/loco.c
parent9e36d9e4ed2a43c363a54d963eb399a6e9623365 (diff)
downloadffmpeg-7b5fdd04de66710a62fa7a763ddd3c0d2f8676ea.tar.gz
locodec: flip RGBA
Fixes Ticket1222 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec/loco.c')
-rw-r--r--libavcodec/loco.c16
1 files changed, 8 insertions, 8 deletions
diff --git a/libavcodec/loco.c b/libavcodec/loco.c
index 14b2fe93b8..b437aaa214 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: