#include <swscale_internal.h>
Data Fields | |
const AVClass * | av_class |
info on struct for av_log | |
SwsFunc | swScale |
Note that src, dst, srcStride, dstStride will be copied in the sws_scale() wrapper so they can be freely modified here. | |
int | srcW |
Width of source luma/alpha planes. | |
int | srcH |
Height of source luma/alpha planes. | |
int | dstH |
Height of destination luma/alpha planes. | |
int | chrSrcW |
Width of source chroma planes. | |
int | chrSrcH |
Height of source chroma planes. | |
int | chrDstW |
Width of destination chroma planes. | |
int | chrDstH |
Height of destination chroma planes. | |
int | lumXInc |
int | chrXInc |
int | lumYInc |
int | chrYInc |
enum PixelFormat | dstFormat |
Destination pixel format. | |
enum PixelFormat | srcFormat |
Source pixel format. | |
int | dstFormatBpp |
Number of bits per pixel of the destination pixel format. | |
int | srcFormatBpp |
Number of bits per pixel of the source pixel format. | |
int | dstBpc |
int | srcBpc |
int | chrSrcHSubSample |
Binary logarithm of horizontal subsampling factor between luma/alpha and chroma planes in source image. | |
int | chrSrcVSubSample |
Binary logarithm of vertical subsampling factor between luma/alpha and chroma planes in source image. | |
int | chrDstHSubSample |
Binary logarithm of horizontal subsampling factor between luma/alpha and chroma planes in destination image. | |
int | chrDstVSubSample |
Binary logarithm of vertical subsampling factor between luma/alpha and chroma planes in destination image. | |
int | vChrDrop |
Binary logarithm of extra vertical subsampling factor in source image chroma planes specified by user. | |
int | sliceDir |
Direction that slices are fed to the scaler (1 = top-to-bottom, -1 = bottom-to-top). | |
double | param [2] |
Input parameters for scaling algorithms that need them. | |
uint32_t | pal_yuv [256] |
uint32_t | pal_rgb [256] |
uint8_t * | formatConvBuffer |
int | lumMmx2FilterCodeSize |
Runtime-generated MMX2 horizontal fast bilinear scaler code size for luma/alpha planes. | |
int | chrMmx2FilterCodeSize |
Runtime-generated MMX2 horizontal fast bilinear scaler code size for chroma planes. | |
uint8_t * | lumMmx2FilterCode |
Runtime-generated MMX2 horizontal fast bilinear scaler code for luma/alpha planes. | |
uint8_t * | chrMmx2FilterCode |
Runtime-generated MMX2 horizontal fast bilinear scaler code for chroma planes. | |
int | canMMX2BeUsed |
int | dstY |
Last destination vertical line output from last slice. | |
int | flags |
Flags passed by the user to select scaler algorithm, optimizations, subsampling, etc... | |
void * | yuvTable |
uint8_t * | table_rV [256+2 *YUVRGB_TABLE_HEADROOM] |
uint8_t * | table_gU [256+2 *YUVRGB_TABLE_HEADROOM] |
int | table_gV [256+2 *YUVRGB_TABLE_HEADROOM] |
uint8_t * | table_bU [256+2 *YUVRGB_TABLE_HEADROOM] |
int | contrast |
int | brightness |
int | saturation |
int | srcColorspaceTable [4] |
int | dstColorspaceTable [4] |
int | srcRange |
0 = MPG YUV range, 1 = JPG YUV range (source image). | |
int | dstRange |
0 = MPG YUV range, 1 = JPG YUV range (destination image). | |
int | src0Alpha |
int | dst0Alpha |
int | yuv2rgb_y_offset |
int | yuv2rgb_y_coeff |
int | yuv2rgb_v2r_coeff |
int | yuv2rgb_v2g_coeff |
int | yuv2rgb_u2g_coeff |
int | yuv2rgb_u2b_coeff |
uint64_t | redDither |
uint64_t | greenDither |
uint64_t | blueDither |
uint64_t | yCoeff |
uint64_t | vrCoeff |
uint64_t | ubCoeff |
uint64_t | vgCoeff |
uint64_t | ugCoeff |
uint64_t | yOffset |
uint64_t | uOffset |
uint64_t | vOffset |
int32_t | lumMmxFilter [4 *MAX_FILTER_SIZE] |
int32_t | chrMmxFilter [4 *MAX_FILTER_SIZE] |
int | dstW |
Width of destination luma/alpha planes. | |
uint64_t | esp |
uint64_t | vRounder |
uint64_t | u_temp |
uint64_t | v_temp |
uint64_t | y_temp |
int32_t | alpMmxFilter [4 *MAX_FILTER_SIZE] |
ptrdiff_t | uv_off |
offset (in pixels) between u and v planes | |
ptrdiff_t | uv_offx2 |
offset (in bytes) between u and v planes | |
uint16_t | dither16 [8] |
uint32_t | dither32 [8] |
const uint8_t * | chrDither8 |
const uint8_t * | lumDither8 |
int | use_mmx_vfilter |
yuv2planar1_fn | yuv2plane1 |
yuv2planarX_fn | yuv2planeX |
yuv2interleavedX_fn | yuv2nv12cX |
yuv2packed1_fn | yuv2packed1 |
yuv2packed2_fn | yuv2packed2 |
yuv2packedX_fn | yuv2packedX |
void(* | lumToYV12 )(uint8_t *dst, const uint8_t *src, const uint8_t *src2, const uint8_t *src3, int width, uint32_t *pal) |
Unscaled conversion of luma plane to YV12 for horizontal scaler. | |
void(* | alpToYV12 )(uint8_t *dst, const uint8_t *src, const uint8_t *src2, const uint8_t *src3, int width, uint32_t *pal) |
Unscaled conversion of alpha plane to YV12 for horizontal scaler. | |
void(* | chrToYV12 )(uint8_t *dstU, uint8_t *dstV, const uint8_t *src1, const uint8_t *src2, const uint8_t *src3, int width, uint32_t *pal) |
Unscaled conversion of chroma planes to YV12 for horizontal scaler. | |
void(* | lumConvertRange )(int16_t *dst, int width) |
Color range conversion function for luma plane if needed. | |
void(* | chrConvertRange )(int16_t *dst1, int16_t *dst2, int width) |
Color range conversion function for chroma planes if needed. | |
int | needs_hcscale |
Set if there are chroma planes to be converted. | |
Scaled horizontal lines ring buffer. | |
The horizontal scaler keeps just enough scaled lines in a ring buffer so they may be passed to the vertical scaler.
The pointers to the allocated buffers for each line are duplicated in sequence in the ring buffer to simplify indexing and avoid wrapping around between lines inside the vertical scaler code. The wrapping is done before the vertical scaler is called. | |
int16_t ** | lumPixBuf |
Ring buffer for scaled horizontal luma plane lines to be fed to the vertical scaler. | |
int16_t ** | chrUPixBuf |
Ring buffer for scaled horizontal chroma plane lines to be fed to the vertical scaler. | |
int16_t ** | chrVPixBuf |
Ring buffer for scaled horizontal chroma plane lines to be fed to the vertical scaler. | |
int16_t ** | alpPixBuf |
Ring buffer for scaled horizontal alpha plane lines to be fed to the vertical scaler. | |
int | vLumBufSize |
Number of vertical luma/alpha lines allocated in the ring buffer. | |
int | vChrBufSize |
Number of vertical chroma lines allocated in the ring buffer. | |
int | lastInLumBuf |
Last scaled horizontal luma/alpha line from source in the ring buffer. | |
int | lastInChrBuf |
Last scaled horizontal chroma line from source in the ring buffer. | |
int | lumBufIndex |
Index in ring buffer of the last scaled horizontal luma/alpha line from source. | |
int | chrBufIndex |
Index in ring buffer of the last scaled horizontal chroma line from source. | |
Horizontal and vertical filters. | |
To better understand the following fields, here is a pseudo-code of their usage in filtering a horizontal line:
for (i = 0; i < width; i++) { dst[i] = 0; for (j = 0; j < filterSize; j++) dst[i] += src[ filterPos[i] + j ] * filter[ filterSize * i + j ]; dst[i] >>= FRAC_BITS; // The actual implementation is fixed-point. } | |
int16_t * | hLumFilter |
Array of horizontal filter coefficients for luma/alpha planes. | |
int16_t * | hChrFilter |
Array of horizontal filter coefficients for chroma planes. | |
int16_t * | vLumFilter |
Array of vertical filter coefficients for luma/alpha planes. | |
int16_t * | vChrFilter |
Array of vertical filter coefficients for chroma planes. | |
int32_t * | hLumFilterPos |
Array of horizontal filter starting positions for each dst[i] for luma/alpha planes. | |
int32_t * | hChrFilterPos |
Array of horizontal filter starting positions for each dst[i] for chroma planes. | |
int32_t * | vLumFilterPos |
Array of vertical filter starting positions for each dst[i] for luma/alpha planes. | |
int32_t * | vChrFilterPos |
Array of vertical filter starting positions for each dst[i] for chroma planes. | |
int | hLumFilterSize |
Horizontal filter size for luma/alpha pixels. | |
int | hChrFilterSize |
Horizontal filter size for chroma pixels. | |
int | vLumFilterSize |
Vertical filter size for luma/alpha pixels. | |
int | vChrFilterSize |
Vertical filter size for chroma pixels. | |
void(* | readLumPlanar )(uint8_t *dst, const uint8_t *src[4], int width) |
Functions to read planar input, such as planar RGB, and convert internally to Y/UV. | |
void(* | readChrPlanar )(uint8_t *dstU, uint8_t *dstV, const uint8_t *src[4], int width) |
void(* | hyscale_fast )(struct SwsContext *c, int16_t *dst, int dstWidth, const uint8_t *src, int srcW, int xInc) |
Scale one horizontal line of input data using a bilinear filter to produce one line of output data. | |
void(* | hcscale_fast )(struct SwsContext *c, int16_t *dst1, int16_t *dst2, int dstWidth, const uint8_t *src1, const uint8_t *src2, int srcW, int xInc) |
void(* | hyScale )(struct SwsContext *c, int16_t *dst, int dstW, const uint8_t *src, const int16_t *filter, const int32_t *filterPos, int filterSize) |
Scale one horizontal line of input data using a filter over the input lines, to produce one (differently sized) line of output data. | |
void(* | hcScale )(struct SwsContext *c, int16_t *dst, int dstW, const uint8_t *src, const int16_t *filter, const int32_t *filterPos, int filterSize) |
Definition at line 224 of file swscale_internal.h.
int32_t SwsContext::alpMmxFilter[4 *MAX_FILTER_SIZE] |
Definition at line 387 of file swscale_internal.h.
Referenced by DECLARE_ASM_CONST(), and swScale().
Ring buffer for scaled horizontal alpha plane lines to be fed to the vertical scaler.
Definition at line 273 of file swscale_internal.h.
Referenced by DECLARE_ASM_CONST(), ff_sws_init_swScale_altivec(), ff_sws_init_swScale_mmx(), find_c_packed_planar_out_funcs(), sws_freeContext(), sws_init_context(), sws_init_swScale_c(), and swScale().
void(* SwsContext::alpToYV12)(uint8_t *dst, const uint8_t *src, const uint8_t *src2, const uint8_t *src3, int width, uint32_t *pal) |
Unscaled conversion of alpha plane to YV12 for horizontal scaler.
Referenced by ff_sws_init_swScale_mmx(), hyscale(), and sws_init_swScale_c().
const AVClass* SwsContext::av_class |
info on struct for av_log
Definition at line 228 of file swscale_internal.h.
Referenced by sws_alloc_context().
uint64_t SwsContext::blueDither |
Definition at line 328 of file swscale_internal.h.
Referenced by sws_getColorspaceDetails(), and sws_setColorspaceDetails().
Index in ring buffer of the last scaled horizontal chroma line from source.
Definition at line 279 of file swscale_internal.h.
Referenced by swScale().
void(* SwsContext::chrConvertRange)(int16_t *dst1, int16_t *dst2, int width) |
Color range conversion function for chroma planes if needed.
Referenced by hcscale(), and sws_init_swScale_c().
const uint8_t* SwsContext::chrDither8 |
Height of destination chroma planes.
Definition at line 241 of file swscale_internal.h.
Referenced by sws_init_context().
Binary logarithm of horizontal subsampling factor between luma/alpha and chroma planes in destination image.
Definition at line 251 of file swscale_internal.h.
Referenced by ff_get_unscaled_swscale(), planarCopyWrapper(), and sws_init_context().
Binary logarithm of vertical subsampling factor between luma/alpha and chroma planes in destination image.
Definition at line 252 of file swscale_internal.h.
Referenced by DECLARE_ASM_CONST(), ff_get_unscaled_swscale(), planarCopyWrapper(), sws_init_context(), sws_scale(), and swScale().
Width of destination chroma planes.
Definition at line 240 of file swscale_internal.h.
Referenced by sws_init_context(), and swScale().
uint8_t* SwsContext::chrMmx2FilterCode |
Runtime-generated MMX2 horizontal fast bilinear scaler code for chroma planes.
Definition at line 315 of file swscale_internal.h.
Referenced by sws_freeContext(), and sws_init_context().
Runtime-generated MMX2 horizontal fast bilinear scaler code size for chroma planes.
Definition at line 313 of file swscale_internal.h.
Referenced by sws_freeContext(), and sws_init_context().
int32_t SwsContext::chrMmxFilter[4 *MAX_FILTER_SIZE] |
Definition at line 380 of file swscale_internal.h.
Referenced by DECLARE_ASM_CONST(), and swScale().
Height of source chroma planes.
Definition at line 239 of file swscale_internal.h.
Referenced by DECLARE_ASM_CONST(), and sws_init_context().
Binary logarithm of horizontal subsampling factor between luma/alpha and chroma planes in source image.
Definition at line 249 of file swscale_internal.h.
Referenced by ff_get_unscaled_swscale(), sws_init_context(), and sws_init_swScale_c().
Binary logarithm of vertical subsampling factor between luma/alpha and chroma planes in source image.
Definition at line 250 of file swscale_internal.h.
Referenced by ff_get_unscaled_swscale(), sws_init_context(), sws_scale(), and swScale().
Width of source chroma planes.
Definition at line 238 of file swscale_internal.h.
Referenced by sws_init_context(), swScale(), and yvu9ToYv12Wrapper().
void(* SwsContext::chrToYV12)(uint8_t *dstU, uint8_t *dstV, const uint8_t *src1, const uint8_t *src2, const uint8_t *src3, int width, uint32_t *pal) |
Unscaled conversion of chroma planes to YV12 for horizontal scaler.
Referenced by ff_sws_init_swScale_mmx(), hcscale(), and sws_init_swScale_c().
Ring buffer for scaled horizontal chroma plane lines to be fed to the vertical scaler.
Definition at line 271 of file swscale_internal.h.
Referenced by DECLARE_ASM_CONST(), sws_freeContext(), sws_init_context(), and swScale().
Ring buffer for scaled horizontal chroma plane lines to be fed to the vertical scaler.
Definition at line 272 of file swscale_internal.h.
Referenced by sws_freeContext(), sws_init_context(), and swScale().
Definition at line 328 of file swscale_internal.h.
Referenced by sws_getColorspaceDetails(), and sws_setColorspaceDetails().
uint16_t SwsContext::dither16[8] |
Definition at line 393 of file swscale_internal.h.
uint32_t SwsContext::dither32[8] |
Definition at line 394 of file swscale_internal.h.
Definition at line 334 of file swscale_internal.h.
Referenced by sws_getCachedContext(), sws_getContext(), and sws_scale().
Definition at line 248 of file swscale_internal.h.
Referenced by ff_sws_init_swScale_altivec(), ff_sws_init_swScale_mmx(), sws_init_context(), and sws_init_swScale_c().
Definition at line 330 of file swscale_internal.h.
Referenced by sws_getColorspaceDetails(), and sws_setColorspaceDetails().
Destination pixel format.
Definition at line 244 of file swscale_internal.h.
Referenced by DECLARE_ASM_CONST(), ff_bfin_get_unscaled_swscale(), ff_get_unscaled_swscale(), ff_sws_init_swScale_altivec(), ff_sws_init_swScale_mmx(), ff_swscale_get_unscaled_altivec(), ff_yuv2packedX_altivec(), ff_yuv2rgb_c_init_tables(), ff_yuv2rgb_get_func_ptr_bfin(), ff_yuv2rgb_init_altivec(), ff_yuv2rgb_init_mlib(), ff_yuv2rgb_init_vis(), find_c_packed_planar_out_funcs(), findRgbConvFn(), palToRgbWrapper(), planarCopyWrapper(), planarRgbToRgbWrapper(), planarToNv12Wrapper(), rgbToRgbWrapper(), selfTest(), sws_getCachedContext(), sws_getColorspaceDetails(), sws_getContext(), sws_init_context(), sws_init_swScale_c(), sws_scale(), sws_setColorspaceDetails(), swScale(), and yuv2nv12cX_c().
Number of bits per pixel of the destination pixel format.
Definition at line 246 of file swscale_internal.h.
Referenced by ff_get_unscaled_swscale(), ff_yuv2rgb_c_init_tables(), findRgbConvFn(), rgbToRgbWrapper(), sws_init_context(), and sws_setColorspaceDetails().
int SwsContext::dstH |
Height of destination luma/alpha planes.
Definition at line 237 of file swscale_internal.h.
Referenced by DECLARE_ASM_CONST(), ff_get_unscaled_swscale(), selfTest(), sws_getCachedContext(), sws_getContext(), sws_init_context(), sws_scale(), and swScale().
0 = MPG YUV range, 1 = JPG YUV range (destination image).
Definition at line 332 of file swscale_internal.h.
Referenced by sws_getCachedContext(), sws_getColorspaceDetails(), sws_getContext(), sws_init_context(), sws_init_swScale_c(), and sws_setColorspaceDetails().
int SwsContext::dstW |
Width of destination luma/alpha planes.
Definition at line 381 of file swscale_internal.h.
Referenced by ff_yuv2rgb_init_vis(), mlib_YUV2ABGR420_32(), mlib_YUV2ARGB420_32(), mlib_YUV2RGB420_24(), selfTest(), sws_getCachedContext(), sws_getContext(), sws_init_context(), swScale(), vis_420P_ARGB32(), vis_422P_ARGB32(), yuv2bgr24_X_ar_TMPL(), yuv2bgr24_X_TMPL(), yuv2rgb32_X_ar_TMPL(), yuv2rgb32_X_TMPL(), yuv2rgb555_X_ar_TMPL(), yuv2rgb555_X_TMPL(), yuv2rgb565_X_ar_TMPL(), yuv2rgb565_X_TMPL(), yuv2yuvX_TMPL(), yuv2yuyv422_X_ar_TMPL(), and yuv2yuyv422_X_TMPL().
int SwsContext::dstY |
Last destination vertical line output from last slice.
Definition at line 319 of file swscale_internal.h.
Referenced by swScale().
uint64_t SwsContext::esp |
Definition at line 382 of file swscale_internal.h.
Flags passed by the user to select scaler algorithm, optimizations, subsampling, etc...
Definition at line 320 of file swscale_internal.h.
Referenced by DECLARE_ASM_CONST(), ff_get_unscaled_swscale(), ff_sws_init_swScale_altivec(), ff_sws_init_swScale_mmx(), ff_swscale_get_unscaled_altivec(), find_c_packed_planar_out_funcs(), sws_getCachedContext(), sws_getContext(), sws_init_context(), sws_init_swScale_c(), and swScale().
uint8_t* SwsContext::formatConvBuffer |
Definition at line 282 of file swscale_internal.h.
Referenced by sws_freeContext(), sws_init_context(), and swScale().
uint64_t SwsContext::greenDither |
Array of horizontal filter coefficients for chroma planes.
Definition at line 299 of file swscale_internal.h.
Referenced by sws_freeContext(), sws_init_context(), and swScale().
int32_t* SwsContext::hChrFilterPos |
Array of horizontal filter starting positions for each dst[i] for chroma planes.
Definition at line 303 of file swscale_internal.h.
Referenced by sws_freeContext(), sws_init_context(), and swScale().
Horizontal filter size for chroma pixels.
Definition at line 307 of file swscale_internal.h.
Referenced by ff_sws_init_swScale_mmx(), sws_init_context(), and swScale().
void(* SwsContext::hcScale)(struct SwsContext *c, int16_t *dst, int dstW, const uint8_t *src, const int16_t *filter, const int32_t *filterPos, int filterSize) |
Referenced by ff_sws_init_swScale_altivec(), ff_sws_init_swScale_mmx(), hcscale(), and sws_init_swScale_c().
void(* SwsContext::hcscale_fast)(struct SwsContext *c, int16_t *dst1, int16_t *dst2, int dstWidth, const uint8_t *src1, const uint8_t *src2, int srcW, int xInc) |
Referenced by hcscale(), and sws_init_swScale_c().
Array of horizontal filter coefficients for luma/alpha planes.
Definition at line 298 of file swscale_internal.h.
Referenced by sws_freeContext(), sws_init_context(), and swScale().
int32_t* SwsContext::hLumFilterPos |
Array of horizontal filter starting positions for each dst[i] for luma/alpha planes.
Definition at line 302 of file swscale_internal.h.
Referenced by sws_freeContext(), sws_init_context(), and swScale().
Horizontal filter size for luma/alpha pixels.
Definition at line 306 of file swscale_internal.h.
Referenced by ff_sws_init_swScale_mmx(), sws_init_context(), and swScale().
void(* SwsContext::hyScale)(struct SwsContext *c, int16_t *dst, int dstW, const uint8_t *src, const int16_t *filter, const int32_t *filterPos, int filterSize) |
Scale one horizontal line of input data using a filter over the input lines, to produce one (differently sized) line of output data.
dst | pointer to destination buffer for horizontally scaled data. If the number of bits per component of one destination pixel (SwsContext->dstBpc) is <= 10, data will be 15bpc in 16bits (int16_t) width. Else (i.e. SwsContext->dstBpc == 16), data will be 19bpc in 32bits (int32_t) width. | |
dstW | width of destination image | |
src | pointer to source data to be scaled. If the number of bits per component of a source pixel (SwsContext->srcBpc) is 8, this is 8bpc in 8bits (uint8_t) width. Else (i.e. SwsContext->dstBpc > 8), this is native depth in 16bits (uint16_t) width. In other words, for 9-bit YUV input, this is 9bpc, for 10-bit YUV input, this is 10bpc, and for 16-bit RGB or YUV, this is 16bpc. | |
filter | filter coefficients to be used per output pixel for scaling. This contains 14bpp filtering coefficients. Guaranteed to contain dstW * filterSize entries. | |
filterPos | position of the first input pixel to be used for each output pixel during scaling. Guaranteed to contain dstW entries. | |
filterSize | the number of input coefficients to be used (and thus the number of input pixels to be used) for creating a single output pixel. Is aligned to 4 (and input coefficients thus padded with zeroes) to simplify creating SIMD code. |
Referenced by ff_sws_init_swScale_altivec(), ff_sws_init_swScale_mmx(), hyscale(), and sws_init_swScale_c().
void(* SwsContext::hyscale_fast)(struct SwsContext *c, int16_t *dst, int dstWidth, const uint8_t *src, int srcW, int xInc) |
Scale one horizontal line of input data using a bilinear filter to produce one line of output data.
Compared to SwsContext->hScale(), please take note of the following caveats when using these:
Referenced by hyscale(), and sws_init_swScale_c().
Last scaled horizontal chroma line from source in the ring buffer.
Definition at line 277 of file swscale_internal.h.
Referenced by swScale().
Last scaled horizontal luma/alpha line from source in the ring buffer.
Definition at line 276 of file swscale_internal.h.
Referenced by swScale().
Index in ring buffer of the last scaled horizontal luma/alpha line from source.
Definition at line 278 of file swscale_internal.h.
Referenced by swScale().
void(* SwsContext::lumConvertRange)(int16_t *dst, int width) |
Color range conversion function for luma plane if needed.
Referenced by hyscale(), and sws_init_swScale_c().
const uint8_t * SwsContext::lumDither8 |
uint8_t* SwsContext::lumMmx2FilterCode |
Runtime-generated MMX2 horizontal fast bilinear scaler code for luma/alpha planes.
Definition at line 314 of file swscale_internal.h.
Referenced by sws_freeContext(), and sws_init_context().
Runtime-generated MMX2 horizontal fast bilinear scaler code size for luma/alpha planes.
Definition at line 312 of file swscale_internal.h.
Referenced by sws_freeContext(), and sws_init_context().
int32_t SwsContext::lumMmxFilter[4 *MAX_FILTER_SIZE] |
Definition at line 379 of file swscale_internal.h.
Referenced by DECLARE_ASM_CONST(), and swScale().
Ring buffer for scaled horizontal luma plane lines to be fed to the vertical scaler.
Definition at line 270 of file swscale_internal.h.
Referenced by DECLARE_ASM_CONST(), sws_freeContext(), sws_init_context(), and swScale().
void(* SwsContext::lumToYV12)(uint8_t *dst, const uint8_t *src, const uint8_t *src2, const uint8_t *src3, int width, uint32_t *pal) |
Unscaled conversion of luma plane to YV12 for horizontal scaler.
Referenced by ff_sws_init_swScale_mmx(), hyscale(), and sws_init_swScale_c().
Set if there are chroma planes to be converted.
Definition at line 529 of file swscale_internal.h.
Referenced by sws_init_swScale_c(), and swScale().
uint32_t SwsContext::pal_rgb[256] |
Definition at line 258 of file swscale_internal.h.
Referenced by palToRgbWrapper(), and sws_scale().
uint32_t SwsContext::pal_yuv[256] |
double SwsContext::param[2] |
Input parameters for scaling algorithms that need them.
Definition at line 255 of file swscale_internal.h.
Referenced by sws_getCachedContext(), sws_getContext(), and sws_init_context().
void(* SwsContext::readChrPlanar)(uint8_t *dstU, uint8_t *dstV, const uint8_t *src[4], int width) |
Referenced by hcscale(), and sws_init_swScale_c().
void(* SwsContext::readLumPlanar)(uint8_t *dst, const uint8_t *src[4], int width) |
Functions to read planar input, such as planar RGB, and convert internally to Y/UV.
Referenced by hyscale(), and sws_init_swScale_c().
uint64_t SwsContext::redDither |
Definition at line 328 of file swscale_internal.h.
Referenced by sws_getColorspaceDetails(), and sws_setColorspaceDetails().
Direction that slices are fed to the scaler (1 = top-to-bottom, -1 = bottom-to-top).
Definition at line 254 of file swscale_internal.h.
Referenced by sws_scale().
Definition at line 333 of file swscale_internal.h.
Referenced by sws_getCachedContext(), sws_getContext(), and sws_scale().
Definition at line 248 of file swscale_internal.h.
Referenced by ff_sws_init_swScale_altivec(), sws_init_context(), and sws_init_swScale_c().
Definition at line 329 of file swscale_internal.h.
Referenced by sws_getColorspaceDetails(), and sws_setColorspaceDetails().
Source pixel format.
Definition at line 245 of file swscale_internal.h.
Referenced by bgr24ToUV_mmx_TMPL(), DECLARE_ASM_CONST(), ff_bfin_get_unscaled_swscale(), ff_get_unscaled_swscale(), ff_sws_init_swScale_mmx(), ff_swscale_get_unscaled_altivec(), ff_yuv2rgb_c_init_tables(), ff_yuv2rgb_init_altivec(), ff_yuv2rgb_init_vis(), findRgbConvFn(), hScale16To15_c(), hScale16To19_c(), mlib_YUV2ABGR420_32(), mlib_YUV2ARGB420_32(), mlib_YUV2RGB420_24(), palToRgbWrapper(), planarCopyWrapper(), planarRgbToRgbWrapper(), rgbToRgbWrapper(), selfTest(), sws_getCachedContext(), sws_getContext(), sws_init_context(), sws_init_swScale_c(), sws_scale(), sws_setColorspaceDetails(), and swScale().
Number of bits per pixel of the source pixel format.
Definition at line 247 of file swscale_internal.h.
Referenced by ff_get_unscaled_swscale(), findRgbConvFn(), rgbToRgbWrapper(), sws_init_context(), and sws_setColorspaceDetails().
int SwsContext::srcH |
Height of source luma/alpha planes.
Definition at line 236 of file swscale_internal.h.
Referenced by DECLARE_ASM_CONST(), ff_yuv2rgb_init_altivec(), selfTest(), sws_getCachedContext(), sws_getContext(), sws_init_context(), and sws_scale().
0 = MPG YUV range, 1 = JPG YUV range (source image).
Definition at line 331 of file swscale_internal.h.
Referenced by planarCopyWrapper(), sws_getCachedContext(), sws_getColorspaceDetails(), sws_getContext(), sws_init_context(), sws_init_swScale_c(), and sws_setColorspaceDetails().
int SwsContext::srcW |
Width of source luma/alpha planes.
Definition at line 235 of file swscale_internal.h.
Referenced by altivec_uyvy_rgb32(), bgr24ToYv12Wrapper(), ff_swscale_get_unscaled_altivec(), ff_yuv2rgb_init_altivec(), packedCopyWrapper(), palToRgbWrapper(), planarCopyWrapper(), planarRgbToRgbWrapper(), planarToNv12Wrapper(), planarToUyvyWrapper(), planarToYuy2Wrapper(), rgbToRgbWrapper(), selfTest(), sws_getCachedContext(), sws_getContext(), sws_init_context(), sws_scale(), swScale(), uyvyToYuv420Wrapper(), uyvyToYuv422Wrapper(), yuv422pToUyvyWrapper(), yuv422pToYuy2Wrapper(), yuyvToYuv420Wrapper(), yuyvToYuv422Wrapper(), yv12touyvy_unscaled_altivec(), yv12toyuy2_unscaled_altivec(), and yvu9ToYv12Wrapper().
Note that src, dst, srcStride, dstStride will be copied in the sws_scale() wrapper so they can be freely modified here.
Definition at line 234 of file swscale_internal.h.
Referenced by ff_bfin_get_unscaled_swscale(), ff_get_unscaled_swscale(), ff_swscale_get_unscaled_altivec(), sws_init_context(), and sws_scale().
uint8_t* SwsContext::table_bU[256+2 *YUVRGB_TABLE_HEADROOM] |
Definition at line 325 of file swscale_internal.h.
Referenced by ff_yuv2rgb_c_init_tables(), yuv2rgb_1_c_template(), yuv2rgb_2_c_template(), and yuv2rgb_X_c_template().
uint8_t* SwsContext::table_gU[256+2 *YUVRGB_TABLE_HEADROOM] |
Definition at line 323 of file swscale_internal.h.
Referenced by ff_yuv2rgb_c_init_tables(), yuv2mono_1_c_template(), yuv2mono_2_c_template(), yuv2mono_X_c_template(), yuv2rgb_1_c_template(), yuv2rgb_2_c_template(), and yuv2rgb_X_c_template().
int SwsContext::table_gV[256+2 *YUVRGB_TABLE_HEADROOM] |
Definition at line 324 of file swscale_internal.h.
Referenced by ff_yuv2rgb_c_init_tables(), yuv2mono_1_c_template(), yuv2mono_2_c_template(), yuv2mono_X_c_template(), yuv2rgb_1_c_template(), yuv2rgb_2_c_template(), and yuv2rgb_X_c_template().
uint8_t* SwsContext::table_rV[256+2 *YUVRGB_TABLE_HEADROOM] |
Definition at line 322 of file swscale_internal.h.
Referenced by ff_yuv2rgb_c_init_tables(), yuv2rgb_1_c_template(), yuv2rgb_2_c_template(), and yuv2rgb_X_c_template().
uint64_t SwsContext::u_temp |
Definition at line 384 of file swscale_internal.h.
uint64_t SwsContext::ubCoeff |
Definition at line 373 of file swscale_internal.h.
Referenced by bfin_prepare_coefficients(), ff_yuv2rgb_c_init_tables(), and ff_yuv2rgb_init_vis().
uint64_t SwsContext::ugCoeff |
Definition at line 375 of file swscale_internal.h.
Referenced by bfin_prepare_coefficients(), ff_yuv2rgb_c_init_tables(), and ff_yuv2rgb_init_vis().
uint64_t SwsContext::uOffset |
Definition at line 377 of file swscale_internal.h.
Referenced by ff_yuv2rgb_c_init_tables(), and ff_yuv2rgb_init_vis().
Definition at line 426 of file swscale_internal.h.
Referenced by ff_sws_init_swScale_mmx(), and swScale().
ptrdiff_t SwsContext::uv_off |
offset (in pixels) between u and v planes
Definition at line 391 of file swscale_internal.h.
Referenced by sws_init_context(), yuv2bgr24_X_ar_TMPL(), yuv2bgr24_X_TMPL(), yuv2rgb32_X_ar_TMPL(), yuv2rgb32_X_TMPL(), yuv2rgb555_X_ar_TMPL(), yuv2rgb555_X_TMPL(), yuv2rgb565_X_ar_TMPL(), yuv2rgb565_X_TMPL(), yuv2yuyv422_X_ar_TMPL(), and yuv2yuyv422_X_TMPL().
ptrdiff_t SwsContext::uv_offx2 |
offset (in bytes) between u and v planes
Definition at line 392 of file swscale_internal.h.
Referenced by sws_init_context(), and swScale().
uint64_t SwsContext::v_temp |
Definition at line 385 of file swscale_internal.h.
Number of vertical chroma lines allocated in the ring buffer.
Definition at line 275 of file swscale_internal.h.
Referenced by DECLARE_ASM_CONST(), sws_freeContext(), sws_init_context(), and swScale().
Binary logarithm of extra vertical subsampling factor in source image chroma planes specified by user.
Definition at line 253 of file swscale_internal.h.
Referenced by sws_init_context(), and swScale().
Array of vertical filter coefficients for chroma planes.
Definition at line 301 of file swscale_internal.h.
Referenced by DECLARE_ASM_CONST(), sws_freeContext(), sws_init_context(), and swScale().
int32_t* SwsContext::vChrFilterPos |
Array of vertical filter starting positions for each dst[i] for chroma planes.
Definition at line 305 of file swscale_internal.h.
Referenced by DECLARE_ASM_CONST(), sws_freeContext(), sws_init_context(), and swScale().
Vertical filter size for chroma pixels.
Definition at line 309 of file swscale_internal.h.
Referenced by DECLARE_ASM_CONST(), sws_init_context(), and swScale().
uint64_t SwsContext::vgCoeff |
Definition at line 374 of file swscale_internal.h.
Referenced by bfin_prepare_coefficients(), ff_yuv2rgb_c_init_tables(), and ff_yuv2rgb_init_vis().
Number of vertical luma/alpha lines allocated in the ring buffer.
Definition at line 274 of file swscale_internal.h.
Referenced by DECLARE_ASM_CONST(), sws_freeContext(), sws_init_context(), and swScale().
Array of vertical filter coefficients for luma/alpha planes.
Definition at line 300 of file swscale_internal.h.
Referenced by DECLARE_ASM_CONST(), sws_freeContext(), sws_init_context(), and swScale().
int32_t* SwsContext::vLumFilterPos |
Array of vertical filter starting positions for each dst[i] for luma/alpha planes.
Definition at line 304 of file swscale_internal.h.
Referenced by DECLARE_ASM_CONST(), sws_freeContext(), sws_init_context(), and swScale().
Vertical filter size for luma/alpha pixels.
Definition at line 308 of file swscale_internal.h.
Referenced by DECLARE_ASM_CONST(), sws_init_context(), and swScale().
uint64_t SwsContext::vOffset |
Definition at line 378 of file swscale_internal.h.
Referenced by ff_yuv2rgb_c_init_tables(), and ff_yuv2rgb_init_vis().
uint64_t SwsContext::vrCoeff |
Definition at line 372 of file swscale_internal.h.
Referenced by bfin_prepare_coefficients(), ff_yuv2rgb_c_init_tables(), and ff_yuv2rgb_init_vis().
uint64_t SwsContext::vRounder |
uint64_t SwsContext::y_temp |
Definition at line 386 of file swscale_internal.h.
uint64_t SwsContext::yCoeff |
Definition at line 371 of file swscale_internal.h.
Referenced by bfin_prepare_coefficients(), ff_yuv2rgb_c_init_tables(), and ff_yuv2rgb_init_vis().
uint64_t SwsContext::yOffset |
Definition at line 376 of file swscale_internal.h.
Referenced by bfin_prepare_coefficients(), ff_yuv2rgb_c_init_tables(), and ff_yuv2rgb_init_vis().
Definition at line 431 of file swscale_internal.h.
Referenced by sws_init_swScale_c(), and swScale().
Definition at line 432 of file swscale_internal.h.
Referenced by sws_init_swScale_c(), and swScale().
Definition at line 433 of file swscale_internal.h.
Referenced by sws_init_swScale_c(), and swScale().
Definition at line 434 of file swscale_internal.h.
Referenced by ff_sws_init_swScale_altivec(), sws_init_swScale_c(), and swScale().
Definition at line 429 of file swscale_internal.h.
Referenced by ff_sws_init_swScale_mmx(), sws_init_swScale_c(), and swScale().
Definition at line 430 of file swscale_internal.h.
Referenced by ff_sws_init_swScale_altivec(), ff_sws_init_swScale_mmx(), sws_init_swScale_c(), and swScale().
Definition at line 340 of file swscale_internal.h.
Referenced by ff_yuv2rgb_c_init_tables(), yuv2rgb48_1_c_template(), yuv2rgb48_2_c_template(), and yuv2rgb48_X_c_template().
Definition at line 339 of file swscale_internal.h.
Referenced by ff_yuv2rgb_c_init_tables(), yuv2rgb48_1_c_template(), yuv2rgb48_2_c_template(), and yuv2rgb48_X_c_template().
Definition at line 338 of file swscale_internal.h.
Referenced by ff_yuv2rgb_c_init_tables(), yuv2rgb48_1_c_template(), yuv2rgb48_2_c_template(), and yuv2rgb48_X_c_template().
Definition at line 337 of file swscale_internal.h.
Referenced by ff_yuv2rgb_c_init_tables(), yuv2rgb48_1_c_template(), yuv2rgb48_2_c_template(), and yuv2rgb48_X_c_template().
Definition at line 336 of file swscale_internal.h.
Referenced by ff_yuv2rgb_c_init_tables(), yuv2rgb48_1_c_template(), yuv2rgb48_2_c_template(), and yuv2rgb48_X_c_template().
Definition at line 335 of file swscale_internal.h.
Referenced by ff_yuv2rgb_c_init_tables(), yuv2rgb48_1_c_template(), yuv2rgb48_2_c_template(), and yuv2rgb48_X_c_template().
void* SwsContext::yuvTable |
Definition at line 321 of file swscale_internal.h.
Referenced by ff_yuv2rgb_c_init_tables(), and sws_freeContext().