summaryrefslogtreecommitdiff
path: root/meta-openembedded/meta-multimedia
diff options
context:
space:
mode:
Diffstat (limited to 'meta-openembedded/meta-multimedia')
-rw-r--r--meta-openembedded/meta-multimedia/recipes-multimedia/dav1d/dav1d_1.1.0.bb17
-rw-r--r--meta-openembedded/meta-multimedia/recipes-multimedia/libavif/libavif_0.11.1.bb16
-rw-r--r--meta-openembedded/meta-multimedia/recipes-multimedia/libcamera/libcamera/0001-file_sink.cpp-Avoid-dangling-reference.patch46
-rw-r--r--meta-openembedded/meta-multimedia/recipes-multimedia/libcamera/libcamera_0.0.4.bb (renamed from meta-openembedded/meta-multimedia/recipes-multimedia/libcamera/libcamera_0.0.1.bb)7
-rw-r--r--meta-openembedded/meta-multimedia/recipes-multimedia/nv-codec-headers/nv-codec-headers_12.0.16.0.bb (renamed from meta-openembedded/meta-multimedia/recipes-multimedia/nv-codec-headers/nv-codec-headers_11.1.5.2.bb)11
-rw-r--r--meta-openembedded/meta-multimedia/recipes-multimedia/packagegroups/packagegroup-meta-multimedia.bb36
-rw-r--r--meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.67.bb (renamed from meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.66.bb)3
-rw-r--r--meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0001-include-limits-header.patch43
-rw-r--r--meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0001-make-opencv-configurable.patch8
-rw-r--r--meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0002-use-vorbisidec.patch8
-rw-r--r--meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0004-Use-packageconfig-to-detect-mmal-support.patch7
-rw-r--r--meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0005-ioctl-does-not-have-same-signature-between-glibc-and.patch47
-rw-r--r--meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0005-linux-thread-Use-SYS_futex-instead-of-__NR_futex.patch46
-rw-r--r--meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0006-configure-Disable-incompatible-function-pointer-type.patch31
-rw-r--r--meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc_3.0.18.bb (renamed from meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc_3.0.17-1.bb)5
-rw-r--r--meta-openembedded/meta-multimedia/recipes-multimedia/wireplumber/wireplumber_0.4.14.bb (renamed from meta-openembedded/meta-multimedia/recipes-multimedia/wireplumber/wireplumber_0.4.13.bb)2
16 files changed, 133 insertions, 200 deletions
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/dav1d/dav1d_1.1.0.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/dav1d/dav1d_1.1.0.bb
new file mode 100644
index 0000000000..33dbef3524
--- /dev/null
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/dav1d/dav1d_1.1.0.bb
@@ -0,0 +1,17 @@
+SUMMARY = "dav1d AV1 decoder"
+DESCRIPTION = "Targeted to be small, portable and fast."
+HOMEPAGE = "https://code.videolan.org/videolan/dav1d"
+SECTION = "multimedia"
+LICENSE = "BSD-2-Clause"
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=c8055cfe7548dfdaa3a6dc45d8793669"
+
+SRC_URI = "git://code.videolan.org/videolan/dav1d.git;protocol=https;branch=master"
+SRCREV = "9593e625b75d498d1edea544da21ea764b98d507"
+
+S = "${WORKDIR}/git"
+
+DEPENDS:append:x86 = " nasm-native"
+DEPENDS:append:x86-64 = " nasm-native"
+
+inherit meson
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/libavif/libavif_0.11.1.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/libavif/libavif_0.11.1.bb
new file mode 100644
index 0000000000..f01024e8aa
--- /dev/null
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/libavif/libavif_0.11.1.bb
@@ -0,0 +1,16 @@
+SUMMARY = "This library aims to be a friendly, portable C implementation of the AV1 Image File Format"
+HOMEPAGE = "https://github.com/AOMediaCodec/libavif"
+SECTION = "libs"
+LICENSE = "BSD-2-Clause"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=c528b75b07425b5c1d2e34de98c397b5"
+
+SRC_URI = "git://github.com/AOMediaCodec/libavif.git;protocol=https;branch=main"
+
+S = "${WORKDIR}/git"
+SRCREV = "6ab53189045e7a6fe0bd93d14977b2a4f8efa5e9"
+
+DEPENDS = "dav1d"
+
+inherit cmake
+
+EXTRA_OECMAKE += "-DAVIF_CODEC_DAV1D=ON"
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/libcamera/libcamera/0001-file_sink.cpp-Avoid-dangling-reference.patch b/meta-openembedded/meta-multimedia/recipes-multimedia/libcamera/libcamera/0001-file_sink.cpp-Avoid-dangling-reference.patch
deleted file mode 100644
index 5aa6ee8d3c..0000000000
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/libcamera/libcamera/0001-file_sink.cpp-Avoid-dangling-reference.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-From 0e97896e6a09957f27125957d00b5150ec90b2e9 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Tue, 24 Jan 2023 01:18:25 -0800
-Subject: [PATCH] file_sink.cpp: Avoid dangling-reference
-
-Fixes following errors with gcc-13
-
-../git/src/cam/file_sink.cpp:92:45: error: possibly dangling reference to a temporary [-Werror=dangling-reference]
- 92 | const FrameMetadata::Plane &meta = buffer->metadata().planes()[i];
- | ^~~~
-../git/src/cam/file_sink.cpp:92:81: note: the temporary was destroyed at the end of the full expression '(& buffer->libcamera::FrameBuffer::metadata())->libcamera::FrameMetadata::planes().libcamera::Span<const libcamera::FrameMetadata::Plane>::operator[](i)'
- 92 | const FrameMetadata::Plane &meta = buffer->metadata().planes()[i];
- | ^
-cc1plus: all warnings being treated as errors
-
-Upstream-Status: Submitted [https://lists.libcamera.org/pipermail/libcamera-devel/2023-January/036575.html]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/cam/file_sink.cpp | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/src/cam/file_sink.cpp b/src/cam/file_sink.cpp
-index 45213d4a..897c4b37 100644
---- a/src/cam/file_sink.cpp
-+++ b/src/cam/file_sink.cpp
-@@ -89,13 +89,13 @@ void FileSink::writeBuffer(const Stream *stream, FrameBuffer *buffer)
- Image *image = mappedBuffers_[buffer].get();
-
- for (unsigned int i = 0; i < buffer->planes().size(); ++i) {
-- const FrameMetadata::Plane &meta = buffer->metadata().planes()[i];
-+ unsigned int bytesused = buffer->metadata().planes()[i].bytesused;
-
- Span<uint8_t> data = image->data(i);
-- unsigned int length = std::min<unsigned int>(meta.bytesused, data.size());
-+ unsigned int length = std::min<unsigned int>(bytesused, data.size());
-
-- if (meta.bytesused > data.size())
-- std::cerr << "payload size " << meta.bytesused
-+ if (bytesused > data.size())
-+ std::cerr << "payload size " << bytesused
- << " larger than plane size " << data.size()
- << std::endl;
-
---
-2.39.1
-
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/libcamera/libcamera_0.0.1.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/libcamera/libcamera_0.0.4.bb
index 46f058f2ea..cbcc33aa4c 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/libcamera/libcamera_0.0.1.bb
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/libcamera/libcamera_0.0.4.bb
@@ -8,12 +8,9 @@ LIC_FILES_CHKSUM = "\
file://LICENSES/LGPL-2.1-or-later.txt;md5=2a4f4fd2128ea2f65047ee63fbca9f68 \
"
-SRC_URI = " \
- git://git.libcamera.org/libcamera/libcamera.git;protocol=https;branch=master \
- file://0001-file_sink.cpp-Avoid-dangling-reference.patch \
-"
+SRC_URI = "git://git.libcamera.org/libcamera/libcamera.git;protocol=https;branch=master"
-SRCREV = "a83aed77df1258e469c0eb42d9cb4f1938db53f2"
+SRCREV = "6cf637eb253a68edebe59505bea55435fafb00cd"
PE = "1"
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/nv-codec-headers/nv-codec-headers_11.1.5.2.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/nv-codec-headers/nv-codec-headers_12.0.16.0.bb
index c1d8073353..411c406160 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/nv-codec-headers/nv-codec-headers_11.1.5.2.bb
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/nv-codec-headers/nv-codec-headers_12.0.16.0.bb
@@ -4,14 +4,11 @@ LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${S}/include/ffnvcodec/dynlink_cuda.h;beginline=1;endline=26;md5=bb54a418154445b0aa99e15f640eacf4"
SRC_URI = "git://git.videolan.org/git/ffmpeg/nv-codec-headers.git;branch=master;protocol=https"
-SRCREV = "f8ae7a49bfef2f99d2c931a791dc3863fda67bf3"
+SRCREV = "c5e4af74850a616c42d39ed45b9b8568b71bf8bf"
S = "${WORKDIR}/git"
+EXTRA_OEMAKE = "PREFIX=${prefix} DESTDIR=${D}"
+
do_install() {
- install -d ${D}${includedir}/ffnvcodec ${D}${libdir}/pkgconfig
- for file in include/ffnvcodec/*.h; do
- install -m 644 "$file" ${D}${includedir}/ffnvcodec
- done
- install -m 644 ffnvcodec.pc.in ${D}${libdir}/pkgconfig/ffnvcodec.pc
- sed -i "s|@@PREFIX@@|${prefix}|" ${D}${libdir}/pkgconfig/ffnvcodec.pc
+ oe_runmake install
}
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/packagegroups/packagegroup-meta-multimedia.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/packagegroups/packagegroup-meta-multimedia.bb
index 2b7a43b93d..c520653761 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/packagegroups/packagegroup-meta-multimedia.bb
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/packagegroups/packagegroup-meta-multimedia.bb
@@ -25,67 +25,45 @@ RDEPENDS:packagegroup-meta-multimedia = "\
bluealsa \
caps \
cdparanoia \
- dcadec \
dleyna-connector-dbus \
- dleyna-core \
dleyna-renderer \
dleyna-server \
dvb-apps \
- ${@bb.utils.contains("LICENSE_FLAGS_ACCEPTED", "commercial", "faac fdk-aac mpd", "", d)} \
+ ${@bb.utils.contains("LICENSE_FLAGS_ACCEPTED", "commercial", "faac mpd", "", d)} \
gerbera \
- libao \
libavc1394 \
- libdc1394 \
- libdvbpsi \
- libdvdnav \
libiec61883 \
- fluidsynth \
libmusicbrainz \
- libmpdclient \
mpc \
ncmpc \
- libmpd \
- ${@bb.utils.contains("LICENSE_FLAGS_ACCEPTED", "commercial", "opencore-amr vo-aacenc vo-amrwbenc", "", d)} \
- gst-shark \
+ ${@bb.utils.contains("LICENSE_FLAGS_ACCEPTED", "commercial", "opencore-amr", "", d)} \
gstd \
rtmpdump \
bigbuckbunny-1080p \
bigbuckbunny-480p \
bigbuckbunny-720p \
tearsofsteel-1080p \
- schroedinger \
pipewire \
${@bb.utils.contains("LICENSE_FLAGS_ACCEPTED", "commercial", "projucer", "", d)} \
libcamera \
- ${@bb.utils.contains("LICENSE_FLAGS_ACCEPTED", "commercial", "libde265 openh264", "", d)} \
vorbis-tools \
- libdvbcsa \
libopenmpt \
- libuvc \
mimic \
${@bb.utils.contains("LICENSE_FLAGS_ACCEPTED", "commercial", "minidlna", "", d)} \
- mycroft \
+ ${@bb.utils.contains("DISTRO_FEATURES", "pulseaudio", "mycroft", "", d)} \
openal-soft \
opusfile \
opus-tools \
- libdvdcss \
${@bb.utils.contains("LICENSE_FLAGS_ACCEPTED", "commercial", bb.utils.contains("DISTRO_FEATURES", "x11", "vlc", "", d), "", d)} \
${@bb.utils.contains("LICENSE_FLAGS_ACCEPTED", "commercial", "sox streamripper", "", d)} \
tinyalsa \
- tremor \
- webrtc-audio-processing \
${@bb.utils.contains("LICENSE_FLAGS_ACCEPTED", "commercial", bb.utils.contains_any("TRANSLATED_TARGET_ARCH", "i586 i686 x86-64", "x265", "", d), "", d)} \
"
RDEPENDS:packagegroup-meta-multimedia:remove:libc-musl = "projucer"
-RDEPENDS:packagegroup-meta-multimedia:remove:powerpc64le = "openh264"
RDEPENDS:packagegroup-meta-multimedia-connectivity = "\
- gssdp \
- gupnp-av \
gupnp-dlna \
- gupnp-igd \
${@bb.utils.contains("DISTRO_FEATURES", "x11", "gupnp-tools", "", d)} \
- gupnp \
libupnp \
${@bb.utils.contains("DISTRO_FEATURES", "gobject-introspection-data", "rygel", "", d)} \
"
@@ -94,17 +72,9 @@ RDEPENDS:packagegroup-meta-multimedia-dvb = "\
tvheadend \
"
-RDEPENDS:packagegroup-meta-multimedia-mkv = "\
- libebml \
- libmatroska \
-"
-
RDEPENDS:packagegroup-meta-multimedia-support = "\
crossguid \
- ${@bb.utils.contains("DISTRO_FEATURES", "gobject-introspection-data", "libmediaart-2.0", "", d)} \
gst-instruments \
- libsrtp \
- srt \
"
# devel headers/libraries only packages
# libsquish
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.66.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.67.bb
index a7c77463e0..0d4dd63f9f 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.66.bb
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.67.bb
@@ -13,7 +13,7 @@ LIC_FILES_CHKSUM = " \
DEPENDS = "dbus ncurses"
-SRCREV = "08b0ed65765a1033424a5c0d897a392a61f8a2a3"
+SRCREV = "26623ff8cb3c9ba774537379a1835c5efb0d5159"
SRC_URI = "git://gitlab.freedesktop.org/pipewire/pipewire.git;branch=master;protocol=https"
S = "${WORKDIR}/git"
@@ -288,6 +288,7 @@ FILES:${PN}-tools = " \
${bindir}/pw-dot \
${bindir}/pw-dsdplay \
${bindir}/pw-dump \
+ ${bindir}/pw-encplay \
${bindir}/pw-link \
${bindir}/pw-loopback \
${bindir}/pw-metadata \
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0001-include-limits-header.patch b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0001-include-limits-header.patch
deleted file mode 100644
index e1383c826c..0000000000
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0001-include-limits-header.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From 1068c7451855c3f9acde9af265b5a790073b1641 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Tue, 2 Mar 2021 14:28:27 -0800
-Subject: [PATCH] include <limits> header
-
-Fixes
-SegmentInformation.cpp:397:49: error: '::max' has not been declared; d
-id you mean 'std::max'?
-
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- modules/demux/adaptive/playlist/SegmentInformation.cpp | 1 +
- modules/demux/hls/playlist/Parser.cpp | 1 +
- 2 files changed, 2 insertions(+)
-
-diff --git a/modules/demux/adaptive/playlist/SegmentInformation.cpp b/modules/demux/adaptive/playlist/SegmentInformation.cpp
-index 344e155..8eeb054 100644
---- a/modules/demux/adaptive/playlist/SegmentInformation.cpp
-+++ b/modules/demux/adaptive/playlist/SegmentInformation.cpp
-@@ -34,6 +34,7 @@
-
- #include <algorithm>
- #include <cassert>
-+#include <limits>
-
- using namespace adaptive::playlist;
-
-diff --git a/modules/demux/hls/playlist/Parser.cpp b/modules/demux/hls/playlist/Parser.cpp
-index 67110e4..7439699 100644
---- a/modules/demux/hls/playlist/Parser.cpp
-+++ b/modules/demux/hls/playlist/Parser.cpp
-@@ -42,6 +42,7 @@
- #include <map>
- #include <cctype>
- #include <algorithm>
-+#include <limits>
-
- using namespace adaptive;
- using namespace adaptive::playlist;
---
-2.30.1
-
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0001-make-opencv-configurable.patch b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0001-make-opencv-configurable.patch
index 950c09b8ae..cc65af009b 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0001-make-opencv-configurable.patch
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0001-make-opencv-configurable.patch
@@ -5,11 +5,9 @@ Upstream-Status: Inappropriate [configuration]
Signed-off-by: Tim Orling <TicoTimo@gmail.com>
-Index: vlc-2.1.4/configure.ac
-===================================================================
---- vlc-2.1.4.orig/configure.ac
-+++ vlc-2.1.4/configure.ac
-@@ -1693,7 +1693,16 @@ PKG_ENABLE_MODULES_VLC([BLURAY], [libblu
+--- a/configure.ac
++++ b/configure.ac
+@@ -1892,7 +1892,16 @@ PKG_ENABLE_MODULES_VLC([BLURAY], [libblu
dnl
dnl OpenCV wrapper and example filters
dnl
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0002-use-vorbisidec.patch b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0002-use-vorbisidec.patch
index b174ec127e..8ecddd33c6 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0002-use-vorbisidec.patch
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0002-use-vorbisidec.patch
@@ -4,11 +4,9 @@ Upstream-Status: Pending
Signed-off-by: Tim Orling <TicoTimo@gmail.com>
-Index: vlc-2.2.1/modules/codec/Makefile.am
-===================================================================
---- vlc-2.2.1.orig/modules/codec/Makefile.am
-+++ vlc-2.2.1/modules/codec/Makefile.am
-@@ -234,7 +234,7 @@ codec_LTLIBRARIES += $(LTLIBtheora)
+--- a/modules/codec/Makefile.am
++++ b/modules/codec/Makefile.am
+@@ -321,7 +321,7 @@ codec_LTLIBRARIES += $(LTLIBdaala)
libtremor_plugin_la_SOURCES = codec/vorbis.c
libtremor_plugin_la_CPPFLAGS = $(AM_CPPFLAGS) -DMODULE_NAME_IS_tremor
libtremor_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0004-Use-packageconfig-to-detect-mmal-support.patch b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0004-Use-packageconfig-to-detect-mmal-support.patch
index 424aaa2815..078ac41ca5 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0004-Use-packageconfig-to-detect-mmal-support.patch
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0004-Use-packageconfig-to-detect-mmal-support.patch
@@ -13,11 +13,9 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
configure.ac | 31 +++++++++++--------------------
1 file changed, 11 insertions(+), 20 deletions(-)
-diff --git a/configure.ac b/configure.ac
-index d7cf692..f81b99d 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -3427,27 +3427,18 @@ AC_ARG_ENABLE(mmal,
+@@ -3461,27 +3461,18 @@ AC_ARG_ENABLE(mmal,
AS_HELP_STRING([--enable-mmal],
[Multi-Media Abstraction Layer (MMAL) hardware plugin (default enable)]))
if test "${enable_mmal}" != "no"; then
@@ -56,6 +54,3 @@ index d7cf692..f81b99d 100644
dnl
dnl evas plugin
---
-2.26.1
-
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0005-ioctl-does-not-have-same-signature-between-glibc-and.patch b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0005-ioctl-does-not-have-same-signature-between-glibc-and.patch
new file mode 100644
index 0000000000..cbf4f2b911
--- /dev/null
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0005-ioctl-does-not-have-same-signature-between-glibc-and.patch
@@ -0,0 +1,47 @@
+From a46cee56d05884b8020ace6f67ef8389ac1845da Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sun, 5 Mar 2023 13:50:40 -0800
+Subject: [PATCH 1/3] ioctl does not have same signature between glibc and musl
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ modules/access/v4l2/lib.c | 4 ++++
+ modules/access/v4l2/v4l2.h | 4 ++++
+ 2 files changed, 8 insertions(+)
+
+diff --git a/modules/access/v4l2/lib.c b/modules/access/v4l2/lib.c
+index b212e1bc5f..ff7c66bf35 100644
+--- a/modules/access/v4l2/lib.c
++++ b/modules/access/v4l2/lib.c
+@@ -43,7 +43,11 @@ int (*v4l2_fd_open) (int, int) = fd_open;
+ //int (*v4l2_open) (const char *, int, ...) = open;
+ //int (*v4l2_dup) (const char *, int, ...) = dup;
+ int (*v4l2_close) (int) = close;
++#ifdef __GLIBC__
+ int (*v4l2_ioctl) (int, unsigned long int, ...) = ioctl;
++#else
++int (*v4l2_ioctl) (int, int, ...) = ioctl;
++#endif
+ ssize_t (*v4l2_read) (int, void *, size_t) = read;
+ //ssize_t (*v4l2_write) (int, const void *, size_t) = write;
+ void * (*v4l2_mmap) (void *, size_t, int, int, int, int64_t) = mmap;
+diff --git a/modules/access/v4l2/v4l2.h b/modules/access/v4l2/v4l2.h
+index ac4562e269..727e83e9b1 100644
+--- a/modules/access/v4l2/v4l2.h
++++ b/modules/access/v4l2/v4l2.h
+@@ -23,7 +23,11 @@
+ /* libv4l2 functions */
+ extern int (*v4l2_fd_open) (int, int);
+ extern int (*v4l2_close) (int);
++#ifdef __GLIBC__
+ extern int (*v4l2_ioctl) (int, unsigned long int, ...);
++#else
++extern int (*v4l2_ioctl) (int, int, ...);
++#endif
+ extern ssize_t (*v4l2_read) (int, void *, size_t);
+ extern void * (*v4l2_mmap) (void *, size_t, int, int, int, int64_t);
+ extern int (*v4l2_munmap) (void *, size_t);
+--
+2.39.2
+
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0005-linux-thread-Use-SYS_futex-instead-of-__NR_futex.patch b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0005-linux-thread-Use-SYS_futex-instead-of-__NR_futex.patch
deleted file mode 100644
index 405490dcfc..0000000000
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0005-linux-thread-Use-SYS_futex-instead-of-__NR_futex.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-From f7957c35654222e5bd1038341612bbb40a88e98b Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Mon, 16 Nov 2020 12:08:43 -0800
-Subject: [PATCH] linux/thread: Use SYS_futex instead of __NR_futex
-
-SYS_futex it expected from system C library.
-in glibc (/usr/include/bits/syscall.h defines it in terms of of NR_futex)
-some newer 32bit architectures e.g. riscv32 are using 64bit time_t from
-get go unlike other 32bit architectures in glibc, therefore it wont have
-NR_futex defined but just NR_futex_time64 this aliases it to NR_futex so
-that SYS_futex is then defined for rv32
-
-Upstream-Status: Submitted [https://github.com/videolan/vlc/pull/117]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/linux/thread.c | 7 ++++++-
- 1 file changed, 6 insertions(+), 1 deletion(-)
-
-diff --git a/src/linux/thread.c b/src/linux/thread.c
-index 20da296..30639a3 100644
---- a/src/linux/thread.c
-+++ b/src/linux/thread.c
-@@ -30,6 +30,11 @@
- #include <sys/syscall.h>
- #include <linux/futex.h>
-
-+/* 32bit architectures with 64bit time_t do not define __NR_futex syscall */
-+#if !defined(SYS_futex) && defined(SYS_futex_time64)
-+#define SYS_futex SYS_futex_time64
-+#endif
-+
- #ifndef FUTEX_PRIVATE_FLAG
- #define FUTEX_WAKE_PRIVATE FUTEX_WAKE
- #define FUTEX_WAIT_PRIVATE FUTEX_WAIT
-@@ -50,7 +55,7 @@ unsigned long vlc_thread_id(void)
- static int sys_futex(void *addr, int op, unsigned val,
- const struct timespec *to, void *addr2, int val3)
- {
-- return syscall(__NR_futex, addr, op, val, to, addr2, val3);
-+ return syscall(SYS_futex, addr, op, val, to, addr2, val3);
- }
-
- static int vlc_futex_wake(void *addr, int nr)
---
-2.29.2
-
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0006-configure-Disable-incompatible-function-pointer-type.patch b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0006-configure-Disable-incompatible-function-pointer-type.patch
new file mode 100644
index 0000000000..4128db1aea
--- /dev/null
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0006-configure-Disable-incompatible-function-pointer-type.patch
@@ -0,0 +1,31 @@
+From 048e4fdd08ac588feb27b03e3ec1824e24f77d62 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sun, 5 Mar 2023 14:13:25 -0800
+Subject: [PATCH 3/3] configure: Disable incompatible-function-pointer-types
+ warning
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ configure.ac | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/configure.ac b/configure.ac
+index 9f1c099e13..8e45a05808 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -98,6 +98,11 @@ AS_IF([test -n "${with_binary_version}"],[
+ dnl Prevent clang from accepting unknown flags with a mere warning
+ AX_APPEND_COMPILE_FLAGS([-Werror=unknown-warning-option -Werror=invalid-command-line-argument], [CFLAGS])
+ AX_APPEND_COMPILE_FLAGS([-Werror=unknown-warning-option -Werror=invalid-command-line-argument], [CXXFLAGS])
++dnl disable clang from erroring on function pointer protype mismatch, vlc seems to rely on that
++dnl especially in modules/video_filter/deinterlace/algo_yadif.c how it interpolates 'filter` variable
++dnl between different functions yadif_filter_line_c_16bit() and yadif_filter_line_c()
++AX_APPEND_COMPILE_FLAGS([-Wno-error=incompatible-function-pointer-types -Wno-error=incompatible-function-pointer-types], [CFLAGS])
++AX_APPEND_COMPILE_FLAGS([-Wno-error=incompatible-function-pointer-types -Wno-error=incompatible-function-pointer-types], [CXXFLAGS])
+
+ dnl
+ dnl Check the operating system
+--
+2.39.2
+
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc_3.0.17-1.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc_3.0.18.bb
index 9b85cb5374..dd6eceae51 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc_3.0.17-1.bb
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc_3.0.18.bb
@@ -21,9 +21,10 @@ SRC_URI = "git://github.com/videolan/vlc.git;protocol=https;branch=3.0.x \
file://0002-use-vorbisidec.patch \
file://0003-fix-luaL-checkint.patch \
file://0004-Use-packageconfig-to-detect-mmal-support.patch \
- file://0005-linux-thread-Use-SYS_futex-instead-of-__NR_futex.patch \
+ file://0005-ioctl-does-not-have-same-signature-between-glibc-and.patch \
+ file://0006-configure-Disable-incompatible-function-pointer-type.patch \
"
-SRCREV = "aa76328c572d93f1d99c867a94ecad1dc3259733"
+SRCREV = "e9eceaed4d838dbd84638bfb2e4bdd08294163b1"
S = "${WORKDIR}/git"
inherit autotools-brokensep features_check gettext pkgconfig mime-xdg
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/wireplumber/wireplumber_0.4.13.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/wireplumber/wireplumber_0.4.14.bb
index 0203f8bf50..6f93b443d2 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/wireplumber/wireplumber_0.4.13.bb
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/wireplumber/wireplumber_0.4.14.bb
@@ -11,7 +11,7 @@ DEPENDS = "glib-2.0 glib-2.0-native lua pipewire \
${@bb.utils.contains("DISTRO_FEATURES", "gobject-introspection-data", "python3-native python3-lxml-native doxygen-native", "", d)} \
"
-SRCREV = "7cb1b8b92e96ebd1b7e632cda32715fed713d333"
+SRCREV = "6d0c7f7b7f484b3cd2aaf2e2b3cc902c095b4946"
SRC_URI = " \
git://gitlab.freedesktop.org/pipewire/wireplumber.git;branch=master;protocol=https \
file://90-OE-disable-session-dbus-dependent-features.lua \