comparison h264_cavlc.c @ 11325:c4c8c8c426eb libavcodec

Remove some unneeded fill_rectangle() for 16x16 blocks.
author michael
date Sun, 28 Feb 2010 23:54:24 +0000
parents 5e583a785508
children 70472d1d2524
comparison
equal deleted inserted replaced
11324:5cc6cb5167d8 11325:c4c8c8c426eb
787 if(val >= h->ref_count[list]){ 787 if(val >= h->ref_count[list]){
788 av_log(h->s.avctx, AV_LOG_ERROR, "ref %u overflow\n", val); 788 av_log(h->s.avctx, AV_LOG_ERROR, "ref %u overflow\n", val);
789 return -1; 789 return -1;
790 } 790 }
791 } 791 }
792 }else
793 val= LIST_NOT_USED&0xFF;
794 fill_rectangle(&h->ref_cache[list][ scan8[0] ], 4, 4, 8, val, 1); 792 fill_rectangle(&h->ref_cache[list][ scan8[0] ], 4, 4, 8, val, 1);
793 }
795 } 794 }
796 for(list=0; list<h->list_count; list++){ 795 for(list=0; list<h->list_count; list++){
797 unsigned int val;
798 if(IS_DIR(mb_type, 0, list)){ 796 if(IS_DIR(mb_type, 0, list)){
799 pred_motion(h, 0, 4, list, h->ref_cache[list][ scan8[0] ], &mx, &my); 797 pred_motion(h, 0, 4, list, h->ref_cache[list][ scan8[0] ], &mx, &my);
800 mx += get_se_golomb(&s->gb); 798 mx += get_se_golomb(&s->gb);
801 my += get_se_golomb(&s->gb); 799 my += get_se_golomb(&s->gb);
802 tprintf(s->avctx, "final mv:%d %d\n", mx, my); 800 tprintf(s->avctx, "final mv:%d %d\n", mx, my);
803 801
804 val= pack16to32(mx,my); 802 fill_rectangle(h->mv_cache[list][ scan8[0] ], 4, 4, 8, pack16to32(mx,my), 4);
805 }else 803 }
806 val=0;
807 fill_rectangle(h->mv_cache[list][ scan8[0] ], 4, 4, 8, val, 4);
808 } 804 }
809 } 805 }
810 else if(IS_16X8(mb_type)){ 806 else if(IS_16X8(mb_type)){
811 for(list=0; list<h->list_count; list++){ 807 for(list=0; list<h->list_count; list++){
812 for(i=0; i<2; i++){ 808 for(i=0; i<2; i++){