comparison error_resilience.c @ 853:eacc2dd8fd9d libavcodec

* using DSPContext - so each codec could use its local (sub)set of CPU extension
author kabi
date Mon, 11 Nov 2002 09:40:17 +0000
parents f3c369b8ddca
children 22ee74da2cd3
comparison
equal deleted inserted replaced
852:c01c98206ee6 853:eacc2dd8fd9d
329 s->mv_dir = MV_DIR_FORWARD; 329 s->mv_dir = MV_DIR_FORWARD;
330 s->mb_intra=0; 330 s->mb_intra=0;
331 s->mv_type = MV_TYPE_16X16; 331 s->mv_type = MV_TYPE_16X16;
332 s->mb_skiped=0; 332 s->mb_skiped=0;
333 333
334 clear_blocks(s->block[0]); 334 s->dsp.clear_blocks(s->block[0]);
335 335
336 s->mb_x= mb_x; 336 s->mb_x= mb_x;
337 s->mb_y= mb_y; 337 s->mb_y= mb_y;
338 s->mv[0][0][0]= 0; 338 s->mv[0][0][0]= 0;
339 s->mv[0][0][1]= 0; 339 s->mv[0][0][1]= 0;
456 s->mv_dir = MV_DIR_FORWARD; 456 s->mv_dir = MV_DIR_FORWARD;
457 s->mb_intra=0; 457 s->mb_intra=0;
458 s->mv_type = MV_TYPE_16X16; 458 s->mv_type = MV_TYPE_16X16;
459 s->mb_skiped=0; 459 s->mb_skiped=0;
460 460
461 clear_blocks(s->block[0]); 461 s->dsp.clear_blocks(s->block[0]);
462 462
463 s->mb_x= mb_x; 463 s->mb_x= mb_x;
464 s->mb_y= mb_y; 464 s->mb_y= mb_y;
465 for(j=0; j<pred_count; j++){ 465 for(j=0; j<pred_count; j++){
466 int score=0; 466 int score=0;
557 557
558 if(s->pict_type==I_TYPE){ 558 if(s->pict_type==I_TYPE){
559 UINT8 *mb_ptr = s->current_picture[0] + mb_x*16 + mb_y*16*s->linesize; 559 UINT8 *mb_ptr = s->current_picture[0] + mb_x*16 + mb_y*16*s->linesize;
560 UINT8 *last_mb_ptr= s->last_picture [0] + mb_x*16 + mb_y*16*s->linesize; 560 UINT8 *last_mb_ptr= s->last_picture [0] + mb_x*16 + mb_y*16*s->linesize;
561 561
562 is_intra_likely += pix_abs16x16(last_mb_ptr, mb_ptr , s->linesize); 562 is_intra_likely += s->dsp.pix_abs16x16(last_mb_ptr, mb_ptr , s->linesize);
563 is_intra_likely -= pix_abs16x16(last_mb_ptr, last_mb_ptr+s->linesize*16, s->linesize); 563 is_intra_likely -= s->dsp.pix_abs16x16(last_mb_ptr, last_mb_ptr+s->linesize*16, s->linesize);
564 }else{ 564 }else{
565 if(s->mbintra_table[i]) //HACK (this is allways inited but we should use mb_type[]) 565 if(s->mbintra_table[i]) //HACK (this is allways inited but we should use mb_type[])
566 is_intra_likely++; 566 is_intra_likely++;
567 else 567 else
568 is_intra_likely--; 568 is_intra_likely--;
736 s->mv_type = MV_TYPE_16X16; 736 s->mv_type = MV_TYPE_16X16;
737 s->mv[0][0][0] = s->motion_val[ mb_x*2+1 + (mb_y*2+1)*s->block_wrap[0] ][0]; 737 s->mv[0][0][0] = s->motion_val[ mb_x*2+1 + (mb_y*2+1)*s->block_wrap[0] ][0];
738 s->mv[0][0][1] = s->motion_val[ mb_x*2+1 + (mb_y*2+1)*s->block_wrap[0] ][1]; 738 s->mv[0][0][1] = s->motion_val[ mb_x*2+1 + (mb_y*2+1)*s->block_wrap[0] ][1];
739 } 739 }
740 740
741 clear_blocks(s->block[0]); 741 s->dsp.clear_blocks(s->block[0]);
742 742
743 s->mb_x= mb_x; 743 s->mb_x= mb_x;
744 s->mb_y= mb_y; 744 s->mb_y= mb_y;
745 MPV_decode_mb(s, s->block); 745 MPV_decode_mb(s, s->block);
746 } 746 }
776 s->mv[0][0][0]= 0; 776 s->mv[0][0][0]= 0;
777 s->mv[0][0][1]= 0; 777 s->mv[0][0][1]= 0;
778 s->mv[1][0][0]= 0; 778 s->mv[1][0][0]= 0;
779 s->mv[1][0][1]= 0; 779 s->mv[1][0][1]= 0;
780 } 780 }
781 781
782 clear_blocks(s->block[0]); 782 s->dsp.clear_blocks(s->block[0]);
783 s->mb_x= mb_x; 783 s->mb_x= mb_x;
784 s->mb_y= mb_y; 784 s->mb_y= mb_y;
785 MPV_decode_mb(s, s->block); 785 MPV_decode_mb(s, s->block);
786 } 786 }
787 } 787 }