pipewire: update to 0.3.71, drop pipewire-media-session
Now depends on virtual session manager Closes: #43574 [via git-merge-pr]
This commit is contained in:
parent
955c9ebdec
commit
43889c8f6b
4 changed files with 60 additions and 40 deletions
|
@ -1,4 +1,2 @@
|
||||||
The pipewire-media-session session manager has been abandoned upstream and will
|
The pipewire-media-session session manager has been removed from Void.
|
||||||
be removed from Void in a subsequent pipewire update. All users are encouraged
|
All users must transition to wireplumber to avoid loss of functionality.
|
||||||
to transition to wireplumber as soon as possible to avoid unexpected loss of
|
|
||||||
functionality in the future.
|
|
||||||
|
|
|
@ -1,17 +0,0 @@
|
||||||
Upstream's config does not autostart pipewire-media-session anymore, which
|
|
||||||
is an essential component. It's not easy to start it externally in a script
|
|
||||||
since it needs the pipewire socket up, and Void doesn't have a mechanism to
|
|
||||||
ensure it (systemd socket activation).
|
|
||||||
diff --git a/src/daemon/pipewire.conf.in.orig b/src/daemon/pipewire.conf.in
|
|
||||||
index 95632c2..ab0b097 100644
|
|
||||||
--- a/src/daemon/pipewire.conf.in.orig
|
|
||||||
+++ b/src/daemon/pipewire.conf.in
|
|
||||||
@@ -236,7 +236,7 @@
|
|
||||||
# but it is better to start it as a systemd service.
|
|
||||||
# Run the session manager with -h for options.
|
|
||||||
#
|
|
||||||
- @sm_comment@{ path = "@session_manager_path@" args = "@session_manager_args@" }
|
|
||||||
+ { path = "@session_manager_path@" args = "@session_manager_args@" }
|
|
||||||
#
|
|
||||||
# You can optionally start the pulseaudio-server here as well
|
|
||||||
# but it is better to start it as a systemd service.
|
|
50
srcpkgs/pipewire/patches/jack-fix-notify-skip.patch
Normal file
50
srcpkgs/pipewire/patches/jack-fix-notify-skip.patch
Normal file
|
@ -0,0 +1,50 @@
|
||||||
|
From ce71b37b58d5e251ae7acda0799f696688df11c2 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Wim Taymans <wtaymans@redhat.com>
|
||||||
|
Date: Thu, 18 May 2023 09:59:26 +0200
|
||||||
|
Subject: [PATCH] jack: update bufsize and samplerate when skipping notify
|
||||||
|
|
||||||
|
When we skip the notify because we are not active or we don't have a
|
||||||
|
callback, still update the buffer_size and sample_rate fields or else
|
||||||
|
we will keep on trying forever.
|
||||||
|
|
||||||
|
Fixes #3226
|
||||||
|
---
|
||||||
|
pipewire-jack/src/pipewire-jack.c | 14 +++++++++++---
|
||||||
|
1 file changed, 11 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/pipewire-jack/src/pipewire-jack.c b/pipewire-jack/src/pipewire-jack.c
|
||||||
|
index 0c8363ea3..20feb2462 100644
|
||||||
|
--- a/pipewire-jack/src/pipewire-jack.c
|
||||||
|
+++ b/pipewire-jack/src/pipewire-jack.c
|
||||||
|
@@ -1027,8 +1027,6 @@ static int queue_notify(struct client *c, int type, struct object *o, int arg1,
|
||||||
|
struct notify *notify;
|
||||||
|
bool emit = false;;
|
||||||
|
|
||||||
|
- if ((type & NOTIFY_ACTIVE_FLAG) && !c->active)
|
||||||
|
- return 0;
|
||||||
|
switch (type) {
|
||||||
|
case NOTIFY_TYPE_REGISTRATION:
|
||||||
|
emit = c->registration_callback != NULL && o != NULL;
|
||||||
|
@@ -1060,8 +1058,18 @@ static int queue_notify(struct client *c, int type, struct object *o, int arg1,
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
+ if ((type & NOTIFY_ACTIVE_FLAG) && !c->active)
|
||||||
|
+ emit = false;
|
||||||
|
if (!emit) {
|
||||||
|
- pw_log_debug("%p: skip notify %d", c, type);
|
||||||
|
+ switch (type) {
|
||||||
|
+ case NOTIFY_TYPE_BUFFER_FRAMES:
|
||||||
|
+ c->buffer_frames = arg1;
|
||||||
|
+ break;
|
||||||
|
+ case NOTIFY_TYPE_SAMPLE_RATE:
|
||||||
|
+ c->sample_rate = arg1;
|
||||||
|
+ break;
|
||||||
|
+ }
|
||||||
|
+ pw_log_debug("%p: skip notify %08x active:%d", c, type, c->active);
|
||||||
|
if (o != NULL && arg1 == 0 && o->removing) {
|
||||||
|
o->removing = false;
|
||||||
|
free_object(c, o);
|
||||||
|
--
|
||||||
|
GitLab
|
||||||
|
|
|
@ -1,9 +1,7 @@
|
||||||
# Template file for 'pipewire'
|
# Template file for 'pipewire'
|
||||||
pkgname=pipewire
|
pkgname=pipewire
|
||||||
version=0.3.68
|
version=0.3.71
|
||||||
revision=1
|
revision=1
|
||||||
_pms_version=0.4.2
|
|
||||||
build_wrksrc="${pkgname}-${version}"
|
|
||||||
build_style=meson
|
build_style=meson
|
||||||
configure_args="
|
configure_args="
|
||||||
--auto-features=enabled
|
--auto-features=enabled
|
||||||
|
@ -15,9 +13,8 @@ configure_args="
|
||||||
-Dsystemd=disabled
|
-Dsystemd=disabled
|
||||||
-Dudevrulesdir=/usr/lib/udev/rules.d
|
-Dudevrulesdir=/usr/lib/udev/rules.d
|
||||||
-Dvulkan=enabled
|
-Dvulkan=enabled
|
||||||
-Dmedia-session:systemd=disabled
|
|
||||||
-Dbluez5-codec-lc3plus=disabled
|
-Dbluez5-codec-lc3plus=disabled
|
||||||
-Dsession-managers=media-session
|
-Dsession-managers=[]
|
||||||
-Drlimits-match=@_pipewire
|
-Drlimits-match=@_pipewire
|
||||||
"
|
"
|
||||||
hostmakedepends="doxygen graphviz pkg-config python3-docutils gettext glib-devel"
|
hostmakedepends="doxygen graphviz pkg-config python3-docutils gettext glib-devel"
|
||||||
|
@ -26,23 +23,20 @@ makedepends="$(vopt_if sdl2 SDL2-devel) gst-plugins-base1-devel jack-devel
|
||||||
libfreeaptx-devel libusb-devel fdk-aac-devel libsndfile-devel Vulkan-Headers
|
libfreeaptx-devel libusb-devel fdk-aac-devel libsndfile-devel Vulkan-Headers
|
||||||
vulkan-loader pulseaudio-devel avahi-libs-devel webrtc-audio-processing-devel
|
vulkan-loader pulseaudio-devel avahi-libs-devel webrtc-audio-processing-devel
|
||||||
readline-devel openssl-devel lilv-devel libcanberra-devel dbus-devel
|
readline-devel openssl-devel lilv-devel libcanberra-devel dbus-devel
|
||||||
libmysofa-devel"
|
libmysofa-devel opus-devel"
|
||||||
depends="libspa-alsa>=${version}_${revision} libspa-audioconvert>=${version}_${revision}
|
depends="libspa-alsa>=${version}_${revision} libspa-audioconvert>=${version}_${revision}
|
||||||
libspa-audiomixer>=${version}_${revision} libspa-control>=${version}_${revision}
|
libspa-audiomixer>=${version}_${revision} libspa-control>=${version}_${revision}
|
||||||
libspa-v4l2>=${version}_${revision} pulseaudio-utils"
|
libspa-v4l2>=${version}_${revision} pulseaudio-utils virtual?pipewire-session-manager"
|
||||||
checkdepends="pulseaudio-utils"
|
checkdepends="pulseaudio-utils"
|
||||||
short_desc="Server and user space API to deal with multimedia pipelines"
|
short_desc="Server and user space API to deal with multimedia pipelines"
|
||||||
maintainer="Stefano Ragni <stefano.ragni@outlook.com>"
|
maintainer="Stefano Ragni <stefano.ragni@outlook.com>"
|
||||||
license="MIT"
|
license="MIT"
|
||||||
homepage="https://pipewire.org/"
|
homepage="https://pipewire.org/"
|
||||||
changelog="https://gitlab.freedesktop.org/pipewire/pipewire/-/raw/master/NEWS"
|
changelog="https://gitlab.freedesktop.org/pipewire/pipewire/-/raw/master/NEWS"
|
||||||
distfiles="https://gitlab.freedesktop.org/pipewire/pipewire/-/archive/${version}/pipewire-${version}.tar.gz
|
distfiles="https://gitlab.freedesktop.org/pipewire/pipewire/-/archive/${version}/pipewire-${version}.tar.gz"
|
||||||
https://gitlab.freedesktop.org/pipewire/media-session/-/archive/${_pms_version}/media-session-${_pms_version}.tar.gz"
|
checksum=070dcf83c514903d603351921c7829014c8d9162c49ae5a043290c920f6a6363
|
||||||
checksum="fdcf7f2ee881cdc91ef54b3a558e431bdb3395f7a1e9044753c7a89346fafd91
|
|
||||||
4cf8577d4431e08b0e6f29c1ad6bf8662765ab66986ea6f0151883101811c119"
|
|
||||||
make_dirs="/var/lib/pipewire 0755 _pipewire _pipewire"
|
make_dirs="/var/lib/pipewire 0755 _pipewire _pipewire"
|
||||||
system_accounts="_pipewire"
|
system_accounts="_pipewire"
|
||||||
patch_args="-Np1 --directory=${build_wrksrc}"
|
|
||||||
|
|
||||||
build_options="sdl2"
|
build_options="sdl2"
|
||||||
|
|
||||||
|
@ -59,18 +53,13 @@ else
|
||||||
configure_args+=" -Dbluez5-codec-ldac=disabled"
|
configure_args+=" -Dbluez5-codec-ldac=disabled"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
post_extract() {
|
|
||||||
mv media-session-${_pms_version} ${build_wrksrc}/subprojects/media-session
|
|
||||||
}
|
|
||||||
|
|
||||||
post_install() {
|
post_install() {
|
||||||
vlicense LICENSE
|
vlicense LICENSE
|
||||||
vdoc "${FILESDIR}/README.voidlinux"
|
vdoc "${FILESDIR}/README.voidlinux"
|
||||||
vsv pipewire
|
vsv pipewire
|
||||||
vsv pipewire-pulse
|
vsv pipewire-pulse
|
||||||
vmkdir usr/share/applications
|
vinstall "${FILESDIR}/pipewire.desktop" 644 usr/share/applications
|
||||||
cp "${FILESDIR}/pipewire.desktop" ${DESTDIR}/usr/share/applications/pipewire.desktop
|
vinstall "${FILESDIR}/pipewire-pulse.desktop" 644 usr/share/applications
|
||||||
cp "${FILESDIR}/pipewire-pulse.desktop" ${DESTDIR}/usr/share/applications/pipewire-pulse.desktop
|
|
||||||
}
|
}
|
||||||
|
|
||||||
libpipewire_package() {
|
libpipewire_package() {
|
||||||
|
|
Loading…
Add table
Reference in a new issue