| 
    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.
 1.8.6