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