comparison dct-test.c @ 9388:2313bf51945b libavcodec

cosmetics: Rename prn variable to prng (Pseudo Random Number Generator).
author diego
date Fri, 10 Apr 2009 17:23:38 +0000
parents b225f51903af
children 8d51b340393e
comparison
equal deleted inserted replaced
9387:cd207441ca56 9388:2313bf51945b
206 int err_inf, v; 206 int err_inf, v;
207 int64_t err2, ti, ti1, it1; 207 int64_t err2, ti, ti1, it1;
208 int64_t sysErr[64], sysErrMax=0; 208 int64_t sysErr[64], sysErrMax=0;
209 int maxout=0; 209 int maxout=0;
210 int blockSumErrMax=0, blockSumErr; 210 int blockSumErrMax=0, blockSumErr;
211 AVLFG prn; 211 AVLFG prng;
212 212
213 av_lfg_init(&prn, 1); 213 av_lfg_init(&prng, 1);
214 214
215 err_inf = 0; 215 err_inf = 0;
216 err2 = 0; 216 err2 = 0;
217 for(i=0; i<64; i++) sysErr[i]=0; 217 for(i=0; i<64; i++) sysErr[i]=0;
218 for(it=0;it<NB_ITS;it++) { 218 for(it=0;it<NB_ITS;it++) {
219 for(i=0;i<64;i++) 219 for(i=0;i<64;i++)
220 block1[i] = 0; 220 block1[i] = 0;
221 switch(test){ 221 switch(test){
222 case 0: 222 case 0:
223 for(i=0;i<64;i++) 223 for(i=0;i<64;i++)
224 block1[i] = (av_lfg_get(&prn) % 512) -256; 224 block1[i] = (av_lfg_get(&prng) % 512) -256;
225 if (is_idct){ 225 if (is_idct){
226 ff_ref_fdct(block1); 226 ff_ref_fdct(block1);
227 227
228 for(i=0;i<64;i++) 228 for(i=0;i<64;i++)
229 block1[i]>>=3; 229 block1[i]>>=3;
230 } 230 }
231 break; 231 break;
232 case 1:{ 232 case 1:{
233 int num = av_lfg_get(&prn) % 10 + 1; 233 int num = av_lfg_get(&prng) % 10 + 1;
234 for(i=0;i<num;i++) 234 for(i=0;i<num;i++)
235 block1[av_lfg_get(&prn) % 64] = av_lfg_get(&prn) % 512 -256; 235 block1[av_lfg_get(&prng) % 64] = av_lfg_get(&prng) % 512 -256;
236 }break; 236 }break;
237 case 2: 237 case 2:
238 block1[0] = av_lfg_get(&prn) % 4096 - 2048; 238 block1[0] = av_lfg_get(&prng) % 4096 - 2048;
239 block1[63]= (block1[0]&1)^1; 239 block1[63]= (block1[0]&1)^1;
240 break; 240 break;
241 } 241 }
242 242
243 #if 0 // simulate mismatch control 243 #if 0 // simulate mismatch control
333 for(i=0;i<64;i++) 333 for(i=0;i<64;i++)
334 block1[i] = 0; 334 block1[i] = 0;
335 switch(test){ 335 switch(test){
336 case 0: 336 case 0:
337 for(i=0;i<64;i++) 337 for(i=0;i<64;i++)
338 block1[i] = av_lfg_get(&prn) % 512 -256; 338 block1[i] = av_lfg_get(&prng) % 512 -256;
339 if (is_idct){ 339 if (is_idct){
340 ff_ref_fdct(block1); 340 ff_ref_fdct(block1);
341 341
342 for(i=0;i<64;i++) 342 for(i=0;i<64;i++)
343 block1[i]>>=3; 343 block1[i]>>=3;
344 } 344 }
345 break; 345 break;
346 case 1:{ 346 case 1:{
347 case 2: 347 case 2:
348 block1[0] = av_lfg_get(&prn) % 512 -256; 348 block1[0] = av_lfg_get(&prng) % 512 -256;
349 block1[1] = av_lfg_get(&prn) % 512 -256; 349 block1[1] = av_lfg_get(&prng) % 512 -256;
350 block1[2] = av_lfg_get(&prn) % 512 -256; 350 block1[2] = av_lfg_get(&prng) % 512 -256;
351 block1[3] = av_lfg_get(&prn) % 512 -256; 351 block1[3] = av_lfg_get(&prng) % 512 -256;
352 }break; 352 }break;
353 } 353 }
354 354
355 if (form == MMX_PERM) { 355 if (form == MMX_PERM) {
356 for(i=0;i<64;i++) 356 for(i=0;i<64;i++)
470 static void idct248_error(const char *name, 470 static void idct248_error(const char *name,
471 void (*idct248_put)(uint8_t *dest, int line_size, int16_t *block)) 471 void (*idct248_put)(uint8_t *dest, int line_size, int16_t *block))
472 { 472 {
473 int it, i, it1, ti, ti1, err_max, v; 473 int it, i, it1, ti, ti1, err_max, v;
474 474
475 AVLFG prn; 475 AVLFG prng;
476 476
477 av_lfg_init(&prn, 1); 477 av_lfg_init(&prng, 1);
478 478
479 /* just one test to see if code is correct (precision is less 479 /* just one test to see if code is correct (precision is less
480 important here) */ 480 important here) */
481 err_max = 0; 481 err_max = 0;
482 for(it=0;it<NB_ITS;it++) { 482 for(it=0;it<NB_ITS;it++) {
483 483
484 /* XXX: use forward transform to generate values */ 484 /* XXX: use forward transform to generate values */
485 for(i=0;i<64;i++) 485 for(i=0;i<64;i++)
486 block1[i] = av_lfg_get(&prn) % 256 - 128; 486 block1[i] = av_lfg_get(&prng) % 256 - 128;
487 block1[0] += 1024; 487 block1[0] += 1024;
488 488
489 for(i=0; i<64; i++) 489 for(i=0; i<64; i++)
490 block[i]= block1[i]; 490 block[i]= block1[i];
491 idct248_ref(img_dest1, 8, block); 491 idct248_ref(img_dest1, 8, block);