#include <inttypes.h>
#include "config.h"
#include "libswscale/swscale.h"
#include "libswscale/swscale_internal.h"
#include "libavutil/intreadwrite.h"
#include "libavutil/x86_cpu.h"
#include "libavutil/cpu.h"
#include "libavutil/pixdesc.h"
#include "swscale_template.c"
Go to the source code of this file.
Defines | |
#define | COMPILE_TEMPLATE_MMX2 0 |
#define | RENAME(a) a ## _MMX |
#define | COMPILE_TEMPLATE_MMX2 1 |
#define | RENAME(a) a ## _MMX2 |
#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_UV_FUNC(fmt, opt) |
#define | INPUT_FUNC(fmt, opt) |
#define | INPUT_FUNCS(opt) |
Functions | |
DECLARE_ASM_CONST (DECLARE_ASM_CONST(8, DECLARE_ASM_CONST(uint64_t, bF8) | |
DECLARE_ASM_CONST (DECLARE_ASM_CONST(8, DECLARE_ASM_CONST(uint64_t, b16Mask) | |
DECLARE_ASM_CONST (8, uint64_t, ff_bgr24toUVOffset) | |
SCALE_FUNCS_SSE (sse2) | |
SCALE_FUNCS_SSE (ssse3) | |
SCALE_FUNCS_SSE (sse4) | |
VSCALEX_FUNCS (sse2) | |
VSCALEX_FUNCS (sse4) | |
VSCALEX_FUNC (16, sse4) | |
VSCALEX_FUNCS (avx) | |
VSCALE_FUNCS (sse2, sse2) | |
VSCALE_FUNC (16, sse4) | |
VSCALE_FUNCS (avx, avx) | |
INPUT_FUNCS (sse2) | |
INPUT_FUNCS (avx) | |
void | ff_sws_init_swScale_mmx (SwsContext *c) |
Variables | |
const uint64_t | ff_dither8 [2] |
#define COMPILE_TEMPLATE_MMX2 0 |
#define COMPILE_TEMPLATE_MMX2 1 |
#define INPUT_FUNC | ( | fmt, | |
opt | |||
) |
extern void ff_ ## fmt ## ToY_ ## opt(uint8_t *dst, const uint8_t *src, \ int w, uint32_t *unused); \ INPUT_UV_FUNC(fmt, opt)
Definition at line 289 of file swscale_mmx.c.
#define INPUT_FUNCS | ( | opt | ) |
INPUT_FUNC(uyvy, opt); \ INPUT_FUNC(yuyv, opt); \ INPUT_UV_FUNC(nv12, opt); \ INPUT_UV_FUNC(nv21, opt)
Definition at line 293 of file swscale_mmx.c.
#define INPUT_UV_FUNC | ( | fmt, | |
opt | |||
) |
extern void ff_ ## fmt ## ToUV_ ## opt(uint8_t *dstU, uint8_t *dstV, \ const uint8_t *src, const uint8_t *unused1, \ int w, uint32_t *unused2)
Definition at line 285 of file swscale_mmx.c.
#define RENAME | ( | a | ) | a ## _MMX |
#define RENAME | ( | a | ) | a ## _MMX2 |
#define SCALE_FUNC | ( | filter_n, | |
from_bpc, | |||
to_bpc, | |||
opt | |||
) |
extern void ff_hscale ## from_bpc ## to ## to_bpc ## _ ## filter_n ## _ ## opt( \ SwsContext *c, int16_t *data, \ int dstW, const uint8_t *src, \ const int16_t *filter, \ const int32_t *filterPos, int filterSize)
Definition at line 217 of file swscale_mmx.c.
#define SCALE_FUNCS | ( | filter_n, | |
opt | |||
) |
SCALE_FUNC(filter_n, 8, 15, opt); \ SCALE_FUNC(filter_n, 9, 15, opt); \ SCALE_FUNC(filter_n, 10, 15, opt); \ SCALE_FUNC(filter_n, 16, 15, opt); \ SCALE_FUNC(filter_n, 8, 19, opt); \ SCALE_FUNC(filter_n, 9, 19, opt); \ SCALE_FUNC(filter_n, 10, 19, opt); \ SCALE_FUNC(filter_n, 16, 19, opt)
Definition at line 224 of file swscale_mmx.c.
#define SCALE_FUNCS_MMX | ( | opt | ) |
SCALE_FUNCS(4, opt); \ SCALE_FUNCS(8, opt); \ SCALE_FUNCS(X, opt)
Definition at line 234 of file swscale_mmx.c.
#define SCALE_FUNCS_SSE | ( | opt | ) |
SCALE_FUNCS(4, opt); \ SCALE_FUNCS(8, opt); \ SCALE_FUNCS(X4, opt); \ SCALE_FUNCS(X8, opt)
Definition at line 239 of file swscale_mmx.c.
#define VSCALE_FUNC | ( | size, | |
opt | |||
) |
extern void ff_yuv2plane1_ ## size ## _ ## opt(const int16_t *src, uint8_t *dst, int dstW, \ const uint8_t *dither, int offset)
Definition at line 269 of file swscale_mmx.c.
#define VSCALE_FUNCS | ( | opt1, | |
opt2 | |||
) |
VSCALE_FUNC(8, opt1); \ VSCALE_FUNC(9, opt2); \ VSCALE_FUNC(10, opt2); \ VSCALE_FUNC(16, opt1)
Definition at line 272 of file swscale_mmx.c.
#define VSCALEX_FUNC | ( | size, | |
opt | |||
) |
#define VSCALEX_FUNCS | ( | opt | ) |
VSCALEX_FUNC(8, opt); \ VSCALEX_FUNC(9, opt); \ VSCALEX_FUNC(10, opt)
Definition at line 256 of file swscale_mmx.c.
DECLARE_ASM_CONST | ( | DECLARE_ASM_CONST( | 8, |
DECLARE_ASM_CONST( | uint64_t, | ||
bF8 | |||
) | [pure virtual] |
Definition at line 30 of file swscale_mmx.c.
DECLARE_ASM_CONST | ( | DECLARE_ASM_CONST( | 8, |
DECLARE_ASM_CONST( | uint64_t, | ||
b16Mask | |||
) | [pure virtual] |
Definition at line 47 of file swscale_mmx.c.
DECLARE_ASM_CONST | ( | 8 | , |
uint64_t | , | ||
ff_bgr24toUVOffset | |||
) | [pure virtual] |
Definition at line 82 of file swscale_mmx.c.
Definition at line 305 of file swscale_mmx.c.
Referenced by ff_getSwsFunc().
INPUT_FUNCS | ( | sse2 | ) |
INPUT_FUNCS | ( | avx | ) |
SCALE_FUNCS_SSE | ( | sse2 | ) |
SCALE_FUNCS_SSE | ( | ssse3 | ) |
SCALE_FUNCS_SSE | ( | sse4 | ) |
VSCALE_FUNC | ( | 16 | , |
sse4 | |||
) |
VSCALE_FUNCS | ( | sse2 | , |
sse2 | |||
) |
VSCALE_FUNCS | ( | avx | , |
avx | |||
) |
VSCALEX_FUNC | ( | 16 | , |
sse4 | |||
) |
VSCALEX_FUNCS | ( | sse2 | ) |
VSCALEX_FUNCS | ( | sse4 | ) |
VSCALEX_FUNCS | ( | avx | ) |
const uint64_t ff_dither8[2] |
{ 0x0602060206020602LL, 0x0004000400040004LL,}
Definition at line 43 of file swscale_mmx.c.
Referenced by DECLARE_ASM_CONST(), yuv420_rgb15_TMPL(), and yuv420_rgb16_TMPL().