VPX: remove scaled calls from FUN_CONV_1D

and FUN_CONV_2D macros.  The predict lut now handles
this case.  The encoder now calls vpx_scaled_2d() instead
of vpx_convolve8() for scaling.

Change-Id: Ia1c8af8a31e4cb4887a587143108cb45835f7df7
This commit is contained in:
Scott LaVarnway
2015-08-05 10:47:06 -07:00
parent 8f6b943100
commit 4e6b5079c6
3 changed files with 101 additions and 44 deletions

View File

@@ -31,6 +31,7 @@ typedef void filter8_1dfunction (
const int16_t *filter_x, int x_step_q4, \
const int16_t *filter_y, int y_step_q4, \
int w, int h) { \
assert(filter[3] != 128); \
if (step_q4 == 16 && filter[3] != 128) { \
if (filter[0] || filter[1] || filter[2]) { \
while (w >= 16) { \
@@ -102,11 +103,6 @@ typedef void filter8_1dfunction (
} \
} \
} \
if (w) { \
vpx_scaled_##name(src, src_stride, dst, dst_stride, \
filter_x, x_step_q4, filter_y, y_step_q4, \
w, h); \
} \
}
#define FUN_CONV_2D(avg, opt) \
@@ -115,6 +111,8 @@ void vpx_convolve8_##avg##opt(const uint8_t *src, ptrdiff_t src_stride, \
const int16_t *filter_x, int x_step_q4, \
const int16_t *filter_y, int y_step_q4, \
int w, int h) { \
assert(filter_x[3] != 128); \
assert(filter_y[3] != 128); \
assert(w <= 64); \
assert(h <= 64); \
if (x_step_q4 == 16 && y_step_q4 == 16) { \
@@ -136,9 +134,6 @@ void vpx_convolve8_##avg##opt(const uint8_t *src, ptrdiff_t src_stride, \
filter_x, x_step_q4, filter_y, \
y_step_q4, w, h); \
} \
} else { \
vpx_scaled_##avg##2d(src, src_stride, dst, dst_stride, \
filter_x, x_step_q4, filter_y, y_step_q4, w, h); \
} \
}