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/bluealsa/bluealsa/bluealsa.service11
-rw-r--r--meta-openembedded/meta-multimedia/recipes-multimedia/bluealsa/bluealsa_git.bb71
-rw-r--r--meta-openembedded/meta-multimedia/recipes-multimedia/flite/flite_2.2.bb19
-rw-r--r--meta-openembedded/meta-multimedia/recipes-multimedia/libavtp/libavtp/0001-provide-64bit-host-to-network-conversion-macros.patch43
-rw-r--r--meta-openembedded/meta-multimedia/recipes-multimedia/libavtp/libavtp_0.2.0.bb16
-rw-r--r--meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire/0001-spa-fix-c90-header-include.patch47
-rw-r--r--meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.50.bb9
7 files changed, 181 insertions, 35 deletions
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/bluealsa/bluealsa/bluealsa.service b/meta-openembedded/meta-multimedia/recipes-multimedia/bluealsa/bluealsa/bluealsa.service
deleted file mode 100644
index 671815e031..0000000000
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/bluealsa/bluealsa/bluealsa.service
+++ /dev/null
@@ -1,11 +0,0 @@
-[Unit]
-Description=Bluetooth Audio ALSA Backend
-After=bluetooth.service
-Requires=bluetooth.service
-
-[Service]
-Type=simple
-ExecStart=/usr/bin/bluealsa
-
-[Install]
-WantedBy=multi-user.target
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/bluealsa/bluealsa_git.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/bluealsa/bluealsa_git.bb
index 674017606e..ab0d8bca9f 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/bluealsa/bluealsa_git.bb
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/bluealsa/bluealsa_git.bb
@@ -3,37 +3,64 @@ HOMEPAGE = "https://github.com/Arkq/bluez-alsa"
SECTION = "libs"
LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=72d868d66bdd5bf51fe67734431de057"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=8449a4f133a93f6254b496d4fb476e83"
-DEPENDS += "alsa-lib bluez5 glib-2.0 sbc"
+SRC_URI = "git://github.com/Arkq/bluez-alsa.git;protocol=https;branch=master"
-SRCREV = "aac8742a9e7dd12a1fead9cbce7d2dc8b961999c"
-
-SRC_URI = " \
- git://github.com/Arkq/bluez-alsa.git;protocol=https;branch=master \
- file://bluealsa.service \
-"
+SRCREV = "dd05a1baa261b94da9ba977b5e3392c8b4dc7a5e"
+PV = "4.0.0+git${SRCPV}"
S = "${WORKDIR}/git"
-PACKAGECONFIG[aac] = "--enable-aac, --disable-aac,"
-PACKAGECONFIG[aptx] = "--enable-aptx,--disable-aptx,"
-PACKAGECONFIG[hcitop] = "--enable-hcitop, --disable-hcitop, libbsd ncurses"
-PACKAGECONFIG[systemd] = "--enable-systemd, --disable-systemd, systemd"
+DEPENDS += "alsa-lib bluez5 dbus glib-2.0 sbc"
-PACKAGECONFIG += "hcitop ${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}"
+PACKAGECONFIG ??= "aplay cli hcitop ${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}"
+PACKAGECONFIG[a2dpconf] = "--enable-a2dpconf,--disable-a2dpconf"
+PACKAGECONFIG[aac] = "--enable-aac,--disable-aac,fdk-aac"
+PACKAGECONFIG[aplay] = "--enable-aplay,--disable-aplay"
+PACKAGECONFIG[cli] = "--enable-cli,--disable-cli"
+PACKAGECONFIG[coverage] = "--with-coverage,--without-coverage,lcov-native"
+PACKAGECONFIG[debug] = "--enable-debug,--disable-debug"
+PACKAGECONFIG[debug-time] = "--enable-debug-time,--disable-debug-time"
+PACKAGECONFIG[faststream] = "--enable-faststream,--disable-faststream"
+PACKAGECONFIG[hcitop] = "--enable-hcitop,--disable-hcitop,libbsd ncurses"
+PACKAGECONFIG[libunwind] = "--with-libunwind,--without-libunwind,libunwind"
+PACKAGECONFIG[mp3lame] = "--enable-mp3lame,--disable-mp3lame,lame"
+PACKAGECONFIG[mpg123] = "--enable-mpg123,--disable-mpg123,mpg123,mpg123"
+PACKAGECONFIG[ofono] = "--enable-ofono,--disable-ofono,ofono"
+PACKAGECONFIG[payloadcheck] = "--enable-payloadcheck,--disable-payloadcheck"
+PACKAGECONFIG[rfcomm] = "--enable-rfcomm,--disable-rfcomm"
+PACKAGECONFIG[systemd] = "--enable-systemd --with-systemdsystemunitdir=${systemd_system_unitdir} \
+ --with-systemdbluealsaargs='${SYSTEMD_BLUEALSA_ARGS}' --with-systemdbluealsaaplayargs='${SYSTEMD_BLUEALSA_APLAY_ARGS}',--disable-systemd,systemd"
+PACKAGECONFIG[test] = "--enable-test,--disable-test,libcheck libsndfile1"
+PACKAGECONFIG[upower] = "--enable-upower,--disable-upower,,upower"
inherit autotools pkgconfig systemd
-FILES:${PN} += "\
- ${datadir}/alsa/alsa.conf.d/20-bluealsa.conf\
- ${libdir}/alsa-lib/libasound_module_ctl_bluealsa.so\
- ${libdir}/alsa-lib/libasound_module_pcm_bluealsa.so\
+EXTRA_OECONF = " \
+ --disable-aptx \
+ --disable-lc3plus \
+ --disable-ldac \
+ --disable-manpages \
"
-FILES:${PN}-staticdev += "\
- ${libdir}/alsa-lib/libasound_module_ctl_bluealsa.a\
- ${libdir}/alsa-lib/libasound_module_pcm_bluealsa.a\
-"
+PACKAGE_BEFORE_PN = "${PN}-aplay"
+RRECOMMENDS:${PN} = "${PN}-aplay"
+
+FILES:${PN}-aplay = "${bindir}/bluealsa-aplay"
+FILES:${PN} += "${libdir}/alsa-lib/*"
+
+SYSTEMD_PACKAGES += "${PN}-aplay"
+SYSTEMD_SERVICE:${PN} = "bluealsa.service"
+SYSTEMD_SERVICE:${PN}-aplay = "bluealsa-aplay.service"
+
+SYSTEMD_AUTO_ENABLE:${PN}-aplay = "disable"
+
+# Choose bluez-alsa arguments to be used in bluealsa systemd service
+# Usually could choose profiles with it: a2dp-source a2dp-sink hfp-hf hfp-ag hsp-hs hsp-ag hfp-ofono
+# Enable bluez-alsa arguments by default:
+SYSTEMD_BLUEALSA_ARGS ?= "-p a2dp-source -p a2dp-sink"
-SYSTEMD_SERVICE:${PN} = "bluealsa.service bluealsa-aplay.service"
+# Choose bluealsa-aplay arguments to be used in bluealsa-aplay systemd service
+# Defaults to be empty:
+SYSTEMD_BLUEALSA_APLAY_ARGS ?= ""
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/flite/flite_2.2.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/flite/flite_2.2.bb
new file mode 100644
index 0000000000..9ab9c0208d
--- /dev/null
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/flite/flite_2.2.bb
@@ -0,0 +1,19 @@
+SUMMARY = "Flite: a small run-time speech synthesis engine"
+HOMEPAGE = "http://cmuflite.org"
+SECTION = "libs/multimedia"
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b3b732d1349633a53e69356607fd2d6c"
+
+inherit autotools-brokensep
+
+SRC_URI = "git://github.com/festvox/flite.git;protocol=https;branch=master"
+
+SRCREV = "e9e2e37c329dbe98bfeb27a1828ef9a71fa84f88"
+
+S = "${WORKDIR}/git"
+
+EXTRA_OECONF += "--enable-shared"
+
+do_install:append() {
+ chown -R root:root ${D}${libdir}/*
+}
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/libavtp/libavtp/0001-provide-64bit-host-to-network-conversion-macros.patch b/meta-openembedded/meta-multimedia/recipes-multimedia/libavtp/libavtp/0001-provide-64bit-host-to-network-conversion-macros.patch
new file mode 100644
index 0000000000..e432ccca42
--- /dev/null
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/libavtp/libavtp/0001-provide-64bit-host-to-network-conversion-macros.patch
@@ -0,0 +1,43 @@
+From cdbbe227594665145e9309a9ecb7d90aad070aab Mon Sep 17 00:00:00 2001
+From: Max Krummenacher <max.krummenacher@toradex.com>
+Date: Wed, 1 Jun 2022 15:53:55 +0000
+Subject: [PATCH] provide 64bit host to network conversion macros
+
+musl dosn't include the macros which convert 64-bit integers
+between host and network endianness from arpa/inet.h as glibc does.
+
+Use this patch to include endian.h in util.h if compiling for musl.
+
+Prevents:
+| [2/8] aarch64-tdx-linux-musl-gcc ... -o libavtp.so.0.2.0.p/src_avtp_stream.c.o -c ../git/src/avtp_stream.c
+| ../git/src/avtp_stream.c: In function 'avtp_stream_pdu_get':
+| ../git/src/avtp_stream.c:116:24: warning: implicit declaration of function 'be64toh' [-Wimplicit-function-declaration]
+| 116 | *val = be64toh(pdu->stream_id);
+| | ^~~~~~~
+| ../git/src/avtp_stream.c: In function 'avtp_stream_pdu_set':
+| ../git/src/avtp_stream.c:199:34: warning: implicit declaration of function 'htobe64' [-Wimplicit-function-declaration]
+| 199 | pdu->stream_id = htobe64(value);
+
+Upstream-Status: Inappropriate [musl specific]
+
+Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
+---
+ src/util.h | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/util.h b/src/util.h
+index 8b50625..e6fd2ef 100644
+--- a/src/util.h
++++ b/src/util.h
+@@ -27,6 +27,8 @@
+
+ #pragma once
+
++#include <endian.h>
++
+ #define BIT(n) (1ULL << n)
+
+ #define BITMASK(len) (BIT(len) - 1)
+--
+2.20.1
+
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/libavtp/libavtp_0.2.0.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/libavtp/libavtp_0.2.0.bb
new file mode 100644
index 0000000000..98f8e5b84d
--- /dev/null
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/libavtp/libavtp_0.2.0.bb
@@ -0,0 +1,16 @@
+SUMMARY = "Implements Audio Video Transport Protocol (AVTP)"
+DESCRIPTION = "Open source implementation of Audio Video Transport Protocol (AVTP) \
+ specified in IEEE 1722-2016 spec."
+HOMEPAGE = "https://github.com/Avnu/libavtp"
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=7fcb4331e23e45e171cd5693c1ff7d3e"
+
+SRC_URI = "git://github.com/Avnu/libavtp.git;branch=master;protocol=https"
+SRC_URI:append:libc-musl = " file://0001-provide-64bit-host-to-network-conversion-macros.patch"
+SRCREV = "3599a5bf2d18fc3ae89b64f208d8380e6ee3a866"
+
+S = "${WORKDIR}/git"
+
+inherit meson pkgconfig
+
+EXTRA_OEMESON = "-Dtests=disabled"
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire/0001-spa-fix-c90-header-include.patch b/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire/0001-spa-fix-c90-header-include.patch
new file mode 100644
index 0000000000..ad6448a10a
--- /dev/null
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire/0001-spa-fix-c90-header-include.patch
@@ -0,0 +1,47 @@
+From d3ea3142e1a4de206e616bc18f63a529e6b4986a Mon Sep 17 00:00:00 2001
+From: psykose <alice@ayaya.dev>
+Date: Wed, 13 Apr 2022 21:57:49 +0000
+Subject: [PATCH 001/154] spa: fix c90 header include
+
+placing declarations after code is invalid under ISO c90
+
+Fixes !1211
+
+Patch-Status: Backport
+---
+ spa/include/spa/utils/string.h | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/spa/include/spa/utils/string.h b/spa/include/spa/utils/string.h
+index e80434537..43d19616c 100644
+--- a/spa/include/spa/utils/string.h
++++ b/spa/include/spa/utils/string.h
+@@ -276,10 +276,11 @@ static inline int spa_scnprintf(char *buffer, size_t size, const char *format, .
+ static inline float spa_strtof(const char *str, char **endptr)
+ {
+ static locale_t locale = NULL;
++ locale_t prev;
+ float v;
+ if (SPA_UNLIKELY(locale == NULL))
+ locale = newlocale(LC_ALL_MASK, "C", NULL);
+- locale_t prev = uselocale(locale);
++ prev = uselocale(locale);
+ v = strtof(str, endptr);
+ uselocale(prev);
+ return v;
+@@ -319,10 +320,11 @@ static inline bool spa_atof(const char *str, float *val)
+ static inline double spa_strtod(const char *str, char **endptr)
+ {
+ static locale_t locale = NULL;
++ locale_t prev;
+ double v;
+ if (SPA_UNLIKELY(locale == NULL))
+ locale = newlocale(LC_ALL_MASK, "C", NULL);
+- locale_t prev = uselocale(locale);
++ prev = uselocale(locale);
+ v = strtod(str, endptr);
+ uselocale(prev);
+ return v;
+--
+2.25.1
+
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.50.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.50.bb
index 0d725b9ee2..0f527c0a59 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.50.bb
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.50.bb
@@ -14,7 +14,10 @@ LIC_FILES_CHKSUM = " \
DEPENDS = "dbus ncurses"
SRCREV = "64cf5e80e6240284e6b757907b900507fe56f1b5"
-SRC_URI = "git://gitlab.freedesktop.org/pipewire/pipewire.git;branch=master;protocol=https"
+SRC_URI = " \
+ git://gitlab.freedesktop.org/pipewire/pipewire.git;branch=master;protocol=https \
+ file://0001-spa-fix-c90-header-include.patch \
+"
S = "${WORKDIR}/git"
@@ -69,7 +72,7 @@ EXTRA_OEMESON += " \
-Dlegacy-rtkit=false \
"
-PACKAGECONFIG ??= "\
+PACKAGECONFIG:class-target ??= "\
${@bb.utils.contains('DISTRO_FEATURES', 'zeroconf', 'avahi', '', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'bluez', '', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd systemd-system-service', '', d)} \
@@ -335,3 +338,5 @@ FILES:${PN}-v4l2 += " \
FILES:gstreamer1.0-pipewire = " \
${libdir}/gstreamer-1.0/* \
"
+
+BBCLASSEXTEND = "native nativesdk"