Mercurial > mplayer.hg
comparison libswscale/yuv2rgb_altivec.c @ 28739:d6b317bddd62
Make AltiVec code write alpha as 255 instead of 0 when converting to RGBA
author | reimar |
---|---|
date | Sun, 01 Mar 2009 11:35:00 +0000 |
parents | 61e4dbf0da9e |
children | 1e56ea9937ce |
comparison
equal
deleted
inserted
replaced
28738:730912eb74d3 | 28739:d6b317bddd62 |
---|---|
235 #define vec_packclp(x,y) \ | 235 #define vec_packclp(x,y) \ |
236 (vector unsigned char)vec_packs \ | 236 (vector unsigned char)vec_packs \ |
237 ((vector unsigned short)vec_max (x,((vector signed short) {0})), \ | 237 ((vector unsigned short)vec_max (x,((vector signed short) {0})), \ |
238 (vector unsigned short)vec_max (y,((vector signed short) {0}))) | 238 (vector unsigned short)vec_max (y,((vector signed short) {0}))) |
239 | 239 |
240 //#define out_pixels(a,b,c,ptr) vec_mstrgb32(__typeof__(a),((__typeof__ (a)){0}),a,a,a,ptr) | 240 //#define out_pixels(a,b,c,ptr) vec_mstrgb32(__typeof__(a),((__typeof__ (a)){255}),a,a,a,ptr) |
241 | 241 |
242 | 242 |
243 static inline void cvtyuvtoRGB (SwsContext *c, | 243 static inline void cvtyuvtoRGB (SwsContext *c, |
244 vector signed short Y, vector signed short U, vector signed short V, | 244 vector signed short Y, vector signed short U, vector signed short V, |
245 vector signed short *R, vector signed short *G, vector signed short *B) | 245 vector signed short *R, vector signed short *G, vector signed short *B) |
436 } \ | 436 } \ |
437 return srcSliceH; \ | 437 return srcSliceH; \ |
438 } | 438 } |
439 | 439 |
440 | 440 |
441 #define out_abgr(a,b,c,ptr) vec_mstrgb32(__typeof__(a),((__typeof__ (a)){0}),c,b,a,ptr) | 441 #define out_abgr(a,b,c,ptr) vec_mstrgb32(__typeof__(a),((__typeof__ (a)){255}),c,b,a,ptr) |
442 #define out_bgra(a,b,c,ptr) vec_mstrgb32(__typeof__(a),c,b,a,((__typeof__ (a)){0}),ptr) | 442 #define out_bgra(a,b,c,ptr) vec_mstrgb32(__typeof__(a),c,b,a,((__typeof__ (a)){255}),ptr) |
443 #define out_rgba(a,b,c,ptr) vec_mstrgb32(__typeof__(a),a,b,c,((__typeof__ (a)){0}),ptr) | 443 #define out_rgba(a,b,c,ptr) vec_mstrgb32(__typeof__(a),a,b,c,((__typeof__ (a)){255}),ptr) |
444 #define out_argb(a,b,c,ptr) vec_mstrgb32(__typeof__(a),((__typeof__ (a)){0}),a,b,c,ptr) | 444 #define out_argb(a,b,c,ptr) vec_mstrgb32(__typeof__(a),((__typeof__ (a)){255}),a,b,c,ptr) |
445 #define out_rgb24(a,b,c,ptr) vec_mstrgb24(a,b,c,ptr) | 445 #define out_rgb24(a,b,c,ptr) vec_mstrgb24(a,b,c,ptr) |
446 #define out_bgr24(a,b,c,ptr) vec_mstbgr24(a,b,c,ptr) | 446 #define out_bgr24(a,b,c,ptr) vec_mstbgr24(a,b,c,ptr) |
447 | 447 |
448 DEFCSP420_CVT (yuv2_abgr, out_abgr) | 448 DEFCSP420_CVT (yuv2_abgr, out_abgr) |
449 #if 1 | 449 #if 1 |