swscale/swscale_unscaled: Fix rounding difference with RGBA output between little and big endian

Fixes fate/dds-rgb16 on big endian

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
Michael Niedermayer 2015-06-29 13:51:43 +02:00
parent d9deae04a7
commit f6ab967eae
2 changed files with 6 additions and 1 deletions

View File

@ -1243,6 +1243,11 @@ static rgbConvFn findRgbConvFn(SwsContext *c)
if ((dstFormat == AV_PIX_FMT_RGB32_1 || dstFormat == AV_PIX_FMT_BGR32_1) && !isRGBA32(srcFormat) && ALT32_CORR<0)
return NULL;
// Maintain symmetry between endianness
if (c->flags & SWS_BITEXACT)
if ((dstFormat == AV_PIX_FMT_RGB32 || dstFormat == AV_PIX_FMT_BGR32 ) && !isRGBA32(srcFormat) && ALT32_CORR>0)
return NULL;
return conv;
}

View File

@ -1,2 +1,2 @@
#tb 0: 1/25
0, 0, 0, 1, 32768, 0x1ec4fed2
0, 0, 0, 1, 32768, 0x7991785d