Accepting request 1095401 from multimedia:libs
OBS-URL: https://build.opensuse.org/request/show/1095401 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pipewire?expand=0&rev=86
This commit is contained in:
commit
b8dff6c9d3
@ -1,50 +0,0 @@
|
|||||||
From 1b823f1bc3363c496758a9230c9f5d4ce4491815 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 ee82425a9..ed21ccf76 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);
|
|
||||||
--
|
|
||||||
2.40.1
|
|
||||||
|
|
2
_service
2
_service
@ -3,7 +3,7 @@
|
|||||||
<service name="obs_scm" mode="manual">
|
<service name="obs_scm" mode="manual">
|
||||||
<param name="scm">git</param>
|
<param name="scm">git</param>
|
||||||
<param name="url">https://gitlab.freedesktop.org/pipewire/pipewire.git</param>
|
<param name="url">https://gitlab.freedesktop.org/pipewire/pipewire.git</param>
|
||||||
<param name="revision">0.3.71</param>
|
<param name="revision">0.3.72</param>
|
||||||
<param name="versionformat">@PARENT_TAG@</param>
|
<param name="versionformat">@PARENT_TAG@</param>
|
||||||
<!--
|
<!--
|
||||||
<param name="revision">master</param>
|
<param name="revision">master</param>
|
||||||
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:a50d8d5b1dda0be39acca19ea380bdedc7dfd8ebaaf9ffaf90262bcfc0544536
|
|
||||||
size 11773965
|
|
3
pipewire-0.3.72.obscpio
Normal file
3
pipewire-0.3.72.obscpio
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:d2d0896ae46034c3a1c46779f8492f76d31a2ff973337222fa225886ac1d2ba7
|
||||||
|
size 11973133
|
108
pipewire.changes
108
pipewire.changes
@ -1,3 +1,111 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Jun 26 09:30:37 UTC 2023 - Antonio Larrosa <alarrosa@suse.com>
|
||||||
|
- Update to version 0.3.72:
|
||||||
|
* Highlights
|
||||||
|
- Fix a critical bug that would refuse to update the samplerate
|
||||||
|
or buffersize in JACK clients.
|
||||||
|
- A new module-netjack2-driver and module-netjack2-manager were
|
||||||
|
added that are compatible with NETJACK2. This allows PipeWire
|
||||||
|
to become a NETJACK2 manager or a driver between JACK2 or
|
||||||
|
PipeWire servers.
|
||||||
|
- Support was added for firewire devices with FFADO. This is
|
||||||
|
untested for now and MIDI is not implemented yet.
|
||||||
|
- The node scheduling was optimized some more. External drivers
|
||||||
|
are now as efficient as in-server ones. This should improve
|
||||||
|
performance of various drivers such as bluetooth and JACK
|
||||||
|
based drivers.
|
||||||
|
- Many, many bug fixes and a ton of improvements.
|
||||||
|
* PipeWire
|
||||||
|
- pw-filter can now be used to write sinks and sources.
|
||||||
|
- The node activation for drivers was changed. The driver now
|
||||||
|
does not need to go to the server to start the processing
|
||||||
|
cycle. This makes out-of-server drivers as efficient as
|
||||||
|
in-server drivers.
|
||||||
|
- Don't try to use drivers with 0 priority as fallback drivers.
|
||||||
|
This avoids making the screencast driver a driver for audio.
|
||||||
|
- Improve xrun count reporting in pw-top and the profiler. Now
|
||||||
|
each node has their own xrun counter updated when it fails to
|
||||||
|
complete processing during the cycle.
|
||||||
|
- pw-filter now also has support for TRIGGER.
|
||||||
|
- A potential fd leak was found when fds were send to a zombie
|
||||||
|
client.
|
||||||
|
- Fix a bug where monitor or capture streams were logged twice
|
||||||
|
in the profiler.
|
||||||
|
- Remove stream hooks safely.
|
||||||
|
- A bug in serialization of container properties was fixed.
|
||||||
|
This could result in truncated property values.
|
||||||
|
- The PIPEWIRE_AUTOCONNECT environment variable now always
|
||||||
|
overrides the autoconnect settings of streams.
|
||||||
|
- Node, port and link destroy now avoids some useless work.
|
||||||
|
- Port will now try to renegotiate a new format when idle.
|
||||||
|
* Modules
|
||||||
|
- The module-sap now is more compatible with AES67.
|
||||||
|
- A new FFADO driver module was added. This is completely
|
||||||
|
untested because of lack of hardware. Please test and report
|
||||||
|
issues.
|
||||||
|
- A new NETJACK2 driver and a NETJACK2 manager module were
|
||||||
|
added. These should be drop in replacements for the JACK2
|
||||||
|
parts.
|
||||||
|
- The RAOP discover module now tries harder to only list
|
||||||
|
devices once.
|
||||||
|
- The zeroconf discover module now tries harder to only list
|
||||||
|
devices once.
|
||||||
|
- The RAOP sink module now handles latency better and is
|
||||||
|
compatible with some more devices.
|
||||||
|
- The loopback and filter-chain modules now always dequeue the
|
||||||
|
last input buffer to avoid stuttering in some cases.
|
||||||
|
- The SPA node factory module can now also export nodes. This
|
||||||
|
is used to export the PTP clock from the AES67 config file.
|
||||||
|
- A bug in module-jack-tunnel was fixed that would cause
|
||||||
|
stuttering and corrupted output in some cases.
|
||||||
|
- The resampler is now disabled in module-loopback and
|
||||||
|
filter-chain when the samplerate is set to follow the graph
|
||||||
|
rate.
|
||||||
|
- The way the mixer peer is sent to clients was improved. It is
|
||||||
|
now also possible to let a remote node know about mixer port
|
||||||
|
removes, which can avoid memory leaks and some code
|
||||||
|
simplifications.
|
||||||
|
* SPA
|
||||||
|
- Monitor ports now report latency correctly.
|
||||||
|
- The ALSA plugin now uses htimestamp to get a more accurate
|
||||||
|
ringbuffer position to estimate the clock skew.
|
||||||
|
- The channelmixer now has min/max-volume settings to limit or
|
||||||
|
fix the volume.
|
||||||
|
- The ALSA plugin can now control the playback and capture rate
|
||||||
|
of USB gadgets. This can avoid resampling and instead use the
|
||||||
|
USB feedback to control the rate.
|
||||||
|
- The ALSA output to multiple devices has been improved, some
|
||||||
|
lockups are avoided when the device ringbuffer is full.
|
||||||
|
- The compress-offload sink has improved negotiation.
|
||||||
|
* pulse-server
|
||||||
|
- Only try to use GSettings when the schema exists.
|
||||||
|
- @DEFAULT_SOURCE@, @DEFAULT_SINK@ and @DEFAULT_MONITOR@ are
|
||||||
|
now correctly handled as targets in playback and capture
|
||||||
|
streams.
|
||||||
|
- 2 new quirks are added to disable volume updates on
|
||||||
|
sinks/sources.
|
||||||
|
- The virtual-sink and virtual-source modules were added. These
|
||||||
|
are really example modules but actually also work and are
|
||||||
|
useful on PulseAudio so implement them as well.
|
||||||
|
- Fix initial stream volumes.
|
||||||
|
* Bluetooth
|
||||||
|
- Only register A2DP or BAP when we have codecs.
|
||||||
|
- Include codec into the media.name
|
||||||
|
* JACK
|
||||||
|
- Fix a critical bug that would refuse to update the samplerate
|
||||||
|
or buffersize.
|
||||||
|
- Improve updates of samplerate/buffersize, delay the updates
|
||||||
|
until the client is activated.
|
||||||
|
- Use the new mix-info updates to simplify the mixer setup and
|
||||||
|
peer detection.
|
||||||
|
* GStreamer
|
||||||
|
- Fill default strides instead of 0 on pipewire video buffers.
|
||||||
|
- Remove patch already included upstream:
|
||||||
|
* 0001-jack-update-bufsize-and-samplerate-when-skipping-not.patch
|
||||||
|
- Move libjack* conflicts from package pipewire-libjack-0_3 (which
|
||||||
|
has coinstallable libraries) to pipewire-jack (which includes
|
||||||
|
the ld.so.conf.d file).
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Wed May 31 06:50:17 UTC 2023 - Dominique Leuenberger <dleuenberger@suse.com>
|
Wed May 31 06:50:17 UTC 2023 - Dominique Leuenberger <dleuenberger@suse.com>
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
name: pipewire
|
name: pipewire
|
||||||
version: 0.3.71
|
version: 0.3.72
|
||||||
mtime: 1684319631
|
mtime: 1687765341
|
||||||
commit: bd225b14bbda1a6e2dc7a52780eaf728920e0ff2
|
commit: 4cc22d60d2280fb3c771e6a246e79c90819fd485
|
||||||
|
@ -60,7 +60,7 @@
|
|||||||
%bcond_with aptx
|
%bcond_with aptx
|
||||||
|
|
||||||
Name: pipewire
|
Name: pipewire
|
||||||
Version: 0.3.71
|
Version: 0.3.72
|
||||||
Release: 0
|
Release: 0
|
||||||
Summary: A Multimedia Framework designed to be an audio and video server and more
|
Summary: A Multimedia Framework designed to be an audio and video server and more
|
||||||
License: MIT
|
License: MIT
|
||||||
@ -70,8 +70,6 @@ Source0: %{name}-%{version}.tar.xz
|
|||||||
Source99: baselibs.conf
|
Source99: baselibs.conf
|
||||||
# PATCH-FIX-OPENSUSE reduce-meson-dependency.patch
|
# PATCH-FIX-OPENSUSE reduce-meson-dependency.patch
|
||||||
Patch0: reduce-meson-dependency.patch
|
Patch0: reduce-meson-dependency.patch
|
||||||
# PATCH-FIX-UPSTREAM 0001-jack-update-bufsize-and-samplerate-when-skipping-not.patch
|
|
||||||
Patch1: 0001-jack-update-bufsize-and-samplerate-when-skipping-not.patch
|
|
||||||
BuildRequires: docutils
|
BuildRequires: docutils
|
||||||
BuildRequires: doxygen
|
BuildRequires: doxygen
|
||||||
BuildRequires: fdupes
|
BuildRequires: fdupes
|
||||||
@ -119,6 +117,7 @@ BuildRequires: libcamera-devel >= 0.0.1
|
|||||||
BuildRequires: pkgconfig(libcanberra)
|
BuildRequires: pkgconfig(libcanberra)
|
||||||
BuildRequires: pkgconfig(libcap)
|
BuildRequires: pkgconfig(libcap)
|
||||||
BuildRequires: pkgconfig(libdrm)
|
BuildRequires: pkgconfig(libdrm)
|
||||||
|
BuildRequires: pkgconfig(libffado)
|
||||||
%if %{with aptx}
|
%if %{with aptx}
|
||||||
BuildRequires: pkgconfig(libfreeaptx)
|
BuildRequires: pkgconfig(libfreeaptx)
|
||||||
%endif
|
%endif
|
||||||
@ -187,9 +186,6 @@ Summary: PipeWire libjack replacement libraries
|
|||||||
Group: Development/Libraries/C and C++
|
Group: Development/Libraries/C and C++
|
||||||
Requires(post): update-alternatives
|
Requires(post): update-alternatives
|
||||||
Requires(postun):update-alternatives
|
Requires(postun):update-alternatives
|
||||||
Conflicts: libjack0
|
|
||||||
Conflicts: libjacknet0
|
|
||||||
Conflicts: libjackserver0
|
|
||||||
|
|
||||||
%description libjack-%{apiver_str}
|
%description libjack-%{apiver_str}
|
||||||
PipeWire is a server and user space API to deal with multimedia pipelines.
|
PipeWire is a server and user space API to deal with multimedia pipelines.
|
||||||
@ -367,9 +363,16 @@ Recommends: jack-dbus
|
|||||||
Conflicts: jack-daemon
|
Conflicts: jack-daemon
|
||||||
Provides: jack-daemon
|
Provides: jack-daemon
|
||||||
#Provides: pulseaudio-module-jack
|
#Provides: pulseaudio-module-jack
|
||||||
|
# We want applications to link with pipewire-libjack libraries and
|
||||||
|
# not the original ones
|
||||||
|
Conflicts: libjack0
|
||||||
|
Conflicts: libjacknet0
|
||||||
|
Conflicts: libjackserver0
|
||||||
|
|
||||||
%description jack
|
%description jack
|
||||||
This package provides a JACK implementation based on PipeWire
|
This package provides an ld.so.conf file that makes all JACK clients
|
||||||
|
use the JACK implementation based on PipeWire instead of the original
|
||||||
|
JACK libraries.
|
||||||
|
|
||||||
%lang_package
|
%lang_package
|
||||||
|
|
||||||
@ -378,7 +381,6 @@ This package provides a JACK implementation based on PipeWire
|
|||||||
%if %{?pkg_vcmp:%{pkg_vcmp meson <= 0.61.0}}
|
%if %{?pkg_vcmp:%{pkg_vcmp meson <= 0.61.0}}
|
||||||
%patch0 -p1
|
%patch0 -p1
|
||||||
%endif
|
%endif
|
||||||
%patch1 -p1
|
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%if %{pkg_vcmp gcc < 8}
|
%if %{pkg_vcmp gcc < 8}
|
||||||
@ -662,6 +664,7 @@ fi
|
|||||||
%{_bindir}/pw-jack
|
%{_bindir}/pw-jack
|
||||||
%{_mandir}/man1/pw-jack-%{apiver}.1%{?ext_man}
|
%{_mandir}/man1/pw-jack-%{apiver}.1%{?ext_man}
|
||||||
%{_mandir}/man1/pw-jack.1%{?ext_man}
|
%{_mandir}/man1/pw-jack.1%{?ext_man}
|
||||||
|
%{_datadir}/pipewire/jack.conf
|
||||||
|
|
||||||
%files libjack-%{apiver_str}-devel
|
%files libjack-%{apiver_str}-devel
|
||||||
%{_libdir}/pipewire-%{apiver}/jack/libjack.so
|
%{_libdir}/pipewire-%{apiver}/jack/libjack.so
|
||||||
@ -747,7 +750,6 @@ fi
|
|||||||
|
|
||||||
%files jack
|
%files jack
|
||||||
%config %{_sysconfdir}/ld.so.conf.d/pipewire-jack-%{_arch}.conf
|
%config %{_sysconfdir}/ld.so.conf.d/pipewire-jack-%{_arch}.conf
|
||||||
%{_datadir}/pipewire/jack.conf
|
|
||||||
|
|
||||||
%files lang -f %{name}.lang
|
%files lang -f %{name}.lang
|
||||||
|
|
||||||
|
@ -4,7 +4,7 @@ Index: pipewire-0.3.69/meson.build
|
|||||||
+++ pipewire-0.3.69/meson.build
|
+++ pipewire-0.3.69/meson.build
|
||||||
@@ -1,7 +1,7 @@
|
@@ -1,7 +1,7 @@
|
||||||
project('pipewire', ['c' ],
|
project('pipewire', ['c' ],
|
||||||
version : '0.3.71',
|
version : '0.3.72',
|
||||||
license : [ 'MIT', 'LGPL-2.1-or-later', 'GPL-2.0-only' ],
|
license : [ 'MIT', 'LGPL-2.1-or-later', 'GPL-2.0-only' ],
|
||||||
- meson_version : '>= 0.61.1',
|
- meson_version : '>= 0.61.1',
|
||||||
+ meson_version : '>= 0.59.4',
|
+ meson_version : '>= 0.59.4',
|
||||||
|
Loading…
x
Reference in New Issue
Block a user