diff options
-rw-r--r-- | meta-multimedia/recipes-multimedia/aom/aom/0001-subpel_variance_neon-Provide-prototypes-for-missing-.patch | 83 | ||||
-rw-r--r-- | meta-multimedia/recipes-multimedia/aom/aom_3.6.1.bb (renamed from meta-multimedia/recipes-multimedia/aom/aom_3.4.0.bb) | 15 |
2 files changed, 79 insertions, 19 deletions
diff --git a/meta-multimedia/recipes-multimedia/aom/aom/0001-subpel_variance_neon-Provide-prototypes-for-missing-.patch b/meta-multimedia/recipes-multimedia/aom/aom/0001-subpel_variance_neon-Provide-prototypes-for-missing-.patch index 100507cdec..8a8350ec57 100644 --- a/meta-multimedia/recipes-multimedia/aom/aom/0001-subpel_variance_neon-Provide-prototypes-for-missing-.patch +++ b/meta-multimedia/recipes-multimedia/aom/aom/0001-subpel_variance_neon-Provide-prototypes-for-missing-.patch | |||
@@ -1,6 +1,6 @@ | |||
1 | From c33e07f78982acfb0574a84fb523f8591e55c50e Mon Sep 17 00:00:00 2001 | 1 | From 35c1ed84a158354c37e329bad0e236b156836ac7 Mon Sep 17 00:00:00 2001 |
2 | From: Khem Raj <raj.khem@gmail.com> | 2 | From: Khem Raj <raj.khem@gmail.com> |
3 | Date: Sun, 11 Sep 2022 19:46:28 -0700 | 3 | Date: Tue, 23 May 2023 14:59:26 -0700 |
4 | Subject: [PATCH] subpel_variance_neon: Provide prototypes for missing | 4 | Subject: [PATCH] subpel_variance_neon: Provide prototypes for missing |
5 | functions | 5 | functions |
6 | 6 | ||
@@ -11,18 +11,19 @@ larations [-Wimplicit-function-declaration] | |||
11 | | ^ | 11 | | ^ |
12 | 12 | ||
13 | Upstream-Status: Pending | 13 | Upstream-Status: Pending |
14 | |||
14 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | 15 | Signed-off-by: Khem Raj <raj.khem@gmail.com> |
15 | --- | 16 | --- |
16 | aom_dsp/arm/subpel_variance_neon.c | 16 ++++++++++++++++ | 17 | aom_dsp/arm/subpel_variance_neon.c | 76 ++++++++++++++++++++++++++++++ |
17 | 1 file changed, 16 insertions(+) | 18 | 1 file changed, 76 insertions(+) |
18 | 19 | ||
19 | diff --git a/aom_dsp/arm/subpel_variance_neon.c b/aom_dsp/arm/subpel_variance_neon.c | 20 | diff --git a/aom_dsp/arm/subpel_variance_neon.c b/aom_dsp/arm/subpel_variance_neon.c |
20 | index 4ecf891cbeb..859168ea0c5 100644 | 21 | index a05886066c4..ea6bada224d 100644 |
21 | --- a/aom_dsp/arm/subpel_variance_neon.c | 22 | --- a/aom_dsp/arm/subpel_variance_neon.c |
22 | +++ b/aom_dsp/arm/subpel_variance_neon.c | 23 | +++ b/aom_dsp/arm/subpel_variance_neon.c |
23 | @@ -20,6 +20,22 @@ | 24 | @@ -20,6 +20,82 @@ |
24 | #include "aom_dsp/aom_filter.h" | ||
25 | #include "aom_dsp/variance.h" | 25 | #include "aom_dsp/variance.h" |
26 | #include "aom_dsp/arm/mem_neon.h" | ||
26 | 27 | ||
27 | +extern unsigned int aom_variance8x8_neon(const uint8_t *a, int a_stride, | 28 | +extern unsigned int aom_variance8x8_neon(const uint8_t *a, int a_stride, |
28 | + const uint8_t *b, int b_stride, | 29 | + const uint8_t *b, int b_stride, |
@@ -32,17 +33,77 @@ index 4ecf891cbeb..859168ea0c5 100644 | |||
32 | + const uint8_t *b, int b_stride, | 33 | + const uint8_t *b, int b_stride, |
33 | + unsigned int *sse); | 34 | + unsigned int *sse); |
34 | + | 35 | + |
36 | +extern unsigned int aom_variance16x32_neon(const uint8_t *a, int a_stride, | ||
37 | + const uint8_t *b, int b_stride, | ||
38 | + unsigned int *sse); | ||
39 | + | ||
40 | +extern unsigned int aom_variance16x64_neon(const uint8_t *a, int a_stride, | ||
41 | + const uint8_t *b, int b_stride, | ||
42 | + unsigned int *sse); | ||
43 | + | ||
44 | +extern unsigned int aom_variance32x8_neon(const uint8_t *a, int a_stride, | ||
45 | + const uint8_t *b, int b_stride, | ||
46 | + unsigned int *sse); | ||
47 | + | ||
48 | +extern unsigned int aom_variance32x16_neon(const uint8_t *a, int a_stride, | ||
49 | + const uint8_t *b, int b_stride, | ||
50 | + unsigned int *sse); | ||
51 | + | ||
35 | +extern unsigned int aom_variance32x32_neon(const uint8_t *a, int a_stride, | 52 | +extern unsigned int aom_variance32x32_neon(const uint8_t *a, int a_stride, |
36 | + const uint8_t *b, int b_stride, | 53 | + const uint8_t *b, int b_stride, |
37 | + unsigned int *sse); | 54 | + unsigned int *sse); |
38 | + | 55 | + |
56 | +extern unsigned int aom_variance32x64_neon(const uint8_t *a, int a_stride, | ||
57 | + const uint8_t *b, int b_stride, | ||
58 | + unsigned int *sse); | ||
59 | + | ||
60 | +extern unsigned int aom_variance32x128_neon(const uint8_t *a, int a_stride, | ||
61 | + const uint8_t *b, int b_stride, | ||
62 | + unsigned int *sse); | ||
63 | + | ||
64 | +extern unsigned int aom_variance64x8_neon(const uint8_t *a, int a_stride, | ||
65 | + const uint8_t *b, int b_stride, | ||
66 | + unsigned int *sse); | ||
67 | + | ||
68 | +extern unsigned int aom_variance64x16_neon(const uint8_t *a, int a_stride, | ||
69 | + const uint8_t *b, int b_stride, | ||
70 | + unsigned int *sse); | ||
71 | + | ||
72 | +extern unsigned int aom_variance64x32_neon(const uint8_t *a, int a_stride, | ||
73 | + const uint8_t *b, int b_stride, | ||
74 | + unsigned int *sse); | ||
75 | + | ||
39 | +extern unsigned int aom_variance64x64_neon(const uint8_t *a, int a_stride, | 76 | +extern unsigned int aom_variance64x64_neon(const uint8_t *a, int a_stride, |
40 | + const uint8_t *b, int b_stride, | 77 | + const uint8_t *b, int b_stride, |
41 | + unsigned int *sse); | 78 | + unsigned int *sse); |
42 | + | 79 | + |
43 | // Load 2 sets of 4 bytes when alignment is not guaranteed. | 80 | +extern unsigned int aom_variance64x128_neon(const uint8_t *a, int a_stride, |
44 | static INLINE uint8x8_t load_unaligned_u8(const uint8_t *buf, int stride) { | 81 | + const uint8_t *b, int b_stride, |
45 | uint32_t a; | 82 | + unsigned int *sse); |
83 | + | ||
84 | +extern unsigned int aom_variance128x8_neon(const uint8_t *a, int a_stride, | ||
85 | + const uint8_t *b, int b_stride, | ||
86 | + unsigned int *sse); | ||
87 | + | ||
88 | +extern unsigned int aom_variance128x16_neon(const uint8_t *a, int a_stride, | ||
89 | + const uint8_t *b, int b_stride, | ||
90 | + unsigned int *sse); | ||
91 | + | ||
92 | +extern unsigned int aom_variance128x32_neon(const uint8_t *a, int a_stride, | ||
93 | + const uint8_t *b, int b_stride, | ||
94 | + unsigned int *sse); | ||
95 | + | ||
96 | +extern unsigned int aom_variance128x64_neon(const uint8_t *a, int a_stride, | ||
97 | + const uint8_t *b, int b_stride, | ||
98 | + unsigned int *sse); | ||
99 | + | ||
100 | +extern unsigned int aom_variance128x128_neon(const uint8_t *a, int a_stride, | ||
101 | + const uint8_t *b, int b_stride, | ||
102 | + unsigned int *sse); | ||
103 | + | ||
104 | static void var_filter_block2d_bil_w4(const uint8_t *src_ptr, uint8_t *dst_ptr, | ||
105 | int src_stride, int pixel_step, | ||
106 | int dst_height, int filter_offset) { | ||
46 | -- | 107 | -- |
47 | 2.37.3 | 108 | 2.40.1 |
48 | 109 | ||
diff --git a/meta-multimedia/recipes-multimedia/aom/aom_3.4.0.bb b/meta-multimedia/recipes-multimedia/aom/aom_3.6.1.bb index 9cd6f7a9e9..ff7f0d0902 100644 --- a/meta-multimedia/recipes-multimedia/aom/aom_3.4.0.bb +++ b/meta-multimedia/recipes-multimedia/aom/aom_3.6.1.bb | |||
@@ -3,23 +3,22 @@ DESCRIPTION = "Alliance for Open Media AV1 codec library" | |||
3 | 3 | ||
4 | LICENSE = "BSD-2-Clause & AOM-Patent-License-1.0" | 4 | LICENSE = "BSD-2-Clause & AOM-Patent-License-1.0" |
5 | LIC_FILES_CHKSUM = "file://LICENSE;md5=6ea91368c1bbdf877159435572b931f5 \ | 5 | LIC_FILES_CHKSUM = "file://LICENSE;md5=6ea91368c1bbdf877159435572b931f5 \ |
6 | file://PATENTS;md5=e69ad12202bd20da3c76a5d3648cfa83 \ | 6 | file://PATENTS;md5=a111d47497d3bb49e04eef71377eb8ba \ |
7 | " | 7 | " |
8 | 8 | SRCREV = "7ade96172b95adc91a5d85bf80c90989cd543ee8" | |
9 | SRC_URI = "git://aomedia.googlesource.com/aom;protocol=https;branch=main \ | 9 | SRC_URI = "git://aomedia.googlesource.com/aom;protocol=https;branch=main \ |
10 | file://0001-subpel_variance_neon-Provide-prototypes-for-missing-.patch \ | 10 | file://0001-subpel_variance_neon-Provide-prototypes-for-missing-.patch" |
11 | " | ||
12 | |||
13 | SRCREV = "fd0c9275d36930a6eea6d3c35972e7cf9c512944" | ||
14 | 11 | ||
15 | S = "${WORKDIR}/git" | 12 | S = "${WORKDIR}/git" |
16 | 13 | ||
17 | inherit cmake pkgconfig | 14 | inherit cmake pkgconfig |
18 | DEPENDS = " yasm-native" | 15 | |
16 | DEPENDS = " nasm-native" | ||
19 | 17 | ||
20 | EXTRA_OECMAKE = " -DBUILD_SHARED_LIBS=1 -DENABLE_TESTS=0 \ | 18 | EXTRA_OECMAKE = " -DBUILD_SHARED_LIBS=1 -DENABLE_TESTS=0 \ |
19 | -DAOM_AS_FLAGS=--reproducible \ | ||
21 | -DPERL_EXECUTABLE=${HOSTTOOLS_DIR}/perl \ | 20 | -DPERL_EXECUTABLE=${HOSTTOOLS_DIR}/perl \ |
22 | " | 21 | " |
23 | 22 | CMAKE_VERBOSE = "VERBOSE=1" | |
24 | CFLAGS:append:libc-musl = " -D_GNU_SOURCE" | 23 | CFLAGS:append:libc-musl = " -D_GNU_SOURCE" |
25 | EXTRA_OECMAKE:append:arm = " ${@bb.utils.contains("TUNE_FEATURES","neon","-DENABLE_NEON=ON","-DENABLE_NEON=OFF",d)}" | 24 | EXTRA_OECMAKE:append:arm = " ${@bb.utils.contains("TUNE_FEATURES","neon","-DENABLE_NEON=ON","-DENABLE_NEON=OFF",d)}" |