Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(35)

Side by Side Diff: source/libvpx/vpx_dsp/inv_txfm.c

Issue 1328593002: libvpx: Pull from upstream (Closed) Base URL: https://chromium.googlesource.com/chromium/deps/libvpx.git@master
Patch Set: Created 5 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « source/libvpx/vp9/encoder/vp9_temporal_filter.c ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (c) 2015 The WebM project authors. All Rights Reserved. 2 * Copyright (c) 2015 The WebM project authors. All Rights Reserved.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license 4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source 5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found 6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may 7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree. 8 * be found in the AUTHORS file in the root of the source tree.
9 */ 9 */
10 10
(...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after
163 step1[3] = input[6]; 163 step1[3] = input[6];
164 temp1 = input[1] * cospi_28_64 - input[7] * cospi_4_64; 164 temp1 = input[1] * cospi_28_64 - input[7] * cospi_4_64;
165 temp2 = input[1] * cospi_4_64 + input[7] * cospi_28_64; 165 temp2 = input[1] * cospi_4_64 + input[7] * cospi_28_64;
166 step1[4] = WRAPLOW(dct_const_round_shift(temp1), 8); 166 step1[4] = WRAPLOW(dct_const_round_shift(temp1), 8);
167 step1[7] = WRAPLOW(dct_const_round_shift(temp2), 8); 167 step1[7] = WRAPLOW(dct_const_round_shift(temp2), 8);
168 temp1 = input[5] * cospi_12_64 - input[3] * cospi_20_64; 168 temp1 = input[5] * cospi_12_64 - input[3] * cospi_20_64;
169 temp2 = input[5] * cospi_20_64 + input[3] * cospi_12_64; 169 temp2 = input[5] * cospi_20_64 + input[3] * cospi_12_64;
170 step1[5] = WRAPLOW(dct_const_round_shift(temp1), 8); 170 step1[5] = WRAPLOW(dct_const_round_shift(temp1), 8);
171 step1[6] = WRAPLOW(dct_const_round_shift(temp2), 8); 171 step1[6] = WRAPLOW(dct_const_round_shift(temp2), 8);
172 172
173 // stage 2 & stage 3 - even half 173 // stage 2
174 idct4_c(step1, step1); 174 temp1 = (step1[0] + step1[2]) * cospi_16_64;
175 175 temp2 = (step1[0] - step1[2]) * cospi_16_64;
176 // stage 2 - odd half 176 step2[0] = WRAPLOW(dct_const_round_shift(temp1), 8);
177 step2[1] = WRAPLOW(dct_const_round_shift(temp2), 8);
178 temp1 = step1[1] * cospi_24_64 - step1[3] * cospi_8_64;
179 temp2 = step1[1] * cospi_8_64 + step1[3] * cospi_24_64;
180 step2[2] = WRAPLOW(dct_const_round_shift(temp1), 8);
181 step2[3] = WRAPLOW(dct_const_round_shift(temp2), 8);
177 step2[4] = WRAPLOW(step1[4] + step1[5], 8); 182 step2[4] = WRAPLOW(step1[4] + step1[5], 8);
178 step2[5] = WRAPLOW(step1[4] - step1[5], 8); 183 step2[5] = WRAPLOW(step1[4] - step1[5], 8);
179 step2[6] = WRAPLOW(-step1[6] + step1[7], 8); 184 step2[6] = WRAPLOW(-step1[6] + step1[7], 8);
180 step2[7] = WRAPLOW(step1[6] + step1[7], 8); 185 step2[7] = WRAPLOW(step1[6] + step1[7], 8);
181 186
182 // stage 3 -odd half 187 // stage 3
188 step1[0] = WRAPLOW(step2[0] + step2[3], 8);
189 step1[1] = WRAPLOW(step2[1] + step2[2], 8);
190 step1[2] = WRAPLOW(step2[1] - step2[2], 8);
191 step1[3] = WRAPLOW(step2[0] - step2[3], 8);
183 step1[4] = step2[4]; 192 step1[4] = step2[4];
184 temp1 = (step2[6] - step2[5]) * cospi_16_64; 193 temp1 = (step2[6] - step2[5]) * cospi_16_64;
185 temp2 = (step2[5] + step2[6]) * cospi_16_64; 194 temp2 = (step2[5] + step2[6]) * cospi_16_64;
186 step1[5] = WRAPLOW(dct_const_round_shift(temp1), 8); 195 step1[5] = WRAPLOW(dct_const_round_shift(temp1), 8);
187 step1[6] = WRAPLOW(dct_const_round_shift(temp2), 8); 196 step1[6] = WRAPLOW(dct_const_round_shift(temp2), 8);
188 step1[7] = step2[7]; 197 step1[7] = step2[7];
189 198
190 // stage 4 199 // stage 4
191 output[0] = WRAPLOW(step1[0] + step1[7], 8); 200 output[0] = WRAPLOW(step1[0] + step1[7], 8);
192 output[1] = WRAPLOW(step1[1] + step1[6], 8); 201 output[1] = WRAPLOW(step1[1] + step1[6], 8);
(...skipping 2275 matching lines...) Expand 10 before | Expand all | Expand 10 after
2468 out = WRAPLOW(highbd_dct_const_round_shift(out * cospi_16_64, bd), bd); 2477 out = WRAPLOW(highbd_dct_const_round_shift(out * cospi_16_64, bd), bd);
2469 a1 = ROUND_POWER_OF_TWO(out, 6); 2478 a1 = ROUND_POWER_OF_TWO(out, 6);
2470 2479
2471 for (j = 0; j < 32; ++j) { 2480 for (j = 0; j < 32; ++j) {
2472 for (i = 0; i < 32; ++i) 2481 for (i = 0; i < 32; ++i)
2473 dest[i] = highbd_clip_pixel_add(dest[i], a1, bd); 2482 dest[i] = highbd_clip_pixel_add(dest[i], a1, bd);
2474 dest += stride; 2483 dest += stride;
2475 } 2484 }
2476 } 2485 }
2477 #endif // CONFIG_VP9_HIGHBITDEPTH 2486 #endif // CONFIG_VP9_HIGHBITDEPTH
OLDNEW
« no previous file with comments | « source/libvpx/vp9/encoder/vp9_temporal_filter.c ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698