#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 | 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 INPUT_FUNC | ( | fmt, | |||
opt | ) |
Value:
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 352 of file swscale_mmx.c.
#define INPUT_FUNCS | ( | opt | ) |
Value:
INPUT_FUNC(uyvy, opt); \ INPUT_FUNC(yuyv, opt); \ INPUT_UV_FUNC(nv12, opt); \ INPUT_UV_FUNC(nv21, opt)
Definition at line 356 of file swscale_mmx.c.
#define INPUT_UV_FUNC | ( | fmt, | |||
opt | ) |
Value:
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 348 of file swscale_mmx.c.
#define RENAME | ( | a | ) | a ## _MMX |
#define SCALE_FUNC | ( | filter_n, | |||
from_bpc, | |||||
to_bpc, | |||||
opt | ) |
Value:
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 278 of file swscale_mmx.c.
#define SCALE_FUNCS | ( | filter_n, | |||
opt | ) |
Value:
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, 14, 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, 14, 19, opt); \ SCALE_FUNC(filter_n, 16, 19, opt)
Definition at line 285 of file swscale_mmx.c.
#define SCALE_FUNCS_MMX | ( | opt | ) |
Value:
SCALE_FUNCS(4, opt); \ SCALE_FUNCS(8, opt); \ SCALE_FUNCS(X, opt)
Definition at line 297 of file swscale_mmx.c.
#define SCALE_FUNCS_SSE | ( | opt | ) |
Value:
SCALE_FUNCS(4, opt); \ SCALE_FUNCS(8, opt); \ SCALE_FUNCS(X4, opt); \ SCALE_FUNCS(X8, opt)
Definition at line 302 of file swscale_mmx.c.
#define VSCALE_FUNC | ( | size, | |||
opt | ) |
#define VSCALE_FUNCS | ( | opt1, | |||
opt2 | ) |
Value:
VSCALE_FUNC(8, opt1); \ VSCALE_FUNC(9, opt2); \ VSCALE_FUNC(10, opt2); \ VSCALE_FUNC(16, opt1)
Definition at line 335 of file swscale_mmx.c.
#define VSCALEX_FUNC | ( | size, | |||
opt | ) |
#define VSCALEX_FUNCS | ( | opt | ) |
Value:
VSCALEX_FUNC(8, opt); \ VSCALEX_FUNC(9, opt); \ VSCALEX_FUNC(10, opt)
Definition at line 319 of file swscale_mmx.c.
DECLARE_ASM_CONST | ( | 8 | , | |
uint64_t | , | |||
ff_bgr24toUVOffset | ||||
) | [pure virtual] |
Definition at line 82 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 | ( | DECLARE_ASM_CONST( | 8, | |
DECLARE_ASM_CONST( | uint64_t, | |||
bF8 | ||||
) | [pure virtual] |
Definition at line 30 of file swscale_mmx.c.
void ff_sws_init_swScale_mmx | ( | SwsContext * | c | ) |
INPUT_FUNCS | ( | avx | ) |
INPUT_FUNCS | ( | sse2 | ) |
SCALE_FUNCS_SSE | ( | sse4 | ) |
SCALE_FUNCS_SSE | ( | ssse3 | ) |
SCALE_FUNCS_SSE | ( | sse2 | ) |
VSCALE_FUNC | ( | 16 | , | |
sse4 | ||||
) |
VSCALE_FUNCS | ( | avx | , | |
avx | ||||
) |
VSCALE_FUNCS | ( | sse2 | , | |
sse2 | ||||
) |
VSCALEX_FUNC | ( | 16 | , | |
sse4 | ||||
) |
VSCALEX_FUNCS | ( | avx | ) |
VSCALEX_FUNCS | ( | sse4 | ) |
VSCALEX_FUNCS | ( | sse2 | ) |
const uint64_t ff_dither8[2] |
Initial value:
{ 0x0602060206020602LL, 0x0004000400040004LL,}
Definition at line 43 of file swscale_mmx.c.
Referenced by DECLARE_ASM_CONST(), yuv420_rgb15_TMPL(), and yuv420_rgb16_TMPL().