31 #define RESAMPLE_FUNCS(type, opt) \
32 int ff_resample_common_##type##_##opt(ResampleContext *c, void *dst, \
33 const void *src, int sz, int upd); \
34 int ff_resample_linear_##type##_##opt(ResampleContext *c, void *dst, \
35 const void *src, int sz, int upd)
55 c->dsp.resample_linear = ff_resample_linear_int16_mmxext;
56 c->dsp.resample_common = ff_resample_common_int16_mmxext;
59 c->dsp.resample_linear = ff_resample_linear_int16_sse2;
60 c->dsp.resample_common = ff_resample_common_int16_sse2;
63 c->dsp.resample_linear = ff_resample_linear_int16_xop;
64 c->dsp.resample_common = ff_resample_common_int16_xop;
69 c->dsp.resample_linear = ff_resample_linear_float_sse;
70 c->dsp.resample_common = ff_resample_common_float_sse;
73 c->dsp.resample_linear = ff_resample_linear_float_avx;
74 c->dsp.resample_common = ff_resample_common_float_avx;
77 c->dsp.resample_linear = ff_resample_linear_float_fma3;
78 c->dsp.resample_common = ff_resample_common_float_fma3;
81 c->dsp.resample_linear = ff_resample_linear_float_fma4;
82 c->dsp.resample_common = ff_resample_common_float_fma4;
87 c->dsp.resample_linear = ff_resample_linear_double_sse2;
88 c->dsp.resample_common = ff_resample_common_double_sse2;
91 c->dsp.resample_linear = ff_resample_linear_double_avx;
92 c->dsp.resample_common = ff_resample_common_double_avx;
95 c->dsp.resample_linear = ff_resample_linear_double_fma3;
96 c->dsp.resample_common = ff_resample_common_double_fma3;
int av_get_cpu_flags(void)
Return the flags which specify extensions supported by the CPU.
@ AV_SAMPLE_FMT_FLTP
float, planar
@ AV_SAMPLE_FMT_S16P
signed 16 bits, planar
@ AV_SAMPLE_FMT_DBLP
double, planar
av_cold void swri_resample_dsp_x86_init(ResampleContext *c)
#define RESAMPLE_FUNCS(type, opt)
static int sse(MpegEncContext *s, uint8_t *src1, uint8_t *src2, int w, int h, int stride)
#define EXTERNAL_SSE(flags)
#define EXTERNAL_MMXEXT(flags)
#define EXTERNAL_XOP(flags)
#define EXTERNAL_FMA3_FAST(flags)
#define EXTERNAL_FMA4(flags)
#define EXTERNAL_AVX_FAST(flags)
#define EXTERNAL_SSE2(flags)