Name Date Size #Lines LOC

..--

include/libyuv/H25-Apr-2025-10,7819,285

source/H25-Apr-2025-58,19651,445

LICENSEH A D25-Apr-20251.5 KiB3024

README.libaomH A D25-Apr-20254.6 KiB123108

README.libaom

1Name: libyuv
2URL: https://chromium.googlesource.com/libyuv/libyuv/
3Version: dfaf7534e0e536f7e5ef8ddd7326797bd09b8622
4License: BSD
5License File: LICENSE
6
7Description:
8libyuv is an open source project that includes YUV conversion and scaling
9functionality.
10
11The optimized scaler in libyuv is used in multiple resolution encoder example,
12which down-samples the original input video (f.g. 1280x720) a number of times
13in order to encode multiple resolution bit streams.
14
15Local Modifications:
16
17diff --git a/third_party/libyuv/source/cpu_id.cc b/third_party/libyuv/source/cpu_id.cc
18index fe89452b7..72a7fb82f 100644
19--- a/third_party/libyuv/source/cpu_id.cc
20+++ b/third_party/libyuv/source/cpu_id.cc
21@@ -108,7 +108,7 @@ void CpuId(int eax, int ecx, int* cpu_info) {
22 //  }
23 // For VS2013 and earlier 32 bit, the _xgetbv(0) optimizer produces bad code.
24 // https://code.google.com/p/libyuv/issues/detail?id=529
25-#if defined(_M_IX86) && (_MSC_VER < 1900)
26+#if defined(_M_IX86) && defined(_MSC_VER) && (_MSC_VER < 1900)
27 #pragma optimize("g", off)
28 #endif
29 #if (defined(_M_IX86) || defined(_M_X64) || defined(__i386__) || \
30@@ -129,7 +129,7 @@ int GetXCR0() {
31 #define GetXCR0() 0
32 #endif  // defined(_M_IX86) || defined(_M_X64) ..
33 // Return optimization to previous setting.
34-#if defined(_M_IX86) && (_MSC_VER < 1900)
35+#if defined(_M_IX86) && defined(_MSC_VER) && (_MSC_VER < 1900)
36 #pragma optimize("g", on)
37 #endif
38diff --git a/third_party/libyuv/source/row_common.cc b/third_party/libyuv/source/row_common.cc
39index 79aed5c787..b0add63a6e 100644
40--- a/third_party/libyuv/source/row_common.cc
41+++ b/third_party/libyuv/source/row_common.cc
42@@ -37,7 +37,7 @@ extern "C" {
43 // llvm x86 is poor at ternary operator, so use branchless min/max.
44
45 #define USE_BRANCHLESS 1
46-#if USE_BRANCHLESS
47+#if defined(USE_BRANCHLESS)
48 static __inline int32_t clamp0(int32_t v) {
49   return -(v >= 0) & v;
50 }
51@@ -460,7 +460,7 @@ static __inline int RGB2xToV(uint16_t r, uint16_t g, uint16_t b) {
52
53 // ARGBToY_C and ARGBToUV_C
54 // Intel version mimic SSE/AVX which does 2 pavgb
55-#if LIBYUV_ARGBTOUV_PAVGB
56+#if defined(LIBYUV_ARGBTOUV_PAVGB)
57
58 #define MAKEROWY(NAME, R, G, B, BPP)                                         \
59   void NAME##ToYRow_C(const uint8_t* src_argb0, uint8_t* dst_y, int width) { \
60@@ -602,7 +602,7 @@ static __inline int RGB2xToVJ(uint16_t r, uint16_t g, uint16_t b) {
61
62 // ARGBToYJ_C and ARGBToUVJ_C
63 // Intel version mimic SSE/AVX which does 2 pavgb
64-#if LIBYUV_ARGBTOUV_PAVGB
65+#if defined(LIBYUV_ARGBTOUV_PAVGB)
66 #define MAKEROWYJ(NAME, R, G, B, BPP)                                         \
67   void NAME##ToYJRow_C(const uint8_t* src_argb0, uint8_t* dst_y, int width) { \
68     int x;                                                                    \
69@@ -766,7 +766,7 @@ void RGB565ToUVRow_C(const uint8_t* src_rgb565,
70     g3 = (g3 << 2) | (g3 >> 4);
71     r3 = (r3 << 3) | (r3 >> 2);
72
73-#if LIBYUV_ARGBTOUV_PAVGB
74+#if defined(LIBYUV_ARGBTOUV_PAVGB)
75     uint8_t ab = AVGB(AVGB(b0, b2), AVGB(b1, b3));
76     uint8_t ag = AVGB(AVGB(g0, g2), AVGB(g1, g3));
77     uint8_t ar = AVGB(AVGB(r0, r2), AVGB(r1, r3));
78@@ -800,7 +800,7 @@ void RGB565ToUVRow_C(const uint8_t* src_rgb565,
79     g2 = (g2 << 2) | (g2 >> 4);
80     r2 = (r2 << 3) | (r2 >> 2);
81
82-#if LIBYUV_ARGBTOUV_PAVGB
83+#if defined(LIBYUV_ARGBTOUV_PAVGB)
84     uint8_t ab = AVGB(b0, b2);
85     uint8_t ag = AVGB(g0, g2);
86     uint8_t ar = AVGB(r0, r2);
87@@ -850,7 +850,7 @@ void ARGB1555ToUVRow_C(const uint8_t* src_argb1555,
88     g3 = (g3 << 3) | (g3 >> 2);
89     r3 = (r3 << 3) | (r3 >> 2);
90
91-#if LIBYUV_ARGBTOUV_PAVGB
92+#if defined(LIBYUV_ARGBTOUV_PAVGB)
93     uint8_t ab = AVGB(AVGB(b0, b2), AVGB(b1, b3));
94     uint8_t ag = AVGB(AVGB(g0, g2), AVGB(g1, g3));
95     uint8_t ar = AVGB(AVGB(r0, r2), AVGB(r1, r3));
96@@ -884,7 +884,7 @@ void ARGB1555ToUVRow_C(const uint8_t* src_argb1555,
97     g2 = (g2 << 3) | (g2 >> 2);
98     r2 = (r2 << 3) | (r2 >> 2);
99
100-#if LIBYUV_ARGBTOUV_PAVGB
101+#if defined(LIBYUV_ARGBTOUV_PAVGB)
102     uint8_t ab = AVGB(b0, b2);
103     uint8_t ag = AVGB(g0, g2);
104     uint8_t ar = AVGB(r0, r2);
105@@ -934,7 +934,7 @@ void ARGB4444ToUVRow_C(const uint8_t* src_argb4444,
106     g3 = (g3 << 4) | g3;
107     r3 = (r3 << 4) | r3;
108
109-#if LIBYUV_ARGBTOUV_PAVGB
110+#if defined(LIBYUV_ARGBTOUV_PAVGB)
111     uint8_t ab = AVGB(AVGB(b0, b2), AVGB(b1, b3));
112     uint8_t ag = AVGB(AVGB(g0, g2), AVGB(g1, g3));
113     uint8_t ar = AVGB(AVGB(r0, r2), AVGB(r1, r3));
114@@ -968,7 +968,7 @@ void ARGB4444ToUVRow_C(const uint8_t* src_argb4444,
115     g2 = (g2 << 4) | g2;
116     r2 = (r2 << 4) | r2;
117
118-#if LIBYUV_ARGBTOUV_PAVGB
119+#if defined(LIBYUV_ARGBTOUV_PAVGB)
120     uint8_t ab = AVGB(b0, b2);
121     uint8_t ag = AVGB(g0, g2);
122     uint8_t ar = AVGB(r0, r2);
123