From 9556124c97edac5093f75286f596486102cb6f77 Mon Sep 17 00:00:00 2001 From: Ramiro Polla Date: Sat, 16 Jan 2010 19:04:55 +0000 Subject: [PATCH] Document some of SwsContext. Originally committed as revision 30328 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale --- libswscale/swscale_internal.h | 29 ++++++++++++++++++----------- 1 file changed, 18 insertions(+), 11 deletions(-) diff --git a/libswscale/swscale_internal.h b/libswscale/swscale_internal.h index 5efaee7e00..5aae3b9c1e 100644 --- a/libswscale/swscale_internal.h +++ b/libswscale/swscale_internal.h @@ -75,16 +75,22 @@ typedef struct SwsContext { * sws_scale() wrapper so they can be freely modified here. */ SwsFunc swScale; - int srcW, srcH, dstH; - int chrSrcW, chrSrcH, chrDstW, chrDstH; + 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, chrXInc; int lumYInc, chrYInc; - enum PixelFormat dstFormat, srcFormat; ///< format 4:2:0 type is always YV12 + enum PixelFormat dstFormat; ///< Destination pixel format. + enum PixelFormat srcFormat; ///< Source pixel format. int chrSrcHSubSample, chrSrcVSubSample; int chrDstHSubSample, chrDstVSubSample; int vChrDrop; int sliceDir; - double param[2]; + double param[2]; ///< Input parameters for scaling algorithms that need them. uint32_t pal_yuv[256]; uint32_t pal_rgb[256]; @@ -110,10 +116,10 @@ typedef struct SwsContext { int vLumBufSize; int vChrBufSize; - int lumMmx2FilterCodeSize; - int chrMmx2FilterCodeSize; - uint8_t *lumMmx2FilterCode; - uint8_t *chrMmx2FilterCode; + 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; @@ -121,8 +127,8 @@ typedef struct SwsContext { int lastInChrBuf; int lumBufIndex; int chrBufIndex; - int dstY; - int flags; + 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; // pointer to the yuv->rgb table start so it can be freed() uint8_t * table_rV[256]; uint8_t * table_gU[256]; @@ -133,7 +139,8 @@ typedef struct SwsContext { int contrast, brightness, saturation; // for sws_getColorspaceDetails int srcColorspaceTable[4]; int dstColorspaceTable[4]; - int srcRange, dstRange; + 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 yuv2rgb_y_offset; int yuv2rgb_y_coeff; int yuv2rgb_v2r_coeff;