47 #undef COMPILE_TEMPLATE_MMXEXT
48 #define COMPILE_TEMPLATE_MMXEXT 0
49 #define RENAME(a) a ## _mmx
55 #undef COMPILE_TEMPLATE_MMXEXT
56 #define COMPILE_TEMPLATE_MMXEXT 1
57 #define RENAME(a) a ## _mmxext
62 #undef COMPILE_TEMPLATE_MMXEXT
63 #define COMPILE_TEMPLATE_MMXEXT 0
64 #define RENAME(a) a ## _ssse3
75 switch (
c->dstFormat) {
78 #if CONFIG_SWSCALE_ALPHA
79 return yuva420_rgb32_ssse3;
83 return yuv420_rgb32_ssse3;
86 #if CONFIG_SWSCALE_ALPHA
87 return yuva420_bgr32_ssse3;
91 return yuv420_bgr32_ssse3;
93 return yuv420_rgb24_ssse3;
95 return yuv420_bgr24_ssse3;
97 return yuv420_rgb16_ssse3;
99 return yuv420_rgb15_ssse3;
104 switch (
c->dstFormat) {
106 return yuv420_rgb24_mmxext;
108 return yuv420_bgr24_mmxext;
113 switch (
c->dstFormat) {
116 #if CONFIG_SWSCALE_ALPHA
117 return yuva420_rgb32_mmx;
121 return yuv420_rgb32_mmx;
124 #if CONFIG_SWSCALE_ALPHA
125 return yuva420_bgr32_mmx;
129 return yuv420_bgr32_mmx;
131 return yuv420_rgb24_mmx;
133 return yuv420_bgr24_mmx;
135 return yuv420_rgb16_mmx;
137 return yuv420_rgb15_mmx;
Macro definitions for various function/variable attributes.
static atomic_int cpu_flags
int av_get_cpu_flags(void)
Return the flags which specify extensions supported by the CPU.
@ AV_PIX_FMT_RGB24
packed RGB 8:8:8, 24bpp, RGBRGB...
@ AV_PIX_FMT_YUVA420P
planar YUV 4:2:0, 20bpp, (1 Cr & Cb sample per 2x2 Y & A samples)
@ AV_PIX_FMT_BGR24
packed RGB 8:8:8, 24bpp, BGRBGR...
#define AV_PIX_FMT_RGB565
#define AV_PIX_FMT_RGB555
int(* SwsFunc)(struct SwsContext *context, const uint8_t *src[], int srcStride[], int srcSliceY, int srcSliceH, uint8_t *dst[], int dstStride[])
#define EXTERNAL_MMXEXT(flags)
#define EXTERNAL_SSSE3(flags)
#define EXTERNAL_MMX(flags)
av_cold SwsFunc ff_yuv2rgb_init_x86(SwsContext *c)