mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-10-10 01:07:31 +09:00
aom: update libaom to 0ec86ac7ae1e32a7e70410fa4972a655ec3670a4
This commit is contained in:
parent
bc3f20e378
commit
eb361970c5
438 changed files with 52661 additions and 21905 deletions
219
third_party/aom/aom_dsp/sad.c
vendored
219
third_party/aom/aom_dsp/sad.c
vendored
|
|
@ -25,7 +25,9 @@ static INLINE unsigned int sad(const uint8_t *a, int a_stride, const uint8_t *b,
|
|||
unsigned int sad = 0;
|
||||
|
||||
for (y = 0; y < height; y++) {
|
||||
for (x = 0; x < width; x++) sad += abs(a[x] - b[x]);
|
||||
for (x = 0; x < width; x++) {
|
||||
sad += abs(a[x] - b[x]);
|
||||
}
|
||||
|
||||
a += a_stride;
|
||||
b += b_stride;
|
||||
|
|
@ -52,12 +54,12 @@ static INLINE unsigned int sad(const uint8_t *a, int a_stride, const uint8_t *b,
|
|||
aom_comp_avg_pred(comp_pred, second_pred, m, n, ref, ref_stride); \
|
||||
return sad(src, src_stride, comp_pred, m, m, n); \
|
||||
} \
|
||||
unsigned int aom_jnt_sad##m##x##n##_avg_c( \
|
||||
unsigned int aom_dist_wtd_sad##m##x##n##_avg_c( \
|
||||
const uint8_t *src, int src_stride, const uint8_t *ref, int ref_stride, \
|
||||
const uint8_t *second_pred, const JNT_COMP_PARAMS *jcp_param) { \
|
||||
const uint8_t *second_pred, const DIST_WTD_COMP_PARAMS *jcp_param) { \
|
||||
uint8_t comp_pred[m * n]; \
|
||||
aom_jnt_comp_avg_pred_c(comp_pred, second_pred, m, n, ref, ref_stride, \
|
||||
jcp_param); \
|
||||
aom_dist_wtd_comp_avg_pred_c(comp_pred, second_pred, m, n, ref, \
|
||||
ref_stride, jcp_param); \
|
||||
return sad(src, src_stride, comp_pred, m, m, n); \
|
||||
}
|
||||
|
||||
|
|
@ -67,75 +69,75 @@ static INLINE unsigned int sad(const uint8_t *a, int a_stride, const uint8_t *b,
|
|||
const uint8_t *const ref_array[], \
|
||||
int ref_stride, uint32_t *sad_array) { \
|
||||
int i; \
|
||||
for (i = 0; i < 4; ++i) \
|
||||
for (i = 0; i < 4; ++i) { \
|
||||
sad_array[i] = \
|
||||
aom_sad##m##x##n##_c(src, src_stride, ref_array[i], ref_stride); \
|
||||
} \
|
||||
}
|
||||
|
||||
/* clang-format off */
|
||||
// 128x128
|
||||
sadMxN(128, 128)
|
||||
sadMxNx4D(128, 128)
|
||||
sadMxN(128, 128);
|
||||
sadMxNx4D(128, 128);
|
||||
|
||||
// 128x64
|
||||
sadMxN(128, 64)
|
||||
sadMxNx4D(128, 64)
|
||||
sadMxN(128, 64);
|
||||
sadMxNx4D(128, 64);
|
||||
|
||||
// 64x128
|
||||
sadMxN(64, 128)
|
||||
sadMxNx4D(64, 128)
|
||||
sadMxN(64, 128);
|
||||
sadMxNx4D(64, 128);
|
||||
|
||||
// 64x64
|
||||
sadMxN(64, 64)
|
||||
sadMxNx4D(64, 64)
|
||||
sadMxN(64, 64);
|
||||
sadMxNx4D(64, 64);
|
||||
|
||||
// 64x32
|
||||
sadMxN(64, 32)
|
||||
sadMxNx4D(64, 32)
|
||||
sadMxN(64, 32);
|
||||
sadMxNx4D(64, 32);
|
||||
|
||||
// 32x64
|
||||
sadMxN(32, 64)
|
||||
sadMxNx4D(32, 64)
|
||||
sadMxN(32, 64);
|
||||
sadMxNx4D(32, 64);
|
||||
|
||||
// 32x32
|
||||
sadMxN(32, 32)
|
||||
sadMxNx4D(32, 32)
|
||||
sadMxN(32, 32);
|
||||
sadMxNx4D(32, 32);
|
||||
|
||||
// 32x16
|
||||
sadMxN(32, 16)
|
||||
sadMxNx4D(32, 16)
|
||||
sadMxN(32, 16);
|
||||
sadMxNx4D(32, 16);
|
||||
|
||||
// 16x32
|
||||
sadMxN(16, 32)
|
||||
sadMxNx4D(16, 32)
|
||||
sadMxN(16, 32);
|
||||
sadMxNx4D(16, 32);
|
||||
|
||||
// 16x16
|
||||
sadMxN(16, 16)
|
||||
sadMxNx4D(16, 16)
|
||||
sadMxN(16, 16);
|
||||
sadMxNx4D(16, 16);
|
||||
|
||||
// 16x8
|
||||
sadMxN(16, 8)
|
||||
sadMxNx4D(16, 8)
|
||||
sadMxN(16, 8);
|
||||
sadMxNx4D(16, 8);
|
||||
|
||||
// 8x16
|
||||
sadMxN(8, 16)
|
||||
sadMxNx4D(8, 16)
|
||||
sadMxN(8, 16);
|
||||
sadMxNx4D(8, 16);
|
||||
|
||||
// 8x8
|
||||
sadMxN(8, 8)
|
||||
sadMxNx4D(8, 8)
|
||||
sadMxN(8, 8);
|
||||
sadMxNx4D(8, 8);
|
||||
|
||||
// 8x4
|
||||
sadMxN(8, 4)
|
||||
sadMxNx4D(8, 4)
|
||||
sadMxN(8, 4);
|
||||
sadMxNx4D(8, 4);
|
||||
|
||||
// 4x8
|
||||
sadMxN(4, 8)
|
||||
sadMxNx4D(4, 8)
|
||||
sadMxN(4, 8);
|
||||
sadMxNx4D(4, 8);
|
||||
|
||||
// 4x4
|
||||
sadMxN(4, 4)
|
||||
sadMxNx4D(4, 4)
|
||||
sadMxN(4, 4);
|
||||
sadMxNx4D(4, 4);
|
||||
|
||||
sadMxh(128);
|
||||
sadMxh(64);
|
||||
|
|
@ -144,30 +146,30 @@ sadMxh(16);
|
|||
sadMxh(8);
|
||||
sadMxh(4);
|
||||
|
||||
sadMxN(4, 16)
|
||||
sadMxNx4D(4, 16)
|
||||
sadMxN(16, 4)
|
||||
sadMxNx4D(16, 4)
|
||||
sadMxN(8, 32)
|
||||
sadMxNx4D(8, 32)
|
||||
sadMxN(32, 8)
|
||||
sadMxNx4D(32, 8)
|
||||
sadMxN(16, 64)
|
||||
sadMxNx4D(16, 64)
|
||||
sadMxN(64, 16)
|
||||
sadMxNx4D(64, 16)
|
||||
sadMxN(4, 16);
|
||||
sadMxNx4D(4, 16);
|
||||
sadMxN(16, 4);
|
||||
sadMxNx4D(16, 4);
|
||||
sadMxN(8, 32);
|
||||
sadMxNx4D(8, 32);
|
||||
sadMxN(32, 8);
|
||||
sadMxNx4D(32, 8);
|
||||
sadMxN(16, 64);
|
||||
sadMxNx4D(16, 64);
|
||||
sadMxN(64, 16);
|
||||
sadMxNx4D(64, 16);
|
||||
|
||||
/* clang-format on */
|
||||
|
||||
static INLINE
|
||||
unsigned int highbd_sad(const uint8_t *a8, int a_stride, const uint8_t *b8,
|
||||
int b_stride, int width, int height) {
|
||||
static INLINE unsigned int highbd_sad(const uint8_t *a8, int a_stride,
|
||||
const uint8_t *b8, int b_stride,
|
||||
int width, int height) {
|
||||
int y, x;
|
||||
unsigned int sad = 0;
|
||||
const uint16_t *a = CONVERT_TO_SHORTPTR(a8);
|
||||
const uint16_t *b = CONVERT_TO_SHORTPTR(b8);
|
||||
for (y = 0; y < height; y++) {
|
||||
for (x = 0; x < width; x++) sad += abs(a[x] - b[x]);
|
||||
for (x = 0; x < width; x++) {
|
||||
sad += abs(a[x] - b[x]);
|
||||
}
|
||||
|
||||
a += a_stride;
|
||||
b += b_stride;
|
||||
|
|
@ -182,7 +184,9 @@ static INLINE unsigned int highbd_sadb(const uint8_t *a8, int a_stride,
|
|||
unsigned int sad = 0;
|
||||
const uint16_t *a = CONVERT_TO_SHORTPTR(a8);
|
||||
for (y = 0; y < height; y++) {
|
||||
for (x = 0; x < width; x++) sad += abs(a[x] - b[x]);
|
||||
for (x = 0; x < width; x++) {
|
||||
sad += abs(a[x] - b[x]);
|
||||
}
|
||||
|
||||
a += a_stride;
|
||||
b += b_stride;
|
||||
|
|
@ -204,12 +208,13 @@ static INLINE unsigned int highbd_sadb(const uint8_t *a8, int a_stride,
|
|||
ref, ref_stride); \
|
||||
return highbd_sadb(src, src_stride, comp_pred, m, m, n); \
|
||||
} \
|
||||
unsigned int aom_highbd_jnt_sad##m##x##n##_avg_c( \
|
||||
unsigned int aom_highbd_dist_wtd_sad##m##x##n##_avg_c( \
|
||||
const uint8_t *src, int src_stride, const uint8_t *ref, int ref_stride, \
|
||||
const uint8_t *second_pred, const JNT_COMP_PARAMS *jcp_param) { \
|
||||
const uint8_t *second_pred, const DIST_WTD_COMP_PARAMS *jcp_param) { \
|
||||
uint16_t comp_pred[m * n]; \
|
||||
aom_highbd_jnt_comp_avg_pred(CONVERT_TO_BYTEPTR(comp_pred), second_pred, \
|
||||
m, n, ref, ref_stride, jcp_param); \
|
||||
aom_highbd_dist_wtd_comp_avg_pred(CONVERT_TO_BYTEPTR(comp_pred), \
|
||||
second_pred, m, n, ref, ref_stride, \
|
||||
jcp_param); \
|
||||
return highbd_sadb(src, src_stride, comp_pred, m, m, n); \
|
||||
}
|
||||
|
||||
|
|
@ -224,81 +229,79 @@ static INLINE unsigned int highbd_sadb(const uint8_t *a8, int a_stride,
|
|||
} \
|
||||
}
|
||||
|
||||
/* clang-format off */
|
||||
// 128x128
|
||||
highbd_sadMxN(128, 128)
|
||||
highbd_sadMxNx4D(128, 128)
|
||||
highbd_sadMxN(128, 128);
|
||||
highbd_sadMxNx4D(128, 128);
|
||||
|
||||
// 128x64
|
||||
highbd_sadMxN(128, 64)
|
||||
highbd_sadMxNx4D(128, 64)
|
||||
highbd_sadMxN(128, 64);
|
||||
highbd_sadMxNx4D(128, 64);
|
||||
|
||||
// 64x128
|
||||
highbd_sadMxN(64, 128)
|
||||
highbd_sadMxNx4D(64, 128)
|
||||
highbd_sadMxN(64, 128);
|
||||
highbd_sadMxNx4D(64, 128);
|
||||
|
||||
// 64x64
|
||||
highbd_sadMxN(64, 64)
|
||||
highbd_sadMxNx4D(64, 64)
|
||||
highbd_sadMxN(64, 64);
|
||||
highbd_sadMxNx4D(64, 64);
|
||||
|
||||
// 64x32
|
||||
highbd_sadMxN(64, 32)
|
||||
highbd_sadMxNx4D(64, 32)
|
||||
highbd_sadMxN(64, 32);
|
||||
highbd_sadMxNx4D(64, 32);
|
||||
|
||||
// 32x64
|
||||
highbd_sadMxN(32, 64)
|
||||
highbd_sadMxNx4D(32, 64)
|
||||
highbd_sadMxN(32, 64);
|
||||
highbd_sadMxNx4D(32, 64);
|
||||
|
||||
// 32x32
|
||||
highbd_sadMxN(32, 32)
|
||||
highbd_sadMxNx4D(32, 32)
|
||||
highbd_sadMxN(32, 32);
|
||||
highbd_sadMxNx4D(32, 32);
|
||||
|
||||
// 32x16
|
||||
highbd_sadMxN(32, 16)
|
||||
highbd_sadMxNx4D(32, 16)
|
||||
highbd_sadMxN(32, 16);
|
||||
highbd_sadMxNx4D(32, 16);
|
||||
|
||||
// 16x32
|
||||
highbd_sadMxN(16, 32)
|
||||
highbd_sadMxNx4D(16, 32)
|
||||
highbd_sadMxN(16, 32);
|
||||
highbd_sadMxNx4D(16, 32);
|
||||
|
||||
// 16x16
|
||||
highbd_sadMxN(16, 16)
|
||||
highbd_sadMxNx4D(16, 16)
|
||||
highbd_sadMxN(16, 16);
|
||||
highbd_sadMxNx4D(16, 16);
|
||||
|
||||
// 16x8
|
||||
highbd_sadMxN(16, 8)
|
||||
highbd_sadMxNx4D(16, 8)
|
||||
highbd_sadMxN(16, 8);
|
||||
highbd_sadMxNx4D(16, 8);
|
||||
|
||||
// 8x16
|
||||
highbd_sadMxN(8, 16)
|
||||
highbd_sadMxNx4D(8, 16)
|
||||
highbd_sadMxN(8, 16);
|
||||
highbd_sadMxNx4D(8, 16);
|
||||
|
||||
// 8x8
|
||||
highbd_sadMxN(8, 8)
|
||||
highbd_sadMxNx4D(8, 8)
|
||||
highbd_sadMxN(8, 8);
|
||||
highbd_sadMxNx4D(8, 8);
|
||||
|
||||
// 8x4
|
||||
highbd_sadMxN(8, 4)
|
||||
highbd_sadMxNx4D(8, 4)
|
||||
highbd_sadMxN(8, 4);
|
||||
highbd_sadMxNx4D(8, 4);
|
||||
|
||||
// 4x8
|
||||
highbd_sadMxN(4, 8)
|
||||
highbd_sadMxNx4D(4, 8)
|
||||
highbd_sadMxN(4, 8);
|
||||
highbd_sadMxNx4D(4, 8);
|
||||
|
||||
// 4x4
|
||||
highbd_sadMxN(4, 4)
|
||||
highbd_sadMxNx4D(4, 4)
|
||||
highbd_sadMxN(4, 4);
|
||||
highbd_sadMxNx4D(4, 4);
|
||||
|
||||
highbd_sadMxN(4, 16)
|
||||
highbd_sadMxNx4D(4, 16)
|
||||
highbd_sadMxN(16, 4)
|
||||
highbd_sadMxNx4D(16, 4)
|
||||
highbd_sadMxN(8, 32)
|
||||
highbd_sadMxNx4D(8, 32)
|
||||
highbd_sadMxN(32, 8)
|
||||
highbd_sadMxNx4D(32, 8)
|
||||
highbd_sadMxN(16, 64)
|
||||
highbd_sadMxNx4D(16, 64)
|
||||
highbd_sadMxN(64, 16)
|
||||
highbd_sadMxNx4D(64, 16)
|
||||
/* clang-format on */
|
||||
highbd_sadMxN(4, 16);
|
||||
highbd_sadMxNx4D(4, 16);
|
||||
highbd_sadMxN(16, 4);
|
||||
highbd_sadMxNx4D(16, 4);
|
||||
highbd_sadMxN(8, 32);
|
||||
highbd_sadMxNx4D(8, 32);
|
||||
highbd_sadMxN(32, 8);
|
||||
highbd_sadMxNx4D(32, 8);
|
||||
highbd_sadMxN(16, 64);
|
||||
highbd_sadMxNx4D(16, 64);
|
||||
highbd_sadMxN(64, 16);
|
||||
highbd_sadMxNx4D(64, 16);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue