| @@ -67,27 +67,27 @@ static const int token_to_counttoken[MAX_ENTROPY_TOKENS] = { · 66 unmodified lines |
| 67 | TWO_TOKEN, TWO_TOKEN, TWO_TOKEN, DCT_EOB_MODEL_TOKEN | 67 | TWO_TOKEN, TWO_TOKEN, TWO_TOKEN, DCT_EOB_MODEL_TOKEN |
| 68 | }; | 68 | }; |
| 69 | | 69 | |
| 70 | #define INCREMENT_COUNT(token) \ | 70 | #define INCREMENT_COUNT(token) \ |
| 71 | do { \ | 71 | do { \ |
| 72 | if (!cm->frame_parallel_decoding_mode) { \ | 72 | if (!cm->frame_parallel_decoding_mode) \ |
| 73 | ++coef_counts[band][pt][token_to_counttoken[token]]; \ | 73 | ++coef_counts[band][pt][token_to_counttoken[token]]; \ |
| 74 | } \ | 74 | } while (0) |
| 75 | } while (0); | 75 | |
| 76 | | 76 | |
| 77 | #define WRITE_COEF_CONTINUE(val, token) \ | 77 | #define WRITE_COEF_CONTINUE(val, token) \ |
| 78 | { \ | 78 | { \ |
| 79 | dqcoeff_ptr[scan[c]] = vp9_read_and_apply_sign(r, val) * \ | 79 | dqcoeff_ptr[scan[c]] = (vp9_read_bit(r) ? -val : val) * \ |
| 80 | dq[c > 0] / (1 + (tx_size == TX_32X32)); \ | 80 | dq[c > 0] / (1 + (tx_size == TX_32X32)); \ |
| 81 | INCREMENT_COUNT(token); \ | 81 | INCREMENT_COUNT(token); \ |
| 82 | token_cache[scan[c]] = vp9_pt_energy_class[token]; \ | 82 | token_cache[scan[c]] = vp9_pt_energy_class[token]; \ |
| 83 | c++; \ | 83 | ++c; \ |
| 84 | continue; \ | 84 | continue; \ |
| 85 | } | 85 | } |
| 86 | | 86 | |
| 87 | #define ADJUST_COEF(prob, bits_count) \ | 87 | #define ADJUST_COEF(prob, bits_count) \ |
| 88 | do { \ | 88 | do { \ |
| 89 | val += (vp9_read(r, prob) << bits_count); \ | 89 | val += (vp9_read(r, prob) << bits_count); \ |
| 90 | } while (0); | 90 | } while (0) |
| 91 | | 91 | |
| 92 | static int decode_coefs(VP9_COMMON *cm, const MACROBLOCKD *xd, | 92 | static int decode_coefs(VP9_COMMON *cm, const MACROBLOCKD *xd, |
| 93 | vp9_reader *r, int block_idx, | 93 | vp9_reader *r, int block_idx, |
| @@ -201,10 +201,10 @@ static int decode_coefs(VP9_COMMON *cm, const MACROBLOCKD *xd, · 107 unmodified lines |
| 201 | } | 201 | } |
| 202 | val = 0; | 202 | val = 0; |
| 203 | cat6 = cat6_prob; | 203 | cat6 = cat6_prob; |
| 204 | while (*cat6) { | 204 | while (*cat6) |
| 205 | val = (val << 1) | vp9_read(r, *cat6++); | 205 | val = (val << 1) | vp9_read(r, *cat6++); |
| 206 | } | | |
| 207 | val += CAT6_MIN_VAL; | 206 | val += CAT6_MIN_VAL; |
| | 207 | |
| 208 | WRITE_COEF_CONTINUE(val, DCT_VAL_CATEGORY6); | 208 | WRITE_COEF_CONTINUE(val, DCT_VAL_CATEGORY6); |
| 209 | } | 209 | } |
| 210 | | 210 | |