FFmpeg
Data Structures | Macros | Typedefs | Functions
swscale.h File Reference
#include <stdint.h>
#include "libavutil/avutil.h"
#include "libavutil/frame.h"
#include "libavutil/log.h"
#include "libavutil/pixfmt.h"
#include "version_major.h"

Go to the source code of this file.

Data Structures

struct  SwsVector
 
struct  SwsFilter
 

Macros

#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
 Perform full chroma upsampling when upscaling to RGB. More...
 
#define SWS_FULL_CHR_H_INP   0x4000
 Perform full chroma interpolation when downscaling RGB sources. More...
 
#define SWS_DIRECT_BGR   0x8000
 
#define SWS_ACCURATE_RND   0x40000
 
#define SWS_BITEXACT   0x80000
 
#define SWS_ERROR_DIFFUSION   0x800000
 
#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
 
#define SWS_CS_BT2020   9
 

Typedefs

typedef struct SwsContext SwsContext
 

Functions

unsigned swscale_version (void)
 
const char * swscale_configuration (void)
 Return the libswscale build-time configuration. More...
 
const char * swscale_license (void)
 Return the libswscale license. More...
 
const AVClasssws_get_class (void)
 Get the AVClass for swsContext. More...
 
SwsContextsws_alloc_context (void)
 Allocate an empty SwsContext. More...
 
void sws_free_context (SwsContext **ctx)
 Free the context and everything associated with it, and write NULL to the provided pointer. More...
 
int sws_test_format (enum AVPixelFormat format, int output)
 Test if a given pixel format is supported. More...
 
int sws_test_colorspace (enum AVColorSpace colorspace, int output)
 Test if a given color space is supported. More...
 
int sws_test_primaries (enum AVColorPrimaries primaries, int output)
 Test if a given set of color primaries is supported. More...
 
int sws_test_transfer (enum AVColorTransferCharacteristic trc, int output)
 Test if a given color transfer function is supported. More...
 
int sws_test_frame (const AVFrame *frame, int output)
 Helper function to run all sws_test_* against a frame, as well as testing the basic frame properties for sanity. More...
 
int sws_is_noop (const AVFrame *dst, const AVFrame *src)
 Check if a given conversion is a noop. More...
 
const int * sws_getCoefficients (int colorspace)
 Return a pointer to yuv<->rgb coefficients for the given colorspace suitable for sws_setColorspaceDetails(). More...
 
int sws_isSupportedInput (enum AVPixelFormat pix_fmt)
 Return a positive value if pix_fmt is a supported input format, 0 otherwise. More...
 
int sws_isSupportedOutput (enum AVPixelFormat pix_fmt)
 Return a positive value if pix_fmt is a supported output format, 0 otherwise. More...
 
int sws_isSupportedEndiannessConversion (enum AVPixelFormat pix_fmt)
 
av_warn_unused_result int sws_init_context (SwsContext *sws_context, SwsFilter *srcFilter, SwsFilter *dstFilter)
 Initialize the swscaler context sws_context. More...
 
void sws_freeContext (SwsContext *swsContext)
 Free the swscaler context swsContext. More...
 
SwsContextsws_getContext (int srcW, int srcH, enum AVPixelFormat srcFormat, int dstW, int dstH, enum AVPixelFormat dstFormat, int flags, SwsFilter *srcFilter, SwsFilter *dstFilter, const double *param)
 Allocate and return an SwsContext. More...
 
int sws_scale (SwsContext *c, const uint8_t *const srcSlice[], const int srcStride[], int srcSliceY, int srcSliceH, uint8_t *const dst[], const int dstStride[])
 Scale the image slice in srcSlice and put the resulting scaled slice in the image in dst. More...
 
int sws_scale_frame (SwsContext *c, AVFrame *dst, const AVFrame *src)
 Scale source data from src and write the output to dst. More...
 
int sws_frame_start (SwsContext *c, AVFrame *dst, const AVFrame *src)
 Initialize the scaling process for a given pair of source/destination frames. More...
 
void sws_frame_end (SwsContext *c)
 Finish the scaling process for a pair of source/destination frames previously submitted with sws_frame_start(). More...
 
int sws_send_slice (SwsContext *c, unsigned int slice_start, unsigned int slice_height)
 Indicate that a horizontal slice of input data is available in the source frame previously provided to sws_frame_start(). More...
 
int sws_receive_slice (SwsContext *c, unsigned int slice_start, unsigned int slice_height)
 Request a horizontal slice of the output data to be written into the frame previously provided to sws_frame_start(). More...
 
unsigned int sws_receive_slice_alignment (const SwsContext *c)
 Get the alignment required for slices. More...
 
int sws_setColorspaceDetails (SwsContext *c, const int inv_table[4], int srcRange, const int table[4], int dstRange, int brightness, int contrast, int saturation)
 
int sws_getColorspaceDetails (SwsContext *c, int **inv_table, int *srcRange, int **table, int *dstRange, int *brightness, int *contrast, int *saturation)
 
SwsVectorsws_allocVec (int length)
 Allocate and return an uninitialized vector with length coefficients. More...
 
SwsVectorsws_getGaussianVec (double variance, double quality)
 Return a normalized Gaussian curve used to filter stuff quality = 3 is high quality, lower is lower quality. More...
 
void sws_scaleVec (SwsVector *a, double scalar)
 Scale all the coefficients of a by the scalar value. More...
 
void sws_normalizeVec (SwsVector *a, double height)
 Scale all the coefficients of a so that their sum equals height. More...
 
void sws_freeVec (SwsVector *a)
 
SwsFiltersws_getDefaultFilter (float lumaGBlur, float chromaGBlur, float lumaSharpen, float chromaSharpen, float chromaHShift, float chromaVShift, int verbose)
 
void sws_freeFilter (SwsFilter *filter)
 
SwsContextsws_getCachedContext (SwsContext *context, int srcW, int srcH, enum AVPixelFormat srcFormat, int dstW, int dstH, enum AVPixelFormat dstFormat, int flags, SwsFilter *srcFilter, SwsFilter *dstFilter, const double *param)
 Check if context can be reused, otherwise reallocate a new one. 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...
 

Detailed Description

external API header

Definition in file swscale.h.

Typedef Documentation

◆ SwsContext

typedef struct SwsContext SwsContext

Definition at line 45 of file swscale.h.