Document some of SwsContext.

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30328 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
ramiro 2010-01-16 19:04:55 +00:00
parent 14fe9544f9
commit 3c8de6d006
1 changed files with 18 additions and 11 deletions

View File

@ -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;