diff options
-rw-r--r-- | libavcodec/h264.c | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/libavcodec/h264.c b/libavcodec/h264.c index c0129e2904..b979f36638 100644 --- a/libavcodec/h264.c +++ b/libavcodec/h264.c @@ -5291,12 +5291,10 @@ static int decode_cabac_mb_intra4x4_pred_mode( H264Context *h, int pred_mode ) { if( get_cabac( &h->cabac, &h->cabac_state[68] ) ) return pred_mode; - if( get_cabac( &h->cabac, &h->cabac_state[69] ) ) - mode += 1; - if( get_cabac( &h->cabac, &h->cabac_state[69] ) ) - mode += 2; - if( get_cabac( &h->cabac, &h->cabac_state[69] ) ) - mode += 4; + mode += 1 * get_cabac( &h->cabac, &h->cabac_state[69] ); + mode += 2 * get_cabac( &h->cabac, &h->cabac_state[69] ); + mode += 4 * get_cabac( &h->cabac, &h->cabac_state[69] ); + if( mode >= pred_mode ) return mode + 1; else |