Mercurial > libavcodec.hg
diff msmpeg4.c @ 21:20e680e7a490 libavcodec
get_bits() specialization, gives 4\speedup
author | arpi_esp |
---|---|
date | Sat, 04 Aug 2001 00:46:50 +0000 |
parents | 1d3ac9654178 |
children | 2f603eb2f23d |
line wrap: on
line diff
--- a/msmpeg4.c Fri Aug 03 23:09:15 2001 +0000 +++ b/msmpeg4.c Sat Aug 04 00:46:50 2001 +0000 @@ -601,11 +601,11 @@ static int decode012(GetBitContext *gb) { int n; - n = get_bits(gb, 1); + n = get_bits1(gb); if (n == 0) return 0; else - return get_bits(gb, 1) + 1; + return get_bits1(gb) + 1; } int msmpeg4_decode_picture_header(MpegEncContext * s) @@ -629,17 +629,17 @@ s->rl_chroma_table_index = decode012(&s->gb); s->rl_table_index = decode012(&s->gb); - s->dc_table_index = get_bits(&s->gb, 1); + s->dc_table_index = get_bits1(&s->gb); s->no_rounding = 1; } else { - s->use_skip_mb_code = get_bits(&s->gb, 1); + s->use_skip_mb_code = get_bits1(&s->gb); s->rl_table_index = decode012(&s->gb); s->rl_chroma_table_index = s->rl_table_index; - s->dc_table_index = get_bits(&s->gb, 1); + s->dc_table_index = get_bits1(&s->gb); - s->mv_table_index = get_bits(&s->gb, 1); + s->mv_table_index = get_bits1(&s->gb); s->no_rounding ^= 1; } #ifdef DEBUG @@ -685,7 +685,7 @@ if (s->pict_type == P_TYPE) { set_stat(ST_INTER_MB); if (s->use_skip_mb_code) { - if (get_bits(&s->gb, 1)) { + if (get_bits1(&s->gb)) { /* skip mb */ s->mb_intra = 0; for(i=0;i<6;i++) @@ -739,7 +739,7 @@ s->mv[0][0][1] = my; } else { set_stat(ST_INTRA_MB); - s->ac_pred = get_bits(&s->gb, 1); + s->ac_pred = get_bits1(&s->gb); } for (i = 0; i < 6; i++) { @@ -801,10 +801,10 @@ return -1; if (code == rl->n) { /* escape */ - if (get_bits(&s->gb, 1) == 0) { - if (get_bits(&s->gb, 1) == 0) { + if (get_bits1(&s->gb) == 0) { + if (get_bits1(&s->gb) == 0) { /* third escape */ - last = get_bits(&s->gb, 1); + last = get_bits1(&s->gb); run = get_bits(&s->gb, 6); level = get_bits(&s->gb, 8); level = (level << 24) >> 24; /* sign extend */ @@ -817,7 +817,7 @@ level = rl->table_level[code]; last = code >= rl->last; run += rl->max_run[last][level] + run_diff; - if (get_bits(&s->gb, 1)) + if (get_bits1(&s->gb)) level = -level; } } else { @@ -829,14 +829,14 @@ level = rl->table_level[code]; last = code >= rl->last; level += rl->max_level[last][run]; - if (get_bits(&s->gb, 1)) + if (get_bits1(&s->gb)) level = -level; } } else { run = rl->table_run[code]; level = rl->table_level[code]; last = code >= rl->last; - if (get_bits(&s->gb, 1)) + if (get_bits1(&s->gb)) level = -level; } i += run; @@ -875,10 +875,10 @@ if (level == DC_MAX) { level = get_bits(&s->gb, 8); - if (get_bits(&s->gb, 1)) + if (get_bits1(&s->gb)) level = -level; } else if (level != 0) { - if (get_bits(&s->gb, 1)) + if (get_bits1(&s->gb)) level = -level; }