chore: Update to Pipewire 1.0.3

This commit is contained in:
Kyle Gospodnetich 2024-02-03 14:04:38 -08:00
parent 39a54a780f
commit 5b106ea430
3 changed files with 124 additions and 4 deletions

View File

@ -0,0 +1,47 @@
From 1c8d6300c3a64d124534182f92d6f714573e8821 Mon Sep 17 00:00:00 2001
From: Wim Taymans <wtaymans@redhat.com>
Date: Wed, 31 Jan 2024 12:21:02 +0100
Subject: [PATCH 1/2] Revert "spa: libcamera: bump minimum supported version to
0.2.0"
This reverts commit 01cb3fa862d36adfded8f02540660b43b9c1584c.
---
spa/meson.build | 3 ++-
spa/plugins/libcamera/libcamera-device.cpp | 2 ++
2 files changed, 4 insertions(+), 1 deletion(-)
diff --git a/spa/meson.build b/spa/meson.build
index db0a84425..0ee750d6e 100644
--- a/spa/meson.build
+++ b/spa/meson.build
@@ -96,8 +96,9 @@ if get_option('spa-plugins').allowed()
endif
summary({'Vulkan': have_vulkan}, bool_yn: true, section: 'Misc dependencies')
- libcamera_dep = dependency('libcamera', version: '>= 0.2.0', required: get_option('libcamera'))
+ libcamera_dep = dependency('libcamera', required: get_option('libcamera'))
summary({'libcamera': libcamera_dep.found()}, bool_yn: true, section: 'Backend')
+ cdata.set('HAVE_LIBCAMERA_SYSTEM_DEVICES', libcamera_dep.version().version_compare('>= 0.1.0'))
compress_offload_option = get_option('compress-offload')
summary({'Compress-Offload': compress_offload_option.allowed()}, bool_yn: true, section: 'Backend')
diff --git a/spa/plugins/libcamera/libcamera-device.cpp b/spa/plugins/libcamera/libcamera-device.cpp
index b25a4eb72..0abf2f619 100644
--- a/spa/plugins/libcamera/libcamera-device.cpp
+++ b/spa/plugins/libcamera/libcamera-device.cpp
@@ -61,10 +61,12 @@ struct impl {
static const libcamera::Span<const int64_t> cameraDevice(
const Camera *camera)
{
+#ifdef HAVE_LIBCAMERA_SYSTEM_DEVICES
const ControlList &props = camera->properties();
if (auto devices = props.get(properties::SystemDevices))
return devices.value();
+#endif
return {};
}
--
2.43.0

View File

@ -0,0 +1,71 @@
From 20dd33d5b68f6007c41a7ffccf37aeb25aa9a920 Mon Sep 17 00:00:00 2001
From: Wim Taymans <wtaymans@redhat.com>
Date: Wed, 31 Jan 2024 12:21:08 +0100
Subject: [PATCH 2/2] Revert "spa: libcamera: use
`CameraConfiguration::orientation`"
This reverts commit fd33d2d3bb6333c7d6e74cbaa806bff2d908f589.
---
spa/plugins/libcamera/libcamera-utils.cpp | 36 ++++++++++++-----------
1 file changed, 19 insertions(+), 17 deletions(-)
diff --git a/spa/plugins/libcamera/libcamera-utils.cpp b/spa/plugins/libcamera/libcamera-utils.cpp
index c197248d3..2b1aea5a7 100644
--- a/spa/plugins/libcamera/libcamera-utils.cpp
+++ b/spa/plugins/libcamera/libcamera-utils.cpp
@@ -716,23 +716,25 @@ static int spa_libcamera_use_buffers(struct impl *impl, struct port *port,
}
static const struct {
- Orientation libcamera_orientation; /* clockwise rotation then horizontal mirroring */
- uint32_t spa_transform_value; /* horizontal mirroring then counter-clockwise rotation */
-} orientation_map[] = {
- { Orientation::Rotate0, SPA_META_TRANSFORMATION_None },
- { Orientation::Rotate0Mirror, SPA_META_TRANSFORMATION_Flipped },
- { Orientation::Rotate90, SPA_META_TRANSFORMATION_270 },
- { Orientation::Rotate90Mirror, SPA_META_TRANSFORMATION_Flipped90 },
- { Orientation::Rotate180, SPA_META_TRANSFORMATION_180 },
- { Orientation::Rotate180Mirror, SPA_META_TRANSFORMATION_Flipped180 },
- { Orientation::Rotate270, SPA_META_TRANSFORMATION_90 },
- { Orientation::Rotate270Mirror, SPA_META_TRANSFORMATION_Flipped270 },
+ Transform libcamera_transform;
+ uint32_t spa_transform_value;
+} transform_map[] = {
+ { Transform::Identity, SPA_META_TRANSFORMATION_None },
+ { Transform::Rot0, SPA_META_TRANSFORMATION_None },
+ { Transform::HFlip, SPA_META_TRANSFORMATION_Flipped },
+ { Transform::VFlip, SPA_META_TRANSFORMATION_Flipped180 },
+ { Transform::HVFlip, SPA_META_TRANSFORMATION_180 },
+ { Transform::Rot180, SPA_META_TRANSFORMATION_180 },
+ { Transform::Transpose, SPA_META_TRANSFORMATION_Flipped90 },
+ { Transform::Rot90, SPA_META_TRANSFORMATION_90 },
+ { Transform::Rot270, SPA_META_TRANSFORMATION_270 },
+ { Transform::Rot180Transpose, SPA_META_TRANSFORMATION_Flipped270 },
};
-static uint32_t libcamera_orientation_to_spa_transform_value(Orientation orientation)
+static uint32_t libcamera_transform_to_spa_transform_value(Transform transform)
{
- for (const auto& t : orientation_map) {
- if (t.libcamera_orientation == orientation)
+ for (const auto& t : transform_map) {
+ if (t.libcamera_transform == transform)
return t.spa_transform_value;
}
return SPA_META_TRANSFORMATION_None;
@@ -786,9 +788,9 @@ mmap_init(struct impl *impl, struct port *port,
buffers[i], SPA_META_VideoTransform, sizeof(*b->videotransform));
if (b->videotransform) {
b->videotransform->transform =
- libcamera_orientation_to_spa_transform_value(impl->config->orientation);
- spa_log_debug(impl->log, "Setting videotransform for buffer %u to %u",
- i, b->videotransform->transform);
+ libcamera_transform_to_spa_transform_value(impl->config->transform);
+ spa_log_debug(impl->log, "Setting videotransform for buffer %d to %u (from %s)",
+ i, b->videotransform->transform, transformToString(impl->config->transform));
}
--
2.43.0

View File

@ -1,6 +1,6 @@
%global majorversion 1
%global minorversion 0
%global microversion 1
%global microversion 3
%global apiversion 0.3
%global spaversion 0.2
@ -77,13 +77,15 @@ Source0: https://gitlab.freedesktop.org/pipewire/pipewire/-/archive/%{ver
Source1: pipewire.sysusers
## upstream patches
Patch0001: 0001-Revert-spa-libcamera-bump-minimum-supported-version-.patch
Patch0002: 0002-Revert-spa-libcamera-use-CameraConfiguration-orienta.patch
# Holo: TODO: Bug reference
Patch0: bc435841c141ad38768b6cb1a7ad45e8bb13c7d2.patch
Patch10: bc435841c141ad38768b6cb1a7ad45e8bb13c7d2.patch
# Holo: TODO: Bug reference
#Patch1: acf7c0af0bf31b937c41e916a73c67ae0a253632.patch
#Patch20: acf7c0af0bf31b937c41e916a73c67ae0a253632.patch
# Holo: upstream MR 1792
Patch2: 0001-Bluez5-backend-native-HSP-AG-release-SCO-link-on-AT-.patch
Patch30: 0001-Bluez5-backend-native-HSP-AG-release-SCO-link-on-AT-.patch
## upstreamable patches