Mercurial > libavcodec.hg
comparison h264_cabac.c @ 11186:90de754f70d6 libavcodec
2 cpu cycles faster context calculation for decode_cabac_intra_mb_type()
author | michael |
---|---|
date | Tue, 16 Feb 2010 02:51:37 +0000 |
parents | 6011626999a1 |
children | afc60af2d008 |
comparison
equal
deleted
inserted
replaced
11185:6011626999a1 | 11186:90de754f70d6 |
---|---|
721 uint8_t *state= &h->cabac_state[ctx_base]; | 721 uint8_t *state= &h->cabac_state[ctx_base]; |
722 int mb_type; | 722 int mb_type; |
723 | 723 |
724 if(intra_slice){ | 724 if(intra_slice){ |
725 int ctx=0; | 725 int ctx=0; |
726 if( h->left_type[0] && !IS_INTRA4x4(h->left_type[0])) | 726 if( h->left_type[0] & (MB_TYPE_INTRA16x16|MB_TYPE_INTRA_PCM)) |
727 ctx++; | 727 ctx++; |
728 if( h->top_type && !IS_INTRA4x4(h->top_type) ) | 728 if( h->top_type & (MB_TYPE_INTRA16x16|MB_TYPE_INTRA_PCM)) |
729 ctx++; | 729 ctx++; |
730 if( get_cabac_noinline( &h->cabac, &state[ctx] ) == 0 ) | 730 if( get_cabac_noinline( &h->cabac, &state[ctx] ) == 0 ) |
731 return 0; /* I4x4 */ | 731 return 0; /* I4x4 */ |
732 state += 2; | 732 state += 2; |
733 }else{ | 733 }else{ |