From bb575718e146b66f23f2fc151fbb1e453b9f89ae Mon Sep 17 00:00:00 2001 From: Marcel Ziswiler Date: Thu, 2 Jun 2022 11:40:55 +0200 Subject: libavtp: add recipe for audio video transport protocol (avtp) This is Avnu's implementation of the Audio Video Transport Protocol (AVTP). It may be used in order to enable the configuration option aaf (AVTP Audio Format) for the alsa-plugins. While the library libavtp is a dependency no recipe for this library was present. The aaf support for the alsa-plugins was introduced in the openembedded-core commit ddf542133118 ("alsa-plugins: 1.1.6 -> 1.1.8"). It may further be used in order to enable the configuration option avtp for the gstreamer1.0-plugins-bad once a separate patch enabling such PACKAGECONFIG makes it into openembedded-core. Signed-off-by: Peter Bergin Signed-off-by: Marcel Ziswiler Signed-off-by: Khem Raj --- ...e-64bit-host-to-network-conversion-macros.patch | 43 ++++++++++++++++++++++ .../recipes-multimedia/libavtp/libavtp_0.2.0.bb | 16 ++++++++ 2 files changed, 59 insertions(+) create mode 100644 meta-multimedia/recipes-multimedia/libavtp/libavtp/0001-provide-64bit-host-to-network-conversion-macros.patch create mode 100644 meta-multimedia/recipes-multimedia/libavtp/libavtp_0.2.0.bb diff --git a/meta-multimedia/recipes-multimedia/libavtp/libavtp/0001-provide-64bit-host-to-network-conversion-macros.patch b/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-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 +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 +--- + 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 ++ + #define BIT(n) (1ULL << n) + + #define BITMASK(len) (BIT(len) - 1) +-- +2.20.1 + diff --git a/meta-multimedia/recipes-multimedia/libavtp/libavtp_0.2.0.bb b/meta-multimedia/recipes-multimedia/libavtp/libavtp_0.2.0.bb new file mode 100644 index 0000000000..98f8e5b84d --- /dev/null +++ b/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" -- cgit v1.2.3-54-g00ecf