mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
swscale: move YUV2PACKED16WRAPPER() macro down to where it is used.
This commit is contained in:
parent
c0b87359b2
commit
3cac475655
@ -295,52 +295,6 @@ static void yuv2nv12cX_c(SwsContext *c, const int16_t *chrFilter, int chrFilterS
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#define YUV2PACKED16WRAPPER(name, base, ext, fmt) \
|
|
||||||
static void name ## ext ## _X_c(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 y) \
|
|
||||||
{ \
|
|
||||||
const int32_t **lumSrc = (const int32_t **) _lumSrc, \
|
|
||||||
**chrUSrc = (const int32_t **) _chrUSrc, \
|
|
||||||
**chrVSrc = (const int32_t **) _chrVSrc, \
|
|
||||||
**alpSrc = (const int32_t **) _alpSrc; \
|
|
||||||
uint16_t *dest = (uint16_t *) _dest; \
|
|
||||||
name ## base ## _X_c_template(c, lumFilter, lumSrc, lumFilterSize, \
|
|
||||||
chrFilter, chrUSrc, chrVSrc, chrFilterSize, \
|
|
||||||
alpSrc, dest, dstW, y, fmt); \
|
|
||||||
} \
|
|
||||||
\
|
|
||||||
static void name ## ext ## _2_c(SwsContext *c, const int16_t *_buf[2], \
|
|
||||||
const int16_t *_ubuf[2], const int16_t *_vbuf[2], \
|
|
||||||
const int16_t *_abuf[2], uint8_t *_dest, int dstW, \
|
|
||||||
int yalpha, int uvalpha, int y) \
|
|
||||||
{ \
|
|
||||||
const int32_t **buf = (const int32_t **) _buf, \
|
|
||||||
**ubuf = (const int32_t **) _ubuf, \
|
|
||||||
**vbuf = (const int32_t **) _vbuf, \
|
|
||||||
**abuf = (const int32_t **) _abuf; \
|
|
||||||
uint16_t *dest = (uint16_t *) _dest; \
|
|
||||||
name ## base ## _2_c_template(c, buf, ubuf, vbuf, abuf, \
|
|
||||||
dest, dstW, yalpha, uvalpha, y, fmt); \
|
|
||||||
} \
|
|
||||||
\
|
|
||||||
static void name ## ext ## _1_c(SwsContext *c, const int16_t *_buf0, \
|
|
||||||
const int16_t *_ubuf[2], const int16_t *_vbuf[2], \
|
|
||||||
const int16_t *_abuf0, uint8_t *_dest, int dstW, \
|
|
||||||
int uvalpha, int y) \
|
|
||||||
{ \
|
|
||||||
const int32_t *buf0 = (const int32_t *) _buf0, \
|
|
||||||
**ubuf = (const int32_t **) _ubuf, \
|
|
||||||
**vbuf = (const int32_t **) _vbuf, \
|
|
||||||
*abuf0 = (const int32_t *) _abuf0; \
|
|
||||||
uint16_t *dest = (uint16_t *) _dest; \
|
|
||||||
name ## base ## _1_c_template(c, buf0, ubuf, vbuf, abuf0, dest, \
|
|
||||||
dstW, uvalpha, y, fmt); \
|
|
||||||
}
|
|
||||||
|
|
||||||
#define output_pixel(pos, acc) \
|
#define output_pixel(pos, acc) \
|
||||||
if (target == PIX_FMT_MONOBLACK) { \
|
if (target == PIX_FMT_MONOBLACK) { \
|
||||||
pos = acc; \
|
pos = acc; \
|
||||||
@ -763,6 +717,52 @@ yuv2rgb48_1_c_template(SwsContext *c, const int32_t *buf0,
|
|||||||
#undef r_b
|
#undef r_b
|
||||||
#undef b_r
|
#undef b_r
|
||||||
|
|
||||||
|
#define YUV2PACKED16WRAPPER(name, base, ext, fmt) \
|
||||||
|
static void name ## ext ## _X_c(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 y) \
|
||||||
|
{ \
|
||||||
|
const int32_t **lumSrc = (const int32_t **) _lumSrc, \
|
||||||
|
**chrUSrc = (const int32_t **) _chrUSrc, \
|
||||||
|
**chrVSrc = (const int32_t **) _chrVSrc, \
|
||||||
|
**alpSrc = (const int32_t **) _alpSrc; \
|
||||||
|
uint16_t *dest = (uint16_t *) _dest; \
|
||||||
|
name ## base ## _X_c_template(c, lumFilter, lumSrc, lumFilterSize, \
|
||||||
|
chrFilter, chrUSrc, chrVSrc, chrFilterSize, \
|
||||||
|
alpSrc, dest, dstW, y, fmt); \
|
||||||
|
} \
|
||||||
|
\
|
||||||
|
static void name ## ext ## _2_c(SwsContext *c, const int16_t *_buf[2], \
|
||||||
|
const int16_t *_ubuf[2], const int16_t *_vbuf[2], \
|
||||||
|
const int16_t *_abuf[2], uint8_t *_dest, int dstW, \
|
||||||
|
int yalpha, int uvalpha, int y) \
|
||||||
|
{ \
|
||||||
|
const int32_t **buf = (const int32_t **) _buf, \
|
||||||
|
**ubuf = (const int32_t **) _ubuf, \
|
||||||
|
**vbuf = (const int32_t **) _vbuf, \
|
||||||
|
**abuf = (const int32_t **) _abuf; \
|
||||||
|
uint16_t *dest = (uint16_t *) _dest; \
|
||||||
|
name ## base ## _2_c_template(c, buf, ubuf, vbuf, abuf, \
|
||||||
|
dest, dstW, yalpha, uvalpha, y, fmt); \
|
||||||
|
} \
|
||||||
|
\
|
||||||
|
static void name ## ext ## _1_c(SwsContext *c, const int16_t *_buf0, \
|
||||||
|
const int16_t *_ubuf[2], const int16_t *_vbuf[2], \
|
||||||
|
const int16_t *_abuf0, uint8_t *_dest, int dstW, \
|
||||||
|
int uvalpha, int y) \
|
||||||
|
{ \
|
||||||
|
const int32_t *buf0 = (const int32_t *) _buf0, \
|
||||||
|
**ubuf = (const int32_t **) _ubuf, \
|
||||||
|
**vbuf = (const int32_t **) _vbuf, \
|
||||||
|
*abuf0 = (const int32_t *) _abuf0; \
|
||||||
|
uint16_t *dest = (uint16_t *) _dest; \
|
||||||
|
name ## base ## _1_c_template(c, buf0, ubuf, vbuf, abuf0, dest, \
|
||||||
|
dstW, uvalpha, y, fmt); \
|
||||||
|
}
|
||||||
|
|
||||||
YUV2PACKED16WRAPPER(yuv2, rgb48, rgb48be, PIX_FMT_RGB48BE)
|
YUV2PACKED16WRAPPER(yuv2, rgb48, rgb48be, PIX_FMT_RGB48BE)
|
||||||
YUV2PACKED16WRAPPER(yuv2, rgb48, rgb48le, PIX_FMT_RGB48LE)
|
YUV2PACKED16WRAPPER(yuv2, rgb48, rgb48le, PIX_FMT_RGB48LE)
|
||||||
YUV2PACKED16WRAPPER(yuv2, rgb48, bgr48be, PIX_FMT_BGR48BE)
|
YUV2PACKED16WRAPPER(yuv2, rgb48, bgr48be, PIX_FMT_BGR48BE)
|
||||||
|
Loading…
Reference in New Issue
Block a user