[packages/pipewire] upstream patch for setting correct sample rate on device; rel 2
atler
atler at pld-linux.org
Thu Dec 30 10:22:15 CET 2021
commit 02862e89a1a3195b87e53291d0fd9d1b12ca083d
Author: Jan Palus <atler at pld-linux.org>
Date: Thu Dec 30 10:20:39 2021 +0100
upstream patch for setting correct sample rate on device; rel 2
pipewire-samplerate.patch | 33 +++++++++++++++++++++++++++++++++
pipewire.spec | 4 +++-
2 files changed, 36 insertions(+), 1 deletion(-)
---
diff --git a/pipewire.spec b/pipewire.spec
index 5a50b69..4fd33dd 100644
--- a/pipewire.spec
+++ b/pipewire.spec
@@ -12,13 +12,14 @@ Summary: PipeWire - server and user space API to deal with multimedia pipelines
Summary(pl.UTF-8): PipeWire - serwer i API przestrzeni użytkownika do obsługi potoków multimedialnych
Name: pipewire
Version: 0.3.42
-Release: 1
+Release: 2
License: MIT, LGPL v2+, GPL v2
Group: Libraries
#Source0Download: https://github.com/PipeWire/pipewire/releases
Source0: https://github.com/PipeWire/pipewire/archive/%{version}/%{name}-%{version}.tar.gz
# Source0-md5: 4bf2cdfe19e65dea03906b86f3707db4
Patch0: %{name}-gcc.patch
+Patch1: %{name}-samplerate.patch
URL: https://pipewire.org/
%if %{with jack}
BuildRequires: SDL2-devel >= 2
@@ -257,6 +258,7 @@ Wtyczka udostępniająca źródło i cel obrazu PipeWire dla GStreamera.
%prep
%setup -q
%patch0 -p1
+%patch1 -p1
%build
%meson build \
diff --git a/pipewire-samplerate.patch b/pipewire-samplerate.patch
new file mode 100644
index 0000000..8c02dc0
--- /dev/null
+++ b/pipewire-samplerate.patch
@@ -0,0 +1,33 @@
+From ee0fcf05c17db0e5d5775d94c8911af7821c868f Mon Sep 17 00:00:00 2001
+From: Wim Taymans <wtaymans at redhat.com>
+Date: Thu, 16 Dec 2021 11:39:46 +0100
+Subject: [PATCH] context: apply new quantum and rate when driver is idle
+
+When the driver is IDLE, apply the quantum and rate immediately
+so that we can use the values when starting the driver.
+
+See #1913
+---
+ src/pipewire/context.c | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/src/pipewire/context.c b/src/pipewire/context.c
+index 84eca3bda..a3551c2b8 100644
+--- a/src/pipewire/context.c
++++ b/src/pipewire/context.c
+@@ -1246,6 +1246,12 @@ again:
+ n->current_pending = true;
+ }
+
++ if (n->info.state < PW_NODE_STATE_RUNNING && n->current_pending) {
++ n->rt.position->clock.duration = n->current_quantum;
++ n->rt.position->clock.rate = n->current_rate;
++ n->current_pending = false;
++ }
++
+ pw_log_debug("%p: driving %p running:%d passive:%d quantum:%u '%s'",
+ context, n, running, n->passive, quantum, n->name);
+
+--
+GitLab
+
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/pipewire.git/commitdiff/02862e89a1a3195b87e53291d0fd9d1b12ca083d
More information about the pld-cvs-commit
mailing list