FFmpeg
Loading...
Searching...
No Matches
swscale_unscaled.c File Reference

Go to the source code of this file.

Macros

#define NVXXRGB32FUNC(func_name, uv_swap)
 

Functions

void ff_get_unscaled_swscale_loongarch (SwsInternal *c)
 

Macro Definition Documentation

◆ NVXXRGB32FUNC

#define NVXXRGB32FUNC ( func_name,
uv_swap )
Value:
int func_name(SwsInternal *c, const uint8_t *const src[], \
const int srcStride[], int srcSliceY, int srcSliceH, \
uint8_t *const dst[], const int dstStride[]) \
{ \
int y; \
\
for (y = 0; y < srcSliceH; y++) { \
int yd = y + srcSliceY; \
uint32_t *dest = (uint32_t *)(dst[0] + yd * dstStride[0]); \
const uint8_t *py = src[0] + y * srcStride[0]; \
const uint8_t *puv = src[1] + (y >> 1) * srcStride[1]; \
int i; \
\
for (i = 0; i < c->opts.dst_w; i++) { \
int Y = py[i]; \
int U = puv[(i >> 1) * 2 + uv_swap]; \
int V = puv[(i >> 1) * 2 + (uv_swap ^ 1)]; \
uint32_t *r = (void *)c->table_rV[V+YUVRGB_TABLE_HEADROOM]; \
uint32_t *g = (void *)(c->table_gU[U+YUVRGB_TABLE_HEADROOM] \
+ c->table_gV[V+YUVRGB_TABLE_HEADROOM]); \
uint32_t *b = (void *)c->table_bU[U+YUVRGB_TABLE_HEADROOM]; \
dest[i] = r[Y] + g[Y] + b[Y]; \
} \
} \
return srcSliceH; \
}
uint8_t ptrdiff_t const uint8_t ptrdiff_t int intptr_t intptr_t int int16_t * dst
Definition dsp.h:97
#define U(x)
Definition vpx_arith.h:37
#define V
Definition avdct.c:32
#define Y
Definition boxblur.h:37
#define i(width, name, range_min, range_max)
Definition cbs_h264.c:63
#define r
Definition input.c:42
#define b
Definition input.c:43
#define YUVRGB_TABLE_HEADROOM
#define src
Definition vp8dsp.c:248
const char * g
Definition vf_curves.c:128
static double c[64]

Definition at line 32 of file swscale_unscaled.c.

Function Documentation

◆ ff_get_unscaled_swscale_loongarch()

void ff_get_unscaled_swscale_loongarch ( SwsInternal * c)