aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Storsjö <martin@martin.st>2013-05-06 14:48:25 +0300
committerMartin Storsjö <martin@martin.st>2013-05-06 17:40:25 +0300
commit6e293d111fcad27d52a2ef5ad77b1009f1743396 (patch)
tree3bb880f0a2cb150a0d75ce8acd57069f53164354
parent6c5eac9a603a91a707d030d96ba97e2ef6b3ce50 (diff)
downloadffmpeg-6e293d111fcad27d52a2ef5ad77b1009f1743396.tar.gz
swscale: Use alpha from the right row in yuva2rgba_c
Every other pixel had the alpha channel taken from the wrong row. This fixes bug 504. CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
-rw-r--r--libswscale/yuv2rgb.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/libswscale/yuv2rgb.c b/libswscale/yuv2rgb.c
index 6494d128f5..6c65cc2d2f 100644
--- a/libswscale/yuv2rgb.c
+++ b/libswscale/yuv2rgb.c
@@ -264,16 +264,16 @@ YUV2RGBFUNC(yuva2rgba_c, uint32_t, 1)
PUTRGBA(dst_2, py_2, pa_2, 0, 24);
LOADCHROMA(1);
- PUTRGBA(dst_2, py_2, pa_1, 1, 24);
- PUTRGBA(dst_1, py_1, pa_2, 1, 24);
+ PUTRGBA(dst_2, py_2, pa_2, 1, 24);
+ PUTRGBA(dst_1, py_1, pa_1, 1, 24);
LOADCHROMA(2);
PUTRGBA(dst_1, py_1, pa_1, 2, 24);
PUTRGBA(dst_2, py_2, pa_2, 2, 24);
LOADCHROMA(3);
- PUTRGBA(dst_2, py_2, pa_1, 3, 24);
- PUTRGBA(dst_1, py_1, pa_2, 3, 24);
+ PUTRGBA(dst_2, py_2, pa_2, 3, 24);
+ PUTRGBA(dst_1, py_1, pa_1, 3, 24);
pa_1 += 8;
pa_2 += 8;
ENDYUV2RGBLINE(8, 0)
@@ -282,8 +282,8 @@ ENDYUV2RGBLINE(8, 0)
PUTRGBA(dst_2, py_2, pa_2, 0, 24);
LOADCHROMA(1);
- PUTRGBA(dst_2, py_2, pa_1, 1, 24);
- PUTRGBA(dst_1, py_1, pa_2, 1, 24);
+ PUTRGBA(dst_2, py_2, pa_2, 1, 24);
+ PUTRGBA(dst_1, py_1, pa_1, 1, 24);
pa_1 += 4;
pa_2 += 4;
ENDYUV2RGBLINE(8, 1)