mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-10-06 23:37:31 +09:00
Update aom to v1.0.0
Update aom to commit id d14c5bb4f336ef1842046089849dee4a301fbbf0.
This commit is contained in:
parent
bb61121b44
commit
48f6d2e034
1087 changed files with 154333 additions and 265310 deletions
41
third_party/aom/aom_dsp/psnr.c
vendored
41
third_party/aom/aom_dsp/psnr.c
vendored
|
|
@ -12,7 +12,8 @@
|
|||
#include <assert.h>
|
||||
#include <math.h>
|
||||
|
||||
#include "./aom_dsp_rtcd.h"
|
||||
#include "config/aom_dsp_rtcd.h"
|
||||
|
||||
#include "aom_dsp/psnr.h"
|
||||
#include "aom_scale/yv12config.h"
|
||||
|
||||
|
|
@ -26,8 +27,8 @@ double aom_sse_to_psnr(double samples, double peak, double sse) {
|
|||
}
|
||||
|
||||
/* TODO(yaowu): The block_variance calls the unoptimized versions of variance()
|
||||
* and highbd_8_variance(). It should not.
|
||||
*/
|
||||
* and highbd_8_variance(). It should not.
|
||||
*/
|
||||
static void encoder_variance(const uint8_t *a, int a_stride, const uint8_t *b,
|
||||
int b_stride, int w, int h, unsigned int *sse,
|
||||
int *sum) {
|
||||
|
|
@ -48,26 +49,26 @@ static void encoder_variance(const uint8_t *a, int a_stride, const uint8_t *b,
|
|||
}
|
||||
}
|
||||
|
||||
#if CONFIG_HIGHBITDEPTH
|
||||
static void encoder_highbd_variance64(const uint8_t *a8, int a_stride,
|
||||
const uint8_t *b8, int b_stride, int w,
|
||||
int h, uint64_t *sse, int64_t *sum) {
|
||||
int i, j;
|
||||
|
||||
uint16_t *a = CONVERT_TO_SHORTPTR(a8);
|
||||
uint16_t *b = CONVERT_TO_SHORTPTR(b8);
|
||||
*sum = 0;
|
||||
*sse = 0;
|
||||
|
||||
for (i = 0; i < h; i++) {
|
||||
for (j = 0; j < w; j++) {
|
||||
const uint16_t *a = CONVERT_TO_SHORTPTR(a8);
|
||||
const uint16_t *b = CONVERT_TO_SHORTPTR(b8);
|
||||
int64_t tsum = 0;
|
||||
uint64_t tsse = 0;
|
||||
for (int i = 0; i < h; ++i) {
|
||||
int32_t lsum = 0;
|
||||
for (int j = 0; j < w; ++j) {
|
||||
const int diff = a[j] - b[j];
|
||||
*sum += diff;
|
||||
*sse += diff * diff;
|
||||
lsum += diff;
|
||||
tsse += (uint32_t)(diff * diff);
|
||||
}
|
||||
tsum += lsum;
|
||||
a += a_stride;
|
||||
b += b_stride;
|
||||
}
|
||||
*sum = tsum;
|
||||
*sse = tsse;
|
||||
}
|
||||
|
||||
static void encoder_highbd_8_variance(const uint8_t *a8, int a_stride,
|
||||
|
|
@ -80,7 +81,6 @@ static void encoder_highbd_8_variance(const uint8_t *a8, int a_stride,
|
|||
*sse = (unsigned int)sse_long;
|
||||
*sum = (int)sum_long;
|
||||
}
|
||||
#endif // CONFIG_HIGHBITDEPTH
|
||||
|
||||
static int64_t get_sse(const uint8_t *a, int a_stride, const uint8_t *b,
|
||||
int b_stride, int width, int height) {
|
||||
|
|
@ -122,7 +122,6 @@ static int64_t get_sse(const uint8_t *a, int a_stride, const uint8_t *b,
|
|||
return total_sse;
|
||||
}
|
||||
|
||||
#if CONFIG_HIGHBITDEPTH
|
||||
static int64_t highbd_get_sse_shift(const uint8_t *a8, int a_stride,
|
||||
const uint8_t *b8, int b_stride, int width,
|
||||
int height, unsigned int input_shift) {
|
||||
|
|
@ -175,7 +174,6 @@ static int64_t highbd_get_sse(const uint8_t *a, int a_stride, const uint8_t *b,
|
|||
}
|
||||
return total_sse;
|
||||
}
|
||||
#endif // CONFIG_HIGHBITDEPTH
|
||||
|
||||
int64_t aom_get_y_sse_part(const YV12_BUFFER_CONFIG *a,
|
||||
const YV12_BUFFER_CONFIG *b, int hstart, int width,
|
||||
|
|
@ -228,7 +226,6 @@ int64_t aom_get_v_sse(const YV12_BUFFER_CONFIG *a,
|
|||
a->uv_crop_width, a->uv_crop_height);
|
||||
}
|
||||
|
||||
#if CONFIG_HIGHBITDEPTH
|
||||
int64_t aom_highbd_get_y_sse_part(const YV12_BUFFER_CONFIG *a,
|
||||
const YV12_BUFFER_CONFIG *b, int hstart,
|
||||
int width, int vstart, int height) {
|
||||
|
|
@ -287,11 +284,9 @@ int64_t aom_highbd_get_v_sse(const YV12_BUFFER_CONFIG *a,
|
|||
return highbd_get_sse(a->v_buffer, a->uv_stride, b->v_buffer, b->uv_stride,
|
||||
a->uv_crop_width, a->uv_crop_height);
|
||||
}
|
||||
#endif // CONFIG_HIGHBITDEPTH
|
||||
|
||||
int64_t aom_get_sse_plane(const YV12_BUFFER_CONFIG *a,
|
||||
const YV12_BUFFER_CONFIG *b, int plane, int highbd) {
|
||||
#if CONFIG_HIGHBITDEPTH
|
||||
if (highbd) {
|
||||
switch (plane) {
|
||||
case 0: return aom_highbd_get_y_sse(a, b);
|
||||
|
|
@ -300,7 +295,6 @@ int64_t aom_get_sse_plane(const YV12_BUFFER_CONFIG *a,
|
|||
default: assert(plane >= 0 && plane <= 2); return 0;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
(void)highbd;
|
||||
switch (plane) {
|
||||
case 0: return aom_get_y_sse(a, b);
|
||||
|
|
@ -310,7 +304,6 @@ int64_t aom_get_sse_plane(const YV12_BUFFER_CONFIG *a,
|
|||
}
|
||||
}
|
||||
|
||||
#if CONFIG_HIGHBITDEPTH
|
||||
void aom_calc_highbd_psnr(const YV12_BUFFER_CONFIG *a,
|
||||
const YV12_BUFFER_CONFIG *b, PSNR_STATS *psnr,
|
||||
uint32_t bit_depth, uint32_t in_bit_depth) {
|
||||
|
|
@ -356,8 +349,6 @@ void aom_calc_highbd_psnr(const YV12_BUFFER_CONFIG *a,
|
|||
aom_sse_to_psnr((double)total_samples, peak, (double)total_sse);
|
||||
}
|
||||
|
||||
#endif // !CONFIG_HIGHBITDEPTH
|
||||
|
||||
void aom_calc_psnr(const YV12_BUFFER_CONFIG *a, const YV12_BUFFER_CONFIG *b,
|
||||
PSNR_STATS *psnr) {
|
||||
static const double peak = 255.0;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue