Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 2 Jun 2023 18:32:16 GMT
From:      Jan Beich <jbeich@FreeBSD.org>
To:        ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org
Subject:   git: f151b7fa349a - main - audio/webrtc-audio-processing: rebase c9bdb0ca7d0f on top of upstream
Message-ID:  <202306021832.352IWGsC087258@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch main has been updated by jbeich:

URL: https://cgit.FreeBSD.org/ports/commit/?id=f151b7fa349aa9ba465a3526d1c7d569a422d728

commit f151b7fa349aa9ba465a3526d1c7d569a422d728
Author:     Jan Beich <jbeich@FreeBSD.org>
AuthorDate: 2023-06-02 17:44:47 +0000
Commit:     Jan Beich <jbeich@FreeBSD.org>
CommitDate: 2023-06-02 18:31:24 +0000

    audio/webrtc-audio-processing: rebase c9bdb0ca7d0f on top of upstream
---
 audio/webrtc-audio-processing/Makefile             |   1 +
 audio/webrtc-audio-processing/distinfo             |   2 +
 .../webrtc-audio-processing/files/patch-powerpc64  |  67 ++++++++++
 .../files/patch-powerpc64.patch                    | 140 ---------------------
 4 files changed, 70 insertions(+), 140 deletions(-)

diff --git a/audio/webrtc-audio-processing/Makefile b/audio/webrtc-audio-processing/Makefile
index 3ee52ce0cf06..ed81695cabdc 100644
--- a/audio/webrtc-audio-processing/Makefile
+++ b/audio/webrtc-audio-processing/Makefile
@@ -10,6 +10,7 @@ PATCHFILES+=	3f9907f93d39.patch:-p1 # https://gitlab.freedesktop.org/pulseaudio/
 PATCHFILES+=	b34c1d5746ea.patch:-p1 # https://gitlab.freedesktop.org/pulseaudio/webrtc-audio-processing/-/merge_requests/14
 PATCHFILES+=	d49a0855a33b.patch:-p1 # https://gitlab.freedesktop.org/pulseaudio/webrtc-audio-processing/-/merge_requests/17
 PATCHFILES+=	f29ff57d6ccd.patch:-p1 # https://gitlab.freedesktop.org/pulseaudio/webrtc-audio-processing/-/merge_requests/17
+PATCHFILES+=	c18b3945a1cc.patch:-p1 # https://gitlab.freedesktop.org/pulseaudio/webrtc-audio-processing/-/merge_requests/17
 
 MAINTAINER=	jbeich@FreeBSD.org
 COMMENT=	AudioProcessing module from WebRTC project
diff --git a/audio/webrtc-audio-processing/distinfo b/audio/webrtc-audio-processing/distinfo
index 9458f9e257de..67c99850c4f7 100644
--- a/audio/webrtc-audio-processing/distinfo
+++ b/audio/webrtc-audio-processing/distinfo
@@ -11,3 +11,5 @@ SHA256 (d49a0855a33b.patch) = fe8a4421a664108e7f5223f61278cd5a9096d8d0f33d1d648a
 SIZE (d49a0855a33b.patch) = 1388
 SHA256 (f29ff57d6ccd.patch) = 9200b95da26ee34ef106cb3f2eed75d95eed7e9911a7632923b3d885409f9406
 SIZE (f29ff57d6ccd.patch) = 858
+SHA256 (c18b3945a1cc.patch) = 3293a0f2a77e568efa1c1d6f6c845e9e31cd72491306c0b65e80db42bc261073
+SIZE (c18b3945a1cc.patch) = 5238
diff --git a/audio/webrtc-audio-processing/files/patch-powerpc64 b/audio/webrtc-audio-processing/files/patch-powerpc64
new file mode 100644
index 000000000000..b9982cf783a1
--- /dev/null
+++ b/audio/webrtc-audio-processing/files/patch-powerpc64
@@ -0,0 +1,67 @@
+Modified https://gitlab.freedesktop.org/pulseaudio/webrtc-audio-processing/-/merge_requests/17/diffs?commit_id=c18b3945a1cc for FreeBSD + pffft patch to include altivec.h.
+--- webrtc/common_audio/wav_file.cc.orig	2020-11-27 19:30:53 UTC
++++ webrtc/common_audio/wav_file.cc
+@@ -14,7 +14,7 @@
+ 
+ #include <algorithm>
+ #include <array>
+-#include <byteswap.h>
++#include <sys/endian.h>
+ #include <cstdio>
+ #include <type_traits>
+ #include <utility>
+@@ -123,7 +123,7 @@ size_t WavReader::ReadSamples(const size_t num_samples
+   }
+ #ifndef WEBRTC_ARCH_LITTLE_ENDIAN
+   for (size_t i = 0; i < num_samples; i++) {
+-    samples[i] = bswap_16(samples[i]);
++    samples[i] = bswap16(samples[i]);
+   }
+ #endif
+ 
+@@ -171,7 +171,7 @@ size_t WavReader::ReadSamples(const size_t num_samples
+ #ifndef WEBRTC_ARCH_LITTLE_ENDIAN
+   // TODO: is this the right place for this?
+   for (size_t i = 0; i < num_samples; i++) {
+-    samples[i] = bswap_16(samples[i]);
++    samples[i] = bswap16(samples[i]);
+   }
+ #endif
+ 
+@@ -229,7 +229,7 @@ void WavWriter::WriteSamples(const int16_t* samples, s
+ #else
+       std::array<int16_t, kMaxChunksize> converted_samples;
+       for (size_t j = 0; j < num_samples_to_write; ++j) {
+-        converted_samples[j] = bswap_16(samples[i + j]);
++        converted_samples[j] = bswap16(samples[i + j]);
+       }
+       RTC_CHECK(
+           file_.Write(converted_samples.data(),
+@@ -241,7 +241,7 @@ void WavWriter::WriteSamples(const int16_t* samples, s
+       for (size_t j = 0; j < num_samples_to_write; ++j) {
+         int16_t sample = samples[i + j];
+ #ifndef WEBRTC_ARCH_LITTLE_ENDIAN
+-        sample = bswap_16(sample);
++        sample = bswap16(sample);
+ #endif
+         converted_samples[j] = S16ToFloat(sample);
+       }
+@@ -267,7 +267,7 @@ void WavWriter::WriteSamples(const float* samples, siz
+       for (size_t j = 0; j < num_samples_to_write; ++j) {
+         int16_t sample = FloatS16ToS16(samples[i + j]);
+ #ifndef WEBRTC_ARCH_LITTLE_ENDIAN
+-        sample = bswap_16(sample);
++        sample = bswap16(sample);
+ #endif
+         converted_samples[j] = sample;
+       }
+--- webrtc/third_party/pffft/src/pffft.c.orig	2020-11-27 19:30:53 UTC
++++ webrtc/third_party/pffft/src/pffft.c
+@@ -100,6 +100,7 @@
+    Altivec support macros 
+ */
+ #if !defined(PFFFT_SIMD_DISABLE) && (defined(__ppc__) || defined(__ppc64__))
++#include <altivec.h>
+ typedef vector float v4sf;
+ #  define SIMD_SZ 4
+ #  define VZERO() ((vector float) vec_splat_u8(0))
diff --git a/audio/webrtc-audio-processing/files/patch-powerpc64.patch b/audio/webrtc-audio-processing/files/patch-powerpc64.patch
deleted file mode 100644
index c7eba0e841cd..000000000000
--- a/audio/webrtc-audio-processing/files/patch-powerpc64.patch
+++ /dev/null
@@ -1,140 +0,0 @@
-Modified https://gitlab.freedesktop.org/pulseaudio/webrtc-audio-processing/-/merge_requests/17/diffs?commit_id=d49a0855a33bb56cc1935642c0d4bf7a3f474fbd for FreeBSD + pffft patch to include altivec.h.
---- webrtc/common_audio/wav_file.cc
-+++ webrtc/common_audio/wav_file.cc
-@@ -14,6 +14,7 @@
- 
- #include <algorithm>
- #include <array>
-+#include <sys/endian.h>
- #include <cstdio>
- #include <type_traits>
- #include <utility>
-@@ -89,10 +90,6 @@ void WavReader::Reset() {
- 
- size_t WavReader::ReadSamples(const size_t num_samples,
-                               int16_t* const samples) {
--#ifndef WEBRTC_ARCH_LITTLE_ENDIAN
--#error "Need to convert samples to big-endian when reading from WAV file"
--#endif
--
-   size_t num_samples_left_to_read = num_samples;
-   size_t next_chunk_start = 0;
-   while (num_samples_left_to_read > 0 && num_unread_samples_ > 0) {
-@@ -124,15 +121,16 @@ size_t WavReader::ReadSamples(const size_t num_samples,
-     num_unread_samples_ -= num_samples_read;
-     num_samples_left_to_read -= num_samples_read;
-   }
-+#ifndef WEBRTC_ARCH_LITTLE_ENDIAN
-+  for (size_t i = 0; i < num_samples; i++) {
-+    samples[i] = bswap16(samples[i]);
-+  }
-+#endif
- 
-   return num_samples - num_samples_left_to_read;
- }
- 
- size_t WavReader::ReadSamples(const size_t num_samples, float* const samples) {
--#ifndef WEBRTC_ARCH_LITTLE_ENDIAN
--#error "Need to convert samples to big-endian when reading from WAV file"
--#endif
--
-   size_t num_samples_left_to_read = num_samples;
-   size_t next_chunk_start = 0;
-   while (num_samples_left_to_read > 0 && num_unread_samples_ > 0) {
-@@ -170,6 +168,12 @@ size_t WavReader::ReadSamples(const size_t num_samples, float* const samples) {
-     num_unread_samples_ -= num_samples_read;
-     num_samples_left_to_read -= num_samples_read;
-   }
-+#ifndef WEBRTC_ARCH_LITTLE_ENDIAN
-+  // TODO: is this the right place for this?
-+  for (size_t i = 0; i < num_samples; i++) {
-+    samples[i] = bswap16(samples[i]);
-+  }
-+#endif
- 
-   return num_samples - num_samples_left_to_read;
- }
-@@ -213,23 +217,33 @@ WavWriter::WavWriter(FileWrapper file,
- }
- 
- void WavWriter::WriteSamples(const int16_t* samples, size_t num_samples) {
--#ifndef WEBRTC_ARCH_LITTLE_ENDIAN
--#error "Need to convert samples to little-endian when writing to WAV file"
--#endif
--
-   for (size_t i = 0; i < num_samples; i += kMaxChunksize) {
-     const size_t num_remaining_samples = num_samples - i;
-     const size_t num_samples_to_write =
-         std::min(kMaxChunksize, num_remaining_samples);
- 
-     if (format_ == WavFormat::kWavFormatPcm) {
-+#ifndef WEBRTC_ARCH_LITTLE_ENDIAN
-       RTC_CHECK(
-           file_.Write(&samples[i], num_samples_to_write * sizeof(samples[0])));
-+#else
-+      std::array<int16_t, kMaxChunksize> converted_samples;
-+      for (size_t j = 0; j < num_samples_to_write; ++j) {
-+        converted_samples[j] = bswap16(samples[i + j]);
-+      }
-+      RTC_CHECK(
-+          file_.Write(converted_samples.data(),
-+                      num_samples_to_write * sizeof(converted_samples[0])));
-+#endif
-     } else {
-       RTC_CHECK_EQ(format_, WavFormat::kWavFormatIeeeFloat);
-       std::array<float, kMaxChunksize> converted_samples;
-       for (size_t j = 0; j < num_samples_to_write; ++j) {
--        converted_samples[j] = S16ToFloat(samples[i + j]);
-+        int16_t sample = samples[i + j];
-+#ifndef WEBRTC_ARCH_LITTLE_ENDIAN
-+        sample = bswap16(sample);
-+#endif
-+        converted_samples[j] = S16ToFloat(sample);
-       }
-       RTC_CHECK(
-           file_.Write(converted_samples.data(),
-@@ -243,10 +257,6 @@ void WavWriter::WriteSamples(const int16_t* samples, size_t num_samples) {
- }
- 
- void WavWriter::WriteSamples(const float* samples, size_t num_samples) {
--#ifndef WEBRTC_ARCH_LITTLE_ENDIAN
--#error "Need to convert samples to little-endian when writing to WAV file"
--#endif
--
-   for (size_t i = 0; i < num_samples; i += kMaxChunksize) {
-     const size_t num_remaining_samples = num_samples - i;
-     const size_t num_samples_to_write =
-@@ -255,7 +265,11 @@ void WavWriter::WriteSamples(const float* samples, size_t num_samples) {
-     if (format_ == WavFormat::kWavFormatPcm) {
-       std::array<int16_t, kMaxChunksize> converted_samples;
-       for (size_t j = 0; j < num_samples_to_write; ++j) {
--        converted_samples[j] = FloatS16ToS16(samples[i + j]);
-+        int16_t sample = FloatS16ToS16(samples[i + j]);
-+#ifndef WEBRTC_ARCH_LITTLE_ENDIAN
-+        sample = bswap16(sample);
-+#endif
-+        converted_samples[j] = sample;
-       }
-       RTC_CHECK(
-           file_.Write(converted_samples.data(),
-@@ -264,6 +278,7 @@ void WavWriter::WriteSamples(const float* samples, size_t num_samples) {
-       RTC_CHECK_EQ(format_, WavFormat::kWavFormatIeeeFloat);
-       std::array<float, kMaxChunksize> converted_samples;
-       for (size_t j = 0; j < num_samples_to_write; ++j) {
-+        // TODO: is swap needed for big-endian here?
-         converted_samples[j] = FloatS16ToFloat(samples[i + j]);
-       }
-       RTC_CHECK(
--- 
-GitLab
-
---- webrtc/third_party/pffft/src/pffft.c.orig	2022-02-26 18:37:29 UTC
-+++ webrtc/third_party/pffft/src/pffft.c
-@@ -100,6 +100,7 @@
-    Altivec support macros 
- */
- #if !defined(PFFFT_SIMD_DISABLE) && (defined(__ppc__) || defined(__ppc64__))
-+#include <altivec.h>
- typedef vector float v4sf;
- #  define SIMD_SZ 4
- #  define VZERO() ((vector float) vec_splat_u8(0))



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202306021832.352IWGsC087258>