Correct RGB vs. BGR confusion, the macros vec_mstrgb24 and vec_mstbgr24 each
authorAlan Curry <pacman@world.std.com>
Thu, 9 Feb 2006 00:29:35 +0000 (00:29 +0000)
committerDiego Biurrun <diego@biurrun.de>
Thu, 9 Feb 2006 00:29:35 +0000 (00:29 +0000)
do the opposite of what they say.
The vec_mstrgb24 and vec_mstbgr24 macros should be opposites and not perform
the same things.
patch by Alan Curry, pacman_at_world_dot_std_dot_com

Originally committed as revision 17564 to svn://svn.mplayerhq.hu/mplayer/trunk/postproc

postproc/yuv2rgb_altivec.c

index eea7134..2d2f776 100644 (file)
@@ -142,7 +142,7 @@ do {                                         \
       y2 = vec_perm (o3,o2,perm_rgb_3);         \
 } while(0)
 
-#define vec_mstrgb24(x0,x1,x2,ptr)        \
+#define vec_mstbgr24(x0,x1,x2,ptr)        \
 do {                                    \
   typeof(x0) _0,_1,_2;                  \
   vec_merge3 (x0,x1,x2,_0,_1,_2);       \
@@ -151,7 +151,7 @@ do {                                         \
   vec_st (_2, 0, ptr++);                \
 }  while (0);
 
-#define vec_mstbgr24(x0,x1,x2,ptr)       \
+#define vec_mstrgb24(x0,x1,x2,ptr)       \
 do {                                    \
   typeof(x0) _0,_1,_2;                  \
   vec_merge3 (x2,x1,x0,_0,_1,_2);       \
@@ -417,7 +417,7 @@ static int altivec_##name (SwsContext *c,                                  \
 #define out_rgba(a,b,c,ptr)  vec_mstrgb32(typeof(a),a,b,c,((typeof (a))AVV(0)),ptr)
 #define out_argb(a,b,c,ptr)  vec_mstrgb32(typeof(a),((typeof (a))AVV(0)),a,b,c,ptr)
 #define out_rgb24(a,b,c,ptr) vec_mstrgb24(a,b,c,ptr)
-#define out_bgr24(a,b,c,ptr) vec_mstbgr24(c,b,a,ptr)
+#define out_bgr24(a,b,c,ptr) vec_mstbgr24(a,b,c,ptr)
 
 DEFCSP420_CVT (yuv2_abgr32, out_abgr)
 #if 1