@ -70,13 +70,13 @@
: " % " REG_d , " % " REG_S \
) ;
static inline void RENAME ( yuv2yuvX ) ( SwsContext * c , const int16_t * lumFilter ,
const int16_t * * lumSrc , int lumFilterSize ,
const int16_t * chrFilter , const int16_t * * chrUSrc ,
const int16_t * * chrVSrc ,
int chrFilterSize , const int16_t * * alpSrc ,
uint8_t * dest , uint8_t * uDest , uint8_t * vDest ,
uint8_t * aDest , int dstW , int chrDstW )
static void RENAME ( yuv2yuvX ) ( SwsContext * c , const int16_t * lumFilter ,
const int16_t * * lumSrc , int lumFilterSize ,
const int16_t * chrFilter , const int16_t * * chrUSrc ,
const int16_t * * chrVSrc ,
int chrFilterSize , const int16_t * * alpSrc ,
uint8_t * dest , uint8_t * uDest , uint8_t * vDest ,
uint8_t * aDest , int dstW , int chrDstW )
{
if ( uDest ) {
x86_reg uv_off = c - > uv_off ;
@ -151,13 +151,13 @@ static inline void RENAME(yuv2yuvX)(SwsContext *c, const int16_t *lumFilter,
: " % " REG_a , " % " REG_d , " % " REG_S \
) ;
static inline void RENAME ( yuv2yuvX_ar ) ( SwsContext * c , const int16_t * lumFilter ,
const int16_t * * lumSrc , int lumFilterSize ,
const int16_t * chrFilter , const int16_t * * chrUSrc ,
const int16_t * * chrVSrc ,
int chrFilterSize , const int16_t * * alpSrc ,
uint8_t * dest , uint8_t * uDest , uint8_t * vDest ,
uint8_t * aDest , int dstW , int chrDstW )
static void RENAME ( yuv2yuvX_ar ) ( SwsContext * c , const int16_t * lumFilter ,
const int16_t * * lumSrc , int lumFilterSize ,
const int16_t * chrFilter , const int16_t * * chrUSrc ,
const int16_t * * chrVSrc ,
int chrFilterSize , const int16_t * * alpSrc ,
uint8_t * dest , uint8_t * uDest , uint8_t * vDest ,
uint8_t * aDest , int dstW , int chrDstW )
{
if ( uDest ) {
x86_reg uv_off = c - > uv_off ;
@ -171,11 +171,11 @@ static inline void RENAME(yuv2yuvX_ar)(SwsContext *c, const int16_t *lumFilter,
YSCALEYUV2YV12X_ACCURATE ( LUM_MMX_FILTER_OFFSET , dest , dstW , 0 )
}
static inline void RENAME ( yuv2yuv1 ) ( SwsContext * c , const int16_t * lumSrc ,
const int16_t * chrUSrc , const int16_t * chrVSrc ,
const int16_t * alpSrc ,
uint8_t * dest , uint8_t * uDest , uint8_t * vDest ,
uint8_t * aDest , int dstW , int chrDstW )
static void RENAME ( yuv2yuv1 ) ( SwsContext * c , const int16_t * lumSrc ,
const int16_t * chrUSrc , const int16_t * chrVSrc ,
const int16_t * alpSrc ,
uint8_t * dest , uint8_t * uDest , uint8_t * vDest ,
uint8_t * aDest , int dstW , int chrDstW )
{
int p = 4 ;
const int16_t * src [ 4 ] = { alpSrc + dstW , lumSrc + dstW , chrUSrc + chrDstW , chrVSrc + chrDstW } ;
@ -204,11 +204,11 @@ static inline void RENAME(yuv2yuv1)(SwsContext *c, const int16_t *lumSrc,
}
}
static inline void RENAME ( yuv2yuv1_ar ) ( SwsContext * c , const int16_t * lumSrc ,
const int16_t * chrUSrc , const int16_t * chrVSrc ,
const int16_t * alpSrc ,
uint8_t * dest , uint8_t * uDest , uint8_t * vDest ,
uint8_t * aDest , int dstW , int chrDstW )
static void RENAME ( yuv2yuv1_ar ) ( SwsContext * c , const int16_t * lumSrc ,
const int16_t * chrUSrc , const int16_t * chrVSrc ,
const int16_t * alpSrc ,
uint8_t * dest , uint8_t * uDest , uint8_t * vDest ,
uint8_t * aDest , int dstW , int chrDstW )
{
int p = 4 ;
const int16_t * src [ 4 ] = { alpSrc + dstW , lumSrc + dstW , chrUSrc + chrDstW , chrVSrc + chrDstW } ;
@ -458,12 +458,12 @@ static inline void RENAME(yuv2yuv1_ar)(SwsContext *c, const int16_t *lumSrc,
" jb 1b \n \t "
# define WRITEBGR32(dst, dstw, index, b, g, r, a, q0, q2, q3, t) REAL_WRITEBGR32(dst, dstw, index, b, g, r, a, q0, q2, q3, t)
static inline void RENAME ( yuv2rgb32_X_ar ) ( SwsContext * c , const int16_t * lumFilter ,
const int16_t * * lumSrc , int lumFilterSize ,
const int16_t * chrFilter , const int16_t * * chrUSrc ,
const int16_t * * chrVSrc ,
int chrFilterSize , const int16_t * * alpSrc ,
uint8_t * dest , int dstW , int dstY )
static void RENAME ( yuv2rgb32_X_ar ) ( SwsContext * c , const int16_t * lumFilter ,
const int16_t * * lumSrc , int lumFilterSize ,
const int16_t * chrFilter , const int16_t * * chrUSrc ,
const int16_t * * chrVSrc ,
int chrFilterSize , const int16_t * * alpSrc ,
uint8_t * dest , int dstW , int dstY )
{
x86_reg dummy = 0 ;
x86_reg dstW_reg = dstW ;
@ -491,12 +491,12 @@ static inline void RENAME(yuv2rgb32_X_ar)(SwsContext *c, const int16_t *lumFilte
}
}
static inline void RENAME ( yuv2rgb32_X ) ( SwsContext * c , const int16_t * lumFilter ,
const int16_t * * lumSrc , int lumFilterSize ,
const int16_t * chrFilter , const int16_t * * chrUSrc ,
const int16_t * * chrVSrc ,
int chrFilterSize , const int16_t * * alpSrc ,
uint8_t * dest , int dstW , int dstY )
static void RENAME ( yuv2rgb32_X ) ( SwsContext * c , const int16_t * lumFilter ,
const int16_t * * lumSrc , int lumFilterSize ,
const int16_t * chrFilter , const int16_t * * chrUSrc ,
const int16_t * * chrVSrc ,
int chrFilterSize , const int16_t * * alpSrc ,
uint8_t * dest , int dstW , int dstY )
{
x86_reg dummy = 0 ;
x86_reg dstW_reg = dstW ;
@ -548,12 +548,12 @@ static inline void RENAME(yuv2rgb32_X)(SwsContext *c, const int16_t *lumFilter,
" jb 1b \n \t "
# define WRITERGB16(dst, dstw, index) REAL_WRITERGB16(dst, dstw, index)
static inline void RENAME ( yuv2rgb565_X_ar ) ( SwsContext * c , const int16_t * lumFilter ,
const int16_t * * lumSrc , int lumFilterSize ,
const int16_t * chrFilter , const int16_t * * chrUSrc ,
const int16_t * * chrVSrc ,
int chrFilterSize , const int16_t * * alpSrc ,
uint8_t * dest , int dstW , int dstY )
static void RENAME ( yuv2rgb565_X_ar ) ( SwsContext * c , const int16_t * lumFilter ,
const int16_t * * lumSrc , int lumFilterSize ,
const int16_t * chrFilter , const int16_t * * chrUSrc ,
const int16_t * * chrVSrc ,
int chrFilterSize , const int16_t * * alpSrc ,
uint8_t * dest , int dstW , int dstY )
{
x86_reg dummy = 0 ;
x86_reg dstW_reg = dstW ;
@ -572,12 +572,12 @@ static inline void RENAME(yuv2rgb565_X_ar)(SwsContext *c, const int16_t *lumFilt
YSCALEYUV2PACKEDX_END
}
static inline void RENAME ( yuv2rgb565_X ) ( SwsContext * c , const int16_t * lumFilter ,
const int16_t * * lumSrc , int lumFilterSize ,
const int16_t * chrFilter , const int16_t * * chrUSrc ,
const int16_t * * chrVSrc ,
int chrFilterSize , const int16_t * * alpSrc ,
uint8_t * dest , int dstW , int dstY )
static void RENAME ( yuv2rgb565_X ) ( SwsContext * c , const int16_t * lumFilter ,
const int16_t * * lumSrc , int lumFilterSize ,
const int16_t * chrFilter , const int16_t * * chrUSrc ,
const int16_t * * chrVSrc ,
int chrFilterSize , const int16_t * * alpSrc ,
uint8_t * dest , int dstW , int dstY )
{
x86_reg dummy = 0 ;
x86_reg dstW_reg = dstW ;
@ -625,12 +625,12 @@ static inline void RENAME(yuv2rgb565_X)(SwsContext *c, const int16_t *lumFilter,
" jb 1b \n \t "
# define WRITERGB15(dst, dstw, index) REAL_WRITERGB15(dst, dstw, index)
static inline void RENAME ( yuv2rgb555_X_ar ) ( SwsContext * c , const int16_t * lumFilter ,
const int16_t * * lumSrc , int lumFilterSize ,
const int16_t * chrFilter , const int16_t * * chrUSrc ,
const int16_t * * chrVSrc ,
int chrFilterSize , const int16_t * * alpSrc ,
uint8_t * dest , int dstW , int dstY )
static void RENAME ( yuv2rgb555_X_ar ) ( SwsContext * c , const int16_t * lumFilter ,
const int16_t * * lumSrc , int lumFilterSize ,
const int16_t * chrFilter , const int16_t * * chrUSrc ,
const int16_t * * chrVSrc ,
int chrFilterSize , const int16_t * * alpSrc ,
uint8_t * dest , int dstW , int dstY )
{
x86_reg dummy = 0 ;
x86_reg dstW_reg = dstW ;
@ -649,12 +649,12 @@ static inline void RENAME(yuv2rgb555_X_ar)(SwsContext *c, const int16_t *lumFilt
YSCALEYUV2PACKEDX_END
}
static inline void RENAME ( yuv2rgb555_X ) ( SwsContext * c , const int16_t * lumFilter ,
const int16_t * * lumSrc , int lumFilterSize ,
const int16_t * chrFilter , const int16_t * * chrUSrc ,
const int16_t * * chrVSrc ,
int chrFilterSize , const int16_t * * alpSrc ,
uint8_t * dest , int dstW , int dstY )
static void RENAME ( yuv2rgb555_X ) ( SwsContext * c , const int16_t * lumFilter ,
const int16_t * * lumSrc , int lumFilterSize ,
const int16_t * chrFilter , const int16_t * * chrUSrc ,
const int16_t * * chrVSrc ,
int chrFilterSize , const int16_t * * alpSrc ,
uint8_t * dest , int dstW , int dstY )
{
x86_reg dummy = 0 ;
x86_reg dstW_reg = dstW ;
@ -782,12 +782,12 @@ static inline void RENAME(yuv2rgb555_X)(SwsContext *c, const int16_t *lumFilter,
# define WRITEBGR24(dst, dstw, index) WRITEBGR24MMX(dst, dstw, index)
# endif
static inline void RENAME ( yuv2bgr24_X_ar ) ( SwsContext * c , const int16_t * lumFilter ,
const int16_t * * lumSrc , int lumFilterSize ,
const int16_t * chrFilter , const int16_t * * chrUSrc ,
const int16_t * * chrVSrc ,
int chrFilterSize , const int16_t * * alpSrc ,
uint8_t * dest , int dstW , int dstY )
static void RENAME ( yuv2bgr24_X_ar ) ( SwsContext * c , const int16_t * lumFilter ,
const int16_t * * lumSrc , int lumFilterSize ,
const int16_t * chrFilter , const int16_t * * chrUSrc ,
const int16_t * * chrVSrc ,
int chrFilterSize , const int16_t * * alpSrc ,
uint8_t * dest , int dstW , int dstY )
{
x86_reg dummy = 0 ;
x86_reg dstW_reg = dstW ;
@ -806,12 +806,12 @@ static inline void RENAME(yuv2bgr24_X_ar)(SwsContext *c, const int16_t *lumFilte
) ;
}
static inline void RENAME ( yuv2bgr24_X ) ( SwsContext * c , const int16_t * lumFilter ,
const int16_t * * lumSrc , int lumFilterSize ,
const int16_t * chrFilter , const int16_t * * chrUSrc ,
const int16_t * * chrVSrc ,
int chrFilterSize , const int16_t * * alpSrc ,
uint8_t * dest , int dstW , int dstY )
static void RENAME ( yuv2bgr24_X ) ( SwsContext * c , const int16_t * lumFilter ,
const int16_t * * lumSrc , int lumFilterSize ,
const int16_t * chrFilter , const int16_t * * chrUSrc ,
const int16_t * * chrVSrc ,
int chrFilterSize , const int16_t * * alpSrc ,
uint8_t * dest , int dstW , int dstY )
{
x86_reg dummy = 0 ;
x86_reg dstW_reg = dstW ;
@ -847,12 +847,12 @@ static inline void RENAME(yuv2bgr24_X)(SwsContext *c, const int16_t *lumFilter,
" jb 1b \n \t "
# define WRITEYUY2(dst, dstw, index) REAL_WRITEYUY2(dst, dstw, index)
static inline void RENAME ( yuv2yuyv422_X_ar ) ( SwsContext * c , const int16_t * lumFilter ,
const int16_t * * lumSrc , int lumFilterSize ,
const int16_t * chrFilter , const int16_t * * chrUSrc ,
const int16_t * * chrVSrc ,
int chrFilterSize , const int16_t * * alpSrc ,
uint8_t * dest , int dstW , int dstY )
static void RENAME ( yuv2yuyv422_X_ar ) ( SwsContext * c , const int16_t * lumFilter ,
const int16_t * * lumSrc , int lumFilterSize ,
const int16_t * chrFilter , const int16_t * * chrUSrc ,
const int16_t * * chrVSrc ,
int chrFilterSize , const int16_t * * alpSrc ,
uint8_t * dest , int dstW , int dstY )
{
x86_reg dummy = 0 ;
x86_reg dstW_reg = dstW ;
@ -868,12 +868,12 @@ static inline void RENAME(yuv2yuyv422_X_ar)(SwsContext *c, const int16_t *lumFil
YSCALEYUV2PACKEDX_END
}
static inline void RENAME ( yuv2yuyv422_X ) ( SwsContext * c , const int16_t * lumFilter ,
const int16_t * * lumSrc , int lumFilterSize ,
const int16_t * chrFilter , const int16_t * * chrUSrc ,
const int16_t * * chrVSrc ,
int chrFilterSize , const int16_t * * alpSrc ,
uint8_t * dest , int dstW , int dstY )
static void RENAME ( yuv2yuyv422_X ) ( SwsContext * c , const int16_t * lumFilter ,
const int16_t * * lumSrc , int lumFilterSize ,
const int16_t * chrFilter , const int16_t * * chrUSrc ,
const int16_t * * chrVSrc ,
int chrFilterSize , const int16_t * * alpSrc ,
uint8_t * dest , int dstW , int dstY )
{
x86_reg dummy = 0 ;
x86_reg dstW_reg = dstW ;
@ -969,12 +969,12 @@ static inline void RENAME(yuv2yuyv422_X)(SwsContext *c, const int16_t *lumFilter
/**
* vertical bilinear scale YV12 to RGB
*/
static inline void RENAME ( yuv2rgb32_2 ) ( SwsContext * c , const uint16_t * buf0 ,
const uint16_t * buf1 , const uint16_t * ubuf0 ,
const uint16_t * ubuf1 , const uint16_t * vbuf0 ,
const uint16_t * vbuf1 , const uint16_t * abuf0 ,
const uint16_t * abuf1 , uint8_t * dest ,
int dstW , int yalpha , int uvalpha , int y )
static void RENAME ( yuv2rgb32_2 ) ( SwsContext * c , const uint16_t * buf0 ,
const uint16_t * buf1 , const uint16_t * ubuf0 ,
const uint16_t * ubuf1 , const uint16_t * vbuf0 ,
const uint16_t * vbuf1 , const uint16_t * abuf0 ,
const uint16_t * abuf1 , uint8_t * dest ,
int dstW , int yalpha , int uvalpha , int y )
{
if ( CONFIG_SWSCALE_ALPHA & & c - > alpPixBuf ) {
# if ARCH_X86_64
@ -1031,12 +1031,12 @@ static inline void RENAME(yuv2rgb32_2)(SwsContext *c, const uint16_t *buf0,
}
}
static inline void RENAME ( yuv2bgr24_2 ) ( SwsContext * c , const uint16_t * buf0 ,
const uint16_t * buf1 , const uint16_t * ubuf0 ,
const uint16_t * ubuf1 , const uint16_t * vbuf0 ,
const uint16_t * vbuf1 , const uint16_t * abuf0 ,
const uint16_t * abuf1 , uint8_t * dest ,
int dstW , int yalpha , int uvalpha , int y )
static void RENAME ( yuv2bgr24_2 ) ( SwsContext * c , const uint16_t * buf0 ,
const uint16_t * buf1 , const uint16_t * ubuf0 ,
const uint16_t * ubuf1 , const uint16_t * vbuf0 ,
const uint16_t * vbuf1 , const uint16_t * abuf0 ,
const uint16_t * abuf1 , uint8_t * dest ,
int dstW , int yalpha , int uvalpha , int y )
{
//Note 8280 == DSTW_OFFSET but the preprocessor can't handle that there :(
__asm__ volatile (
@ -1053,12 +1053,12 @@ static inline void RENAME(yuv2bgr24_2)(SwsContext *c, const uint16_t *buf0,
) ;
}
static inline void RENAME ( yuv2rgb555_2 ) ( SwsContext * c , const uint16_t * buf0 ,
const uint16_t * buf1 , const uint16_t * ubuf0 ,
const uint16_t * ubuf1 , const uint16_t * vbuf0 ,
const uint16_t * vbuf1 , const uint16_t * abuf0 ,
const uint16_t * abuf1 , uint8_t * dest ,
int dstW , int yalpha , int uvalpha , int y )
static void RENAME ( yuv2rgb555_2 ) ( SwsContext * c , const uint16_t * buf0 ,
const uint16_t * buf1 , const uint16_t * ubuf0 ,
const uint16_t * ubuf1 , const uint16_t * vbuf0 ,
const uint16_t * vbuf1 , const uint16_t * abuf0 ,
const uint16_t * abuf1 , uint8_t * dest ,
int dstW , int yalpha , int uvalpha , int y )
{
//Note 8280 == DSTW_OFFSET but the preprocessor can't handle that there :(
__asm__ volatile (
@ -1081,12 +1081,12 @@ static inline void RENAME(yuv2rgb555_2)(SwsContext *c, const uint16_t *buf0,
) ;
}
static inline void RENAME ( yuv2rgb565_2 ) ( SwsContext * c , const uint16_t * buf0 ,
const uint16_t * buf1 , const uint16_t * ubuf0 ,
const uint16_t * ubuf1 , const uint16_t * vbuf0 ,
const uint16_t * vbuf1 , const uint16_t * abuf0 ,
const uint16_t * abuf1 , uint8_t * dest ,
int dstW , int yalpha , int uvalpha , int y )
static void RENAME ( yuv2rgb565_2 ) ( SwsContext * c , const uint16_t * buf0 ,
const uint16_t * buf1 , const uint16_t * ubuf0 ,
const uint16_t * ubuf1 , const uint16_t * vbuf0 ,
const uint16_t * vbuf1 , const uint16_t * abuf0 ,
const uint16_t * abuf1 , uint8_t * dest ,
int dstW , int yalpha , int uvalpha , int y )
{
//Note 8280 == DSTW_OFFSET but the preprocessor can't handle that there :(
__asm__ volatile (
@ -1149,12 +1149,12 @@ static inline void RENAME(yuv2rgb565_2)(SwsContext *c, const uint16_t *buf0,
# define YSCALEYUV2PACKED(index, c) REAL_YSCALEYUV2PACKED(index, c)
static inline void RENAME ( yuv2yuyv422_2 ) ( SwsContext * c , const uint16_t * buf0 ,
const uint16_t * buf1 , const uint16_t * ubuf0 ,
const uint16_t * ubuf1 , const uint16_t * vbuf0 ,
const uint16_t * vbuf1 , const uint16_t * abuf0 ,
const uint16_t * abuf1 , uint8_t * dest ,
int dstW , int yalpha , int uvalpha , int y )
static void RENAME ( yuv2yuyv422_2 ) ( SwsContext * c , const uint16_t * buf0 ,
const uint16_t * buf1 , const uint16_t * ubuf0 ,
const uint16_t * ubuf1 , const uint16_t * vbuf0 ,
const uint16_t * vbuf1 , const uint16_t * abuf0 ,
const uint16_t * abuf1 , uint8_t * dest ,
int dstW , int yalpha , int uvalpha , int y )
{
//Note 8280 == DSTW_OFFSET but the preprocessor can't handle that there :(
__asm__ volatile (
@ -1288,12 +1288,12 @@ static inline void RENAME(yuv2yuyv422_2)(SwsContext *c, const uint16_t *buf0,
/**
* YV12 to RGB without scaling or interpolating
*/
static inline void RENAME ( yuv2rgb32_1 ) ( SwsContext * c , const uint16_t * buf0 ,
const uint16_t * ubuf0 , const uint16_t * ubuf1 ,
const uint16_t * vbuf0 , const uint16_t * vbuf1 ,
const uint16_t * abuf0 , uint8_t * dest ,
int dstW , int uvalpha , enum PixelFormat dstFormat ,
int flags , int y )
static void RENAME ( yuv2rgb32_1 ) ( SwsContext * c , const uint16_t * buf0 ,
const uint16_t * ubuf0 , const uint16_t * ubuf1 ,
const uint16_t * vbuf0 , const uint16_t * vbuf1 ,
const uint16_t * abuf0 , uint8_t * dest ,
int dstW , int uvalpha , enum PixelFormat dstFormat ,
int flags , int y )
{
const uint16_t * buf1 = buf0 ; //FIXME needed for RGB1/BGR1
@ -1356,12 +1356,12 @@ static inline void RENAME(yuv2rgb32_1)(SwsContext *c, const uint16_t *buf0,
}
}
static inline void RENAME ( yuv2bgr24_1 ) ( SwsContext * c , const uint16_t * buf0 ,
const uint16_t * ubuf0 , const uint16_t * ubuf1 ,
const uint16_t * vbuf0 , const uint16_t * vbuf1 ,
const uint16_t * abuf0 , uint8_t * dest ,
int dstW , int uvalpha , enum PixelFormat dstFormat ,
int flags , int y )
static void RENAME ( yuv2bgr24_1 ) ( SwsContext * c , const uint16_t * buf0 ,
const uint16_t * ubuf0 , const uint16_t * ubuf1 ,
const uint16_t * vbuf0 , const uint16_t * vbuf1 ,
const uint16_t * abuf0 , uint8_t * dest ,
int dstW , int uvalpha , enum PixelFormat dstFormat ,
int flags , int y )
{
const uint16_t * buf1 = buf0 ; //FIXME needed for RGB1/BGR1
@ -1394,12 +1394,12 @@ static inline void RENAME(yuv2bgr24_1)(SwsContext *c, const uint16_t *buf0,
}
}
static inline void RENAME ( yuv2rgb555_1 ) ( SwsContext * c , const uint16_t * buf0 ,
const uint16_t * ubuf0 , const uint16_t * ubuf1 ,
const uint16_t * vbuf0 , const uint16_t * vbuf1 ,
const uint16_t * abuf0 , uint8_t * dest ,
int dstW , int uvalpha , enum PixelFormat dstFormat ,
int flags , int y )
static void RENAME ( yuv2rgb555_1 ) ( SwsContext * c , const uint16_t * buf0 ,
const uint16_t * ubuf0 , const uint16_t * ubuf1 ,
const uint16_t * vbuf0 , const uint16_t * vbuf1 ,
const uint16_t * abuf0 , uint8_t * dest ,
int dstW , int uvalpha , enum PixelFormat dstFormat ,
int flags , int y )
{
const uint16_t * buf1 = buf0 ; //FIXME needed for RGB1/BGR1
@ -1444,12 +1444,12 @@ static inline void RENAME(yuv2rgb555_1)(SwsContext *c, const uint16_t *buf0,
}
}
static inline void RENAME ( yuv2rgb565_1 ) ( SwsContext * c , const uint16_t * buf0 ,
const uint16_t * ubuf0 , const uint16_t * ubuf1 ,
const uint16_t * vbuf0 , const uint16_t * vbuf1 ,
const uint16_t * abuf0 , uint8_t * dest ,
int dstW , int uvalpha , enum PixelFormat dstFormat ,
int flags , int y )
static void RENAME ( yuv2rgb565_1 ) ( SwsContext * c , const uint16_t * buf0 ,
const uint16_t * ubuf0 , const uint16_t * ubuf1 ,
const uint16_t * vbuf0 , const uint16_t * vbuf1 ,
const uint16_t * abuf0 , uint8_t * dest ,
int dstW , int uvalpha , enum PixelFormat dstFormat ,
int flags , int y )
{
const uint16_t * buf1 = buf0 ; //FIXME needed for RGB1/BGR1
@ -1531,12 +1531,12 @@ static inline void RENAME(yuv2rgb565_1)(SwsContext *c, const uint16_t *buf0,
" psraw $7, %%mm7 \n \t "
# define YSCALEYUV2PACKED1b(index, c) REAL_YSCALEYUV2PACKED1b(index, c)
static inline void RENAME ( yuv2yuyv422_1 ) ( SwsContext * c , const uint16_t * buf0 ,
const uint16_t * ubuf0 , const uint16_t * ubuf1 ,
const uint16_t * vbuf0 , const uint16_t * vbuf1 ,
const uint16_t * abuf0 , uint8_t * dest ,
int dstW , int uvalpha , enum PixelFormat dstFormat ,
int flags , int y )
static void RENAME ( yuv2yuyv422_1 ) ( SwsContext * c , const uint16_t * buf0 ,
const uint16_t * ubuf0 , const uint16_t * ubuf1 ,
const uint16_t * vbuf0 , const uint16_t * vbuf1 ,
const uint16_t * abuf0 , uint8_t * dest ,
int dstW , int uvalpha , enum PixelFormat dstFormat ,
int flags , int y )
{
const uint16_t * buf1 = buf0 ; //FIXME needed for RGB1/BGR1
@ -1570,7 +1570,8 @@ static inline void RENAME(yuv2yuyv422_1)(SwsContext *c, const uint16_t *buf0,
# if !COMPILE_TEMPLATE_MMX2
//FIXME yuy2* can read up to 7 samples too much
static inline void RENAME ( yuy2ToY ) ( uint8_t * dst , const uint8_t * src , int width , uint32_t * unused )
static void RENAME ( yuy2ToY ) ( uint8_t * dst , const uint8_t * src ,
int width , uint32_t * unused )
{
__asm__ volatile (
" movq " MANGLE ( bm01010101 ) " , %%mm2 \n \t "
@ -1589,7 +1590,9 @@ static inline void RENAME(yuy2ToY)(uint8_t *dst, const uint8_t *src, int width,
) ;
}
static inline void RENAME ( yuy2ToUV ) ( uint8_t * dstU , uint8_t * dstV , const uint8_t * src1 , const uint8_t * src2 , int width , uint32_t * unused )
static void RENAME ( yuy2ToUV ) ( uint8_t * dstU , uint8_t * dstV ,
const uint8_t * src1 , const uint8_t * src2 ,
int width , uint32_t * unused )
{
__asm__ volatile (
" movq " MANGLE ( bm01010101 ) " , %%mm4 \n \t "
@ -1615,7 +1618,9 @@ static inline void RENAME(yuy2ToUV)(uint8_t *dstU, uint8_t *dstV, const uint8_t
assert ( src1 = = src2 ) ;
}
static inline void RENAME ( LEToUV ) ( uint8_t * dstU , uint8_t * dstV , const uint8_t * src1 , const uint8_t * src2 , int width , uint32_t * unused )
static void RENAME ( LEToUV ) ( uint8_t * dstU , uint8_t * dstV ,
const uint8_t * src1 , const uint8_t * src2 ,
int width , uint32_t * unused )
{
__asm__ volatile (
" mov %0, %% " REG_a " \n \t "
@ -1641,7 +1646,8 @@ static inline void RENAME(LEToUV)(uint8_t *dstU, uint8_t *dstV, const uint8_t *s
/* This is almost identical to the previous, end exists only because
* yuy2ToY / UV ) ( dst , src + 1 , . . . ) would have 100 % unaligned accesses . */
static inline void RENAME ( uyvyToY ) ( uint8_t * dst , const uint8_t * src , int width , uint32_t * unused )
static void RENAME ( uyvyToY ) ( uint8_t * dst , const uint8_t * src ,
int width , uint32_t * unused )
{
__asm__ volatile (
" mov %0, %% " REG_a " \n \t "
@ -1659,7 +1665,9 @@ static inline void RENAME(uyvyToY)(uint8_t *dst, const uint8_t *src, int width,
) ;
}
static inline void RENAME ( uyvyToUV ) ( uint8_t * dstU , uint8_t * dstV , const uint8_t * src1 , const uint8_t * src2 , int width , uint32_t * unused )
static void RENAME ( uyvyToUV ) ( uint8_t * dstU , uint8_t * dstV ,
const uint8_t * src1 , const uint8_t * src2 ,
int width , uint32_t * unused )
{
__asm__ volatile (
" movq " MANGLE ( bm01010101 ) " , %%mm4 \n \t "
@ -1685,7 +1693,9 @@ static inline void RENAME(uyvyToUV)(uint8_t *dstU, uint8_t *dstV, const uint8_t
assert ( src1 = = src2 ) ;
}
static inline void RENAME ( BEToUV ) ( uint8_t * dstU , uint8_t * dstV , const uint8_t * src1 , const uint8_t * src2 , int width , uint32_t * unused )
static void RENAME ( BEToUV ) ( uint8_t * dstU , uint8_t * dstV ,
const uint8_t * src1 , const uint8_t * src2 ,
int width , uint32_t * unused )
{
__asm__ volatile (
" movq " MANGLE ( bm01010101 ) " , %%mm4 \n \t "
@ -1710,8 +1720,8 @@ static inline void RENAME(BEToUV)(uint8_t *dstU, uint8_t *dstV, const uint8_t *s
) ;
}
static inline void RENAME ( nvXXtoUV ) ( uint8_t * dst1 , uint8_t * dst2 ,
const uint8_t * src , int width )
static av_always_ inline void RENAME ( nvXXtoUV ) ( uint8_t * dst1 , uint8_t * dst2 ,
const uint8_t * src , int width )
{
__asm__ volatile (
" movq " MANGLE ( bm01010101 ) " , %%mm4 \n \t "
@ -1736,22 +1746,23 @@ static inline void RENAME(nvXXtoUV)(uint8_t *dst1, uint8_t *dst2,
) ;
}
static inline void RENAME ( nv12ToUV ) ( uint8_t * dstU , uint8_t * dstV ,
const uint8_t * src1 , const uint8_t * src2 ,
int width , uint32_t * unused )
static void RENAME ( nv12ToUV ) ( uint8_t * dstU , uint8_t * dstV ,
const uint8_t * src1 , const uint8_t * src2 ,
int width , uint32_t * unused )
{
RENAME ( nvXXtoUV ) ( dstU , dstV , src1 , width ) ;
}
static inline void RENAME ( nv21ToUV ) ( uint8_t * dstU , uint8_t * dstV ,
const uint8_t * src1 , const uint8_t * src2 ,
int width , uint32_t * unused )
static void RENAME ( nv21ToUV ) ( uint8_t * dstU , uint8_t * dstV ,
const uint8_t * src1 , const uint8_t * src2 ,
int width , uint32_t * unused )
{
RENAME ( nvXXtoUV ) ( dstV , dstU , src1 , width ) ;
}
# endif /* !COMPILE_TEMPLATE_MMX2 */
static inline void RENAME ( bgr24ToY_mmx ) ( uint8_t * dst , const uint8_t * src , int width , enum PixelFormat srcFormat )
static av_always_inline void RENAME ( bgr24ToY_mmx ) ( uint8_t * dst , const uint8_t * src ,
int width , enum PixelFormat srcFormat )
{
if ( srcFormat = = PIX_FMT_BGR24 ) {
@ -1804,7 +1815,21 @@ static inline void RENAME(bgr24ToY_mmx)(uint8_t *dst, const uint8_t *src, int wi
) ;
}
static inline void RENAME ( bgr24ToUV_mmx ) ( uint8_t * dstU , uint8_t * dstV , const uint8_t * src , int width , enum PixelFormat srcFormat )
static void RENAME ( bgr24ToY ) ( uint8_t * dst , const uint8_t * src ,
int width , uint32_t * unused )
{
RENAME ( bgr24ToY_mmx ) ( dst , src , width , PIX_FMT_BGR24 ) ;
}
static void RENAME ( rgb24ToY ) ( uint8_t * dst , const uint8_t * src ,
int width , uint32_t * unused )
{
RENAME ( bgr24ToY_mmx ) ( dst , src , width , PIX_FMT_RGB24 ) ;
}
static av_always_inline void RENAME ( bgr24ToUV_mmx ) ( uint8_t * dstU , uint8_t * dstV ,
const uint8_t * src , int width ,
enum PixelFormat srcFormat )
{
__asm__ volatile (
" movq 24(%4), %%mm6 \n \t "
@ -1862,23 +1887,17 @@ static inline void RENAME(bgr24ToUV_mmx)(uint8_t *dstU, uint8_t *dstV, const uin
) ;
}
static inline void RENAME ( bgr24ToY ) ( uint8_t * dst , const uint8_t * src , int width , uint32_t * unused )
{
RENAME ( bgr24ToY_mmx ) ( dst , src , width , PIX_FMT_BGR24 ) ;
}
static inline void RENAME ( bgr24ToUV ) ( uint8_t * dstU , uint8_t * dstV , const uint8_t * src1 , const uint8_t * src2 , int width , uint32_t * unused )
static void RENAME ( bgr24ToUV ) ( uint8_t * dstU , uint8_t * dstV ,
const uint8_t * src1 , const uint8_t * src2 ,
int width , uint32_t * unused )
{
RENAME ( bgr24ToUV_mmx ) ( dstU , dstV , src1 , width , PIX_FMT_BGR24 ) ;
assert ( src1 = = src2 ) ;
}
static inline void RENAME ( rgb24ToY ) ( uint8_t * dst , const uint8_t * src , int width , uint32_t * unused )
{
RENAME ( bgr24ToY_mmx ) ( dst , src , width , PIX_FMT_RGB24 ) ;
}
static inline void RENAME ( rgb24ToUV ) ( uint8_t * dstU , uint8_t * dstV , const uint8_t * src1 , const uint8_t * src2 , int width , uint32_t * unused )
static void RENAME ( rgb24ToUV ) ( uint8_t * dstU , uint8_t * dstV ,
const uint8_t * src1 , const uint8_t * src2 ,
int width , uint32_t * unused )
{
assert ( src1 = = src2 ) ;
RENAME ( bgr24ToUV_mmx ) ( dstU , dstV , src1 , width , PIX_FMT_RGB24 ) ;
@ -1886,8 +1905,10 @@ static inline void RENAME(rgb24ToUV)(uint8_t *dstU, uint8_t *dstV, const uint8_t
# if !COMPILE_TEMPLATE_MMX2
// bilinear / bicubic scaling
static inline void RENAME ( hScale ) ( int16_t * dst , int dstW , const uint8_t * src , int srcW , int xInc ,
const int16_t * filter , const int16_t * filterPos , int filterSize )
static void RENAME ( hScale ) ( int16_t * dst , int dstW ,
const uint8_t * src , int srcW ,
int xInc , const int16_t * filter ,
const int16_t * filterPos , int filterSize )
{
assert ( filterSize % 4 = = 0 & & filterSize > 0 ) ;
if ( filterSize = = 4 ) { // Always true for upscaling, sometimes for down, too.
@ -2042,9 +2063,9 @@ static inline void RENAME(hScale)(int16_t *dst, int dstW, const uint8_t *src, in
# endif /* !COMPILE_TEMPLATE_MMX2 */
# if COMPILE_TEMPLATE_MMX2
static inline void RENAME ( hyscale_fast ) ( SwsContext * c , int16_t * dst ,
int dstWidth , const uint8_t * src , int srcW ,
int xInc )
static void RENAME ( hyscale_fast ) ( SwsContext * c , int16_t * dst ,
int dstWidth , const uint8_t * src ,
int srcW , int xInc )
{
int16_t * filterPos = c - > hLumFilterPos ;
int16_t * filter = c - > hLumFilter ;
@ -2114,9 +2135,9 @@ static inline void RENAME(hyscale_fast)(SwsContext *c, int16_t *dst,
dst [ i ] = src [ srcW - 1 ] * 128 ;
}
static inline void RENAME ( hcscale_fast ) ( SwsContext * c , int16_t * dst1 , int16_t * dst2 ,
int dstWidth , const uint8_t * src1 ,
const uint8_t * src2 , int srcW , int xInc )
static void RENAME ( hcscale_fast ) ( SwsContext * c , int16_t * dst1 , int16_t * dst2 ,
int dstWidth , const uint8_t * src1 ,
const uint8_t * src2 , int srcW , int xInc )
{
int16_t * filterPos = c - > hChrFilterPos ;
int16_t * filter = c - > hChrFilter ;
@ -2177,7 +2198,7 @@ static inline void RENAME(hcscale_fast)(SwsContext *c, int16_t *dst1, int16_t *d
}
# endif /* COMPILE_TEMPLATE_MMX2 */
static void RENAME ( sws_init_swScale ) ( SwsContext * c )
static av_cold void RENAME ( sws_init_swScale ) ( SwsContext * c )
{
enum PixelFormat srcFormat = c - > srcFormat ,
dstFormat = c - > dstFormat ;