Mercurial > mplayer.hg
comparison postproc/swscale.h @ 4554:16fdb694cf13
swScale internally uses yuv2rgb now if possible
author | michael |
---|---|
date | Wed, 06 Feb 2002 20:52:14 +0000 |
parents | 9512d6832b38 |
children | eb87391a5292 |
comparison
equal
deleted
inserted
replaced
4553:bab3aac84143 | 4554:16fdb694cf13 |
---|---|
35 #define SWS_PRINT_INFO 0x1000 | 35 #define SWS_PRINT_INFO 0x1000 |
36 | 36 |
37 #define SWS_MAX_REDUCE_CUTOFF 0.002 | 37 #define SWS_MAX_REDUCE_CUTOFF 0.002 |
38 | 38 |
39 /* this struct should be aligned on at least 32-byte boundary */ | 39 /* this struct should be aligned on at least 32-byte boundary */ |
40 typedef struct{ | 40 typedef struct SwsContext{ |
41 int srcW, srcH, dstW, dstH; | 41 int srcW, srcH, dstW, dstH; |
42 int chrSrcW, chrSrcH, chrDstW, chrDstH; | 42 int chrSrcW, chrSrcH, chrDstW, chrDstH; |
43 int lumXInc, chrXInc; | 43 int lumXInc, chrXInc; |
44 int lumYInc, chrYInc; | 44 int lumYInc, chrYInc; |
45 int dstFormat, srcFormat; | 45 int dstFormat, srcFormat; |
76 int lastInChrBuf; | 76 int lastInChrBuf; |
77 int lumBufIndex; | 77 int lumBufIndex; |
78 int chrBufIndex; | 78 int chrBufIndex; |
79 int dstY; | 79 int dstY; |
80 int flags; | 80 int flags; |
81 | |
82 void (*swScale)(struct SwsContext *context, uint8_t* src[], int srcStride[], int srcSliceY, | |
83 int srcSliceH, uint8_t* dst[], int dstStride[]); | |
81 } SwsContext; | 84 } SwsContext; |
82 //FIXME check init (where 0) | 85 //FIXME check init (where 0) |
83 | 86 |
84 // when used for filters they must have an odd number of elements | 87 // when used for filters they must have an odd number of elements |
85 // coeffs cannot be shared between vectors | 88 // coeffs cannot be shared between vectors |
114 | 117 |
115 SwsContext *getSwsContextFromCmdLine(int srcW, int srcH, int srcFormat, int dstW, int dstH, int dstFormat); | 118 SwsContext *getSwsContextFromCmdLine(int srcW, int srcH, int srcFormat, int dstW, int dstH, int dstFormat); |
116 SwsContext *getSwsContext(int srcW, int srcH, int srcFormat, int dstW, int dstH, int dstFormat, int flags, | 119 SwsContext *getSwsContext(int srcW, int srcH, int srcFormat, int dstW, int dstH, int dstFormat, int flags, |
117 SwsFilter *srcFilter, SwsFilter *dstFilter); | 120 SwsFilter *srcFilter, SwsFilter *dstFilter); |
118 | 121 |
119 extern void (*swScale)(SwsContext *context, uint8_t* src[], int srcStride[], int srcSliceY, | |
120 int srcSliceH, uint8_t* dst[], int dstStride[]); | |
121 | |
122 SwsVector *getGaussianVec(double variance, double quality); | 122 SwsVector *getGaussianVec(double variance, double quality); |
123 SwsVector *getConstVec(double c, int length); | 123 SwsVector *getConstVec(double c, int length); |
124 SwsVector *getIdentityVec(void); | 124 SwsVector *getIdentityVec(void); |
125 void scaleVec(SwsVector *a, double scalar); | 125 void scaleVec(SwsVector *a, double scalar); |
126 void normalizeVec(SwsVector *a, double height); | 126 void normalizeVec(SwsVector *a, double height); |