FFmpeg
|
#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 "libavutil/avconfig.h"
#include "bayer_template.c"
Go to the source code of this file.
Macros | |
#define | output_pixel(p, v) (*p) = (v) |
#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 | planarToP01xWrapper (SwsContext *c, const uint8_t *src8[], int srcStride[], int srcSliceY, int srcSliceH, uint8_t *dstParam8[], int dstStride[]) |
static int | planar8ToP01xleWrapper (SwsContext *c, const uint8_t *src[], int srcStride[], int srcSliceY, int srcSliceH, uint8_t *dstParam8[], 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 | bswap_16bpc (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 void | gbraptopacked32 (const uint8_t *src[], int srcStride[], uint8_t *dst, int dstStride, int srcSliceH, int alpha_first, int width) |
static int | planarRgbaToRgbWrapper (SwsContext *c, const uint8_t *src[], int srcStride[], int srcSliceY, int srcSliceH, uint8_t *dst[], int dstStride[]) |
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 | uint_y_to_float_y_wrapper (SwsContext *c, const uint8_t *src[], int srcStride[], int srcSliceY, int srcSliceH, uint8_t *dst[], int dstStride[]) |
static int | float_y_to_uint_y_wrapper (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] |
#define output_pixel | ( | p, | |
v | |||
) | (*p) = (v) |
Definition at line 240 of file swscale_unscaled.c.
Referenced by planar8ToP01xleWrapper().
#define BAYER_GBRG |
Definition at line 1161 of file swscale_unscaled.c.
#define BAYER_8 |
Definition at line 1197 of file swscale_unscaled.c.
#define BAYER_RENAME | ( | x | ) | bayer_gbrg8_to_##x |
Definition at line 1208 of file swscale_unscaled.c.
#define BAYER_GBRG |
Definition at line 1161 of file swscale_unscaled.c.
#define BAYER_16LE |
Definition at line 1202 of file swscale_unscaled.c.
#define BAYER_RENAME | ( | x | ) | bayer_gbrg16le_to_##x |
Definition at line 1208 of file swscale_unscaled.c.
#define BAYER_GBRG |
Definition at line 1161 of file swscale_unscaled.c.
#define BAYER_16BE |
Definition at line 1207 of file swscale_unscaled.c.
#define BAYER_RENAME | ( | x | ) | bayer_gbrg16be_to_##x |
Definition at line 1208 of file swscale_unscaled.c.
#define BAYER_GRBG |
Definition at line 1176 of file swscale_unscaled.c.
#define BAYER_8 |
Definition at line 1197 of file swscale_unscaled.c.
#define BAYER_RENAME | ( | x | ) | bayer_grbg8_to_##x |
Definition at line 1208 of file swscale_unscaled.c.
#define BAYER_GRBG |
Definition at line 1176 of file swscale_unscaled.c.
#define BAYER_16LE |
Definition at line 1202 of file swscale_unscaled.c.
#define BAYER_RENAME | ( | x | ) | bayer_grbg16le_to_##x |
Definition at line 1208 of file swscale_unscaled.c.
#define BAYER_GRBG |
Definition at line 1176 of file swscale_unscaled.c.
#define BAYER_16BE |
Definition at line 1207 of file swscale_unscaled.c.
#define BAYER_RENAME | ( | x | ) | bayer_grbg16be_to_##x |
Definition at line 1208 of file swscale_unscaled.c.
#define BAYER_BGGR |
Definition at line 1191 of file swscale_unscaled.c.
#define BAYER_8 |
Definition at line 1197 of file swscale_unscaled.c.
#define BAYER_RENAME | ( | x | ) | bayer_bggr8_to_##x |
Definition at line 1208 of file swscale_unscaled.c.
#define BAYER_BGGR |
Definition at line 1191 of file swscale_unscaled.c.
#define BAYER_16LE |
Definition at line 1202 of file swscale_unscaled.c.
#define BAYER_RENAME | ( | x | ) | bayer_bggr16le_to_##x |
Definition at line 1208 of file swscale_unscaled.c.
#define BAYER_BGGR |
Definition at line 1191 of file swscale_unscaled.c.
#define BAYER_16BE |
Definition at line 1207 of file swscale_unscaled.c.
#define BAYER_RENAME | ( | x | ) | bayer_bggr16be_to_##x |
Definition at line 1208 of file swscale_unscaled.c.
#define BAYER_RGGB |
Definition at line 1206 of file swscale_unscaled.c.
#define BAYER_8 |
Definition at line 1197 of file swscale_unscaled.c.
#define BAYER_RENAME | ( | x | ) | bayer_rggb8_to_##x |
Definition at line 1208 of file swscale_unscaled.c.
#define BAYER_RGGB |
Definition at line 1206 of file swscale_unscaled.c.
#define BAYER_16LE |
Definition at line 1202 of file swscale_unscaled.c.
#define BAYER_RENAME | ( | x | ) | bayer_rggb16le_to_##x |
Definition at line 1208 of file swscale_unscaled.c.
#define BAYER_RGGB |
Definition at line 1206 of file swscale_unscaled.c.
#define BAYER_16BE |
Definition at line 1207 of file swscale_unscaled.c.
#define BAYER_RENAME | ( | x | ) | bayer_rggb16be_to_##x |
Definition at line 1208 of file swscale_unscaled.c.
#define CASE | ( | pixfmt, | |
prefix | |||
) |
Referenced by bayer_to_rgb24_wrapper(), and bayer_to_yv12_wrapper().
#define CASE | ( | pixfmt, | |
prefix | |||
) |
#define isRGBA32 | ( | x | ) |
Definition at line 1315 of file swscale_unscaled.c.
Referenced by findRgbConvFn(), and rgbToRgbWrapper().
#define isRGBA64 | ( | x | ) |
Definition at line 1322 of file swscale_unscaled.c.
Referenced by findRgbConvFn().
#define isRGB48 | ( | x | ) |
Definition at line 1329 of file swscale_unscaled.c.
Referenced by findRgbConvFn().
#define IS_NOT_NE | ( | bpp, | |
desc | |||
) |
Referenced by rgbToRgbWrapper().
Referenced by findRgbConvFn().
#define DITHER_COPY | ( | dst, | |
dstStride, | |||
src, | |||
srcStride, | |||
bswap, | |||
dbswap | |||
) |
Definition at line 1623 of file swscale_unscaled.c.
Referenced by planarCopyWrapper().
#define COPY816 | ( | w | ) |
Referenced by planarCopyWrapper().
#define FAST_COPY_UP | ( | shift | ) |
Referenced by planarCopyWrapper().
Referenced by planarCopyWrapper().
#define IS_DIFFERENT_ENDIANESS | ( | src_fmt, | |
dst_fmt, | |||
pix_fmt | |||
) |
#define isByteRGB | ( | f | ) |
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().
Definition at line 1337 of file swscale_unscaled.c.
|
static |
Definition at line 114 of file swscale_unscaled.c.
Referenced by bgr24ToYv12Wrapper(), planarCopyWrapper(), planarRgbToplanarRgbWrapper(), uyvyToYuv420Wrapper(), yuyvToYuv420Wrapper(), and yvu9ToYv12Wrapper().
|
static |
Definition at line 125 of file swscale_unscaled.c.
Referenced by nv12ToPlanarWrapper(), planarRgbToplanarRgbWrapper(), planarToNv12Wrapper(), and yvu9ToYv12Wrapper().
|
static |
Definition at line 142 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
|
static |
Definition at line 162 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
|
static |
Definition at line 183 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
|
static |
Definition at line 243 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
|
static |
Definition at line 285 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
|
static |
Definition at line 297 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
|
static |
Definition at line 309 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
|
static |
Definition at line 321 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
|
static |
Definition at line 333 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
|
static |
Definition at line 350 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
|
static |
Definition at line 364 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
|
static |
Definition at line 381 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
|
static |
Definition at line 395 of file swscale_unscaled.c.
Referenced by palToRgbWrapper().
|
static |
Definition at line 403 of file swscale_unscaled.c.
Referenced by palToRgbWrapper().
|
static |
Definition at line 412 of file swscale_unscaled.c.
Referenced by palToRgbWrapper().
|
static |
Definition at line 426 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
|
static |
Definition at line 453 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
|
static |
Definition at line 499 of file swscale_unscaled.c.
Referenced by Rgb16ToPlanarRgb16Wrapper().
|
static |
Definition at line 633 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
|
static |
Definition at line 693 of file swscale_unscaled.c.
Referenced by planarRgb16ToRgb16Wrapper().
|
static |
Definition at line 812 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
|
static |
Definition at line 872 of file swscale_unscaled.c.
Referenced by planarRgbaToRgbWrapper(), and planarRgbToRgbWrapper().
|
static |
Definition at line 890 of file swscale_unscaled.c.
Referenced by planarRgbToRgbWrapper().
|
static |
Definition at line 919 of file swscale_unscaled.c.
Referenced by planarRgbaToRgbWrapper().
|
static |
Definition at line 948 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
|
static |
Definition at line 1004 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
|
static |
Definition at line 1060 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
|
static |
Definition at line 1077 of file swscale_unscaled.c.
Referenced by rgbToPlanarRgbWrapper().
|
static |
Definition at line 1106 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
|
static |
Definition at line 1211 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
|
static |
Definition at line 1260 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
|
static |
Definition at line 1338 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale(), and rgbToRgbWrapper().
|
static |
Definition at line 1461 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
|
static |
Definition at line 1522 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
|
static |
Definition at line 1539 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
|
static |
Definition at line 1555 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
|
static |
Definition at line 1575 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
|
static |
Definition at line 1596 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
|
static |
Definition at line 1683 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 1858 of file swscale_unscaled.c.
Referenced by sws_init_context().
|
static |
Definition at line 38 of file swscale_unscaled.c.