summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOtavio Salvador <otavio@ossystems.com.br>2026-11-02 13:06:42 -0300
committerGitHub <noreply@github.com>2026-11-02 13:06:42 -0300
commit448d332e071c4682def785e365f57ba657cb8da5 (patch)
tree4f345cee02cbb78df72519b5f7759fbbc41a8798
parent0c684dfb0a66295b540c9c27500678aa83632f0a (diff)
parent004b175b5560a323df43004d22bec0e489e9120f (diff)
downloadmeta-freescale-448d332e071c4682def785e365f57ba657cb8da5.tar.gz
Merge pull request #2917 from wardru/fix/pipewire
pipewire: Drop per-plane stride and offset patch for iMX95
-rw-r--r--dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire/0003-pipewiresrc-update-per-plane-stride-and-offset-accor.patch52
-rw-r--r--dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire_%.bbappend3
2 files changed, 0 insertions, 55 deletions
diff --git a/dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire/0003-pipewiresrc-update-per-plane-stride-and-offset-accor.patch b/dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire/0003-pipewiresrc-update-per-plane-stride-and-offset-accor.patch
deleted file mode 100644
index 45dec1645..000000000
--- a/dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire/0003-pipewiresrc-update-per-plane-stride-and-offset-accor.patch
+++ /dev/null
@@ -1,52 +0,0 @@
1From f01c4d27819fc2897b10f7e2bc0f30bd183c45b8 Mon Sep 17 00:00:00 2001
2From: Elliot Chen <elliot.chen@nxp.com>
3Date: Sat, 28 Feb 2026 14:47:22 +0900
4Subject: [PATCH] pipewiresrc: update per-plane stride and offset according to
5 chunk info
6
7Upstream-Status: Pending
8Signed-off-by: Elliot Chen <elliot.chen@nxp.com>
9
10---
11 meson.build | 2 +-
12 src/gst/gstpipewiresrc.c | 11 +++++++++++
13 2 files changed, 12 insertions(+), 1 deletion(-)
14
15diff --git a/meson.build b/meson.build
16index bca2c7a27..e290217e9 100644
17--- a/meson.build
18+++ b/meson.build
19@@ -412,7 +412,7 @@ gst_deps_def = {
20 'gio-unix-2.0': {},
21 'gstreamer-1.0': {'version': '>= 1.10.0'},
22 'gstreamer-base-1.0': {},
23- 'gstreamer-video-1.0': {},
24+ 'gstreamer-video-1.0': {'version': '>= 1.22.0'},
25 'gstreamer-audio-1.0': {},
26 'gstreamer-allocators-1.0': {},
27 }
28diff --git a/src/gst/gstpipewiresrc.c b/src/gst/gstpipewiresrc.c
29index b0de17dfd..044c0d583 100644
30--- a/src/gst/gstpipewiresrc.c
31+++ b/src/gst/gstpipewiresrc.c
32@@ -838,6 +838,17 @@ static GstBuffer *dequeue_buffer(GstPipeWireSrc *pwsrc)
33
34 video_size += d->chunk->size;
35 }
36+
37+ /* If the buffer number is smaller than the plane number,
38+ * update the stride and offset for the remain planes.
39+ */
40+ if (n_datas && n_datas < n_planes) {
41+ for (i = n_datas; i < n_planes; i++) {
42+ meta->stride[i] = gst_video_format_info_extrapolate_stride (info->finfo, i, b->buffer->datas[0].chunk->stride);
43+ meta->offset[i] = meta->offset[i-1] +
44+ meta->stride[i-1] * GST_VIDEO_FORMAT_INFO_SCALE_HEIGHT (info->finfo, i-1, GST_VIDEO_INFO_HEIGHT(info));
45+ }
46+ }
47 }
48
49 if (b->buffer->n_datas != gst_buffer_n_memory(data->buf)) {
50--
512.34.1
52
diff --git a/dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire_%.bbappend b/dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire_%.bbappend
index f9323a2fb..9b15e90b5 100644
--- a/dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire_%.bbappend
+++ b/dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire_%.bbappend
@@ -14,9 +14,6 @@ SRC_URI:append:imx-nxp-bsp = " \
14 file://0001-systemd-allow-pipewire-user-services-for-root.patch \ 14 file://0001-systemd-allow-pipewire-user-services-for-root.patch \
15 file://0001-YOCIMX-9095-pipewiresrc-set-rank-to-secondary.patch \ 15 file://0001-YOCIMX-9095-pipewiresrc-set-rank-to-secondary.patch \
16" 16"
17SRC_URI:append:mx95-nxp-bsp = " \
18 file://0003-pipewiresrc-update-per-plane-stride-and-offset-accor.patch \
19"
20 17
21# Dispatch line consumes the machine-specialized helper var below. 18# Dispatch line consumes the machine-specialized helper var below.
22# No-op off-target: the helper it consumes expands empty. 19# No-op off-target: the helper it consumes expands empty.