Changeset 62977ca46b92d769a7626605a7153f85ceb8bba5

Show
Ignore:
Timestamp:
03/05/08 16:00:54 (6 months ago)
Author:
Jean-Paul Saman <jpsaman@videolan.org>
git-committer:
Jean-Paul Saman <jpsaman@videolan.org> 1204729254 +0100
git-parent:

[5b2c271150699042f2e3ed0f895e88b2e5b68eaf]

git-author:
Jean-Paul Saman <jpsaman@videolan.org> 1204729254 +0100
Message:

Fix BGR <-> RGB endianess problem with PNG's loading/converting/copying on big-endian machines.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • modules/codec/ffmpeg/ffmpeg.c

    r2ae1859 r62977ca  
    494494    /* Packed RGB formats */ 
    495495#if defined(WORDS_BIGENDIAN) 
     496    { VLC_FOURCC('R','G','B','8'), PIX_FMT_BGR8 }, 
    496497    { VLC_FOURCC('R','V','1','5'), PIX_FMT_BGR555 }, 
    497498    { VLC_FOURCC('R','V','1','6'), PIX_FMT_BGR565 }, 
    498499    { VLC_FOURCC('R','V','2','4'), PIX_FMT_BGR24 }, 
    499500#else 
     501    { VLC_FOURCC('R','G','B','8'), PIX_FMT_RGB8 }, 
    500502    { VLC_FOURCC('R','V','1','5'), PIX_FMT_RGB555 }, 
    501503    { VLC_FOURCC('R','V','1','6'), PIX_FMT_RGB565 }, 
  • modules/codec/ffmpeg/video.c

    r791b8ca r62977ca  
    125125        return VLC_FOURCC('Y','U','Y','2'); 
    126126 
     127#if defined(WORDS_BIGENDIAN) 
     128    case PIX_FMT_BGR8: 
     129        return VLC_FOURCC('R','G','B','8'); 
     130    case PIX_FMT_BGR555: 
     131        return VLC_FOURCC('R','V','1','5'); 
     132    case PIX_FMT_BGR565: 
     133        return VLC_FOURCC('R','V','1','6'); 
     134    case PIX_FMT_BGR24: 
     135        return VLC_FOURCC('R','V','2','4'); 
     136#else 
     137    case PIX_FMT_RGB8: 
     138        return VLC_FOURCC('R','G','B','8'); 
    127139    case PIX_FMT_RGB555: 
    128140        return VLC_FOURCC('R','V','1','5'); 
     
    131143    case PIX_FMT_RGB24: 
    132144        return VLC_FOURCC('R','V','2','4'); 
     145#endif 
    133146    case PIX_FMT_RGBA32: 
    134147        return VLC_FOURCC('R','V','3','2'); 
     
    142155    case PIX_FMT_YUV410P: 
    143156    case PIX_FMT_YUV411P: 
    144     case PIX_FMT_BGR24: 
    145157    default: 
    146158        return 0; 
     
    839851        case PIX_FMT_YUV410P: 
    840852        case PIX_FMT_YUV411P: 
     853        case PIX_FMT_RGB32: 
     854        case PIX_FMT_RGB24: 
     855        case PIX_FMT_RGB8: 
     856        case PIX_FMT_BGR32: 
    841857        case PIX_FMT_BGR24: 
     858        case PIX_FMT_BGR8: 
    842859        case PIX_FMT_PAL8: 
    843860            for( i = 0; i < p_pic->i_planes; i++ )