Go to the source code of this file.
|
#define | SCALE_FUNC(filter_n, from_bpc, to_bpc, opt) |
|
#define | SCALE_FUNCS(filter_n, opt) |
|
#define | SCALE_FUNCS_MMX(opt) |
|
#define | SCALE_FUNCS_SSE(opt) |
|
#define | VSCALEX_FUNC(size, opt) |
|
#define | VSCALEX_FUNCS(opt) |
|
#define | VSCALE_FUNC(size, opt) |
|
#define | VSCALE_FUNCS(opt1, opt2) |
|
#define | INPUT_Y_FUNC(fmt, opt) |
|
#define | INPUT_UV_FUNC(fmt, opt) |
|
#define | INPUT_FUNC(fmt, opt) |
|
#define | INPUT_FUNCS(opt) |
|
#define | ASSIGN_SCALE_FUNC2(hscalefn, filtersize, opt1, opt2) |
|
#define | ASSIGN_MMX_SCALE_FUNC(hscalefn, filtersize, opt1, opt2) |
|
#define | ASSIGN_VSCALEX_FUNC(vscalefn, opt, do_16_case, condition_8bit) |
|
#define | ASSIGN_VSCALE_FUNC(vscalefn, opt1, opt2, opt2chk) |
|
#define | case_rgb(x, X, opt) |
|
#define | ASSIGN_SSE_SCALE_FUNC(hscalefn, filtersize, opt1, opt2) |
|
#define SCALE_FUNC |
( |
|
filter_n, |
|
|
|
from_bpc, |
|
|
|
to_bpc, |
|
|
|
opt |
|
) |
| |
Value:void ff_hscale ## from_bpc ##
to ## to_bpc ##
_ ## filter_n ##
_ ## opt( \
const int32_t *filterPos,
int filterSize)
ptrdiff_t const GLvoid * data
static void filter(int16_t *output, ptrdiff_t out_stride, int16_t *low, ptrdiff_t low_stride, int16_t *high, ptrdiff_t high_stride, int len, uint8_t clip)
Definition at line 280 of file swscale.c.
#define SCALE_FUNCS |
( |
|
filter_n, |
|
|
|
opt |
|
) |
| |
Value:
#define SCALE_FUNC(filter_n, from_bpc, to_bpc, opt)
Definition at line 287 of file swscale.c.
#define SCALE_FUNCS_MMX |
( |
|
opt | ) |
|
Value:
#define SCALE_FUNCS(filter_n, opt)
Definition at line 301 of file swscale.c.
#define SCALE_FUNCS_SSE |
( |
|
opt | ) |
|
Value:
#define SCALE_FUNCS(filter_n, opt)
Definition at line 306 of file swscale.c.
#define VSCALEX_FUNC |
( |
|
size, |
|
|
|
opt |
|
) |
| |
Value:void ff_yuv2planeX_ ##
size ##
_ ## opt(
const int16_t *
filter,
int filterSize, \
static void filter(int16_t *output, ptrdiff_t out_stride, int16_t *low, ptrdiff_t low_stride, int16_t *high, ptrdiff_t high_stride, int len, uint8_t clip)
static const uint8_t dither[8][8]
static const uint8_t offset[127][2]
Definition at line 319 of file swscale.c.
#define VSCALEX_FUNCS |
( |
|
opt | ) |
|
Value:
#define VSCALEX_FUNC(size, opt)
Definition at line 323 of file swscale.c.
#define VSCALE_FUNC |
( |
|
size, |
|
|
|
opt |
|
) |
| |
Value:void ff_yuv2plane1_ ##
size ##
_ ## opt(
const int16_t *
src,
uint8_t *dst,
int dstW, \
static const uint8_t dither[8][8]
static const uint8_t offset[127][2]
Definition at line 336 of file swscale.c.
#define VSCALE_FUNCS |
( |
|
opt1, |
|
|
|
opt2 |
|
) |
| |
Value:
#define VSCALE_FUNC(size, opt)
Definition at line 339 of file swscale.c.
#define INPUT_Y_FUNC |
( |
|
fmt, |
|
|
|
opt |
|
) |
| |
#define INPUT_UV_FUNC |
( |
|
fmt, |
|
|
|
opt |
|
) |
| |
#define INPUT_FUNC |
( |
|
fmt, |
|
|
|
opt |
|
) |
| |
Value:
#define INPUT_Y_FUNC(fmt, opt)
#define INPUT_UV_FUNC(fmt, opt)
Definition at line 362 of file swscale.c.
#define INPUT_FUNCS |
( |
|
opt | ) |
|
Value:
#define INPUT_FUNC(fmt, opt)
#define INPUT_UV_FUNC(fmt, opt)
Definition at line 365 of file swscale.c.
#define ASSIGN_SCALE_FUNC2 |
( |
|
hscalefn, |
|
|
|
filtersize, |
|
|
|
opt1, |
|
|
|
opt2 |
|
) |
| |
Value:
hscalefn =
c->dstBpc <= 14 ? ff_hscale8to15_ ## filtersize ##
_ ## opt2 : \
ff_hscale8to19_ ## filtersize ##
_ ## opt1; \
}
else if (
c->srcBpc == 9) { \
hscalefn =
c->dstBpc <= 14 ? ff_hscale9to15_ ## filtersize ##
_ ## opt2 : \
ff_hscale9to19_ ## filtersize ##
_ ## opt1; \
}
else if (
c->srcBpc == 10) { \
hscalefn =
c->dstBpc <= 14 ? ff_hscale10to15_ ## filtersize ##
_ ## opt2 : \
ff_hscale10to19_ ## filtersize ##
_ ## opt1; \
}
else if (
c->srcBpc == 12) { \
hscalefn =
c->dstBpc <= 14 ? ff_hscale12to15_ ## filtersize ##
_ ## opt2 : \
ff_hscale12to19_ ## filtersize ##
_ ## opt1; \
hscalefn =
c->dstBpc <= 14 ? ff_hscale14to15_ ## filtersize ##
_ ## opt2 : \
ff_hscale14to19_ ## filtersize ##
_ ## opt1; \
hscalefn =
c->dstBpc <= 14 ? ff_hscale16to15_ ## filtersize ##
_ ## opt2 : \
ff_hscale16to19_ ## filtersize ##
_ ## opt1; \
} \
} while (0)
static av_always_inline int isAnyRGB(enum AVPixelFormat pix_fmt)
const AVPixFmtDescriptor * av_pix_fmt_desc_get(enum AVPixelFormat pix_fmt)
#define av_assert0(cond)
assert() equivalent, that is always enabled.
AVComponentDescriptor comp[4]
Parameters that describe how pixels are packed.
8 bits with AV_PIX_FMT_RGB32 palette
int depth
Number of bits in the component.
#define ASSIGN_MMX_SCALE_FUNC |
( |
|
hscalefn, |
|
|
|
filtersize, |
|
|
|
opt1, |
|
|
|
opt2 |
|
) |
| |
Value:switch (filtersize) { \
}
#define ASSIGN_SCALE_FUNC2(hscalefn, filtersize, opt1, opt2)
Referenced by ff_sws_init_swscale_x86().
#define ASSIGN_VSCALEX_FUNC |
( |
|
vscalefn, |
|
|
|
opt, |
|
|
|
do_16_case, |
|
|
|
condition_8bit |
|
) |
| |
Value:
case 16: do_16_case; break; \
case 10:
if (!
isBE(
c->dstFormat) &&
c->dstFormat !=
AV_PIX_FMT_P010LE) vscalefn = ff_yuv2planeX_10_ ## opt;
break; \
case 9:
if (!
isBE(
c->dstFormat)) vscalefn = ff_yuv2planeX_9_ ## opt;
break; \
case 8:
if ((condition_8bit) && !
c->use_mmx_vfilter) vscalefn = ff_yuv2planeX_8_ ## opt;
break; \
}
like NV12, with 10bpp per component, data in the high bits, zeros in the low bits, little-endian
static av_always_inline int isBE(enum AVPixelFormat pix_fmt)
Referenced by ff_sws_init_swscale_x86().
#define ASSIGN_VSCALE_FUNC |
( |
|
vscalefn, |
|
|
|
opt1, |
|
|
|
opt2, |
|
|
|
opt2chk |
|
) |
| |
Value:
case 16:
if (!
isBE(
c->dstFormat)) vscalefn = ff_yuv2plane1_16_ ## opt1;
break; \
case 10:
if (!
isBE(
c->dstFormat) &&
c->dstFormat !=
AV_PIX_FMT_P010LE && opt2chk) vscalefn = ff_yuv2plane1_10_ ## opt2;
break; \
case 9:
if (!
isBE(
c->dstFormat) && opt2chk) vscalefn = ff_yuv2plane1_9_ ## opt2;
break; \
case 8: vscalefn = ff_yuv2plane1_8_ ## opt1; break; \
}
#define av_assert0(cond)
assert() equivalent, that is always enabled.
like NV12, with 10bpp per component, data in the high bits, zeros in the low bits, little-endian
static av_always_inline int isBE(enum AVPixelFormat pix_fmt)
Referenced by ff_sws_init_swscale_x86().
#define case_rgb |
( |
|
x, |
|
|
|
X, |
|
|
|
opt |
|
) |
| |
Value:
c->lumToYV12 = ff_ ## x ## ToY_ ## opt;
\
if (!
c->chrSrcHSubSample)
\
c->chrToYV12 = ff_ ## x ## ToUV_ ## opt; \
break
Referenced by ff_sws_init_swscale_x86().
#define ASSIGN_SSE_SCALE_FUNC |
( |
|
hscalefn, |
|
|
|
filtersize, |
|
|
|
opt1, |
|
|
|
opt2 |
|
) |
| |
Value:switch (filtersize) { \
break; \
}
#define ASSIGN_SCALE_FUNC2(hscalefn, filtersize, opt1, opt2)
Referenced by ff_sws_init_swscale_x86().
SCALE_FUNCS_SSE |
( |
ssse3 |
| ) |
|
VSCALEX_FUNC |
( |
16 |
, |
|
|
sse4 |
|
|
) |
| |
VSCALE_FUNCS |
( |
sse2 |
, |
|
|
sse2 |
|
|
) |
| |
VSCALE_FUNC |
( |
16 |
, |
|
|
sse4 |
|
|
) |
| |
VSCALE_FUNCS |
( |
avx |
, |
|
|
avx |
|
|
) |
| |