VP8: Unroll decoding segment update

This commit is contained in:
David Conrad 2010-07-24 22:44:31 -04:00 committed by Michael Niedermayer
parent ba3830e8a3
commit 748f921ad1
1 changed files with 4 additions and 3 deletions

View File

@ -627,9 +627,10 @@ void decode_mb_mode(VP8Context *s, VP8Macroblock *mb, int mb_x, int mb_y, uint8_
{
VP56RangeCoder *c = &s->c;
if (s->segmentation.update_map)
*segment = vp8_rac_get_tree(c, vp8_segmentid_tree, s->prob->segmentid);
else
if (s->segmentation.update_map) {
int bit = vp56_rac_get_prob(c, s->prob->segmentid[0]);
*segment = vp56_rac_get_prob(c, s->prob->segmentid[1+bit]) + 2*bit;
} else
*segment = ref ? *ref : *segment;
s->segment = *segment;