#include "libavutil/avutil.h"
Go to the source code of this file.
Data Structures | |
struct | SwsVector |
struct | SwsFilter |
Defines | |
#define | LIBSWSCALE_VERSION_MAJOR 0 |
#define | LIBSWSCALE_VERSION_MINOR 7 |
#define | LIBSWSCALE_VERSION_MICRO 1 |
#define | LIBSWSCALE_VERSION_INT |
#define | LIBSWSCALE_VERSION |
#define | LIBSWSCALE_BUILD LIBSWSCALE_VERSION_INT |
#define | LIBSWSCALE_IDENT "SwS" AV_STRINGIFY(LIBSWSCALE_VERSION) |
#define | SWS_FAST_BILINEAR 1 |
#define | SWS_BILINEAR 2 |
#define | SWS_BICUBIC 4 |
#define | SWS_X 8 |
#define | SWS_POINT 0x10 |
#define | SWS_AREA 0x20 |
#define | SWS_BICUBLIN 0x40 |
#define | SWS_GAUSS 0x80 |
#define | SWS_SINC 0x100 |
#define | SWS_LANCZOS 0x200 |
#define | SWS_SPLINE 0x400 |
#define | SWS_SRC_V_CHR_DROP_MASK 0x30000 |
#define | SWS_SRC_V_CHR_DROP_SHIFT 16 |
#define | SWS_PARAM_DEFAULT 123456 |
#define | SWS_PRINT_INFO 0x1000 |
#define | SWS_FULL_CHR_H_INT 0x2000 |
#define | SWS_FULL_CHR_H_INP 0x4000 |
#define | SWS_DIRECT_BGR 0x8000 |
#define | SWS_ACCURATE_RND 0x40000 |
#define | SWS_BITEXACT 0x80000 |
#define | SWS_CPU_CAPS_MMX 0x80000000 |
#define | SWS_CPU_CAPS_MMX2 0x20000000 |
#define | SWS_CPU_CAPS_3DNOW 0x40000000 |
#define | SWS_CPU_CAPS_ALTIVEC 0x10000000 |
#define | SWS_CPU_CAPS_BFIN 0x01000000 |
#define | SWS_MAX_REDUCE_CUTOFF 0.002 |
#define | SWS_CS_ITU709 1 |
#define | SWS_CS_FCC 4 |
#define | SWS_CS_ITU601 5 |
#define | SWS_CS_ITU624 5 |
#define | SWS_CS_SMPTE170M 5 |
#define | SWS_CS_SMPTE240M 7 |
#define | SWS_CS_DEFAULT 5 |
Functions | |
unsigned | swscale_version (void) |
Returns the LIBSWSCALE_VERSION_INT constant. | |
void | sws_freeContext (struct SwsContext *swsContext) |
struct SwsContext * | sws_getContext (int srcW, int srcH, enum PixelFormat srcFormat, int dstW, int dstH, enum PixelFormat dstFormat, int flags, SwsFilter *srcFilter, SwsFilter *dstFilter, double *param) |
Allocates and returns a SwsContext. | |
int | sws_scale (struct SwsContext *context, uint8_t *srcSlice[], int srcStride[], int srcSliceY, int srcSliceH, uint8_t *dst[], int dstStride[]) |
Scales the image slice in srcSlice and puts the resulting scaled slice in the image in dst . | |
int | sws_scale_ordered (struct SwsContext *context, uint8_t *src[], int srcStride[], int srcSliceY, int srcSliceH, uint8_t *dst[], int dstStride[]) attribute_deprecated |
int | sws_setColorspaceDetails (struct SwsContext *c, const int inv_table[4], int srcRange, const int table[4], int dstRange, int brightness, int contrast, int saturation) |
int | sws_getColorspaceDetails (struct SwsContext *c, int **inv_table, int *srcRange, int **table, int *dstRange, int *brightness, int *contrast, int *saturation) |
SwsVector * | sws_getGaussianVec (double variance, double quality) |
Returns a normalized Gaussian curve used to filter stuff quality=3 is high quality, lower is lower quality. | |
SwsVector * | sws_getConstVec (double c, int length) |
Allocates and returns a vector with length coefficients, all with the same value c . | |
SwsVector * | sws_getIdentityVec (void) |
Allocates and returns a vector with just one coefficient, with value 1.0. | |
void | sws_scaleVec (SwsVector *a, double scalar) |
Scales all the coefficients of a by the scalar value. | |
void | sws_normalizeVec (SwsVector *a, double height) |
Scales all the coefficients of a so that their sum equals height . | |
void | sws_convVec (SwsVector *a, SwsVector *b) |
void | sws_addVec (SwsVector *a, SwsVector *b) |
void | sws_subVec (SwsVector *a, SwsVector *b) |
void | sws_shiftVec (SwsVector *a, int shift) |
SwsVector * | sws_cloneVec (SwsVector *a) |
Allocates and returns a clone of the vector a , that is a vector with the same coefficients as a . | |
attribute_deprecated void | sws_printVec (SwsVector *a) |
void | sws_printVec2 (SwsVector *a, AVClass *log_ctx, int log_level) |
Prints with av_log() a textual representation of the vector a if log_level <= av_log_level. | |
void | sws_freeVec (SwsVector *a) |
SwsFilter * | sws_getDefaultFilter (float lumaGBlur, float chromaGBlur, float lumaSharpen, float chromaSharpen, float chromaHShift, float chromaVShift, int verbose) |
void | sws_freeFilter (SwsFilter *filter) |
struct SwsContext * | sws_getCachedContext (struct SwsContext *context, int srcW, int srcH, enum PixelFormat srcFormat, int dstW, int dstH, enum PixelFormat dstFormat, int flags, SwsFilter *srcFilter, SwsFilter *dstFilter, double *param) |
Checks if context can be reused, otherwise reallocates a new one. |
Definition in file swscale.h.
#define LIBSWSCALE_IDENT "SwS" AV_STRINGIFY(LIBSWSCALE_VERSION) |
#define LIBSWSCALE_VERSION |
Value:
#define LIBSWSCALE_VERSION_INT |
#define SWS_ACCURATE_RND 0x40000 |
Definition at line 77 of file swscale.h.
Referenced by initFilter(), sws_getContext(), yuv2packedX_TMPL(), yuv2yuv1_TMPL(), and yuv2yuvX_TMPL().
#define SWS_AREA 0x20 |
#define SWS_BICUBIC 4 |
#define SWS_BICUBLIN 0x40 |
#define SWS_BILINEAR 2 |
#define SWS_BITEXACT 0x80000 |
Definition at line 78 of file swscale.h.
Referenced by initFilter(), sws_getContext(), yuv2packedX_TMPL(), and yuv2yuvX_TMPL().
#define SWS_CPU_CAPS_3DNOW 0x40000000 |
Definition at line 82 of file swscale.h.
Referenced by args_parse(), getSwsFunc(), and sws_rgb2rgb_init().
#define SWS_CPU_CAPS_ALTIVEC 0x10000000 |
Definition at line 83 of file swscale.h.
Referenced by getSwsFunc(), initFilter(), sws_yuv2rgb_get_func_ptr(), and sws_yuv2rgb_init_altivec().
#define SWS_CPU_CAPS_BFIN 0x01000000 |
Definition at line 84 of file swscale.h.
Referenced by ff_bfin_get_unscaled_swscale(), sws_getContext(), and sws_yuv2rgb_get_func_ptr().
#define SWS_CPU_CAPS_MMX 0x80000000 |
Definition at line 80 of file swscale.h.
Referenced by args_parse(), getSwsFunc(), initFilter(), sws_rgb2rgb_init(), and sws_yuv2rgb_get_func_ptr().
#define SWS_CPU_CAPS_MMX2 0x20000000 |
Definition at line 81 of file swscale.h.
Referenced by args_parse(), getSwsFunc(), sws_rgb2rgb_init(), and sws_yuv2rgb_get_func_ptr().
#define SWS_CS_DEFAULT 5 |
#define SWS_FAST_BILINEAR 1 |
Definition at line 52 of file swscale.h.
Referenced by hcscale_TMPL(), hyscale_TMPL(), initFilter(), and sws_getContext().
#define SWS_FULL_CHR_H_INP 0x4000 |
#define SWS_FULL_CHR_H_INT 0x2000 |
#define SWS_GAUSS 0x80 |
#define SWS_LANCZOS 0x200 |
#define SWS_MAX_REDUCE_CUTOFF 0.002 |
#define SWS_PARAM_DEFAULT 123456 |
Definition at line 67 of file swscale.h.
Referenced by initFilter(), sws_getCachedContext(), and sws_getContext().
#define SWS_POINT 0x10 |
#define SWS_PRINT_INFO 0x1000 |
#define SWS_SINC 0x100 |
#define SWS_SPLINE 0x400 |
#define SWS_SRC_V_CHR_DROP_MASK 0x30000 |
#define SWS_SRC_V_CHR_DROP_SHIFT 16 |
#define SWS_X 8 |
void sws_freeContext | ( | struct SwsContext * | swsContext | ) |
Definition at line 556 of file imgresample.c.
Referenced by av_encode(), doTest(), Release(), and sws_getCachedContext().
void sws_freeVec | ( | SwsVector * | a | ) |
Definition at line 3098 of file swscale.c.
Referenced by sws_freeFilter(), and sws_getDefaultFilter().
struct SwsContext* sws_getCachedContext | ( | struct SwsContext * | context, | |
int | srcW, | |||
int | srcH, | |||
enum PixelFormat | srcFormat, | |||
int | dstW, | |||
int | dstH, | |||
enum PixelFormat | dstFormat, | |||
int | flags, | |||
SwsFilter * | srcFilter, | |||
SwsFilter * | dstFilter, | |||
double * | param | |||
) | [read] |
Checks if context
can be reused, otherwise reallocates a new one.
If context
is NULL, just calls sws_getContext() to get a new context. Otherwise, checks if the parameters are the ones already saved in context
. If that is the case, returns the current context. Otherwise, frees context
and gets a new context with the new parameters.
Be warned that srcFilter
and dstFilter
are not checked, they are assumed to remain the same.
int sws_getColorspaceDetails | ( | SwsContext * | c, | |
int ** | inv_table, | |||
int * | srcRange, | |||
int ** | table, | |||
int * | dstRange, | |||
int * | brightness, | |||
int * | contrast, | |||
int * | saturation | |||
) |
SwsVector* sws_getConstVec | ( | double | c, | |
int | length | |||
) |
Allocates and returns a vector with length
coefficients, all with the same value c
.
Definition at line 2908 of file swscale.c.
Referenced by sws_getIdentityVec().
struct SwsContext* sws_getContext | ( | int | srcW, | |
int | srcH, | |||
enum PixelFormat | srcFormat, | |||
int | dstW, | |||
int | dstH, | |||
enum PixelFormat | dstFormat, | |||
int | flags, | |||
SwsFilter * | srcFilter, | |||
SwsFilter * | dstFilter, | |||
double * | param | |||
) | [read] |
Allocates and returns a SwsContext.
You need it to perform scaling/conversion operations using sws_scale().
srcW | the width of the source image | |
srcH | the height of the source image | |
srcFormat | the source image format | |
dstW | the width of the destination image | |
dstH | the height of the destination image | |
dstFormat | the destination image format | |
flags | specify which algorithm and options to use for rescaling |
SwsFilter* sws_getDefaultFilter | ( | float | lumaGBlur, | |
float | chromaGBlur, | |||
float | lumaSharpen, | |||
float | chromaSharpen, | |||
float | chromaHShift, | |||
float | chromaVShift, | |||
int | verbose | |||
) |
SwsVector* sws_getGaussianVec | ( | double | variance, | |
double | quality | |||
) |
Returns a normalized Gaussian curve used to filter stuff quality=3 is high quality, lower is lower quality.
Definition at line 2887 of file swscale.c.
Referenced by sws_getDefaultFilter().
SwsVector* sws_getIdentityVec | ( | void | ) |
Allocates and returns a vector with just one coefficient, with value 1.0.
Definition at line 2923 of file swscale.c.
Referenced by sws_getDefaultFilter().
void sws_normalizeVec | ( | SwsVector * | a, | |
double | height | |||
) |
Scales all the coefficients of a
so that their sum equals height
.
"
Definition at line 2944 of file swscale.c.
Referenced by sws_getDefaultFilter(), and sws_getGaussianVec().
attribute_deprecated void sws_printVec | ( | SwsVector * | a | ) |
Prints with av_log() a textual representation of the vector a
if log_level
<= av_log_level.
Definition at line 3069 of file swscale.c.
Referenced by sws_getDefaultFilter(), and sws_printVec().
int sws_scale | ( | SwsContext * | c, | |
uint8_t * | src[], | |||
int | srcStride[], | |||
int | srcSliceY, | |||
int | srcSliceH, | |||
uint8_t * | dst[], | |||
int | dstStride[] | |||
) |
Scales the image slice in srcSlice
and puts the resulting scaled slice in the image in dst
.
A slice is a sequence of consecutive rows in an image.
context | the scaling context previously created with sws_getContext() | |
srcSlice | the array containing the pointers to the planes of the source slice | |
srcStride | the array containing the strides for each plane of the source image | |
srcSliceY | the position in the source image of the slice to process, that is the number (counted starting from zero) in the image of the first row of the slice | |
srcSliceH | the height of the source slice, that is the number of rows in the slice | |
dst | the array containing the pointers to the planes of the destination image | |
dstStride | the array containing the strides for each plane of the destination image |
srcSlice
and puts the resulting scaled slice in the image in dst
.Assumes planar YUV to be in YUV order instead of YVU.
Definition at line 605 of file imgresample.c.
Referenced by do_video_out(), doTest(), get_watermark_picture(), main(), Process(), Process0(), Process1(), queue_picture(), sws_scale_ordered(), and write_video_frame().
int sws_scale_ordered | ( | struct SwsContext * | context, | |
uint8_t * | src[], | |||
int | srcStride[], | |||
int | srcSliceY, | |||
int | srcSliceH, | |||
uint8_t * | dst[], | |||
int | dstStride[] | |||
) |
void sws_scaleVec | ( | SwsVector * | a, | |
double | scalar | |||
) |
Scales all the coefficients of a
by the scalar
value.
Definition at line 2937 of file swscale.c.
Referenced by sws_getDefaultFilter(), and sws_normalizeVec().
int sws_setColorspaceDetails | ( | SwsContext * | c, | |
const int | inv_table[4], | |||
int | srcRange, | |||
const int | table[4], | |||
int | dstRange, | |||
int | brightness, | |||
int | contrast, | |||
int | saturation | |||
) |
inv_table | the yuv2rgb coefficients, normally ff_yuv2rgb_coeffs[x] | |
fullRange | if 1 then the luma range is 0..255 if 0 it is 16..235 |
Definition at line 2082 of file swscale.c.
Referenced by sws_getContext().
void sws_shiftVec | ( | SwsVector * | a, | |
int | shift | |||
) |
unsigned swscale_version | ( | void | ) |