diff options
Diffstat (limited to 'meta-pipewire/recipes-multimedia/pipewire')
-rw-r--r-- | meta-pipewire/recipes-multimedia/pipewire/pipewire/0002-gst-avoid-reporting-error-twice.patch | 62 | ||||
-rw-r--r-- | meta-pipewire/recipes-multimedia/pipewire/pipewire/0003-gstpipewiresrc-break-out-of-wait_started-also-on-STA.patch | 38 | ||||
-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 = "\ |