| 
    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 | planarToP010Wrapper (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 | 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] | 
| #define output_pixel | ( | p, | |
| v | |||
| ) | (*p) = (v) | 
Definition at line 246 of file swscale_unscaled.c.
Referenced by planar8ToP01xleWrapper().
| #define BAYER_GBRG | 
Definition at line 1082 of file swscale_unscaled.c.
| #define BAYER_8 | 
Definition at line 1118 of file swscale_unscaled.c.
| #define BAYER_RENAME | ( | x | ) | bayer_gbrg8_to_##x | 
Definition at line 1129 of file swscale_unscaled.c.
| #define BAYER_GBRG | 
Definition at line 1082 of file swscale_unscaled.c.
| #define BAYER_16LE | 
Definition at line 1123 of file swscale_unscaled.c.
| #define BAYER_RENAME | ( | x | ) | bayer_gbrg16le_to_##x | 
Definition at line 1129 of file swscale_unscaled.c.
| #define BAYER_GBRG | 
Definition at line 1082 of file swscale_unscaled.c.
| #define BAYER_16BE | 
Definition at line 1128 of file swscale_unscaled.c.
| #define BAYER_RENAME | ( | x | ) | bayer_gbrg16be_to_##x | 
Definition at line 1129 of file swscale_unscaled.c.
| #define BAYER_GRBG | 
Definition at line 1097 of file swscale_unscaled.c.
| #define BAYER_8 | 
Definition at line 1118 of file swscale_unscaled.c.
| #define BAYER_RENAME | ( | x | ) | bayer_grbg8_to_##x | 
Definition at line 1129 of file swscale_unscaled.c.
| #define BAYER_GRBG | 
Definition at line 1097 of file swscale_unscaled.c.
| #define BAYER_16LE | 
Definition at line 1123 of file swscale_unscaled.c.
| #define BAYER_RENAME | ( | x | ) | bayer_grbg16le_to_##x | 
Definition at line 1129 of file swscale_unscaled.c.
| #define BAYER_GRBG | 
Definition at line 1097 of file swscale_unscaled.c.
| #define BAYER_16BE | 
Definition at line 1128 of file swscale_unscaled.c.
| #define BAYER_RENAME | ( | x | ) | bayer_grbg16be_to_##x | 
Definition at line 1129 of file swscale_unscaled.c.
| #define BAYER_BGGR | 
Definition at line 1112 of file swscale_unscaled.c.
| #define BAYER_8 | 
Definition at line 1118 of file swscale_unscaled.c.
| #define BAYER_RENAME | ( | x | ) | bayer_bggr8_to_##x | 
Definition at line 1129 of file swscale_unscaled.c.
| #define BAYER_BGGR | 
Definition at line 1112 of file swscale_unscaled.c.
| #define BAYER_16LE | 
Definition at line 1123 of file swscale_unscaled.c.
| #define BAYER_RENAME | ( | x | ) | bayer_bggr16le_to_##x | 
Definition at line 1129 of file swscale_unscaled.c.
| #define BAYER_BGGR | 
Definition at line 1112 of file swscale_unscaled.c.
| #define BAYER_16BE | 
Definition at line 1128 of file swscale_unscaled.c.
| #define BAYER_RENAME | ( | x | ) | bayer_bggr16be_to_##x | 
Definition at line 1129 of file swscale_unscaled.c.
| #define BAYER_RGGB | 
Definition at line 1127 of file swscale_unscaled.c.
| #define BAYER_8 | 
Definition at line 1118 of file swscale_unscaled.c.
| #define BAYER_RENAME | ( | x | ) | bayer_rggb8_to_##x | 
Definition at line 1129 of file swscale_unscaled.c.
| #define BAYER_RGGB | 
Definition at line 1127 of file swscale_unscaled.c.
| #define BAYER_16LE | 
Definition at line 1123 of file swscale_unscaled.c.
| #define BAYER_RENAME | ( | x | ) | bayer_rggb16le_to_##x | 
Definition at line 1129 of file swscale_unscaled.c.
| #define BAYER_RGGB | 
Definition at line 1127 of file swscale_unscaled.c.
| #define BAYER_16BE | 
Definition at line 1128 of file swscale_unscaled.c.
| #define BAYER_RENAME | ( | x | ) | bayer_rggb16be_to_##x | 
Definition at line 1129 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 1236 of file swscale_unscaled.c.
Referenced by findRgbConvFn(), and rgbToRgbWrapper().
| #define isRGBA64 | ( | x | ) | 
Definition at line 1243 of file swscale_unscaled.c.
Referenced by findRgbConvFn().
| #define isRGB48 | ( | x | ) | 
Definition at line 1250 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 1487 of file swscale_unscaled.c.
Referenced by planarCopyWrapper().
| #define COPY816 | ( | w | ) | 
Referenced by planarCopyWrapper().
| #define FAST_COPY_UP | ( | shift | ) | 
Referenced by planarCopyWrapper().
| #define COPY_UP | ( | r, | |
| w | |||
| ) | 
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 1258 of file swscale_unscaled.c.
      
  | 
  static | 
Definition at line 132 of file swscale_unscaled.c.
Referenced by bgr24ToYv12Wrapper(), planarCopyWrapper(), planarRgbToplanarRgbWrapper(), uyvyToYuv420Wrapper(), yuyvToYuv420Wrapper(), and yvu9ToYv12Wrapper().
      
  | 
  static | 
Definition at line 143 of file swscale_unscaled.c.
Referenced by nv12ToPlanarWrapper(), planarRgbToplanarRgbWrapper(), planarToNv12Wrapper(), and yvu9ToYv12Wrapper().
      
  | 
  static | 
Definition at line 160 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
      
  | 
  static | 
Definition at line 180 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
      
  | 
  static | 
Definition at line 201 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
      
  | 
  static | 
Definition at line 249 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
      
  | 
  static | 
Definition at line 291 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
      
  | 
  static | 
Definition at line 303 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
      
  | 
  static | 
Definition at line 315 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
      
  | 
  static | 
Definition at line 327 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
      
  | 
  static | 
Definition at line 339 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
      
  | 
  static | 
Definition at line 356 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
      
  | 
  static | 
Definition at line 370 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
      
  | 
  static | 
Definition at line 387 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
      
  | 
  static | 
Definition at line 401 of file swscale_unscaled.c.
Referenced by palToRgbWrapper().
      
  | 
  static | 
Definition at line 409 of file swscale_unscaled.c.
Referenced by palToRgbWrapper().
      
  | 
  static | 
Definition at line 418 of file swscale_unscaled.c.
Referenced by palToRgbWrapper().
      
  | 
  static | 
Definition at line 432 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
      
  | 
  static | 
Definition at line 459 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
      
  | 
  static | 
Definition at line 505 of file swscale_unscaled.c.
Referenced by Rgb16ToPlanarRgb16Wrapper().
      
  | 
  static | 
Definition at line 639 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
      
  | 
  static | 
Definition at line 699 of file swscale_unscaled.c.
Referenced by planarRgb16ToRgb16Wrapper().
      
  | 
  static | 
Definition at line 818 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
      
  | 
  static | 
Definition at line 878 of file swscale_unscaled.c.
Referenced by planarRgbToRgbWrapper().
      
  | 
  static | 
Definition at line 896 of file swscale_unscaled.c.
Referenced by planarRgbToRgbWrapper().
      
  | 
  static | 
Definition at line 925 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
      
  | 
  static | 
Definition at line 981 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
      
  | 
  static | 
Definition at line 998 of file swscale_unscaled.c.
Referenced by rgbToPlanarRgbWrapper().
      
  | 
  static | 
Definition at line 1027 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
      
  | 
  static | 
Definition at line 1132 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
      
  | 
  static | 
Definition at line 1181 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
      
  | 
  static | 
Definition at line 1259 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale(), and rgbToRgbWrapper().
      
  | 
  static | 
Definition at line 1365 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
      
  | 
  static | 
Definition at line 1426 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
      
  | 
  static | 
Definition at line 1443 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
      
  | 
  static | 
Definition at line 1460 of file swscale_unscaled.c.
Referenced by ff_get_unscaled_swscale().
      
  | 
  static | 
Definition at line 1508 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 1675 of file swscale_unscaled.c.
Referenced by sws_init_context().
      
  | 
  static | 
Definition at line 38 of file swscale_unscaled.c.
      
  | 
  static | 
Definition at line 113 of file swscale_unscaled.c.
 1.8.6