libswscale/swscale.c File Reference

#include <assert.h>
#include <inttypes.h>
#include <math.h>
#include <stdio.h>
#include <string.h>
#include "libavutil/avassert.h"
#include "libavutil/avutil.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_internal.h"
#include "swscale.h"

Go to the source code of this file.

Defines

#define DEBUG_SWSCALE_BUFFERS   0
#define DEBUG_BUFFERS(...)

Functions

static av_always_inline void fillPlane (uint8_t *plane, int stride, int width, int height, int y, uint8_t val)
static void hScale16To19_c (SwsContext *c, int16_t *_dst, int dstW, const uint8_t *_src, const int16_t *filter, const int32_t *filterPos, int filterSize)
static void hScale16To15_c (SwsContext *c, int16_t *dst, int dstW, const uint8_t *_src, const int16_t *filter, const int32_t *filterPos, int filterSize)
static void hScale8To15_c (SwsContext *c, int16_t *dst, int dstW, const uint8_t *src, const int16_t *filter, const int32_t *filterPos, int filterSize)
static void hScale8To19_c (SwsContext *c, int16_t *_dst, int dstW, const uint8_t *src, const int16_t *filter, const int32_t *filterPos, int filterSize)
static void chrRangeToJpeg_c (int16_t *dstU, int16_t *dstV, int width)
static void chrRangeFromJpeg_c (int16_t *dstU, int16_t *dstV, int width)
static void lumRangeToJpeg_c (int16_t *dst, int width)
static void lumRangeFromJpeg_c (int16_t *dst, int width)
static void chrRangeToJpeg16_c (int16_t *_dstU, int16_t *_dstV, int width)
static void chrRangeFromJpeg16_c (int16_t *_dstU, int16_t *_dstV, int width)
static void lumRangeToJpeg16_c (int16_t *_dst, int width)
static void lumRangeFromJpeg16_c (int16_t *_dst, int width)
static void hyscale_fast_c (SwsContext *c, int16_t *dst, int dstWidth, const uint8_t *src, int srcW, int xInc)
static av_always_inline void hyscale (SwsContext *c, int16_t *dst, int dstWidth, const uint8_t *src_in[4], int srcW, int xInc, const int16_t *hLumFilter, const int32_t *hLumFilterPos, int hLumFilterSize, uint8_t *formatConvBuffer, uint32_t *pal, int isAlpha)
static void hcscale_fast_c (SwsContext *c, int16_t *dst1, int16_t *dst2, int dstWidth, const uint8_t *src1, const uint8_t *src2, int srcW, int xInc)
static av_always_inline void hcscale (SwsContext *c, int16_t *dst1, int16_t *dst2, int dstWidth, const uint8_t *src_in[4], int srcW, int xInc, const int16_t *hChrFilter, const int32_t *hChrFilterPos, int hChrFilterSize, uint8_t *formatConvBuffer, uint32_t *pal)
static int swScale (SwsContext *c, const uint8_t *src[], int srcStride[], int srcSliceY, int srcSliceH, uint8_t *dst[], int dstStride[])
static av_cold void sws_init_swScale_c (SwsContext *c)
SwsFunc ff_getSwsFunc (SwsContext *c)
 Return function pointer to fastest main scaler path function depending on architecture and available optimizations.

Variables

const uint8_t dither_8x8_128 [8][8]
const uint8_t ff_sws_pb_64 [8]


Define Documentation

#define DEBUG_BUFFERS ( ...   ) 

Value:

Definition at line 325 of file swscale.c.

Referenced by swScale().

#define DEBUG_SWSCALE_BUFFERS   0

Definition at line 324 of file swscale.c.


Function Documentation

static void chrRangeFromJpeg16_c ( int16_t _dstU,
int16_t _dstV,
int  width 
) [static]

Definition at line 194 of file swscale.c.

Referenced by sws_init_swScale_c().

static void chrRangeFromJpeg_c ( int16_t dstU,
int16_t dstV,
int  width 
) [static]

Definition at line 160 of file swscale.c.

Referenced by sws_init_swScale_c().

static void chrRangeToJpeg16_c ( int16_t _dstU,
int16_t _dstV,
int  width 
) [static]

Definition at line 183 of file swscale.c.

Referenced by sws_init_swScale_c().

static void chrRangeToJpeg_c ( int16_t dstU,
int16_t dstV,
int  width 
) [static]

Definition at line 151 of file swscale.c.

Referenced by sws_init_swScale_c().

SwsFunc ff_getSwsFunc ( SwsContext c  ) 

Return function pointer to fastest main scaler path function depending on architecture and available optimizations.

Definition at line 733 of file swscale.c.

Referenced by sws_init_context().

static av_always_inline void fillPlane ( uint8_t plane,
int  stride,
int  width,
int  height,
int  y,
uint8_t  val 
) [static]

static av_always_inline void hcscale ( SwsContext c,
int16_t dst1,
int16_t dst2,
int  dstWidth,
const uint8_t src_in[4],
int  srcW,
int  xInc,
const int16_t hChrFilter,
const int32_t *  hChrFilterPos,
int  hChrFilterSize,
uint8_t formatConvBuffer,
uint32_t *  pal 
) [static]

Definition at line 289 of file swscale.c.

Referenced by swScale().

static void hcscale_fast_c ( SwsContext c,
int16_t dst1,
int16_t dst2,
int  dstWidth,
const uint8_t src1,
const uint8_t src2,
int  srcW,
int  xInc 
) [static]

Definition at line 270 of file swscale.c.

Referenced by sws_init_swScale_c().

static void hScale16To15_c ( SwsContext c,
int16_t dst,
int  dstW,
const uint8_t _src,
const int16_t filter,
const int32_t *  filterPos,
int  filterSize 
) [static]

Definition at line 91 of file swscale.c.

Referenced by sws_init_swScale_c().

static void hScale16To19_c ( SwsContext c,
int16_t _dst,
int  dstW,
const uint8_t _src,
const int16_t filter,
const int32_t *  filterPos,
int  filterSize 
) [static]

Definition at line 65 of file swscale.c.

Referenced by sws_init_swScale_c().

static void hScale8To15_c ( SwsContext c,
int16_t dst,
int  dstW,
const uint8_t src,
const int16_t filter,
const int32_t *  filterPos,
int  filterSize 
) [static]

Definition at line 116 of file swscale.c.

Referenced by sws_init_swScale_c().

static void hScale8To19_c ( SwsContext c,
int16_t _dst,
int  dstW,
const uint8_t src,
const int16_t filter,
const int32_t *  filterPos,
int  filterSize 
) [static]

Definition at line 132 of file swscale.c.

Referenced by sws_init_swScale_c().

static av_always_inline void hyscale ( SwsContext c,
int16_t dst,
int  dstWidth,
const uint8_t src_in[4],
int  srcW,
int  xInc,
const int16_t hLumFilter,
const int32_t *  hLumFilterPos,
int  hLumFilterSize,
uint8_t formatConvBuffer,
uint32_t *  pal,
int  isAlpha 
) [static]

Definition at line 237 of file swscale.c.

Referenced by swScale().

static void hyscale_fast_c ( SwsContext c,
int16_t dst,
int  dstWidth,
const uint8_t src,
int  srcW,
int  xInc 
) [static]

Definition at line 221 of file swscale.c.

Referenced by sws_init_swScale_c().

static void lumRangeFromJpeg16_c ( int16_t _dst,
int  width 
) [static]

Definition at line 213 of file swscale.c.

Referenced by sws_init_swScale_c().

static void lumRangeFromJpeg_c ( int16_t dst,
int  width 
) [static]

Definition at line 176 of file swscale.c.

Referenced by sws_init_swScale_c().

static void lumRangeToJpeg16_c ( int16_t _dst,
int  width 
) [static]

Definition at line 205 of file swscale.c.

Referenced by sws_init_swScale_c().

static void lumRangeToJpeg_c ( int16_t dst,
int  width 
) [static]

Definition at line 169 of file swscale.c.

Referenced by sws_init_swScale_c().

static av_cold void sws_init_swScale_c ( SwsContext c  )  [static]

Definition at line 682 of file swscale.c.

Referenced by ff_getSwsFunc().

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

Definition at line 329 of file swscale.c.

Referenced by ff_getSwsFunc().


Variable Documentation

const uint8_t dither_8x8_128[8][8]

Initial value:

 {
    {  36, 68,  60, 92,  34, 66,  58, 90, },
    { 100,  4, 124, 28,  98,  2, 122, 26, },
    {  52, 84,  44, 76,  50, 82,  42, 74, },
    { 116, 20, 108, 12, 114, 18, 106, 10, },
    {  32, 64,  56, 88,  38, 70,  62, 94, },
    {  96,  0, 120, 24, 102,  6, 126, 30, },
    {  48, 80,  40, 72,  54, 86,  46, 78, },
    { 112, 16, 104,  8, 118, 22, 110, 14, },
}

Definition at line 39 of file swscale.c.

Referenced by swScale().

Initial value:

 {
    64, 64, 64, 64, 64, 64, 64, 64
}

Definition at line 50 of file swscale.c.

Referenced by swScale().


Generated on Fri Oct 26 02:48:03 2012 for FFmpeg by  doxygen 1.5.8