FFmpeg
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Typedefs | Functions | Variables
swscale_unscaled.c File Reference
#include <inttypes.h>
#include <string.h>
#include <math.h>
#include <stdio.h>
#include "config.h"
#include "swscale.h"
#include "swscale_internal.h"
#include "rgb2rgb.h"
#include "libavutil/intreadwrite.h"
#include "libavutil/cpu.h"
#include "libavutil/avutil.h"
#include "libavutil/mathematics.h"
#include "libavutil/bswap.h"
#include "libavutil/pixdesc.h"
#include "libavutil/avassert.h"
#include "bayer_template.c"

Go to the source code of this file.

Macros

#define BAYER_GBRG
 
#define BAYER_8
 
#define BAYER_RENAME(x)   bayer_gbrg8_to_##x
 
#define BAYER_GBRG
 
#define BAYER_16LE
 
#define BAYER_RENAME(x)   bayer_gbrg16le_to_##x
 
#define BAYER_GBRG
 
#define BAYER_16BE
 
#define BAYER_RENAME(x)   bayer_gbrg16be_to_##x
 
#define BAYER_GRBG
 
#define BAYER_8
 
#define BAYER_RENAME(x)   bayer_grbg8_to_##x
 
#define BAYER_GRBG
 
#define BAYER_16LE
 
#define BAYER_RENAME(x)   bayer_grbg16le_to_##x
 
#define BAYER_GRBG
 
#define BAYER_16BE
 
#define BAYER_RENAME(x)   bayer_grbg16be_to_##x
 
#define BAYER_BGGR
 
#define BAYER_8
 
#define BAYER_RENAME(x)   bayer_bggr8_to_##x
 
#define BAYER_BGGR
 
#define BAYER_16LE
 
#define BAYER_RENAME(x)   bayer_bggr16le_to_##x
 
#define BAYER_BGGR
 
#define BAYER_16BE
 
#define BAYER_RENAME(x)   bayer_bggr16be_to_##x
 
#define BAYER_RGGB
 
#define BAYER_8
 
#define BAYER_RENAME(x)   bayer_rggb8_to_##x
 
#define BAYER_RGGB
 
#define BAYER_16LE
 
#define BAYER_RENAME(x)   bayer_rggb16le_to_##x
 
#define BAYER_RGGB
 
#define BAYER_16BE
 
#define BAYER_RENAME(x)   bayer_rggb16be_to_##x
 
#define CASE(pixfmt, prefix)
 
#define CASE(pixfmt, prefix)
 
#define isRGBA32(x)
 
#define isRGBA64(x)
 
#define isRGB48(x)
 
#define IS_NOT_NE(bpp, desc)
 
#define CONV_IS(src, dst)   (srcFormat == AV_PIX_FMT_##src && dstFormat == AV_PIX_FMT_##dst)
 
#define DITHER_COPY(dst, dstStride, src, srcStride, bswap, dbswap)
 
#define COPY816(w)
 
#define FAST_COPY_UP(shift)
 
#define COPY_UP(r, w)
 
#define IS_DIFFERENT_ENDIANESS(src_fmt, dst_fmt, pix_fmt)
 
#define isByteRGB(f)
 
#define isPlanarGray(x)   (isGray(x) && (x) != AV_PIX_FMT_YA8 && (x) != AV_PIX_FMT_YA16LE && (x) != AV_PIX_FMT_YA16BE)
 

Typedefs

typedef void(* rgbConvFn )(const uint8_t *, uint8_t *, int)
 

Functions

static void fillPlane (uint8_t *plane, int stride, int width, int height, int y, uint8_t val)
 
static void copyPlane (const uint8_t *src, int srcStride, int srcSliceY, int srcSliceH, int width, uint8_t *dst, int dstStride)
 
static int planarToNv12Wrapper (SwsContext *c, const uint8_t *src[], int srcStride[], int srcSliceY, int srcSliceH, uint8_t *dstParam[], int dstStride[])
 
static int nv12ToPlanarWrapper (SwsContext *c, const uint8_t *src[], int srcStride[], int srcSliceY, int srcSliceH, uint8_t *dstParam[], int dstStride[])
 
static int planarToYuy2Wrapper (SwsContext *c, const uint8_t *src[], int srcStride[], int srcSliceY, int srcSliceH, uint8_t *dstParam[], int dstStride[])
 
static int planarToUyvyWrapper (SwsContext *c, const uint8_t *src[], int srcStride[], int srcSliceY, int srcSliceH, uint8_t *dstParam[], int dstStride[])
 
static int yuv422pToYuy2Wrapper (SwsContext *c, const uint8_t *src[], int srcStride[], int srcSliceY, int srcSliceH, uint8_t *dstParam[], int dstStride[])
 
static int yuv422pToUyvyWrapper (SwsContext *c, const uint8_t *src[], int srcStride[], int srcSliceY, int srcSliceH, uint8_t *dstParam[], int dstStride[])
 
static int yuyvToYuv420Wrapper (SwsContext *c, const uint8_t *src[], int srcStride[], int srcSliceY, int srcSliceH, uint8_t *dstParam[], int dstStride[])
 
static int yuyvToYuv422Wrapper (SwsContext *c, const uint8_t *src[], int srcStride[], int srcSliceY, int srcSliceH, uint8_t *dstParam[], int dstStride[])
 
static int uyvyToYuv420Wrapper (SwsContext *c, const uint8_t *src[], int srcStride[], int srcSliceY, int srcSliceH, uint8_t *dstParam[], int dstStride[])
 
static int uyvyToYuv422Wrapper (SwsContext *c, const uint8_t *src[], int srcStride[], int srcSliceY, int srcSliceH, uint8_t *dstParam[], int dstStride[])
 
static void gray8aToPacked32 (const uint8_t *src, uint8_t *dst, int num_pixels, const uint8_t *palette)
 
static void gray8aToPacked32_1 (const uint8_t *src, uint8_t *dst, int num_pixels, const uint8_t *palette)
 
static void gray8aToPacked24 (const uint8_t *src, uint8_t *dst, int num_pixels, const uint8_t *palette)
 
static int packed_16bpc_bswap (SwsContext *c, const uint8_t *src[], int srcStride[], int srcSliceY, int srcSliceH, uint8_t *dst[], int dstStride[])
 
static int palToRgbWrapper (SwsContext *c, const uint8_t *src[], int srcStride[], int srcSliceY, int srcSliceH, uint8_t *dst[], int dstStride[])
 
static void packed16togbra16 (const uint8_t *src, int srcStride, uint16_t *dst[], int dstStride[], int srcSliceH, int src_alpha, int swap, int shift, int width)
 
static int Rgb16ToPlanarRgb16Wrapper (SwsContext *c, const uint8_t *src[], int srcStride[], int srcSliceY, int srcSliceH, uint8_t *dst[], int dstStride[])
 
static void gbr16ptopacked16 (const uint16_t *src[], int srcStride[], uint8_t *dst, int dstStride, int srcSliceH, int alpha, int swap, int bpp, int width)
 
static int planarRgb16ToRgb16Wrapper (SwsContext *c, const uint8_t *src[], int srcStride[], int srcSliceY, int srcSliceH, uint8_t *dst[], int dstStride[])
 
static void gbr24ptopacked24 (const uint8_t *src[], int srcStride[], uint8_t *dst, int dstStride, int srcSliceH, int width)
 
static void gbr24ptopacked32 (const uint8_t *src[], int srcStride[], uint8_t *dst, int dstStride, int srcSliceH, int alpha_first, int width)
 
static int planarRgbToRgbWrapper (SwsContext *c, const uint8_t *src[], int srcStride[], int srcSliceY, int srcSliceH, uint8_t *dst[], int dstStride[])
 
static int planarRgbToplanarRgbWrapper (SwsContext *c, const uint8_t *src[], int srcStride[], int srcSliceY, int srcSliceH, uint8_t *dst[], int dstStride[])
 
static void packedtogbr24p (const uint8_t *src, int srcStride, uint8_t *dst[], int dstStride[], int srcSliceH, int alpha_first, int inc_size, int width)
 
static int rgbToPlanarRgbWrapper (SwsContext *c, const uint8_t *src[], int srcStride[], int srcSliceY, int srcSliceH, uint8_t *dst[], int dstStride[])
 
static int bayer_to_rgb24_wrapper (SwsContext *c, const uint8_t *src[], int srcStride[], int srcSliceY, int srcSliceH, uint8_t *dst[], int dstStride[])
 
static int bayer_to_yv12_wrapper (SwsContext *c, const uint8_t *src[], int srcStride[], int srcSliceY, int srcSliceH, uint8_t *dst[], int dstStride[])
 
static rgbConvFn findRgbConvFn (SwsContext *c)
 
static int rgbToRgbWrapper (SwsContext *c, const uint8_t *src[], int srcStride[], int srcSliceY, int srcSliceH, uint8_t *dst[], int dstStride[])
 
static int bgr24ToYv12Wrapper (SwsContext *c, const uint8_t *src[], int srcStride[], int srcSliceY, int srcSliceH, uint8_t *dst[], int dstStride[])
 
static int yvu9ToYv12Wrapper (SwsContext *c, const uint8_t *src[], int srcStride[], int srcSliceY, int srcSliceH, uint8_t *dst[], int dstStride[])
 
static int packedCopyWrapper (SwsContext *c, const uint8_t *src[], int srcStride[], int srcSliceY, int srcSliceH, uint8_t *dst[], int dstStride[])
 
static int planarCopyWrapper (SwsContext *c, const uint8_t *src[], int srcStride[], int srcSliceY, int srcSliceH, uint8_t *dst[], int dstStride[])
 
void ff_get_unscaled_swscale (SwsContext *c)
 Set c->swscale to an unscaled converter if one exists for the specific source and destination formats, bit depths, flags, etc. More...
 
void sws_convertPalette8ToPacked32 (const uint8_t *src, uint8_t *dst, int num_pixels, const uint8_t *palette)
 Convert an 8-bit paletted frame into a frame with a color depth of 32 bits. More...
 
void sws_convertPalette8ToPacked24 (const uint8_t *src, uint8_t *dst, int num_pixels, const uint8_t *palette)
 Convert an 8-bit paletted frame into a frame with a color depth of 24 bits. More...
 

Variables

static const uint8_t dithers [8][8][8]
 
static const uint16_t dither_scale [15][16]
 

Macro Definition Documentation

#define BAYER_GBRG

Definition at line 982 of file swscale_unscaled.c.

#define BAYER_8

Definition at line 1018 of file swscale_unscaled.c.

#define BAYER_RENAME (   x)    bayer_gbrg8_to_##x

Definition at line 1029 of file swscale_unscaled.c.

#define BAYER_GBRG

Definition at line 982 of file swscale_unscaled.c.

#define BAYER_16LE

Definition at line 1023 of file swscale_unscaled.c.

#define BAYER_RENAME (   x)    bayer_gbrg16le_to_##x

Definition at line 1029 of file swscale_unscaled.c.

#define BAYER_GBRG

Definition at line 982 of file swscale_unscaled.c.

#define BAYER_16BE

Definition at line 1028 of file swscale_unscaled.c.

#define BAYER_RENAME (   x)    bayer_gbrg16be_to_##x

Definition at line 1029 of file swscale_unscaled.c.

#define BAYER_GRBG

Definition at line 997 of file swscale_unscaled.c.

#define BAYER_8

Definition at line 1018 of file swscale_unscaled.c.

#define BAYER_RENAME (   x)    bayer_grbg8_to_##x

Definition at line 1029 of file swscale_unscaled.c.

#define BAYER_GRBG

Definition at line 997 of file swscale_unscaled.c.

#define BAYER_16LE

Definition at line 1023 of file swscale_unscaled.c.

#define BAYER_RENAME (   x)    bayer_grbg16le_to_##x

Definition at line 1029 of file swscale_unscaled.c.

#define BAYER_GRBG

Definition at line 997 of file swscale_unscaled.c.

#define BAYER_16BE

Definition at line 1028 of file swscale_unscaled.c.

#define BAYER_RENAME (   x)    bayer_grbg16be_to_##x

Definition at line 1029 of file swscale_unscaled.c.

#define BAYER_BGGR

Definition at line 1012 of file swscale_unscaled.c.

#define BAYER_8

Definition at line 1018 of file swscale_unscaled.c.

#define BAYER_RENAME (   x)    bayer_bggr8_to_##x

Definition at line 1029 of file swscale_unscaled.c.

#define BAYER_BGGR

Definition at line 1012 of file swscale_unscaled.c.

#define BAYER_16LE

Definition at line 1023 of file swscale_unscaled.c.

#define BAYER_RENAME (   x)    bayer_bggr16le_to_##x

Definition at line 1029 of file swscale_unscaled.c.

#define BAYER_BGGR

Definition at line 1012 of file swscale_unscaled.c.

#define BAYER_16BE

Definition at line 1028 of file swscale_unscaled.c.

#define BAYER_RENAME (   x)    bayer_bggr16be_to_##x

Definition at line 1029 of file swscale_unscaled.c.

#define BAYER_RGGB

Definition at line 1027 of file swscale_unscaled.c.

#define BAYER_8

Definition at line 1018 of file swscale_unscaled.c.

#define BAYER_RENAME (   x)    bayer_rggb8_to_##x

Definition at line 1029 of file swscale_unscaled.c.

#define BAYER_RGGB

Definition at line 1027 of file swscale_unscaled.c.

#define BAYER_16LE

Definition at line 1023 of file swscale_unscaled.c.

#define BAYER_RENAME (   x)    bayer_rggb16le_to_##x

Definition at line 1029 of file swscale_unscaled.c.

#define BAYER_RGGB

Definition at line 1027 of file swscale_unscaled.c.

#define BAYER_16BE

Definition at line 1028 of file swscale_unscaled.c.

#define BAYER_RENAME (   x)    bayer_rggb16be_to_##x

Definition at line 1029 of file swscale_unscaled.c.

#define CASE (   pixfmt,
  prefix 
)
Value:
case pixfmt: copy = bayer_##prefix##_to_rgb24_copy; \
interpolate = bayer_##prefix##_to_rgb24_interpolate; \
break;
static void interpolate(float *out, float v1, float v2, int size)
Definition: twinvq.c:84
static void copy(LZOContext *c, int cnt)
Copies bytes from input to output buffer with checking.
Definition: lzo.c:85

Referenced by bayer_to_rgb24_wrapper(), and bayer_to_yv12_wrapper().

#define CASE (   pixfmt,
  prefix 
)
Value:
case pixfmt: copy = bayer_##prefix##_to_yv12_copy; \
interpolate = bayer_##prefix##_to_yv12_interpolate; \
break;
static void interpolate(float *out, float v1, float v2, int size)
Definition: twinvq.c:84
static void copy(LZOContext *c, int cnt)
Copies bytes from input to output buffer with checking.
Definition: lzo.c:85
#define isRGBA32 (   x)
Value:
( \
(x) == AV_PIX_FMT_ARGB \
|| (x) == AV_PIX_FMT_RGBA \
|| (x) == AV_PIX_FMT_BGRA \
|| (x) == AV_PIX_FMT_ABGR \
)
packed ABGR 8:8:8:8, 32bpp, ABGRABGR...
Definition: pixfmt.h:96
packed BGRA 8:8:8:8, 32bpp, BGRABGRA...
Definition: pixfmt.h:97
packed ARGB 8:8:8:8, 32bpp, ARGBARGB...
Definition: pixfmt.h:94
packed RGBA 8:8:8:8, 32bpp, RGBARGBA...
Definition: pixfmt.h:95

Definition at line 1136 of file swscale_unscaled.c.

Referenced by findRgbConvFn(), and rgbToRgbWrapper().

#define isRGBA64 (   x)
Value:
( \
|| (x) == AV_PIX_FMT_RGBA64BE \
|| (x) == AV_PIX_FMT_BGRA64LE \
|| (x) == AV_PIX_FMT_BGRA64BE \
)
packed RGBA 16:16:16:16, 64bpp, 16B, 16G, 16R, 16A, the 2-byte value for each R/G/B/A component is st...
Definition: pixfmt.h:220
packed RGBA 16:16:16:16, 64bpp, 16B, 16G, 16R, 16A, the 2-byte value for each R/G/B/A component is st...
Definition: pixfmt.h:219
packed RGBA 16:16:16:16, 64bpp, 16R, 16G, 16B, 16A, the 2-byte value for each R/G/B/A component is st...
Definition: pixfmt.h:217
packed RGBA 16:16:16:16, 64bpp, 16R, 16G, 16B, 16A, the 2-byte value for each R/G/B/A component is st...
Definition: pixfmt.h:218

Definition at line 1143 of file swscale_unscaled.c.

Referenced by findRgbConvFn().

#define isRGB48 (   x)
Value:
( \
|| (x) == AV_PIX_FMT_RGB48BE \
|| (x) == AV_PIX_FMT_BGR48LE \
|| (x) == AV_PIX_FMT_BGR48BE \
)
packed RGB 16:16:16, 48bpp, 16R, 16G, 16B, the 2-byte value for each R/G/B component is stored as lit...
Definition: pixfmt.h:112
packed RGB 16:16:16, 48bpp, 16B, 16G, 16R, the 2-byte value for each R/G/B component is stored as lit...
Definition: pixfmt.h:161
packed RGB 16:16:16, 48bpp, 16B, 16G, 16R, the 2-byte value for each R/G/B component is stored as big...
Definition: pixfmt.h:160
packed RGB 16:16:16, 48bpp, 16R, 16G, 16B, the 2-byte value for each R/G/B component is stored as big...
Definition: pixfmt.h:111

Definition at line 1150 of file swscale_unscaled.c.

Referenced by findRgbConvFn().

#define IS_NOT_NE (   bpp,
  desc 
)
Value:
(((bpp + 7) >> 3) == 2 && \
(!(desc->flags & AV_PIX_FMT_FLAG_BE) != !HAVE_BIGENDIAN))
#define AV_PIX_FMT_FLAG_BE
Pixel format is big-endian.
Definition: pixdesc.h:128

Referenced by rgbToRgbWrapper().

#define CONV_IS (   src,
  dst 
)    (srcFormat == AV_PIX_FMT_##src && dstFormat == AV_PIX_FMT_##dst)

Referenced by findRgbConvFn().

#define DITHER_COPY (   dst,
  dstStride,
  src,
  srcStride,
  bswap,
  dbswap 
)
Value:
uint16_t scale= dither_scale[dst_depth-1][src_depth-1];\
int shift= src_depth-dst_depth + dither_scale[src_depth-2][dst_depth-1];\
for (i = 0; i < height; i++) {\
const uint8_t *dither= dithers[src_depth-9][i&7];\
for (j = 0; j < length-7; j+=8){\
dst[j+0] = dbswap((bswap(src[j+0]) + dither[0])*scale>>shift);\
dst[j+1] = dbswap((bswap(src[j+1]) + dither[1])*scale>>shift);\
dst[j+2] = dbswap((bswap(src[j+2]) + dither[2])*scale>>shift);\
dst[j+3] = dbswap((bswap(src[j+3]) + dither[3])*scale>>shift);\
dst[j+4] = dbswap((bswap(src[j+4]) + dither[4])*scale>>shift);\
dst[j+5] = dbswap((bswap(src[j+5]) + dither[5])*scale>>shift);\
dst[j+6] = dbswap((bswap(src[j+6]) + dither[6])*scale>>shift);\
dst[j+7] = dbswap((bswap(src[j+7]) + dither[7])*scale>>shift);\
}\
for (; j < length; j++)\
dst[j] = dbswap((bswap(src[j]) + dither[j&7])*scale>>shift);\
dst += dstStride;\
src += srcStride;\
}
static const uint16_t dither_scale[15][16]
static int shift(int a, int b)
Definition: sonic.c:82
uint8_t
static const uint8_t dither[8][8]
Definition: vf_fspp.c:57
GLsizei GLsizei * length
Definition: opengl_enc.c:115
static const uint8_t dithers[8][8][8]
#define src
Definition: vp9dsp.c:530
BYTE int const BYTE int int int height
Definition: avisynth_c.h:676
for(j=16;j >0;--j)

Definition at line 1387 of file swscale_unscaled.c.

Referenced by planarCopyWrapper().

#define COPY816 (   w)
Value:
if (shiftonly) {\
for (j = 0; j < length; j++)\
w(&dstPtr2[j], srcPtr[j]<<(dst_depth-8));\
} else {\
for (j = 0; j < length; j++)\
w(&dstPtr2[j], (srcPtr[j]<<(dst_depth-8)) |\
(srcPtr[j]>>(2*8-dst_depth)));\
}
GLsizei GLsizei * length
Definition: opengl_enc.c:115
for(j=16;j >0;--j)

Referenced by planarCopyWrapper().

#define FAST_COPY_UP (   shift)
Value:
for (; j < length - 1; j += 2) { \
uint32_t v = AV_RN32A(srcPtr2 + j); \
AV_WN32A(dstPtr2 + j, v << shift); \
}
static int shift(int a, int b)
Definition: sonic.c:82
#define AV_WN32A(p, v)
Definition: intreadwrite.h:538
#define AV_RN32A(p)
Definition: intreadwrite.h:526
GLsizei GLsizei * length
Definition: opengl_enc.c:115

Referenced by planarCopyWrapper().

#define COPY_UP (   r,
 
)
Value:
if(shiftonly){\
for (; j < length; j++){ \
unsigned int v= r(&srcPtr2[j]);\
w(&dstPtr2[j], v<<(dst_depth-src_depth));\
}\
}else{\
for (; j < length; j++){ \
unsigned int v= r(&srcPtr2[j]);\
w(&dstPtr2[j], (v<<(dst_depth-src_depth)) | \
(v>>(2*src_depth-dst_depth)));\
}\
}
const char * r
Definition: vf_curves.c:107
GLsizei GLsizei * length
Definition: opengl_enc.c:115
for(j=16;j >0;--j)

Referenced by planarCopyWrapper().

#define IS_DIFFERENT_ENDIANESS (   src_fmt,
  dst_fmt,
  pix_fmt 
)
Value:
((src_fmt == pix_fmt ## BE && dst_fmt == pix_fmt ## LE) || \
(src_fmt == pix_fmt ## LE && dst_fmt == pix_fmt ## BE))
static enum AVPixelFormat pix_fmt

Definition at line 1570 of file swscale_unscaled.c.

Referenced by ff_get_unscaled_swscale().

#define isByteRGB (   f)
Value:
( \
f == AV_PIX_FMT_RGB32 || \
f == AV_PIX_FMT_RGB24 || \
f == AV_PIX_FMT_BGR32 || \
packed RGB 8:8:8, 24bpp, RGBRGB...
Definition: pixfmt.h:65
#define AV_PIX_FMT_BGR32_1
Definition: pixfmt.h:310
packed RGB 8:8:8, 24bpp, BGRBGR...
Definition: pixfmt.h:66
#define AV_PIX_FMT_BGR32
Definition: pixfmt.h:309
#define AV_PIX_FMT_RGB32
Definition: pixfmt.h:307
#define AV_PIX_FMT_RGB32_1
Definition: pixfmt.h:308

Referenced by ff_get_unscaled_swscale().

#define isPlanarGray (   x)    (isGray(x) && (x) != AV_PIX_FMT_YA8 && (x) != AV_PIX_FMT_YA16LE && (x) != AV_PIX_FMT_YA16BE)

Referenced by ff_get_unscaled_swscale().

Typedef Documentation

typedef void(* rgbConvFn)(const uint8_t *, uint8_t *, int)

Definition at line 1158 of file swscale_unscaled.c.

Function Documentation

static void fillPlane ( uint8_t plane,
int  stride,
int  width,
int  height,
int  y,
uint8_t  val 
)
static
static void copyPlane ( const uint8_t src,
int  srcStride,
int  srcSliceY,
int  srcSliceH,
int  width,
uint8_t dst,
int  dstStride 
)
static
static int planarToNv12Wrapper ( SwsContext c,
const uint8_t src[],
int  srcStride[],
int  srcSliceY,
int  srcSliceH,
uint8_t dstParam[],
int  dstStride[] 
)
static

Definition at line 159 of file swscale_unscaled.c.

Referenced by ff_get_unscaled_swscale().

static int nv12ToPlanarWrapper ( SwsContext c,
const uint8_t src[],
int  srcStride[],
int  srcSliceY,
int  srcSliceH,
uint8_t dstParam[],
int  dstStride[] 
)
static

Definition at line 179 of file swscale_unscaled.c.

Referenced by ff_get_unscaled_swscale().

static int planarToYuy2Wrapper ( SwsContext c,
const uint8_t src[],
int  srcStride[],
int  srcSliceY,
int  srcSliceH,
uint8_t dstParam[],
int  dstStride[] 
)
static

Definition at line 200 of file swscale_unscaled.c.

Referenced by ff_get_unscaled_swscale().

static int planarToUyvyWrapper ( SwsContext c,
const uint8_t src[],
int  srcStride[],
int  srcSliceY,
int  srcSliceH,
uint8_t dstParam[],
int  dstStride[] 
)
static

Definition at line 212 of file swscale_unscaled.c.

Referenced by ff_get_unscaled_swscale().

static int yuv422pToYuy2Wrapper ( SwsContext c,
const uint8_t src[],
int  srcStride[],
int  srcSliceY,
int  srcSliceH,
uint8_t dstParam[],
int  dstStride[] 
)
static

Definition at line 224 of file swscale_unscaled.c.

Referenced by ff_get_unscaled_swscale().

static int yuv422pToUyvyWrapper ( SwsContext c,
const uint8_t src[],
int  srcStride[],
int  srcSliceY,
int  srcSliceH,
uint8_t dstParam[],
int  dstStride[] 
)
static

Definition at line 236 of file swscale_unscaled.c.

Referenced by ff_get_unscaled_swscale().

static int yuyvToYuv420Wrapper ( SwsContext c,
const uint8_t src[],
int  srcStride[],
int  srcSliceY,
int  srcSliceH,
uint8_t dstParam[],
int  dstStride[] 
)
static

Definition at line 248 of file swscale_unscaled.c.

Referenced by ff_get_unscaled_swscale().

static int yuyvToYuv422Wrapper ( SwsContext c,
const uint8_t src[],
int  srcStride[],
int  srcSliceY,
int  srcSliceH,
uint8_t dstParam[],
int  dstStride[] 
)
static

Definition at line 265 of file swscale_unscaled.c.

Referenced by ff_get_unscaled_swscale().

static int uyvyToYuv420Wrapper ( SwsContext c,
const uint8_t src[],
int  srcStride[],
int  srcSliceY,
int  srcSliceH,
uint8_t dstParam[],
int  dstStride[] 
)
static

Definition at line 279 of file swscale_unscaled.c.

Referenced by ff_get_unscaled_swscale().

static int uyvyToYuv422Wrapper ( SwsContext c,
const uint8_t src[],
int  srcStride[],
int  srcSliceY,
int  srcSliceH,
uint8_t dstParam[],
int  dstStride[] 
)
static

Definition at line 296 of file swscale_unscaled.c.

Referenced by ff_get_unscaled_swscale().

static void gray8aToPacked32 ( const uint8_t src,
uint8_t dst,
int  num_pixels,
const uint8_t palette 
)
static

Definition at line 310 of file swscale_unscaled.c.

Referenced by palToRgbWrapper().

static void gray8aToPacked32_1 ( const uint8_t src,
uint8_t dst,
int  num_pixels,
const uint8_t palette 
)
static

Definition at line 318 of file swscale_unscaled.c.

Referenced by palToRgbWrapper().

static void gray8aToPacked24 ( const uint8_t src,
uint8_t dst,
int  num_pixels,
const uint8_t palette 
)
static

Definition at line 327 of file swscale_unscaled.c.

Referenced by palToRgbWrapper().

static int packed_16bpc_bswap ( SwsContext c,
const uint8_t src[],
int  srcStride[],
int  srcSliceY,
int  srcSliceH,
uint8_t dst[],
int  dstStride[] 
)
static

Definition at line 341 of file swscale_unscaled.c.

Referenced by ff_get_unscaled_swscale().

static int palToRgbWrapper ( SwsContext c,
const uint8_t src[],
int  srcStride[],
int  srcSliceY,
int  srcSliceH,
uint8_t dst[],
int  dstStride[] 
)
static

Definition at line 367 of file swscale_unscaled.c.

Referenced by ff_get_unscaled_swscale().

static void packed16togbra16 ( const uint8_t src,
int  srcStride,
uint16_t *  dst[],
int  dstStride[],
int  srcSliceH,
int  src_alpha,
int  swap,
int  shift,
int  width 
)
static

Definition at line 413 of file swscale_unscaled.c.

Referenced by Rgb16ToPlanarRgb16Wrapper().

static int Rgb16ToPlanarRgb16Wrapper ( SwsContext c,
const uint8_t src[],
int  srcStride[],
int  srcSliceY,
int  srcSliceH,
uint8_t dst[],
int  dstStride[] 
)
static

Definition at line 547 of file swscale_unscaled.c.

Referenced by ff_get_unscaled_swscale().

static void gbr16ptopacked16 ( const uint16_t *  src[],
int  srcStride[],
uint8_t dst,
int  dstStride,
int  srcSliceH,
int  alpha,
int  swap,
int  bpp,
int  width 
)
static

Definition at line 599 of file swscale_unscaled.c.

Referenced by planarRgb16ToRgb16Wrapper().

static int planarRgb16ToRgb16Wrapper ( SwsContext c,
const uint8_t src[],
int  srcStride[],
int  srcSliceY,
int  srcSliceH,
uint8_t dst[],
int  dstStride[] 
)
static

Definition at line 718 of file swscale_unscaled.c.

Referenced by ff_get_unscaled_swscale().

static void gbr24ptopacked24 ( const uint8_t src[],
int  srcStride[],
uint8_t dst,
int  dstStride,
int  srcSliceH,
int  width 
)
static

Definition at line 778 of file swscale_unscaled.c.

Referenced by planarRgbToRgbWrapper().

static void gbr24ptopacked32 ( const uint8_t src[],
int  srcStride[],
uint8_t dst,
int  dstStride,
int  srcSliceH,
int  alpha_first,
int  width 
)
static

Definition at line 796 of file swscale_unscaled.c.

Referenced by planarRgbToRgbWrapper().

static int planarRgbToRgbWrapper ( SwsContext c,
const uint8_t src[],
int  srcStride[],
int  srcSliceY,
int  srcSliceH,
uint8_t dst[],
int  dstStride[] 
)
static

Definition at line 825 of file swscale_unscaled.c.

Referenced by ff_get_unscaled_swscale().

static int planarRgbToplanarRgbWrapper ( SwsContext c,
const uint8_t src[],
int  srcStride[],
int  srcSliceY,
int  srcSliceH,
uint8_t dst[],
int  dstStride[] 
)
static

Definition at line 881 of file swscale_unscaled.c.

Referenced by ff_get_unscaled_swscale().

static void packedtogbr24p ( const uint8_t src,
int  srcStride,
uint8_t dst[],
int  dstStride[],
int  srcSliceH,
int  alpha_first,
int  inc_size,
int  width 
)
static

Definition at line 898 of file swscale_unscaled.c.

Referenced by rgbToPlanarRgbWrapper().

static int rgbToPlanarRgbWrapper ( SwsContext c,
const uint8_t src[],
int  srcStride[],
int  srcSliceY,
int  srcSliceH,
uint8_t dst[],
int  dstStride[] 
)
static

Definition at line 927 of file swscale_unscaled.c.

Referenced by ff_get_unscaled_swscale().

static int bayer_to_rgb24_wrapper ( SwsContext c,
const uint8_t src[],
int  srcStride[],
int  srcSliceY,
int  srcSliceH,
uint8_t dst[],
int  dstStride[] 
)
static

Definition at line 1032 of file swscale_unscaled.c.

Referenced by ff_get_unscaled_swscale().

static int bayer_to_yv12_wrapper ( SwsContext c,
const uint8_t src[],
int  srcStride[],
int  srcSliceY,
int  srcSliceH,
uint8_t dst[],
int  dstStride[] 
)
static

Definition at line 1081 of file swscale_unscaled.c.

Referenced by ff_get_unscaled_swscale().

static rgbConvFn findRgbConvFn ( SwsContext c)
static

Definition at line 1159 of file swscale_unscaled.c.

Referenced by ff_get_unscaled_swscale(), and rgbToRgbWrapper().

static int rgbToRgbWrapper ( SwsContext c,
const uint8_t src[],
int  srcStride[],
int  srcSliceY,
int  srcSliceH,
uint8_t dst[],
int  dstStride[] 
)
static

Definition at line 1265 of file swscale_unscaled.c.

Referenced by ff_get_unscaled_swscale().

static int bgr24ToYv12Wrapper ( SwsContext c,
const uint8_t src[],
int  srcStride[],
int  srcSliceY,
int  srcSliceH,
uint8_t dst[],
int  dstStride[] 
)
static

Definition at line 1326 of file swscale_unscaled.c.

Referenced by ff_get_unscaled_swscale().

static int yvu9ToYv12Wrapper ( SwsContext c,
const uint8_t src[],
int  srcStride[],
int  srcSliceY,
int  srcSliceH,
uint8_t dst[],
int  dstStride[] 
)
static

Definition at line 1343 of file swscale_unscaled.c.

Referenced by ff_get_unscaled_swscale().

static int packedCopyWrapper ( SwsContext c,
const uint8_t src[],
int  srcStride[],
int  srcSliceY,
int  srcSliceH,
uint8_t dst[],
int  dstStride[] 
)
static

Definition at line 1360 of file swscale_unscaled.c.

Referenced by ff_get_unscaled_swscale().

static int planarCopyWrapper ( SwsContext c,
const uint8_t src[],
int  srcStride[],
int  srcSliceY,
int  srcSliceH,
uint8_t dst[],
int  dstStride[] 
)
static

Definition at line 1408 of file swscale_unscaled.c.

Referenced by ff_get_unscaled_swscale().

void ff_get_unscaled_swscale ( SwsContext c)

Set c->swscale to an unscaled converter if one exists for the specific source and destination formats, bit depths, flags, etc.

Definition at line 1575 of file swscale_unscaled.c.

Referenced by sws_init_context().

Variable Documentation

const uint8_t dithers[8][8][8]
static

Definition at line 37 of file swscale_unscaled.c.

const uint16_t dither_scale[15][16]
static
Initial value:
={
{ 2, 3, 3, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,},
{ 2, 3, 7, 7, 13, 13, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25,},
{ 3, 3, 4, 15, 15, 29, 57, 57, 57, 113, 113, 113, 113, 113, 113, 113,},
{ 3, 4, 4, 5, 31, 31, 61, 121, 241, 241, 241, 241, 481, 481, 481, 481,},
{ 3, 4, 5, 5, 6, 63, 63, 125, 249, 497, 993, 993, 993, 993, 993, 1985,},
{ 3, 5, 6, 6, 6, 7, 127, 127, 253, 505, 1009, 2017, 4033, 4033, 4033, 4033,},
{ 3, 5, 6, 7, 7, 7, 8, 255, 255, 509, 1017, 2033, 4065, 8129,16257,16257,},
{ 3, 5, 6, 8, 8, 8, 8, 9, 511, 511, 1021, 2041, 4081, 8161,16321,32641,},
{ 3, 5, 7, 8, 9, 9, 9, 9, 10, 1023, 1023, 2045, 4089, 8177,16353,32705,},
{ 3, 5, 7, 8, 10, 10, 10, 10, 10, 11, 2047, 2047, 4093, 8185,16369,32737,},
{ 3, 5, 7, 8, 10, 11, 11, 11, 11, 11, 12, 4095, 4095, 8189,16377,32753,},
{ 3, 5, 7, 9, 10, 12, 12, 12, 12, 12, 12, 13, 8191, 8191,16381,32761,},
{ 3, 5, 7, 9, 10, 12, 13, 13, 13, 13, 13, 13, 14,16383,16383,32765,},
{ 3, 5, 7, 9, 10, 12, 14, 14, 14, 14, 14, 14, 14, 15,32767,32767,},
{ 3, 5, 7, 9, 11, 12, 14, 15, 15, 15, 15, 15, 15, 15, 16,65535,},
}

Definition at line 112 of file swscale_unscaled.c.