Accepting request 910352 from home:fcrozat:branches:multimedia:libs

- Update to version 0.3.33:
  * Highlights
    - Better support for virtual sinks/sources for Pro Audio
      profile.
    - Better DMA-BUF format modifier negotiation.
    - Support multiple sample rates in the graph. Not enabled
      by default yet.
    - Bluetooth can now automatically switch between headset
      and audio profile.
    - Documentation updates.
    - Many improvements and crasher fixes.
  * PipeWire
    - Make AUX channels an official channel map, use this for the
      PRO audio profile so that we can name the channels. This
      make it possible to define virtual sources and sinks for
      Pro Audio devices in a more reliable way.
    - Fix scheduling of some virtual sinks/sources. (#1407)
    - Fix potential corruption of ringbuffer because of multiple
      concurrent writers. This might be the cause for many reported
      crashes. (#1451)
    - Don't place sockets in $HOME. (#1443)
    - Improve DMA-BUF negotiation. Add a flag to avoid fixation
      of a property so that producers can negotiate more
      efficiently. This is used to negotiate DMA-BUF modifiers,
      which should make more efficient use of the GPU. (#1084)
    - Add support for multipe sample rates. The graph can switch
      when IDLE to one of the supported rates. Add an option to
      lock the rate as well. This is not enabled by default yet
      because of driver bugs that need to be worked around first.
    - Add node.lock-quantum property that can be used to lock the

OBS-URL: https://build.opensuse.org/request/show/910352
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/pipewire?expand=0&rev=13
This commit is contained in:
Antonio Larrosa 2021-08-09 16:32:06 +00:00 committed by Git OBS Bridge
parent 2305a17097
commit 4c157ecd32
7 changed files with 83 additions and 88 deletions

View File

@ -3,7 +3,7 @@
<service name="obs_scm" mode="disabled">
<param name="scm">git</param>
<param name="url">https://gitlab.freedesktop.org/pipewire/pipewire.git</param>
<param name="revision">refs/tags/0.3.32</param>
<param name="revision">refs/tags/0.3.33</param>
<param name="versionformat">@PARENT_TAG@</param>
</service>
<service name="tar" mode="buildtime"/>

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:04aac9d3348d9a28c2dc838eb5b2c77cc1e0dffd85fbacae189871215e696a0b
size 9720333

3
pipewire-0.3.33.obscpio Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:162d8e72542363ab327fa3da5eb1941a42043175549d77950dd735d7eb76fabf
size 9826317

View File

@ -1,78 +0,0 @@
From 5471a0018b0394327c0cd4f1f60bf326632b29f1 Mon Sep 17 00:00:00 2001
From: Javier Martinez Canillas <javierm@redhat.com>
Date: Thu, 22 Jul 2021 20:09:34 +0200
Subject: [PATCH 1/2] libcamera: fix no-longer existent <libcamera/buffer.h>
header inclusion
The SPA plugin is including a <libcamera/buffer.h> header file, but this
got renamed to <libcamera/framebuffer.h> to match the defined class name:
../spa/plugins/libcamera/libcamera_wrapper.cpp:52:10: fatal error: libcamera/buffer.h: No such file or directory
52 | #include <libcamera/buffer.h>
| ^~~~~~~~~~~~~~~~~~~~
Fixes #1435
---
spa/plugins/libcamera/libcamera_wrapper.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/spa/plugins/libcamera/libcamera_wrapper.cpp b/spa/plugins/libcamera/libcamera_wrapper.cpp
index 58c062412..f25922eb1 100644
--- a/spa/plugins/libcamera/libcamera_wrapper.cpp
+++ b/spa/plugins/libcamera/libcamera_wrapper.cpp
@@ -49,7 +49,7 @@
#include <libcamera/camera_manager.h>
#include <libcamera/request.h>
#include <libcamera/framebuffer_allocator.h>
-#include <libcamera/buffer.h>
+#include <libcamera/framebuffer.h>
#include <libcamera/property_ids.h>
#include <libcamera/controls.h>
--
2.26.2
From 76cb5c1169b58b48a2921ccc3f61c713b297c07f Mon Sep 17 00:00:00 2001
From: Javier Martinez Canillas <javierm@redhat.com>
Date: Thu, 22 Jul 2021 20:17:09 +0200
Subject: [PATCH 2/2] libcamera: remove unused buffer variable in
LibCamera::stop()
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
To fix build warning about a variable being unused in LibCamera::stop():
[1/2] Compiling C++ object spa/plugins/libcamera/libspa-libcamera.so.p/libcamera_wrapper.cpp.o
../spa/plugins/libcamera/libcamera_wrapper.cpp: In member function void LibCamera::stop():
../spa/plugins/libcamera/libcamera_wrapper.cpp:531:58: warning: unused variable buffer [-Wunused-variable]
531 | for (const std::unique_ptr<FrameBuffer> &buffer : this->allocator_->buffers(stream)) {
| ^~~~~~
---
spa/plugins/libcamera/libcamera_wrapper.cpp | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/spa/plugins/libcamera/libcamera_wrapper.cpp b/spa/plugins/libcamera/libcamera_wrapper.cpp
index f25922eb1..d58238d33 100644
--- a/spa/plugins/libcamera/libcamera_wrapper.cpp
+++ b/spa/plugins/libcamera/libcamera_wrapper.cpp
@@ -524,13 +524,12 @@ extern "C" {
void LibCamera::stop() {
this->disconnect();
- uint32_t bufIdx = 0;
StreamConfiguration &cfg = this->config_->at(0);
Stream *stream = cfg.stream();
+ uint32_t nbuffers = this->allocator_->buffers(stream).size();
- for (const std::unique_ptr<FrameBuffer> &buffer : this->allocator_->buffers(stream)) {
+ for (uint32_t bufIdx = 0; bufIdx < nbuffers; bufIdx++) {
delete [] this->fd_[bufIdx];
- bufIdx++;
}
delete [] this->fd_;
--
2.26.2

View File

@ -1,3 +1,78 @@
-------------------------------------------------------------------
Thu Aug 5 14:54:31 UTC 2021 - Frederic Crozat <fcrozat@suse.com>
- Update to version 0.3.33:
* Highlights
- Better support for virtual sinks/sources for Pro Audio
profile.
- Better DMA-BUF format modifier negotiation.
- Support multiple sample rates in the graph. Not enabled
by default yet.
- Bluetooth can now automatically switch between headset
and audio profile.
- Documentation updates.
- Many improvements and crasher fixes.
* PipeWire
- Make AUX channels an official channel map, use this for the
PRO audio profile so that we can name the channels. This
make it possible to define virtual sources and sinks for
Pro Audio devices in a more reliable way.
- Fix scheduling of some virtual sinks/sources. (#1407)
- Fix potential corruption of ringbuffer because of multiple
concurrent writers. This might be the cause for many reported
crashes. (#1451)
- Don't place sockets in $HOME. (#1443)
- Improve DMA-BUF negotiation. Add a flag to avoid fixation
of a property so that producers can negotiate more
efficiently. This is used to negotiate DMA-BUF modifiers,
which should make more efficient use of the GPU. (#1084)
- Add support for multipe sample rates. The graph can switch
when IDLE to one of the supported rates. Add an option to
lock the rate as well. This is not enabled by default yet
because of driver bugs that need to be worked around first.
- Add node.lock-quantum property that can be used to lock the
quantum in place.
- Improve latency reporting in the loopback module.
- Make new client-node method to send the peer port id to the
mixer. This can be used to know where the buffers entering the
mixer are coming from. (#1471)
* Tools
- pw-top should now also correctly show bluetooth devices.
(#1540)
* media-session
- Handle unset of the default node.
- Added a module that can switch the bluetooth profile to headset
profile when a stream wants to record from it.
* JACK
- Only call the jack callbacks when the client is active. Some
JACK applications don't expect callbacks before the client is
active and crash (x42-dpl). (#1461)
- Emit client unregister event.
- Add per-client match rules in the config file to set app
specific configuration and tweaks. (#1456)
- Use peer_id to implement jack_port_get_buffer() from one of
our peer ports to get the data before it enters the mixer.
Makes the capture monitors work in Ardour6.8. (#1471)
* Bluetooth
- Add some broken kernel versions to the mSBC blocklist
- Avoid looping and consuming CPU when we can't write to the
BT socket.
- Use libfreeaptx instead of libopenaptx.
- Fix rounding errors in HW volume conversion.
* PulseAudio server
- implement module-switch-on-connect to emulate pulseaudio
behaviour of new devices. Some desktop environments expect
this behaviour and break otherwise.
- Fix stream cleanup, make sure the stream is stopped before
destroying it. Might be cause for some of the reported
crashes.
- Update message API to use the JSON format.
* Other
- Many documentation updates.
- Many cleanups and small improvements.
- Support the latest libcamera version. (#1435)
- Drop pipewire-fix-libcamera-build.patch, merged upstream.
-------------------------------------------------------------------
Tue Jul 27 06:23:36 UTC 2021 - Antonio Larrosa <alarrosa@suse.com>

View File

@ -1,5 +1,5 @@
name: pipewire
version: 0.3.32
mtime: 1626779173
commit: 41ce3092756ab27106881f4246e54bf32ea5adbe
version: 0.3.33
mtime: 1628173183
commit: 8119e5cdb4efc3325f5629cd1afe9957aa5c39dc

View File

@ -45,7 +45,7 @@
%bcond_with aptx
Name: pipewire
Version: 0.3.32
Version: 0.3.33
Release: 0
Summary: A Multimedia Framework designed to be an audio and video server and more
License: MIT
@ -54,8 +54,6 @@ URL: https://pipewire.org/
Source0: %{name}-%{version}.tar.xz
Source1: %{name}-rpmlintrc
Source99: baselibs.conf
# PATCH-FIX-UPSTREAM pipewire-fix-libcamera-build.patch fcrozat@suse.com -- Fix build with latest libcamera
Patch0: pipewire-fix-libcamera-build.patch
BuildRequires: doxygen
BuildRequires: fdupes