comparison h264.c @ 8374:9000fd7c166e libavcodec

Skip non intra luma code when there is no coded luma. 0.7% speedup for the cathedral sample.
author michael
date Thu, 18 Dec 2008 01:10:51 +0000
parents 5917f39590e3
children e1b242224970
comparison
equal deleted inserted replaced
8373:5961d2deb35f 8374:9000fd7c166e
2523 idct_add (dest_y + block_offset[i], h->mb + i*16, linesize); 2523 idct_add (dest_y + block_offset[i], h->mb + i*16, linesize);
2524 else if(h->mb[i*16]) 2524 else if(h->mb[i*16])
2525 idct_dc_add(dest_y + block_offset[i], h->mb + i*16, linesize); 2525 idct_dc_add(dest_y + block_offset[i], h->mb + i*16, linesize);
2526 } 2526 }
2527 } 2527 }
2528 }else{ 2528 }else if(h->cbp&15){
2529 const int di = IS_8x8DCT(mb_type) ? 4 : 1; 2529 const int di = IS_8x8DCT(mb_type) ? 4 : 1;
2530 for(i=0; i<16; i+=di){ 2530 for(i=0; i<16; i+=di){
2531 int nnz = h->non_zero_count_cache[ scan8[i] ]; 2531 int nnz = h->non_zero_count_cache[ scan8[i] ];
2532 if(nnz){ 2532 if(nnz){
2533 if(nnz==1 && h->mb[i*16]) 2533 if(nnz==1 && h->mb[i*16])