# HG changeset patch # User michael # Date 1116321529 0 # Node ID fb8f26fc57eb7fd27eb45e59ed461316aad932c5 # Parent a24b82b5a704c60638cf2447c45ae0f2c4fcce29 remove permutation done to quant tables and then undone during idct move permutation from idct to unpack_vlcs diff -r a24b82b5a704 -r fb8f26fc57eb vp3.c --- a/vp3.c Tue May 17 09:11:48 2005 +0000 +++ b/vp3.c Tue May 17 09:18:49 2005 +0000 @@ -886,7 +886,7 @@ * the dequantization phase */ for (i = 1; i < 64; i++) { - j = zigzag_index[i]; + j = i; s->intra_y_dequant[j] = s->coded_intra_y_dequant[i] * ac_scale_factor / 100; if (s->intra_y_dequant[j] < MIN_DEQUANT_VAL) @@ -1659,7 +1659,7 @@ if (!eob_run) { fragment->coeff_count += zero_run; if (fragment->coeff_count < 64) - fragment->coeffs[fragment->coeff_count++] = coeff; + fragment->coeffs[dezigzag_index[fragment->coeff_count++]] = coeff; debug_vlc(" fragment %d coeff = %d\n", s->coded_fragment_list[i], fragment->coeffs[coeff_index]); } else { diff -r a24b82b5a704 -r fb8f26fc57eb vp3dsp.c --- a/vp3dsp.c Tue May 17 09:11:48 2005 +0000 +++ b/vp3dsp.c Tue May 17 09:18:49 2005 +0000 @@ -53,11 +53,10 @@ int32_t t1, t2; int i, j; - + /* de-zigzag and dequantize */ for (i = 0; i < coeff_count; i++) { - j = dezigzag_index[i]; - dequantized_data[j] = dequant_matrix[i] * input_data[i]; + dequantized_data[i] = dequant_matrix[i] * input_data[i]; } /* Inverse DCT on the rows now */