Mercurial > mplayer.hg
changeset 12395:b969547bb0b1
bigendian fix by (Romain Dolbeau <dolbeau at irisa dot fr>)
with #if defined(WORDS_BIGENDIAN) && (WORDS_BIGENDIAN == 1) -> #ifdef WORDS_BIGENDIAN by me
author | michael |
---|---|
date | Sun, 02 May 2004 14:26:28 +0000 |
parents | b3ff1a576b8c |
children | a4f9c64d9d75 |
files | postproc/rgb2rgb_template.c |
diffstat | 1 files changed, 10 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/postproc/rgb2rgb_template.c Sun May 02 14:16:13 2004 +0000 +++ b/postproc/rgb2rgb_template.c Sun May 02 14:26:28 2004 +0000 @@ -1532,8 +1532,13 @@ int i, *idst = (int32_t *) dst; const uint8_t *yc = ysrc, *uc = usrc, *vc = vsrc; for(i = 0; i < chromWidth; i++){ +#ifdef WORDS_BIGENDIAN + *idst++ = (yc[0] << 24)+ (uc[0] << 16) + + (yc[1] << 8) + (vc[0] << 0); +#else *idst++ = yc[0] + (uc[0] << 8) + (yc[1] << 16) + (vc[0] << 24); +#endif yc += 2; uc++; vc++; @@ -1634,8 +1639,13 @@ int i, *idst = (int32_t *) dst; const uint8_t *yc = ysrc, *uc = usrc, *vc = vsrc; for(i = 0; i < chromWidth; i++){ +#ifdef WORDS_BIGENDIAN + *idst++ = (uc[0] << 24)+ (yc[0] << 16) + + (vc[0] << 8) + (yc[1] << 0); +#else *idst++ = uc[0] + (yc[0] << 8) + (vc[0] << 16) + (yc[1] << 24); +#endif yc += 2; uc++; vc++;