output.c File Reference
#include <assert.h>
#include <math.h>
#include <stdint.h>
#include <stdio.h>
#include <string.h>
#include "libavutil/attributes.h"
#include "libavutil/avutil.h"
#include "libavutil/avassert.h"
#include "libavutil/bswap.h"
#include "libavutil/cpu.h"
#include "libavutil/intreadwrite.h"
#include "libavutil/mathematics.h"
#include "libavutil/pixdesc.h"
#include "config.h"
#include "rgb2rgb.h"
#include "swscale.h"
#include "swscale_internal.h"
Include dependency graph for output.c:

Go to the source code of this file.

Macros

#define output_pixel(pos, val, bias, signedness)
 
#define output_pixel(pos, val)
 
#define yuv2NBPS(bits, BE_LE, is_be, template_size, typeX_t)
 
#define accumulate_bit(acc, val)
 
#define output_pixel(pos, acc)
 
#define YUV2PACKEDWRAPPER(name, base, ext, fmt)
 
#define output_pixels(pos, Y1, U, Y2, V)
 
#define R_B   ((target == AV_PIX_FMT_RGB48LE || target == AV_PIX_FMT_RGB48BE) ? R : B)
 
#define B_R   ((target == AV_PIX_FMT_RGB48LE || target == AV_PIX_FMT_RGB48BE) ? B : R)
 
#define output_pixel(pos, val)
 
#define YUV2PACKED16WRAPPER(name, base, ext, fmt)
 
#define r_b   ((target == AV_PIX_FMT_RGB24) ? r : b)
 
#define b_r   ((target == AV_PIX_FMT_RGB24) ? b : r)
 
#define YUV2RGBWRAPPERX(name, base, ext, fmt, hasAlpha)
 
#define YUV2RGBWRAPPERX2(name, base, ext, fmt, hasAlpha)
 
#define YUV2RGBWRAPPER(name, base, ext, fmt, hasAlpha)
 

Functions

 DECLARE_ALIGNED (8, const uint8_t, dither_2x2_4)[][8]
 
 DECLARE_ALIGNED (8, const uint8_t, dither_2x2_8)[][8]
 
 DECLARE_ALIGNED (8, const uint8_t, dither_4x4_16)[][8]
 
 DECLARE_ALIGNED (8, const uint8_t, dither_8x8_32)[][8]
 
 DECLARE_ALIGNED (8, const uint8_t, dither_8x8_73)[][8]
 
 DECLARE_ALIGNED (8, const uint8_t, dither_8x8_220)[][8]
 
static av_always_inline void yuv2plane1_16_c_template (const int32_t *src, uint16_t *dest, int dstW, int big_endian, int output_bits)
 
static av_always_inline void yuv2planeX_16_c_template (const int16_t *filter, int filterSize, const int32_t **src, uint16_t *dest, int dstW, int big_endian, int output_bits)
 
static av_always_inline void yuv2plane1_10_c_template (const int16_t *src, uint16_t *dest, int dstW, int big_endian, int output_bits)
 
static av_always_inline void yuv2planeX_10_c_template (const int16_t *filter, int filterSize, const int16_t **src, uint16_t *dest, int dstW, int big_endian, int output_bits)
 
 yuv2NBPS (yuv2NBPS(9, yuv2NBPS(BE, yuv2NBPS(1, yuv2NBPS(10, int16_t)
 
static void yuv2plane1_8_c (const int16_t *src, uint8_t *dest, int dstW, const uint8_t *dither, int offset)
 
static void yuv2nv12cX_c (SwsContext *c, const int16_t *chrFilter, int chrFilterSize, const int16_t **chrUSrc, const int16_t **chrVSrc, uint8_t *dest, int chrDstW)
 
static av_always_inline void yuv2mono_X_c_template (SwsContext *c, const int16_t *lumFilter, const int16_t **lumSrc, int lumFilterSize, const int16_t *chrFilter, const int16_t **chrUSrc, const int16_t **chrVSrc, int chrFilterSize, const int16_t **alpSrc, uint8_t *dest, int dstW, int y, enum AVPixelFormat target)
 
static av_always_inline void yuv2mono_2_c_template (SwsContext *c, const int16_t *buf[2], const int16_t *ubuf[2], const int16_t *vbuf[2], const int16_t *abuf[2], uint8_t *dest, int dstW, int yalpha, int uvalpha, int y, enum AVPixelFormat target)
 
static av_always_inline void yuv2mono_1_c_template (SwsContext *c, const int16_t *buf0, const int16_t *ubuf[2], const int16_t *vbuf[2], const int16_t *abuf0, uint8_t *dest, int dstW, int uvalpha, int y, enum AVPixelFormat target)
 
static av_always_inline void yuv2422_X_c_template (SwsContext *c, const int16_t *lumFilter, const int16_t **lumSrc, int lumFilterSize, const int16_t *chrFilter, const int16_t **chrUSrc, const int16_t **chrVSrc, int chrFilterSize, const int16_t **alpSrc, uint8_t *dest, int dstW, int y, enum AVPixelFormat target)
 
static av_always_inline void yuv2422_2_c_template (SwsContext *c, const int16_t *buf[2], const int16_t *ubuf[2], const int16_t *vbuf[2], const int16_t *abuf[2], uint8_t *dest, int dstW, int yalpha, int uvalpha, int y, enum AVPixelFormat target)
 
static av_always_inline void yuv2422_1_c_template (SwsContext *c, const int16_t *buf0, const int16_t *ubuf[2], const int16_t *vbuf[2], const int16_t *abuf0, uint8_t *dest, int dstW, int uvalpha, int y, enum AVPixelFormat target)
 
static av_always_inline void yuv2rgb48_X_c_template (SwsContext *c, const int16_t *lumFilter, const int32_t **lumSrc, int lumFilterSize, const int16_t *chrFilter, const int32_t **chrUSrc, const int32_t **chrVSrc, int chrFilterSize, const int32_t **alpSrc, uint16_t *dest, int dstW, int y, enum AVPixelFormat target)
 
static av_always_inline void yuv2rgb48_2_c_template (SwsContext *c, const int32_t *buf[2], const int32_t *ubuf[2], const int32_t *vbuf[2], const int32_t *abuf[2], uint16_t *dest, int dstW, int yalpha, int uvalpha, int y, enum AVPixelFormat target)
 
static av_always_inline void yuv2rgb48_1_c_template (SwsContext *c, const int32_t *buf0, const int32_t *ubuf[2], const int32_t *vbuf[2], const int32_t *abuf0, uint16_t *dest, int dstW, int uvalpha, int y, enum AVPixelFormat target)
 
static av_always_inline void yuv2rgb_write (uint8_t *_dest, int i, int Y1, int Y2, unsigned A1, unsigned A2, const void *_r, const void *_g, const void *_b, int y, enum AVPixelFormat target, int hasAlpha)
 
static av_always_inline void yuv2rgb_X_c_template (SwsContext *c, const int16_t *lumFilter, const int16_t **lumSrc, int lumFilterSize, const int16_t *chrFilter, const int16_t **chrUSrc, const int16_t **chrVSrc, int chrFilterSize, const int16_t **alpSrc, uint8_t *dest, int dstW, int y, enum AVPixelFormat target, int hasAlpha)
 
static av_always_inline void yuv2rgb_2_c_template (SwsContext *c, const int16_t *buf[2], const int16_t *ubuf[2], const int16_t *vbuf[2], const int16_t *abuf[2], uint8_t *dest, int dstW, int yalpha, int uvalpha, int y, enum AVPixelFormat target, int hasAlpha)
 
static av_always_inline void yuv2rgb_1_c_template (SwsContext *c, const int16_t *buf0, const int16_t *ubuf[2], const int16_t *vbuf[2], const int16_t *abuf0, uint8_t *dest, int dstW, int uvalpha, int y, enum AVPixelFormat target, int hasAlpha)
 
static av_always_inline void yuv2rgb_write_full (SwsContext *c, uint8_t *dest, int i, int Y, int A, int U, int V, int y, enum AVPixelFormat target, int hasAlpha, int err[4])
 
static av_always_inline void yuv2rgb_full_X_c_template (SwsContext *c, const int16_t *lumFilter, const int16_t **lumSrc, int lumFilterSize, const int16_t *chrFilter, const int16_t **chrUSrc, const int16_t **chrVSrc, int chrFilterSize, const int16_t **alpSrc, uint8_t *dest, int dstW, int y, enum AVPixelFormat target, int hasAlpha)
 
static av_always_inline void yuv2rgb_full_2_c_template (SwsContext *c, const int16_t *buf[2], const int16_t *ubuf[2], const int16_t *vbuf[2], const int16_t *abuf[2], uint8_t *dest, int dstW, int yalpha, int uvalpha, int y, enum AVPixelFormat target, int hasAlpha)
 
static av_always_inline void yuv2rgb_full_1_c_template (SwsContext *c, const int16_t *buf0, const int16_t *ubuf[2], const int16_t *vbuf[2], const int16_t *abuf0, uint8_t *dest, int dstW, int uvalpha, int y, enum AVPixelFormat target, int hasAlpha)
 
static void yuv2gbrp_full_X_c (SwsContext *c, const int16_t *lumFilter, const int16_t **lumSrc, int lumFilterSize, const int16_t *chrFilter, const int16_t **chrUSrc, const int16_t **chrVSrc, int chrFilterSize, const int16_t **alpSrc, uint8_t **dest, int dstW, int y)
 
av_cold void ff_sws_init_output_funcs (SwsContext *c, yuv2planar1_fn *yuv2plane1, yuv2planarX_fn *yuv2planeX, yuv2interleavedX_fn *yuv2nv12cX, yuv2packed1_fn *yuv2packed1, yuv2packed2_fn *yuv2packed2, yuv2packedX_fn *yuv2packedX, yuv2anyX_fn *yuv2anyX)
 

Macro Definition Documentation

#define accumulate_bit (   acc,
  val 
)
Value:
acc <<= 1; \
acc |= (val) >= (128 + 110)
int acc
Definition: yuv2rgb.c:519

Definition at line 315 of file output.c.

Referenced by yuv2mono_1_c_template(), yuv2mono_2_c_template(), and yuv2mono_X_c_template().

#define B_R   ((target == AV_PIX_FMT_RGB48LE || target == AV_PIX_FMT_RGB48BE) ? B : R)
#define output_pixel (   pos,
  val,
  bias,
  signedness 
)
Value:
if (big_endian) { \
AV_WB16(pos, bias + av_clip_ ## signedness ## 16(val >> shift)); \
} else { \
AV_WL16(pos, bias + av_clip_ ## signedness ## 16(val >> shift)); \
}
static int shift(int a, int b)
Definition: sonic.c:86
#define AV_WL16(p, darg)
Definition: intreadwrite.h:250
#define AV_WB16(p, darg)
Definition: intreadwrite.h:237

Definition at line 669 of file output.c.

Referenced by yuv2mono_1_c_template(), yuv2mono_2_c_template(), yuv2mono_X_c_template(), yuv2plane1_10_c_template(), yuv2plane1_16_c_template(), yuv2planeX_10_c_template(), yuv2planeX_16_c_template(), yuv2rgb48_1_c_template(), yuv2rgb48_2_c_template(), and yuv2rgb48_X_c_template().

#define output_pixel (   pos,
  val 
)
Value:
if (big_endian) { \
AV_WB16(pos, av_clip_uintp2(val >> shift, output_bits)); \
} else { \
AV_WL16(pos, av_clip_uintp2(val >> shift, output_bits)); \
}
static int shift(int a, int b)
Definition: sonic.c:86
#define AV_WL16(p, darg)
Definition: intreadwrite.h:250
#define AV_WB16(p, darg)
Definition: intreadwrite.h:237

Definition at line 669 of file output.c.

#define output_pixel (   pos,
  acc 
)
Value:
if (target == AV_PIX_FMT_MONOBLACK) { \
pos = acc; \
} else { \
pos = ~acc; \
}
int acc
Definition: yuv2rgb.c:519
Y , 1bpp, 0 is black, 1 is white, in each byte pixels are ordered from the msb to the lsb...
Definition: pixfmt.h:78

Definition at line 669 of file output.c.

#define output_pixel (   pos,
  val 
)
Value:
if (isBE(target)) { \
AV_WB16(pos, val); \
} else { \
AV_WL16(pos, val); \
}
#define AV_WL16(p, darg)
Definition: intreadwrite.h:250
static av_always_inline int isBE(enum AVPixelFormat pix_fmt)
#define AV_WB16(p, darg)
Definition: intreadwrite.h:237

Definition at line 669 of file output.c.

#define output_pixels (   pos,
  Y1,
  U,
  Y2,
  V 
)
Value:
if (target == AV_PIX_FMT_YUYV422) { \
dest[pos + 0] = Y1; \
dest[pos + 1] = U; \
dest[pos + 2] = Y2; \
dest[pos + 3] = V; \
} else { \
dest[pos + 0] = U; \
dest[pos + 1] = Y1; \
dest[pos + 2] = V; \
dest[pos + 3] = Y2; \
}
the sinusoids Y1
Definition: lab5.m:33
Y2
Definition: lab5.m:34
#define U(x)
#define V
dest
Definition: start.py:60
packed YUV 4:2:2, 16bpp, Y0 Cb Y1 Cr
Definition: pixfmt.h:69

Definition at line 524 of file output.c.

Referenced by yuv2422_1_c_template(), yuv2422_2_c_template(), and yuv2422_X_c_template().

#define R_B   ((target == AV_PIX_FMT_RGB48LE || target == AV_PIX_FMT_RGB48BE) ? R : B)
#define yuv2NBPS (   bits,
  BE_LE,
  is_be,
  template_size,
  typeX_t 
)
Value:
static void yuv2plane1_ ## bits ## BE_LE ## _c(const int16_t *src, \
uint8_t *dest, int dstW, \
const uint8_t *dither, int offset)\
{ \
yuv2plane1_ ## template_size ## _c_template((const typeX_t *) src, \
(uint16_t *) dest, dstW, is_be, bits); \
}\
static void yuv2planeX_ ## bits ## BE_LE ## _c(const int16_t *filter, int filterSize, \
const int16_t **src, uint8_t *dest, int dstW, \
const uint8_t *dither, int offset)\
{ \
yuv2planeX_## template_size ## _c_template(filter, \
filterSize, (const typeX_t **) src, \
(uint16_t *) dest, dstW, is_be, bits); \
}
uint8_t bits
Definition: crc.c:216
uint8_t
the mask is usually to keep the same permissions Filters should remove permissions on reference they give to output whenever necessary It can be automatically done by setting the rej_perms field on the output pad Here are a few guidelines corresponding to common then the filter should push the output frames on the output link immediately As an exception to the previous rule if the input frame is enough to produce several output frames then the filter needs output only at least one per link The additional frames can be left buffered in the filter
static const uint8_t offset[127][2]
Definition: vf_spp.c:70
dest
Definition: start.py:60
AVS_Value src
Definition: avisynth_c.h:523

Definition at line 227 of file output.c.

#define YUV2PACKED16WRAPPER (   name,
  base,
  ext,
  fmt 
)

Definition at line 848 of file output.c.

#define YUV2PACKEDWRAPPER (   name,
  base,
  ext,
  fmt 
)
Value:
static void name ## ext ## _X_c(SwsContext *c, const int16_t *lumFilter, \
const int16_t **lumSrc, int lumFilterSize, \
const int16_t *chrFilter, const int16_t **chrUSrc, \
const int16_t **chrVSrc, int chrFilterSize, \
const int16_t **alpSrc, uint8_t *dest, int dstW, \
int y) \
{ \
name ## base ## _X_c_template(c, lumFilter, lumSrc, lumFilterSize, \
chrFilter, chrUSrc, chrVSrc, chrFilterSize, \
alpSrc, dest, dstW, y, fmt); \
} \
\
static void name ## ext ## _2_c(SwsContext *c, const int16_t *buf[2], \
const int16_t *ubuf[2], const int16_t *vbuf[2], \
const int16_t *abuf[2], uint8_t *dest, int dstW, \
int yalpha, int uvalpha, int y) \
{ \
name ## base ## _2_c_template(c, buf, ubuf, vbuf, abuf, \
dest, dstW, yalpha, uvalpha, y, fmt); \
} \
\
static void name ## ext ## _1_c(SwsContext *c, const int16_t *buf0, \
const int16_t *ubuf[2], const int16_t *vbuf[2], \
const int16_t *abuf0, uint8_t *dest, int dstW, \
int uvalpha, int y) \
{ \
name ## base ## _1_c_template(c, buf0, ubuf, vbuf, \
abuf0, dest, dstW, uvalpha, \
y, fmt); \
}
const char * name
Definition: avisynth_c.h:675
const char * fmt
Definition: avisynth_c.h:669
uint8_t
dest
Definition: start.py:60
void * buf
Definition: avisynth_c.h:594
static double c[64]
function y
Definition: D.m:1

Definition at line 489 of file output.c.

Referenced by yuv2422_1_c_template().

#define YUV2RGBWRAPPER (   name,
  base,
  ext,
  fmt,
  hasAlpha 
)
Value:
YUV2RGBWRAPPERX2(name, base, ext, fmt, hasAlpha) \
static void name ## ext ## _1_c(SwsContext *c, const int16_t *buf0, \
const int16_t *ubuf[2], const int16_t *vbuf[2], \
const int16_t *abuf0, uint8_t *dest, int dstW, \
int uvalpha, int y) \
{ \
name ## base ## _1_c_template(c, buf0, ubuf, vbuf, abuf0, dest, \
dstW, uvalpha, y, fmt, hasAlpha); \
}
const char * name
Definition: avisynth_c.h:675
#define YUV2RGBWRAPPERX2(name, base, ext, fmt, hasAlpha)
Definition: output.c:1181
const char * fmt
Definition: avisynth_c.h:669
uint8_t
dest
Definition: start.py:60
static double c[64]
function y
Definition: D.m:1

Definition at line 1192 of file output.c.

Referenced by yuv2rgb_full_1_c_template().

#define YUV2RGBWRAPPERX (   name,
  base,
  ext,
  fmt,
  hasAlpha 
)
Value:
static void name ## ext ## _X_c(SwsContext *c, const int16_t *lumFilter, \
const int16_t **lumSrc, int lumFilterSize, \
const int16_t *chrFilter, const int16_t **chrUSrc, \
const int16_t **chrVSrc, int chrFilterSize, \
const int16_t **alpSrc, uint8_t *dest, int dstW, \
int y) \
{ \
name ## base ## _X_c_template(c, lumFilter, lumSrc, lumFilterSize, \
chrFilter, chrUSrc, chrVSrc, chrFilterSize, \
alpSrc, dest, dstW, y, fmt, hasAlpha); \
}
const char * name
Definition: avisynth_c.h:675
const char * fmt
Definition: avisynth_c.h:669
uint8_t
dest
Definition: start.py:60
static double c[64]
function y
Definition: D.m:1

Definition at line 1168 of file output.c.

#define YUV2RGBWRAPPERX2 (   name,
  base,
  ext,
  fmt,
  hasAlpha 
)
Value:
YUV2RGBWRAPPERX(name, base, ext, fmt, hasAlpha) \
static void name ## ext ## _2_c(SwsContext *c, const int16_t *buf[2], \
const int16_t *ubuf[2], const int16_t *vbuf[2], \
const int16_t *abuf[2], uint8_t *dest, int dstW, \
int yalpha, int uvalpha, int y) \
{ \
name ## base ## _2_c_template(c, buf, ubuf, vbuf, abuf, \
dest, dstW, yalpha, uvalpha, y, fmt, hasAlpha); \
}
const char * name
Definition: avisynth_c.h:675
const char * fmt
Definition: avisynth_c.h:669
#define YUV2RGBWRAPPERX(name, base, ext, fmt, hasAlpha)
Definition: output.c:1168
uint8_t
dest
Definition: start.py:60
void * buf
Definition: avisynth_c.h:594
static double c[64]
function y
Definition: D.m:1

Definition at line 1181 of file output.c.

Function Documentation

DECLARE_ALIGNED ( ,
const uint8_t  ,
dither_2x2_4   
)
DECLARE_ALIGNED ( ,
const uint8_t  ,
dither_2x2_8   
)
DECLARE_ALIGNED ( ,
const uint8_t  ,
dither_4x4_16   
)
DECLARE_ALIGNED ( ,
const uint8_t  ,
dither_8x8_32   
)
DECLARE_ALIGNED ( ,
const uint8_t  ,
dither_8x8_73   
)
DECLARE_ALIGNED ( ,
const uint8_t  ,
dither_8x8_220   
)
av_cold void ff_sws_init_output_funcs ( SwsContext c,
yuv2planar1_fn yuv2plane1,
yuv2planarX_fn yuv2planeX,
yuv2interleavedX_fn yuv2nv12cX,
yuv2packed1_fn yuv2packed1,
yuv2packed2_fn yuv2packed2,
yuv2packedX_fn yuv2packedX,
yuv2anyX_fn yuv2anyX 
)

Definition at line 1565 of file output.c.

Referenced by sws_init_swScale_c(), swScale(), and usePal().

static av_always_inline void yuv2422_1_c_template ( SwsContext c,
const int16_t *  buf0,
const int16_t *  ubuf[2],
const int16_t *  vbuf[2],
const int16_t *  abuf0,
uint8_t dest,
int  dstW,
int  uvalpha,
int  y,
enum AVPixelFormat  target 
)
static

Definition at line 608 of file output.c.

static av_always_inline void yuv2422_2_c_template ( SwsContext c,
const int16_t *  buf[2],
const int16_t *  ubuf[2],
const int16_t *  vbuf[2],
const int16_t *  abuf[2],
uint8_t dest,
int  dstW,
int  yalpha,
int  uvalpha,
int  y,
enum AVPixelFormat  target 
)
static

Definition at line 577 of file output.c.

static av_always_inline void yuv2422_X_c_template ( SwsContext c,
const int16_t *  lumFilter,
const int16_t **  lumSrc,
int  lumFilterSize,
const int16_t *  chrFilter,
const int16_t **  chrUSrc,
const int16_t **  chrVSrc,
int  chrFilterSize,
const int16_t **  alpSrc,
uint8_t dest,
int  dstW,
int  y,
enum AVPixelFormat  target 
)
static

Definition at line 538 of file output.c.

static void yuv2gbrp_full_X_c ( SwsContext c,
const int16_t *  lumFilter,
const int16_t **  lumSrc,
int  lumFilterSize,
const int16_t *  chrFilter,
const int16_t **  chrUSrc,
const int16_t **  chrVSrc,
int  chrFilterSize,
const int16_t **  alpSrc,
uint8_t **  dest,
int  dstW,
int  y 
)
static

Definition at line 1489 of file output.c.

Referenced by ff_sws_init_output_funcs().

static av_always_inline void yuv2mono_1_c_template ( SwsContext c,
const int16_t *  buf0,
const int16_t *  ubuf[2],
const int16_t *  vbuf[2],
const int16_t *  abuf0,
uint8_t dest,
int  dstW,
int  uvalpha,
int  y,
enum AVPixelFormat  target 
)
static

Definition at line 439 of file output.c.

static av_always_inline void yuv2mono_2_c_template ( SwsContext c,
const int16_t *  buf[2],
const int16_t *  ubuf[2],
const int16_t *  vbuf[2],
const int16_t *  abuf[2],
uint8_t dest,
int  dstW,
int  yalpha,
int  uvalpha,
int  y,
enum AVPixelFormat  target 
)
static

Definition at line 379 of file output.c.

static av_always_inline void yuv2mono_X_c_template ( SwsContext c,
const int16_t *  lumFilter,
const int16_t **  lumSrc,
int  lumFilterSize,
const int16_t *  chrFilter,
const int16_t **  chrUSrc,
const int16_t **  chrVSrc,
int  chrFilterSize,
const int16_t **  alpSrc,
uint8_t dest,
int  dstW,
int  y,
enum AVPixelFormat  target 
)
static

Definition at line 326 of file output.c.

yuv2NBPS ( yuv2NBPS(  9,
yuv2NBPS(  BE,
yuv2NBPS(  1,
yuv2NBPS(  10,
int16_t   
)

Definition at line 243 of file output.c.

static void yuv2nv12cX_c ( SwsContext c,
const int16_t *  chrFilter,
int  chrFilterSize,
const int16_t **  chrUSrc,
const int16_t **  chrVSrc,
uint8_t dest,
int  chrDstW 
)
static

Definition at line 279 of file output.c.

Referenced by ff_sws_init_output_funcs().

static av_always_inline void yuv2plane1_10_c_template ( const int16_t *  src,
uint16_t *  dest,
int  dstW,
int  big_endian,
int  output_bits 
)
static

Definition at line 194 of file output.c.

static av_always_inline void yuv2plane1_16_c_template ( const int32_t src,
uint16_t *  dest,
int  dstW,
int  big_endian,
int  output_bits 
)
static

Definition at line 145 of file output.c.

static void yuv2plane1_8_c ( const int16_t *  src,
uint8_t dest,
int  dstW,
const uint8_t dither,
int  offset 
)
static

Definition at line 269 of file output.c.

Referenced by ff_sws_init_output_funcs().

static av_always_inline void yuv2planeX_10_c_template ( const int16_t *  filter,
int  filterSize,
const int16_t **  src,
uint16_t *  dest,
int  dstW,
int  big_endian,
int  output_bits 
)
static

Definition at line 207 of file output.c.

static av_always_inline void yuv2planeX_16_c_template ( const int16_t *  filter,
int  filterSize,
const int32_t **  src,
uint16_t *  dest,
int  dstW,
int  big_endian,
int  output_bits 
)
static

Definition at line 159 of file output.c.

static av_always_inline void yuv2rgb48_1_c_template ( SwsContext c,
const int32_t buf0,
const int32_t ubuf[2],
const int32_t vbuf[2],
const int32_t abuf0,
uint16_t *  dest,
int  dstW,
int  uvalpha,
int  y,
enum AVPixelFormat  target 
)
static

Definition at line 778 of file output.c.

static av_always_inline void yuv2rgb48_2_c_template ( SwsContext c,
const int32_t buf[2],
const int32_t ubuf[2],
const int32_t vbuf[2],
const int32_t abuf[2],
uint16_t *  dest,
int  dstW,
int  yalpha,
int  uvalpha,
int  y,
enum AVPixelFormat  target 
)
static

Definition at line 736 of file output.c.

static av_always_inline void yuv2rgb48_X_c_template ( SwsContext c,
const int16_t *  lumFilter,
const int32_t **  lumSrc,
int  lumFilterSize,
const int16_t *  chrFilter,
const int32_t **  chrUSrc,
const int32_t **  chrVSrc,
int  chrFilterSize,
const int32_t **  alpSrc,
uint16_t *  dest,
int  dstW,
int  y,
enum AVPixelFormat  target 
)
static

Definition at line 677 of file output.c.

static av_always_inline void yuv2rgb_1_c_template ( SwsContext c,
const int16_t *  buf0,
const int16_t *  ubuf[2],
const int16_t *  vbuf[2],
const int16_t *  abuf0,
uint8_t dest,
int  dstW,
int  uvalpha,
int  y,
enum AVPixelFormat  target,
int  hasAlpha 
)
static

Definition at line 1113 of file output.c.

static av_always_inline void yuv2rgb_2_c_template ( SwsContext c,
const int16_t *  buf[2],
const int16_t *  ubuf[2],
const int16_t *  vbuf[2],
const int16_t *  abuf[2],
uint8_t dest,
int  dstW,
int  yalpha,
int  uvalpha,
int  y,
enum AVPixelFormat  target,
int  hasAlpha 
)
static

Definition at line 1075 of file output.c.

static av_always_inline void yuv2rgb_full_1_c_template ( SwsContext c,
const int16_t *  buf0,
const int16_t *  ubuf[2],
const int16_t *  vbuf[2],
const int16_t *  abuf0,
uint8_t dest,
int  dstW,
int  uvalpha,
int  y,
enum AVPixelFormat  target,
int  hasAlpha 
)
static

Definition at line 1408 of file output.c.

static av_always_inline void yuv2rgb_full_2_c_template ( SwsContext c,
const int16_t *  buf[2],
const int16_t *  ubuf[2],
const int16_t *  vbuf[2],
const int16_t *  abuf[2],
uint8_t dest,
int  dstW,
int  yalpha,
int  uvalpha,
int  y,
enum AVPixelFormat  target,
int  hasAlpha 
)
static

Definition at line 1366 of file output.c.

static av_always_inline void yuv2rgb_full_X_c_template ( SwsContext c,
const int16_t *  lumFilter,
const int16_t **  lumSrc,
int  lumFilterSize,
const int16_t *  chrFilter,
const int16_t **  chrUSrc,
const int16_t **  chrVSrc,
int  chrFilterSize,
const int16_t **  alpSrc,
uint8_t dest,
int  dstW,
int  y,
enum AVPixelFormat  target,
int  hasAlpha 
)
static

Definition at line 1316 of file output.c.

static av_always_inline void yuv2rgb_write ( uint8_t _dest,
int  i,
int  Y1,
int  Y2,
unsigned  A1,
unsigned  A2,
const void _r,
const void _g,
const void _b,
int  y,
enum AVPixelFormat  target,
int  hasAlpha 
)
static

Definition at line 908 of file output.c.

Referenced by yuv2rgb_1_c_template(), yuv2rgb_2_c_template(), and yuv2rgb_X_c_template().

static av_always_inline void yuv2rgb_write_full ( SwsContext c,
uint8_t dest,
int  i,
int  Y,
int  A,
int  U,
int  V,
int  y,
enum AVPixelFormat  target,
int  hasAlpha,
int  err[4] 
)
static
static av_always_inline void yuv2rgb_X_c_template ( SwsContext c,
const int16_t *  lumFilter,
const int16_t **  lumSrc,
int  lumFilterSize,
const int16_t *  chrFilter,
const int16_t **  chrUSrc,
const int16_t **  chrVSrc,
int  chrFilterSize,
const int16_t **  alpSrc,
uint8_t dest,
int  dstW,
int  y,
enum AVPixelFormat  target,
int  hasAlpha 
)
static

Definition at line 1021 of file output.c.