| Index: source/libvpx/vp9/common/vp9_idct.c
|
| ===================================================================
|
| --- source/libvpx/vp9/common/vp9_idct.c (revision 240950)
|
| +++ source/libvpx/vp9/common/vp9_idct.c (working copy)
|
| @@ -835,7 +835,8 @@
|
| ht.cols(temp_in, temp_out);
|
| for (j = 0; j < 16; ++j)
|
| dest[j * stride + i] = clip_pixel(ROUND_POWER_OF_TWO(temp_out[j], 6)
|
| - + dest[j * stride + i]); }
|
| + + dest[j * stride + i]);
|
| + }
|
| }
|
|
|
| void vp9_idct16x16_10_add_c(const int16_t *input, uint8_t *dest, int stride) {
|
| @@ -1276,7 +1277,7 @@
|
| idct32_1d(temp_in, temp_out);
|
| for (j = 0; j < 32; ++j)
|
| dest[j * stride + i] = clip_pixel(ROUND_POWER_OF_TWO(temp_out[j], 6)
|
| - + dest[j * stride + i]);
|
| + + dest[j * stride + i]);
|
| }
|
| }
|
|
|
| @@ -1344,43 +1345,37 @@
|
| // coefficients. Use eobs to decide what to do.
|
| // TODO(yunqingwang): "eobs = 1" case is also handled in vp9_short_idct8x8_c.
|
| // Combine that with code here.
|
| - if (eob) {
|
| - if (eob == 1)
|
| - // DC only DCT coefficient
|
| - vp9_idct8x8_1_add(input, dest, stride);
|
| - else if (eob <= 10)
|
| - vp9_idct8x8_10_add(input, dest, stride);
|
| - else
|
| - vp9_idct8x8_64_add(input, dest, stride);
|
| - }
|
| + if (eob == 1)
|
| + // DC only DCT coefficient
|
| + vp9_idct8x8_1_add(input, dest, stride);
|
| + else if (eob <= 10)
|
| + vp9_idct8x8_10_add(input, dest, stride);
|
| + else
|
| + vp9_idct8x8_64_add(input, dest, stride);
|
| }
|
|
|
| void vp9_idct16x16_add(const int16_t *input, uint8_t *dest, int stride,
|
| int eob) {
|
| /* The calculation can be simplified if there are not many non-zero dct
|
| * coefficients. Use eobs to separate different cases. */
|
| - if (eob) {
|
| - if (eob == 1)
|
| - /* DC only DCT coefficient. */
|
| - vp9_idct16x16_1_add(input, dest, stride);
|
| - else if (eob <= 10)
|
| - vp9_idct16x16_10_add(input, dest, stride);
|
| - else
|
| - vp9_idct16x16_256_add(input, dest, stride);
|
| - }
|
| + if (eob == 1)
|
| + /* DC only DCT coefficient. */
|
| + vp9_idct16x16_1_add(input, dest, stride);
|
| + else if (eob <= 10)
|
| + vp9_idct16x16_10_add(input, dest, stride);
|
| + else
|
| + vp9_idct16x16_256_add(input, dest, stride);
|
| }
|
|
|
| void vp9_idct32x32_add(const int16_t *input, uint8_t *dest, int stride,
|
| int eob) {
|
| - if (eob) {
|
| - if (eob == 1)
|
| - vp9_idct32x32_1_add(input, dest, stride);
|
| - else if (eob <= 34)
|
| - // non-zero coeff only in upper-left 8x8
|
| - vp9_idct32x32_34_add(input, dest, stride);
|
| - else
|
| - vp9_idct32x32_1024_add(input, dest, stride);
|
| - }
|
| + if (eob == 1)
|
| + vp9_idct32x32_1_add(input, dest, stride);
|
| + else if (eob <= 34)
|
| + // non-zero coeff only in upper-left 8x8
|
| + vp9_idct32x32_34_add(input, dest, stride);
|
| + else
|
| + vp9_idct32x32_1024_add(input, dest, stride);
|
| }
|
|
|
| // iht
|
| @@ -1397,9 +1392,7 @@
|
| if (tx_type == DCT_DCT) {
|
| vp9_idct8x8_add(input, dest, stride, eob);
|
| } else {
|
| - if (eob > 0) {
|
| - vp9_iht8x8_64_add(input, dest, stride, tx_type);
|
| - }
|
| + vp9_iht8x8_64_add(input, dest, stride, tx_type);
|
| }
|
| }
|
|
|
| @@ -1408,8 +1401,6 @@
|
| if (tx_type == DCT_DCT) {
|
| vp9_idct16x16_add(input, dest, stride, eob);
|
| } else {
|
| - if (eob > 0) {
|
| - vp9_iht16x16_256_add(input, dest, stride, tx_type);
|
| - }
|
| + vp9_iht16x16_256_add(input, dest, stride, tx_type);
|
| }
|
| }
|
|
|