Fix rgb15/16 vs. bgr part1.
Originally committed as revision 27516 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
This commit is contained in:
parent
ae9e0e8391
commit
688b5e8020
@ -600,16 +600,16 @@ SwsFunc yuv2rgb_get_func_ptr (SwsContext *c)
|
|||||||
switch(c->dstFormat){
|
switch(c->dstFormat){
|
||||||
case PIX_FMT_RGB32: return yuv420_rgb32_MMX2;
|
case PIX_FMT_RGB32: return yuv420_rgb32_MMX2;
|
||||||
case PIX_FMT_BGR24: return yuv420_rgb24_MMX2;
|
case PIX_FMT_BGR24: return yuv420_rgb24_MMX2;
|
||||||
case PIX_FMT_BGR565: return yuv420_rgb16_MMX2;
|
case PIX_FMT_RGB565: return yuv420_rgb16_MMX2;
|
||||||
case PIX_FMT_BGR555: return yuv420_rgb15_MMX2;
|
case PIX_FMT_RGB555: return yuv420_rgb15_MMX2;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (c->flags & SWS_CPU_CAPS_MMX){
|
if (c->flags & SWS_CPU_CAPS_MMX){
|
||||||
switch(c->dstFormat){
|
switch(c->dstFormat){
|
||||||
case PIX_FMT_RGB32: return yuv420_rgb32_MMX;
|
case PIX_FMT_RGB32: return yuv420_rgb32_MMX;
|
||||||
case PIX_FMT_BGR24: return yuv420_rgb24_MMX;
|
case PIX_FMT_BGR24: return yuv420_rgb24_MMX;
|
||||||
case PIX_FMT_BGR565: return yuv420_rgb16_MMX;
|
case PIX_FMT_RGB565: return yuv420_rgb16_MMX;
|
||||||
case PIX_FMT_BGR555: return yuv420_rgb15_MMX;
|
case PIX_FMT_RGB555: return yuv420_rgb15_MMX;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
@ -675,7 +675,14 @@ static int div_round (int dividend, int divisor)
|
|||||||
|
|
||||||
int yuv2rgb_c_init_tables (SwsContext *c, const int inv_table[4], int fullRange, int brightness, int contrast, int saturation)
|
int yuv2rgb_c_init_tables (SwsContext *c, const int inv_table[4], int fullRange, int brightness, int contrast, int saturation)
|
||||||
{
|
{
|
||||||
const int isRgb = isBGR(c->dstFormat);
|
const int isRgb = c->dstFormat==PIX_FMT_RGB32
|
||||||
|
|| c->dstFormat==PIX_FMT_BGR24
|
||||||
|
|| c->dstFormat==PIX_FMT_RGB565
|
||||||
|
|| c->dstFormat==PIX_FMT_RGB555
|
||||||
|
|| c->dstFormat==PIX_FMT_RGB8
|
||||||
|
|| c->dstFormat==PIX_FMT_RGB4
|
||||||
|
|| c->dstFormat==PIX_FMT_RGB4_BYTE
|
||||||
|
|| c->dstFormat==PIX_FMT_MONOBLACK;
|
||||||
const int bpp = fmt_depth(c->dstFormat);
|
const int bpp = fmt_depth(c->dstFormat);
|
||||||
int i;
|
int i;
|
||||||
uint8_t table_Y[1024];
|
uint8_t table_Y[1024];
|
||||||
|
Loading…
x
Reference in New Issue
Block a user