summaryrefslogtreecommitdiffstats
path: root/meta-pipewire/recipes-multimedia/pipewire
diff options
context:
space:
mode:
authorAshok Sidipotu <ashok.sidipotu@collabora.com>2023-12-20 01:05:41 +0100
committerJan-Simon Moeller <jsmoeller@linuxfoundation.org>2023-12-29 15:57:56 +0000
commit4b6d23485d23dad66b2e5572cdedacca5c1f6362 (patch)
tree0455f936859ddcc7490ed9998f46bc3d843e26af /meta-pipewire/recipes-multimedia/pipewire
parent64258485d6d09977a27c1313a39c4567b0d5ac71 (diff)
pipewire: Update PipeWire to v1.0.0 and WirePlumber to v0.4.17
The PipeWire project is immensely proud to announce the 1.0 release of PipeWire. Highlights of Pipewire. - Fix a memfd/dmabuf leak when uploading buffers while shutting down. - Handle concurrent jack_port_get_buffer() calls because ardour seems to be doing this. - Improve time reporting (less jitter) in ALSA when using IRQ. - Many doc improvements Highlights of wireplumber. - Fixed a reference counting issue in the object managers that could cause crashes due to memory corruption (#534) - Fixed an issue with filters linking to wrong targets, often with two sets of links (#536) - Fixed a crash in the endpoints policy that would show up when log messages were enabled at level 3 or higher Bug-AGL: SPEC-5022 Change-Id: Ibeff85f7f4b02b8b667e4c6caf6beab4487854bc Signed-off-by: Ashok Sidipotu <ashok.sidipotu@collabora.com> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/29546 Tested-by: Jenkins Job builder account ci-image-build: Jenkins Job builder account ci-image-boot-test: Jenkins Job builder account Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
Diffstat (limited to 'meta-pipewire/recipes-multimedia/pipewire')
-rw-r--r--meta-pipewire/recipes-multimedia/pipewire/pipewire/0002-gst-avoid-reporting-error-twice.patch62
-rw-r--r--meta-pipewire/recipes-multimedia/pipewire/pipewire/0003-gstpipewiresrc-break-out-of-wait_started-also-on-STA.patch38
-rw-r--r--meta-pipewire/recipes-multimedia/pipewire/pipewire_1.0.0.bb (renamed from meta-pipewire/recipes-multimedia/pipewire/pipewire_0.3.83.bb)5
-rw-r--r--meta-pipewire/recipes-multimedia/pipewire/pipewire_1.0.0.bbappend (renamed from meta-pipewire/recipes-multimedia/pipewire/pipewire_0.3.83.bbappend)2
4 files changed, 3 insertions, 104 deletions
diff --git a/meta-pipewire/recipes-multimedia/pipewire/pipewire/0002-gst-avoid-reporting-error-twice.patch b/meta-pipewire/recipes-multimedia/pipewire/pipewire/0002-gst-avoid-reporting-error-twice.patch
deleted file mode 100644
index fa123a07f..000000000
--- a/meta-pipewire/recipes-multimedia/pipewire/pipewire/0002-gst-avoid-reporting-error-twice.patch
+++ /dev/null
@@ -1,62 +0,0 @@
-From cbb12450c2f258ef3ac8239889784e1a97dfeaa8 Mon Sep 17 00:00:00 2001
-From: George Kiagiadakis <george.kiagiadakis@collabora.com>
-Date: Wed, 8 Nov 2023 18:12:59 +0200
-Subject: [PATCH 1/2] gst: avoid reporting error twice
-
-First, make the error permanent by calling pw_stream_set_error()
-and when this emits an error state again, report that to GStreamer.
-
-Do the same in pipewiresink, which didn't even have the
-pw_stream_set_error() call before, so the stream wasn't really going
-into an error state at all.
-
-Upstream-Status: Pipewire MR1763 merged
----
- src/gst/gstpipewiresink.c | 9 +++++++--
- src/gst/gstpipewiresrc.c | 10 +++++++---
- 2 files changed, 14 insertions(+), 5 deletions(-)
-
-diff --git a/src/gst/gstpipewiresink.c b/src/gst/gstpipewiresink.c
-index 36d158095..001ede9d5 100644
---- a/src/gst/gstpipewiresink.c
-+++ b/src/gst/gstpipewiresink.c
-@@ -532,8 +532,13 @@ on_state_changed (void *data, enum pw_stream_state old, enum pw_stream_state sta
- pw_stream_trigger_process (pwsink->stream);
- break;
- case PW_STREAM_STATE_ERROR:
-- GST_ELEMENT_ERROR (pwsink, RESOURCE, FAILED,
-- ("stream error: %s", error), (NULL));
-+ /* make the error permanent, if it is not already;
-+ pw_stream_set_error() will recursively call us again */
-+ if (pw_stream_get_state (pwsink->stream, NULL) != PW_STREAM_STATE_ERROR)
-+ pw_stream_set_error (pwsink->stream, -EPIPE, "%s", error);
-+ else
-+ GST_ELEMENT_ERROR (pwsink, RESOURCE, FAILED,
-+ ("stream error: %s", error), (NULL));
- break;
- }
- pw_thread_loop_signal (pwsink->core->loop, FALSE);
-diff --git a/src/gst/gstpipewiresrc.c b/src/gst/gstpipewiresrc.c
-index 0514e4caa..e473338ba 100644
---- a/src/gst/gstpipewiresrc.c
-+++ b/src/gst/gstpipewiresrc.c
-@@ -681,9 +681,13 @@ on_state_changed (void *data,
- case PW_STREAM_STATE_STREAMING:
- break;
- case PW_STREAM_STATE_ERROR:
-- pw_stream_set_error (pwsrc->stream, -EPIPE, "%s", error);
-- GST_ELEMENT_ERROR (pwsrc, RESOURCE, FAILED,
-- ("stream error: %s", error), (NULL));
-+ /* make the error permanent, if it is not already;
-+ pw_stream_set_error() will recursively call us again */
-+ if (pw_stream_get_state (pwsrc->stream, NULL) != PW_STREAM_STATE_ERROR)
-+ pw_stream_set_error (pwsrc->stream, -EPIPE, "%s", error);
-+ else
-+ GST_ELEMENT_ERROR (pwsrc, RESOURCE, FAILED,
-+ ("stream error: %s", error), (NULL));
- break;
- }
- pw_thread_loop_signal (pwsrc->core->loop, FALSE);
---
-2.41.0
-
diff --git a/meta-pipewire/recipes-multimedia/pipewire/pipewire/0003-gstpipewiresrc-break-out-of-wait_started-also-on-STA.patch b/meta-pipewire/recipes-multimedia/pipewire/pipewire/0003-gstpipewiresrc-break-out-of-wait_started-also-on-STA.patch
deleted file mode 100644
index 29bc50472..000000000
--- a/meta-pipewire/recipes-multimedia/pipewire/pipewire/0003-gstpipewiresrc-break-out-of-wait_started-also-on-STA.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From 4fb8417b201033ae2de20032b44d52cae1394ff8 Mon Sep 17 00:00:00 2001
-From: George Kiagiadakis <george.kiagiadakis@collabora.com>
-Date: Wed, 8 Nov 2023 18:23:02 +0200
-Subject: [PATCH 2/2] gstpipewiresrc: break out of wait_started() also on
- STATE_UNCONNECTED
-
-When the session manager sends an error to the client, it typically
-also destroys the node after the error, which causes the stream to go
-to STATE_UNCONNECTED via proxy_removed(). In that case, make sure
-we exit the loop early, otherwise it will take 30 seconds to unblock
-gst_element_set_state()
-
-Upstream-Status: Pipewire MR1763 merged
----
- src/gst/gstpipewiresrc.c | 7 +++----
- 1 file changed, 3 insertions(+), 4 deletions(-)
-
-diff --git a/src/gst/gstpipewiresrc.c b/src/gst/gstpipewiresrc.c
-index e473338ba..e3b86b373 100644
---- a/src/gst/gstpipewiresrc.c
-+++ b/src/gst/gstpipewiresrc.c
-@@ -783,10 +783,9 @@ wait_started (GstPipeWireSrc *this)
- GST_DEBUG_OBJECT (this, "waiting for started signal, state now %s",
- pw_stream_state_as_string (state));
-
-- if (state == PW_STREAM_STATE_ERROR)
-- break;
--
-- if (this->flushing) {
-+ if (state == PW_STREAM_STATE_ERROR ||
-+ state == PW_STREAM_STATE_UNCONNECTED ||
-+ this->flushing) {
- state = PW_STREAM_STATE_ERROR;
- break;
- }
---
-2.41.0
-
diff --git a/meta-pipewire/recipes-multimedia/pipewire/pipewire_0.3.83.bb b/meta-pipewire/recipes-multimedia/pipewire/pipewire_1.0.0.bb
index 0ac4d0937..641c97e8f 100644
--- a/meta-pipewire/recipes-multimedia/pipewire/pipewire_0.3.83.bb
+++ b/meta-pipewire/recipes-multimedia/pipewire/pipewire_1.0.0.bb
@@ -20,8 +20,8 @@ SECTION = "multimedia"
DEPENDS = "dbus"
-# v0.3.83
-SRCREV = "6fd7f39dbec9c3a65aa2de0123c6bfbda7c53a85"
+# v1.0.0(El Presidente)
+SRCREV = "4debdcd40b055b3eaa83a8f4443aa990ea566bfe"
SRC_URI = "git://gitlab.freedesktop.org/pipewire/pipewire.git;branch=master;protocol=https"
S = "${WORKDIR}/git"
@@ -233,6 +233,7 @@ FILES:${PN} = " \
${datadir}/pipewire/filter-chain.conf \
${datadir}/pipewire/filter-chain \
${systemd_user_unitdir}/pipewire.* \
+ ${systemd_system_unitdir}/pipewire* \
${bindir}/pipewire \
${datadir}/pipewire/pipewire-avb.conf \
${bindir}/pipewire-avb \
diff --git a/meta-pipewire/recipes-multimedia/pipewire/pipewire_0.3.83.bbappend b/meta-pipewire/recipes-multimedia/pipewire/pipewire_1.0.0.bbappend
index 6b920abd3..beb7c0817 100644
--- a/meta-pipewire/recipes-multimedia/pipewire/pipewire_0.3.83.bbappend
+++ b/meta-pipewire/recipes-multimedia/pipewire/pipewire_1.0.0.bbappend
@@ -1,7 +1,5 @@
SRC_URI += "\
file://0001-systemd-Do-not-override-rootprefix.patch \
- file://0002-gst-avoid-reporting-error-twice.patch \
- file://0003-gstpipewiresrc-break-out-of-wait_started-also-on-STA.patch \
"
PACKAGECONFIG = "\