summaryrefslogtreecommitdiff
path: root/media-video/pipewire/files/0.3.64
diff options
context:
space:
mode:
Diffstat (limited to 'media-video/pipewire/files/0.3.64')
-rw-r--r--media-video/pipewire/files/0.3.64/0001-spa-Fix-audioconvert-overflow-when-scaling.patch65
-rw-r--r--media-video/pipewire/files/0.3.64/0002-filter-chain-fix-AVX-dsp_sum-index-increment.patch22
-rw-r--r--media-video/pipewire/files/0.3.64/0003-keys-don-t-remove-deprecated-symbols-by-default.patch61
3 files changed, 0 insertions, 148 deletions
diff --git a/media-video/pipewire/files/0.3.64/0001-spa-Fix-audioconvert-overflow-when-scaling.patch b/media-video/pipewire/files/0.3.64/0001-spa-Fix-audioconvert-overflow-when-scaling.patch
deleted file mode 100644
index e24b8153ef6d..000000000000
--- a/media-video/pipewire/files/0.3.64/0001-spa-Fix-audioconvert-overflow-when-scaling.patch
+++ /dev/null
@@ -1,65 +0,0 @@
-https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/1d9640af5a7906620f214aa0a39c63128c8506a6.
-
-From 1d9640af5a7906620f214aa0a39c63128c8506a6 Mon Sep 17 00:00:00 2001
-From: Wim Taymans <wtaymans@redhat.com>
-Date: Mon, 16 Jan 2023 18:28:31 +0100
-Subject: [PATCH] spa: Fix audioconvert overflow when scaling
-
-Add SPA_SCALE32_UP that scales a uint32 without overflow.
-Use this for scaling the threshold in ALSA.
-Fix the scaling in audioconvert of the buffer size, the scaling was
-wrong and it was also causing an overflow resulting in choppy sound in
-some cases.
-
-See #2680
---- a/spa/include/spa/utils/defs.h
-+++ b/spa/include/spa/utils/defs.h
-@@ -274,6 +274,14 @@ struct spa_fraction {
- #define SPA_ROUND_DOWN_N(num,align) ((num) & ~SPA_ROUND_MASK(num, align))
- #define SPA_ROUND_UP_N(num,align) ((((num)-1) | SPA_ROUND_MASK(num, align))+1)
-
-+#define SPA_SCALE32_UP(val,num,denom) \
-+({ \
-+ uint64_t _val = (val); \
-+ uint64_t _denom = (denom); \
-+ (uint32_t)(((_val) * (num) + (_denom)-1) / (_denom)); \
-+})
-+
-+
- #define SPA_PTR_ALIGNMENT(p,align) ((intptr_t)(p) & ((align)-1))
- #define SPA_IS_ALIGNED(p,align) (SPA_PTR_ALIGNMENT(p,align) == 0)
- #define SPA_PTR_ALIGN(p,align,type) ((type*)SPA_ROUND_UP_N((intptr_t)(p), (intptr_t)(align)))
---- a/spa/plugins/alsa/alsa-pcm.c
-+++ b/spa/plugins/alsa/alsa-pcm.c
-@@ -1999,7 +1999,7 @@ static inline void check_position_config(struct state *state)
- (state->rate_denom != state->position->clock.rate.denom))) {
- state->duration = state->position->clock.duration;
- state->rate_denom = state->position->clock.rate.denom;
-- state->threshold = (state->duration * state->rate + state->rate_denom-1) / state->rate_denom;
-+ state->threshold = SPA_SCALE32_UP(state->duration, state->rate, state->rate_denom);
- state->max_error = SPA_MAX(256.0f, state->threshold / 2.0f);
- state->resample = ((uint32_t)state->rate != state->rate_denom) || state->matching;
- state->alsa_sync = true;
-@@ -2569,7 +2569,7 @@ int spa_alsa_start(struct state *state)
- setup_matching(state);
-
- spa_dll_init(&state->dll);
-- state->threshold = (state->duration * state->rate + state->rate_denom-1) / state->rate_denom;
-+ state->threshold = SPA_SCALE32_UP(state->duration, state->rate, state->rate_denom);
- state->last_threshold = state->threshold;
- state->max_error = SPA_MAX(256.0f, state->threshold / 2.0f);
-
---- a/spa/plugins/audioconvert/audioconvert.c
-+++ b/spa/plugins/audioconvert/audioconvert.c
-@@ -1755,7 +1755,7 @@ impl_node_port_enum_params(void *object, int seq,
- size = this->quantum_limit * 2;
- /* scale the buffer size when we can. */
- if (irate != 0 && orate != 0)
-- size = size * (irate + orate - 1) / orate;
-+ size = SPA_SCALE32_UP(size, irate, orate);
- }
-
- param = spa_pod_builder_add_object(&b,
---
-2.39.1
-
diff --git a/media-video/pipewire/files/0.3.64/0002-filter-chain-fix-AVX-dsp_sum-index-increment.patch b/media-video/pipewire/files/0.3.64/0002-filter-chain-fix-AVX-dsp_sum-index-increment.patch
deleted file mode 100644
index f33a83ab7a10..000000000000
--- a/media-video/pipewire/files/0.3.64/0002-filter-chain-fix-AVX-dsp_sum-index-increment.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/ccedf1722ae44c97ec0d058b349494c67a0b56dc
-
-From ccedf1722ae44c97ec0d058b349494c67a0b56dc Mon Sep 17 00:00:00 2001
-From: Wim Taymans <wtaymans@redhat.com>
-Date: Tue, 17 Jan 2023 09:24:00 +0100
-Subject: [PATCH] filter-chain: fix AVX dsp_sum index increment
-
-Fixes #2965
---- a/src/modules/module-filter-chain/dsp-ops-avx.c
-+++ b/src/modules/module-filter-chain/dsp-ops-avx.c
-@@ -59,7 +59,7 @@ void dsp_sum_avx(struct dsp_ops *ops, float *r, const float *a, const float *b,
- _mm256_store_ps(&r[n+24], in[3]);
- }
- } else {
-- for (n = 0; n < unrolled; n += 16) {
-+ for (n = 0; n < unrolled; n += 32) {
- in[0] = _mm256_loadu_ps(&a[n+ 0]);
- in[1] = _mm256_loadu_ps(&a[n+ 8]);
- in[2] = _mm256_loadu_ps(&a[n+16]);
---
-2.39.1
-
diff --git a/media-video/pipewire/files/0.3.64/0003-keys-don-t-remove-deprecated-symbols-by-default.patch b/media-video/pipewire/files/0.3.64/0003-keys-don-t-remove-deprecated-symbols-by-default.patch
deleted file mode 100644
index fe022959a913..000000000000
--- a/media-video/pipewire/files/0.3.64/0003-keys-don-t-remove-deprecated-symbols-by-default.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/a979c0f43078cbfefa2ba614ee078579042d2de2
-
-From a979c0f43078cbfefa2ba614ee078579042d2de2 Mon Sep 17 00:00:00 2001
-From: Wim Taymans <wtaymans@redhat.com>
-Date: Tue, 17 Jan 2023 11:58:04 +0100
-Subject: [PATCH] keys: don't remove deprecated symbols by default
-
-Add a new macro to mark deprecated keys. The macro will emit a warning
-about the symbol being deprecated.
-PW_ENABLE_DEPRECATED will suppress the deprecation warning.
-Add PW_REMOVE_DEPRECATED to completely remove the deprecated symbols.
-
-Fixes #2952
---- a/src/pipewire/keys.h
-+++ b/src/pipewire/keys.h
-@@ -29,6 +29,7 @@
- extern "C" {
- #endif
-
-+#include <pipewire/utils.h>
- /**
- * \defgroup pw_keys Key Names
- *
-@@ -337,14 +338,14 @@ extern "C" {
- #define PW_KEY_VIDEO_FORMAT "video.format" /**< a video format */
- #define PW_KEY_VIDEO_SIZE "video.size" /**< a video size as "<width>x<height" */
-
--#ifdef PW_ENABLE_DEPRECATED
--#define PW_KEY_PRIORITY_MASTER "priority.master" /**< deprecated */
--#define PW_KEY_NODE_TARGET "node.target" /**< deprecated since 0.3.64, use target.object. */
--#endif /* PW_ENABLE_DEPRECATED */
--
- #define PW_KEY_TARGET_OBJECT "target.object" /**< a target object to link to. This can be
- * and object name or object.serial */
-
-+#ifndef PW_REMOVE_DEPRECATED
-+#define PW_KEY_PRIORITY_MASTER PW_DEPRECATED("priority.master") /**< deprecated, use priority.driver */
-+#define PW_KEY_NODE_TARGET PW_DEPRECATED("node.target") /**< deprecated since 0.3.64, use target.object. */
-+#endif /* PW_REMOVE_DEPRECATED */
-+
- /** \}
- */
-
---- a/src/pipewire/utils.h
-+++ b/src/pipewire/utils.h
-@@ -94,6 +94,12 @@ ssize_t pw_getrandom(void *buf, size_t buflen, unsigned int flags);
-
- void* pw_reallocarray(void *ptr, size_t nmemb, size_t size);
-
-+#ifdef PW_ENABLE_DEPRECATED
-+#define PW_DEPRECATED(v) (v)
-+#else
-+#define PW_DEPRECATED(v) ({ __typeof__(v) _v SPA_DEPRECATED = (v); (void)_v; (v); })
-+#endif /* PW_ENABLE_DEPRECATED */
-+
- /**
- * \}
- */
---
-2.39.1
-