Mercurial > libavcodec.hg
comparison cavsdsp.c @ 4176:23da44e8fd05 libavcodec
rename cropTbl -> ff_cropTbl
author | mru |
---|---|
date | Sun, 12 Nov 2006 20:08:09 +0000 |
parents | c8c591fe26f8 |
children | a96d905dcbaa |
comparison
equal
deleted
inserted
replaced
4175:b3328ed50a5e | 4176:23da44e8fd05 |
---|---|
182 ****************************************************************************/ | 182 ****************************************************************************/ |
183 | 183 |
184 static void cavs_idct8_add_c(uint8_t *dst, DCTELEM *block, int stride) { | 184 static void cavs_idct8_add_c(uint8_t *dst, DCTELEM *block, int stride) { |
185 int i; | 185 int i; |
186 DCTELEM (*src)[8] = (DCTELEM(*)[8])block; | 186 DCTELEM (*src)[8] = (DCTELEM(*)[8])block; |
187 uint8_t *cm = cropTbl + MAX_NEG_CROP; | 187 uint8_t *cm = ff_cropTbl + MAX_NEG_CROP; |
188 | 188 |
189 src[0][0] += 8; | 189 src[0][0] += 8; |
190 | 190 |
191 for( i = 0; i < 8; i++ ) { | 191 for( i = 0; i < 8; i++ ) { |
192 const int a0 = 3*src[i][1] - (src[i][7]<<1); | 192 const int a0 = 3*src[i][1] - (src[i][7]<<1); |
258 ****************************************************************************/ | 258 ****************************************************************************/ |
259 | 259 |
260 #define CAVS_SUBPIX(OPNAME, OP, NAME, A, B, C, D, E, F) \ | 260 #define CAVS_SUBPIX(OPNAME, OP, NAME, A, B, C, D, E, F) \ |
261 static void OPNAME ## cavs_filt8_h_ ## NAME(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\ | 261 static void OPNAME ## cavs_filt8_h_ ## NAME(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\ |
262 const int h=8;\ | 262 const int h=8;\ |
263 uint8_t *cm = cropTbl + MAX_NEG_CROP;\ | 263 uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;\ |
264 int i;\ | 264 int i;\ |
265 for(i=0; i<h; i++)\ | 265 for(i=0; i<h; i++)\ |
266 {\ | 266 {\ |
267 OP(dst[0], A*src[-2] + B*src[-1] + C*src[0] + D*src[1] + E*src[2] + F*src[3]);\ | 267 OP(dst[0], A*src[-2] + B*src[-1] + C*src[0] + D*src[1] + E*src[2] + F*src[3]);\ |
268 OP(dst[1], A*src[-1] + B*src[ 0] + C*src[1] + D*src[2] + E*src[3] + F*src[4]);\ | 268 OP(dst[1], A*src[-1] + B*src[ 0] + C*src[1] + D*src[2] + E*src[3] + F*src[4]);\ |
277 }\ | 277 }\ |
278 }\ | 278 }\ |
279 \ | 279 \ |
280 static void OPNAME ## cavs_filt8_v_ ## NAME(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\ | 280 static void OPNAME ## cavs_filt8_v_ ## NAME(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\ |
281 const int w=8;\ | 281 const int w=8;\ |
282 uint8_t *cm = cropTbl + MAX_NEG_CROP;\ | 282 uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;\ |
283 int i;\ | 283 int i;\ |
284 for(i=0; i<w; i++)\ | 284 for(i=0; i<w; i++)\ |
285 {\ | 285 {\ |
286 const int srcB= src[-2*srcStride];\ | 286 const int srcB= src[-2*srcStride];\ |
287 const int srcA= src[-1*srcStride];\ | 287 const int srcA= src[-1*srcStride];\ |
331 static void OPNAME ## cavs_filt8_hv_ ## NAME(uint8_t *dst, uint8_t *src1, uint8_t *src2, int dstStride, int srcStride){\ | 331 static void OPNAME ## cavs_filt8_hv_ ## NAME(uint8_t *dst, uint8_t *src1, uint8_t *src2, int dstStride, int srcStride){\ |
332 int16_t temp[8*(8+5)];\ | 332 int16_t temp[8*(8+5)];\ |
333 int16_t *tmp = temp;\ | 333 int16_t *tmp = temp;\ |
334 const int h=8;\ | 334 const int h=8;\ |
335 const int w=8;\ | 335 const int w=8;\ |
336 uint8_t *cm = cropTbl + MAX_NEG_CROP;\ | 336 uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;\ |
337 int i;\ | 337 int i;\ |
338 src1 -= 2*srcStride;\ | 338 src1 -= 2*srcStride;\ |
339 for(i=0; i<h+5; i++)\ | 339 for(i=0; i<h+5; i++)\ |
340 {\ | 340 {\ |
341 tmp[0]= AH*src1[-2] + BH*src1[-1] + CH*src1[0] + DH*src1[1] + EH*src1[2] + FH*src1[3];\ | 341 tmp[0]= AH*src1[-2] + BH*src1[-1] + CH*src1[0] + DH*src1[1] + EH*src1[2] + FH*src1[3];\ |