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) \
|
||||
if (target == PIX_FMT_MONOBLACK) { \
|
||||
pos = acc; \
|
||||
@ -763,6 +717,52 @@ yuv2rgb48_1_c_template(SwsContext *c, const int32_t *buf0,
|
||||
#undef r_b
|
||||
#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, rgb48le, PIX_FMT_RGB48LE)
|
||||
YUV2PACKED16WRAPPER(yuv2, rgb48, bgr48be, PIX_FMT_BGR48BE)
|
||||
|
Loading…
Reference in New Issue
Block a user