diff mbox series

[meta-multimedia] pipewire: update to v0.3.56

Message ID 20220817194843.5200-1-f_l_k@t-online.de
State Changes Requested
Headers show
Series [meta-multimedia] pipewire: update to v0.3.56 | expand

Commit Message

Markus Volk Aug. 17, 2022, 7:48 p.m. UTC
Add the configuration to make pipewire work as a drop-in replacement for pulseaudio-server.

Add pipewire-media-session as a standalone recipe, since pipewire would fetch the code as a
subproject at do_configure.

Signed-off-by: Markus Volk <f_l_k@t-online.de>
---
 .../pipewire/pipewire-media-session_0.4.1.bb  | 22 +++++++++++++++
 ...{pipewire_0.3.50.bb => pipewire_0.3.56.bb} | 27 ++++++++++++-------
 2 files changed, 40 insertions(+), 9 deletions(-)
 create mode 100644 meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb
 rename meta-multimedia/recipes-multimedia/pipewire/{pipewire_0.3.50.bb => pipewire_0.3.56.bb} (93%)

Comments

Khem Raj Aug. 18, 2022, 5:53 p.m. UTC | #1
We have some issues with this w.r.t licenses

ERROR: Nothing PROVIDES 'fdk-aac' (but
/mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
DEPENDS on or otherwise requires it)
fdk-aac was skipped: because it has a restricted license 'commercial'.
Which is not listed in LICENSE_FLAGS_ACCEPTED
ERROR: Nothing RPROVIDES 'pipewire-media-session-dev' (but
/mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb
RDEPENDS on or otherwise requires it)
No eligible RPROVIDERs exist for 'pipewire-media-session-dev'
NOTE: Runtime target 'pipewire-media-session-dev' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['pipewire-media-session-dev']
ERROR: Nothing RPROVIDES 'pipewire-media-session' (but
/mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb,
/mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
RDEPENDS on or otherwise requires it)
No eligible RPROVIDERs exist for 'pipewire-media-session'
NOTE: Runtime target 'pipewire-media-session' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['pipewire-media-session']
ERROR: Nothing RPROVIDES 'pipewire' (but
/mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb,
/mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/wireplumber/wireplumber_0.4.9.bb,
/mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
RDEPENDS on or otherwise requires it)
No eligible RPROVIDERs exist for 'pipewire'
NOTE: Runtime target 'pipewire' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['pipewire']
ERROR: Nothing RPROVIDES 'wireplumber-scripts' (but
/mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/wireplumber/wireplumber_0.4.9.bb
RDEPENDS on or otherwise requires it)
No eligible RPROVIDERs exist for 'wireplumber-scripts'
NOTE: Runtime target 'wireplumber-scripts' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['wireplumber-scripts']
ERROR: Nothing RPROVIDES 'wireplumber-dev' (but
/mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/wireplumber/wireplumber_0.4.9.bb
RDEPENDS on or otherwise requires it)
No eligible RPROVIDERs exist for 'wireplumber-dev'
NOTE: Runtime target 'wireplumber-dev' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['wireplumber-dev']
ERROR: Nothing RPROVIDES 'wireplumber-modules-meta' (but
/mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/wireplumber/wireplumber_0.4.9.bb
RDEPENDS on or otherwise requires it)
No eligible RPROVIDERs exist for 'wireplumber-modules-meta'
NOTE: Runtime target 'wireplumber-modules-meta' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['wireplumber-modules-meta']
ERROR: Nothing RPROVIDES 'wireplumber' (but
/mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/wireplumber/wireplumber_0.4.9.bb
RDEPENDS on or otherwise requires it)
No eligible RPROVIDERs exist for 'wireplumber'
NOTE: Runtime target 'wireplumber' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['wireplumber']
ERROR: Nothing RPROVIDES 'pipewire-modules-protocol-pulse' (but
/mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
RDEPENDS on or otherwise requires it)
No eligible RPROVIDERs exist for 'pipewire-modules-protocol-pulse'
NOTE: Runtime target 'pipewire-modules-protocol-pulse' is unbuildable,
removing...
Missing or unbuildable dependency chain was: ['pipewire-modules-protocol-pulse']
ERROR: Nothing RPROVIDES 'pipewire-spa-plugins-meta' (but
/mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
RDEPENDS on or otherwise requires it)
No eligible RPROVIDERs exist for 'pipewire-spa-plugins-meta'
NOTE: Runtime target 'pipewire-spa-plugins-meta' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['pipewire-spa-plugins-meta']
ERROR: Nothing RPROVIDES 'pipewire-modules-protocol-native' (but
/mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
RDEPENDS on or otherwise requires it)
No eligible RPROVIDERs exist for 'pipewire-modules-protocol-native'
NOTE: Runtime target 'pipewire-modules-protocol-native' is
unbuildable, removing...
Missing or unbuildable dependency chain was:
['pipewire-modules-protocol-native']
ERROR: Nothing RPROVIDES 'pipewire-spa-plugins-support' (but
/mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
RDEPENDS on or otherwise requires it)
No eligible RPROVIDERs exist for 'pipewire-spa-plugins-support'
NOTE: Runtime target 'pipewire-spa-plugins-support' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['pipewire-spa-plugins-support']
ERROR: Nothing RPROVIDES 'pipewire-modules-meta' (but
/mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
RDEPENDS on or otherwise requires it)
No eligible RPROVIDERs exist for 'pipewire-modules-meta'
NOTE: Runtime target 'pipewire-modules-meta' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['pipewire-modules-meta']
ERROR: Nothing RPROVIDES 'pipewire-dev' (but
/mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
RDEPENDS on or otherwise requires it)
No eligible RPROVIDERs exist for 'pipewire-dev'
NOTE: Runtime target 'pipewire-dev' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['pipewire-dev']
ERROR: Nothing RPROVIDES 'pipewire-modules-client-node' (but
/mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
RDEPENDS on or otherwise requires it)
No eligible RPROVIDERs exist for 'pipewire-modules-client-node'
NOTE: Runtime target 'pipewire-modules-client-node' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['pipewire-modules-client-node']

On Wed, Aug 17, 2022 at 12:48 PM Markus Volk <f_l_k@t-online.de> wrote:
>
> Add the configuration to make pipewire work as a drop-in replacement for pulseaudio-server.
>
> Add pipewire-media-session as a standalone recipe, since pipewire would fetch the code as a
> subproject at do_configure.
>
> Signed-off-by: Markus Volk <f_l_k@t-online.de>
> ---
>  .../pipewire/pipewire-media-session_0.4.1.bb  | 22 +++++++++++++++
>  ...{pipewire_0.3.50.bb => pipewire_0.3.56.bb} | 27 ++++++++++++-------
>  2 files changed, 40 insertions(+), 9 deletions(-)
>  create mode 100644 meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb
>  rename meta-multimedia/recipes-multimedia/pipewire/{pipewire_0.3.50.bb => pipewire_0.3.56.bb} (93%)
>
> diff --git a/meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb b/meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb
> new file mode 100644
> index 000000000..bec911fc5
> --- /dev/null
> +++ b/meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb
> @@ -0,0 +1,22 @@
> +SUMMARY = "PipeWire Media Session is an example session manager for PipeWire"
> +HOMEPAGE = "https://gitlab.freedesktop.org/pipewire/media-session"
> +LICENSE = "MIT"
> +
> +LIC_FILES_CHKSUM = "file://COPYING;md5=97be96ca4fab23e9657ffa590b931c1a"
> +
> +DEPENDS = " \
> +       pipewire \
> +       alsa-lib \
> +       dbus \
> +"
> +
> +RDEPENDS:${PN} = "pipewire"
> +
> +SRC_URI = "git://gitlab.freedesktop.org/pipewire/media-session.git;protocol=https;branch=master"
> +
> +S = "${WORKDIR}/git"
> +SRCREV = "e5d5cf2404786af8bcc40bdb8a2962bef4ec18b6"
> +
> +inherit meson pkgconfig
> +
> +FILES:${PN} += "${libdir} ${datadir}"
> diff --git a/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.50.bb b/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
> similarity index 93%
> rename from meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.50.bb
> rename to meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
> index c176c6eeb..7a913d5f9 100644
> --- a/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.50.bb
> +++ b/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
> @@ -13,10 +13,9 @@ LIC_FILES_CHKSUM = " \
>
>  DEPENDS = "dbus ncurses"
>
> -SRCREV = "64cf5e80e6240284e6b757907b900507fe56f1b5"
> +SRCREV = "f274e53d25ee8f483ac6fce9e516bb1830abe88b"
>  SRC_URI = " \
>         git://gitlab.freedesktop.org/pipewire/pipewire.git;branch=master;protocol=https \
> -       file://0001-spa-fix-c90-header-include.patch \
>  "
>
>  S = "${WORKDIR}/git"
> @@ -73,11 +72,12 @@ EXTRA_OEMESON += " \
>  "
>
>  PACKAGECONFIG:class-target ??= "\
> +    ${@bb.utils.contains('DISTRO_FEATURES', 'gstreamer', 'gstreamer', 'ffmpeg', d)} \
>      ${@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)} \
> -    ${@bb.utils.filter('DISTRO_FEATURES', 'alsa', d)} \
> -    gstreamer jack libusb pw-cat raop sndfile v4l2 \
> +    ${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'bluez bluez-aac', '', d)} \
> +    ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd systemd-system-service systemd-user-service', '', d)} \
> +    ${@bb.utils.filter('DISTRO_FEATURES', 'alsa dbus vulkan pulseaudio', d)} \
> +    jack libusb pw-cat raop sndfile v4l2 udev volume \
>  "
>
>  # "jack" and "pipewire-jack" packageconfigs cannot be both enabled,
> @@ -96,6 +96,7 @@ PACKAGECONFIG[jack] = "-Djack=enabled,-Djack=disabled,jack,,,pipewire-jack"
>  PACKAGECONFIG[libcamera] = "-Dlibcamera=enabled,-Dlibcamera=disabled,libcamera"
>  PACKAGECONFIG[libcanberra] = "-Dlibcanberra=enabled,-Dlibcanberra=disabled,libcanberra"
>  PACKAGECONFIG[libusb] = "-Dlibusb=enabled,-Dlibusb=disabled,libusb"
> +PACKAGECONFIG[pulseaudio] = "-Dlibpulse=enabled,-Dlibpulse=disabled,pulseaudio"
>  PACKAGECONFIG[pipewire-alsa] = "-Dpipewire-alsa=enabled,-Dpipewire-alsa=disabled,alsa-lib"
>  PACKAGECONFIG[pipewire-jack] = "-Dpipewire-jack=enabled -Dlibjack-path=${libdir}/${PW_MODULE_SUBDIR}/jack,-Dpipewire-jack=disabled,jack,,,jack"
>  PACKAGECONFIG[pw-cat] = "-Dpw-cat=enabled,-Dpw-cat=disabled"
> @@ -109,7 +110,10 @@ PACKAGECONFIG[systemd-system-service] = "-Dsystemd-system-service=enabled,-Dsyst
>  # currently lacks the feature of enabling user services.
>  PACKAGECONFIG[systemd-user-service] = "-Dsystemd-user-service=enabled,-Dsystemd-user-service=disabled,systemd"
>  # pw-cat needs sndfile packageconfig to be enabled
> +PACKAGECONFIG[udev] = "-Dudev=enabled,-Dudev=disabled,udev"
>  PACKAGECONFIG[v4l2] = "-Dv4l2=enabled,-Dv4l2=disabled,udev"
> +PACKAGECONFIG[volume] = "-Dvolume=enabled,-Dvolume=disabled"
> +PACKAGECONFIG[vulkan] = "-Dvulkan=enabled,-Dvulkan=disabled,vulkan-headers vulkan-loader"
>  PACKAGECONFIG[webrtc-echo-cancelling] = "-Decho-cancel-webrtc=enabled,-Decho-cancel-webrtc=disabled,webrtc-audio-processing"
>
>  PACKAGESPLITFUNCS:prepend = " split_dynamic_packages "
> @@ -227,10 +231,15 @@ PACKAGES_DYNAMIC = "^${PN}-spa-plugins.* ^${PN}-modules.*"
>  SYSTEMD_SERVICE:${PN} = "${@bb.utils.contains('PACKAGECONFIG', 'systemd-system-service', 'pipewire.service', '', d)}"
>  CONFFILES:${PN} += "${datadir}/pipewire/pipewire.conf"
>  FILES:${PN} = " \
> -    ${datadir}/pipewire/pipewire.conf \
> -    ${systemd_system_unitdir}/pipewire.* \
> -    ${systemd_user_unitdir}/pipewire.* \
> +    ${datadir}/pipewire \
> +    ${systemd_system_unitdir}/pipewire* \
> +    ${systemd_user_unitdir}/pipewire* \
>      ${bindir}/pipewire \
> +    ${bindir}/pipewire-avb \
> +"
> +
> +RRECOMMENDS:${PN} += " \
> +    ${PN}-media-session \
>  "
>
>  FILES:${PN}-dev += " \
> --
> 2.34.1
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#98312): https://lists.openembedded.org/g/openembedded-devel/message/98312
> Mute This Topic: https://lists.openembedded.org/mt/93090043/1997914
> Group Owner: openembedded-devel+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [raj.khem@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
Khem Raj Aug. 18, 2022, 5:57 p.m. UTC | #2
also a compiler error here

https://errors.yoctoproject.org/Errors/Details/668536/

On Thu, Aug 18, 2022 at 10:53 AM Khem Raj <raj.khem@gmail.com> wrote:
>
> We have some issues with this w.r.t licenses
>
> ERROR: Nothing PROVIDES 'fdk-aac' (but
> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
> DEPENDS on or otherwise requires it)
> fdk-aac was skipped: because it has a restricted license 'commercial'.
> Which is not listed in LICENSE_FLAGS_ACCEPTED
> ERROR: Nothing RPROVIDES 'pipewire-media-session-dev' (but
> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb
> RDEPENDS on or otherwise requires it)
> No eligible RPROVIDERs exist for 'pipewire-media-session-dev'
> NOTE: Runtime target 'pipewire-media-session-dev' is unbuildable, removing...
> Missing or unbuildable dependency chain was: ['pipewire-media-session-dev']
> ERROR: Nothing RPROVIDES 'pipewire-media-session' (but
> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb,
> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
> RDEPENDS on or otherwise requires it)
> No eligible RPROVIDERs exist for 'pipewire-media-session'
> NOTE: Runtime target 'pipewire-media-session' is unbuildable, removing...
> Missing or unbuildable dependency chain was: ['pipewire-media-session']
> ERROR: Nothing RPROVIDES 'pipewire' (but
> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb,
> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/wireplumber/wireplumber_0.4.9.bb,
> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
> RDEPENDS on or otherwise requires it)
> No eligible RPROVIDERs exist for 'pipewire'
> NOTE: Runtime target 'pipewire' is unbuildable, removing...
> Missing or unbuildable dependency chain was: ['pipewire']
> ERROR: Nothing RPROVIDES 'wireplumber-scripts' (but
> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/wireplumber/wireplumber_0.4.9.bb
> RDEPENDS on or otherwise requires it)
> No eligible RPROVIDERs exist for 'wireplumber-scripts'
> NOTE: Runtime target 'wireplumber-scripts' is unbuildable, removing...
> Missing or unbuildable dependency chain was: ['wireplumber-scripts']
> ERROR: Nothing RPROVIDES 'wireplumber-dev' (but
> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/wireplumber/wireplumber_0.4.9.bb
> RDEPENDS on or otherwise requires it)
> No eligible RPROVIDERs exist for 'wireplumber-dev'
> NOTE: Runtime target 'wireplumber-dev' is unbuildable, removing...
> Missing or unbuildable dependency chain was: ['wireplumber-dev']
> ERROR: Nothing RPROVIDES 'wireplumber-modules-meta' (but
> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/wireplumber/wireplumber_0.4.9.bb
> RDEPENDS on or otherwise requires it)
> No eligible RPROVIDERs exist for 'wireplumber-modules-meta'
> NOTE: Runtime target 'wireplumber-modules-meta' is unbuildable, removing...
> Missing or unbuildable dependency chain was: ['wireplumber-modules-meta']
> ERROR: Nothing RPROVIDES 'wireplumber' (but
> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/wireplumber/wireplumber_0.4.9.bb
> RDEPENDS on or otherwise requires it)
> No eligible RPROVIDERs exist for 'wireplumber'
> NOTE: Runtime target 'wireplumber' is unbuildable, removing...
> Missing or unbuildable dependency chain was: ['wireplumber']
> ERROR: Nothing RPROVIDES 'pipewire-modules-protocol-pulse' (but
> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
> RDEPENDS on or otherwise requires it)
> No eligible RPROVIDERs exist for 'pipewire-modules-protocol-pulse'
> NOTE: Runtime target 'pipewire-modules-protocol-pulse' is unbuildable,
> removing...
> Missing or unbuildable dependency chain was: ['pipewire-modules-protocol-pulse']
> ERROR: Nothing RPROVIDES 'pipewire-spa-plugins-meta' (but
> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
> RDEPENDS on or otherwise requires it)
> No eligible RPROVIDERs exist for 'pipewire-spa-plugins-meta'
> NOTE: Runtime target 'pipewire-spa-plugins-meta' is unbuildable, removing...
> Missing or unbuildable dependency chain was: ['pipewire-spa-plugins-meta']
> ERROR: Nothing RPROVIDES 'pipewire-modules-protocol-native' (but
> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
> RDEPENDS on or otherwise requires it)
> No eligible RPROVIDERs exist for 'pipewire-modules-protocol-native'
> NOTE: Runtime target 'pipewire-modules-protocol-native' is
> unbuildable, removing...
> Missing or unbuildable dependency chain was:
> ['pipewire-modules-protocol-native']
> ERROR: Nothing RPROVIDES 'pipewire-spa-plugins-support' (but
> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
> RDEPENDS on or otherwise requires it)
> No eligible RPROVIDERs exist for 'pipewire-spa-plugins-support'
> NOTE: Runtime target 'pipewire-spa-plugins-support' is unbuildable, removing...
> Missing or unbuildable dependency chain was: ['pipewire-spa-plugins-support']
> ERROR: Nothing RPROVIDES 'pipewire-modules-meta' (but
> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
> RDEPENDS on or otherwise requires it)
> No eligible RPROVIDERs exist for 'pipewire-modules-meta'
> NOTE: Runtime target 'pipewire-modules-meta' is unbuildable, removing...
> Missing or unbuildable dependency chain was: ['pipewire-modules-meta']
> ERROR: Nothing RPROVIDES 'pipewire-dev' (but
> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
> RDEPENDS on or otherwise requires it)
> No eligible RPROVIDERs exist for 'pipewire-dev'
> NOTE: Runtime target 'pipewire-dev' is unbuildable, removing...
> Missing or unbuildable dependency chain was: ['pipewire-dev']
> ERROR: Nothing RPROVIDES 'pipewire-modules-client-node' (but
> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
> RDEPENDS on or otherwise requires it)
> No eligible RPROVIDERs exist for 'pipewire-modules-client-node'
> NOTE: Runtime target 'pipewire-modules-client-node' is unbuildable, removing...
> Missing or unbuildable dependency chain was: ['pipewire-modules-client-node']
>
> On Wed, Aug 17, 2022 at 12:48 PM Markus Volk <f_l_k@t-online.de> wrote:
> >
> > Add the configuration to make pipewire work as a drop-in replacement for pulseaudio-server.
> >
> > Add pipewire-media-session as a standalone recipe, since pipewire would fetch the code as a
> > subproject at do_configure.
> >
> > Signed-off-by: Markus Volk <f_l_k@t-online.de>
> > ---
> >  .../pipewire/pipewire-media-session_0.4.1.bb  | 22 +++++++++++++++
> >  ...{pipewire_0.3.50.bb => pipewire_0.3.56.bb} | 27 ++++++++++++-------
> >  2 files changed, 40 insertions(+), 9 deletions(-)
> >  create mode 100644 meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb
> >  rename meta-multimedia/recipes-multimedia/pipewire/{pipewire_0.3.50.bb => pipewire_0.3.56.bb} (93%)
> >
> > diff --git a/meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb b/meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb
> > new file mode 100644
> > index 000000000..bec911fc5
> > --- /dev/null
> > +++ b/meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb
> > @@ -0,0 +1,22 @@
> > +SUMMARY = "PipeWire Media Session is an example session manager for PipeWire"
> > +HOMEPAGE = "https://gitlab.freedesktop.org/pipewire/media-session"
> > +LICENSE = "MIT"
> > +
> > +LIC_FILES_CHKSUM = "file://COPYING;md5=97be96ca4fab23e9657ffa590b931c1a"
> > +
> > +DEPENDS = " \
> > +       pipewire \
> > +       alsa-lib \
> > +       dbus \
> > +"
> > +
> > +RDEPENDS:${PN} = "pipewire"
> > +
> > +SRC_URI = "git://gitlab.freedesktop.org/pipewire/media-session.git;protocol=https;branch=master"
> > +
> > +S = "${WORKDIR}/git"
> > +SRCREV = "e5d5cf2404786af8bcc40bdb8a2962bef4ec18b6"
> > +
> > +inherit meson pkgconfig
> > +
> > +FILES:${PN} += "${libdir} ${datadir}"
> > diff --git a/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.50.bb b/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
> > similarity index 93%
> > rename from meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.50.bb
> > rename to meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
> > index c176c6eeb..7a913d5f9 100644
> > --- a/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.50.bb
> > +++ b/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
> > @@ -13,10 +13,9 @@ LIC_FILES_CHKSUM = " \
> >
> >  DEPENDS = "dbus ncurses"
> >
> > -SRCREV = "64cf5e80e6240284e6b757907b900507fe56f1b5"
> > +SRCREV = "f274e53d25ee8f483ac6fce9e516bb1830abe88b"
> >  SRC_URI = " \
> >         git://gitlab.freedesktop.org/pipewire/pipewire.git;branch=master;protocol=https \
> > -       file://0001-spa-fix-c90-header-include.patch \
> >  "
> >
> >  S = "${WORKDIR}/git"
> > @@ -73,11 +72,12 @@ EXTRA_OEMESON += " \
> >  "
> >
> >  PACKAGECONFIG:class-target ??= "\
> > +    ${@bb.utils.contains('DISTRO_FEATURES', 'gstreamer', 'gstreamer', 'ffmpeg', d)} \
> >      ${@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)} \
> > -    ${@bb.utils.filter('DISTRO_FEATURES', 'alsa', d)} \
> > -    gstreamer jack libusb pw-cat raop sndfile v4l2 \
> > +    ${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'bluez bluez-aac', '', d)} \
> > +    ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd systemd-system-service systemd-user-service', '', d)} \
> > +    ${@bb.utils.filter('DISTRO_FEATURES', 'alsa dbus vulkan pulseaudio', d)} \
> > +    jack libusb pw-cat raop sndfile v4l2 udev volume \
> >  "
> >
> >  # "jack" and "pipewire-jack" packageconfigs cannot be both enabled,
> > @@ -96,6 +96,7 @@ PACKAGECONFIG[jack] = "-Djack=enabled,-Djack=disabled,jack,,,pipewire-jack"
> >  PACKAGECONFIG[libcamera] = "-Dlibcamera=enabled,-Dlibcamera=disabled,libcamera"
> >  PACKAGECONFIG[libcanberra] = "-Dlibcanberra=enabled,-Dlibcanberra=disabled,libcanberra"
> >  PACKAGECONFIG[libusb] = "-Dlibusb=enabled,-Dlibusb=disabled,libusb"
> > +PACKAGECONFIG[pulseaudio] = "-Dlibpulse=enabled,-Dlibpulse=disabled,pulseaudio"
> >  PACKAGECONFIG[pipewire-alsa] = "-Dpipewire-alsa=enabled,-Dpipewire-alsa=disabled,alsa-lib"
> >  PACKAGECONFIG[pipewire-jack] = "-Dpipewire-jack=enabled -Dlibjack-path=${libdir}/${PW_MODULE_SUBDIR}/jack,-Dpipewire-jack=disabled,jack,,,jack"
> >  PACKAGECONFIG[pw-cat] = "-Dpw-cat=enabled,-Dpw-cat=disabled"
> > @@ -109,7 +110,10 @@ PACKAGECONFIG[systemd-system-service] = "-Dsystemd-system-service=enabled,-Dsyst
> >  # currently lacks the feature of enabling user services.
> >  PACKAGECONFIG[systemd-user-service] = "-Dsystemd-user-service=enabled,-Dsystemd-user-service=disabled,systemd"
> >  # pw-cat needs sndfile packageconfig to be enabled
> > +PACKAGECONFIG[udev] = "-Dudev=enabled,-Dudev=disabled,udev"
> >  PACKAGECONFIG[v4l2] = "-Dv4l2=enabled,-Dv4l2=disabled,udev"
> > +PACKAGECONFIG[volume] = "-Dvolume=enabled,-Dvolume=disabled"
> > +PACKAGECONFIG[vulkan] = "-Dvulkan=enabled,-Dvulkan=disabled,vulkan-headers vulkan-loader"
> >  PACKAGECONFIG[webrtc-echo-cancelling] = "-Decho-cancel-webrtc=enabled,-Decho-cancel-webrtc=disabled,webrtc-audio-processing"
> >
> >  PACKAGESPLITFUNCS:prepend = " split_dynamic_packages "
> > @@ -227,10 +231,15 @@ PACKAGES_DYNAMIC = "^${PN}-spa-plugins.* ^${PN}-modules.*"
> >  SYSTEMD_SERVICE:${PN} = "${@bb.utils.contains('PACKAGECONFIG', 'systemd-system-service', 'pipewire.service', '', d)}"
> >  CONFFILES:${PN} += "${datadir}/pipewire/pipewire.conf"
> >  FILES:${PN} = " \
> > -    ${datadir}/pipewire/pipewire.conf \
> > -    ${systemd_system_unitdir}/pipewire.* \
> > -    ${systemd_user_unitdir}/pipewire.* \
> > +    ${datadir}/pipewire \
> > +    ${systemd_system_unitdir}/pipewire* \
> > +    ${systemd_user_unitdir}/pipewire* \
> >      ${bindir}/pipewire \
> > +    ${bindir}/pipewire-avb \
> > +"
> > +
> > +RRECOMMENDS:${PN} += " \
> > +    ${PN}-media-session \
> >  "
> >
> >  FILES:${PN}-dev += " \
> > --
> > 2.34.1
> >
> >
> > -=-=-=-=-=-=-=-=-=-=-=-
> > Links: You receive all messages sent to this group.
> > View/Reply Online (#98312): https://lists.openembedded.org/g/openembedded-devel/message/98312
> > Mute This Topic: https://lists.openembedded.org/mt/93090043/1997914
> > Group Owner: openembedded-devel+owner@lists.openembedded.org
> > Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [raj.khem@gmail.com]
> > -=-=-=-=-=-=-=-=-=-=-=-
> >
Markus Volk Aug. 19, 2022, 11:42 a.m. UTC | #3
Hi Khem,

I can't reproduce your compile error but i sent a v2 that will 
hopefully fix it and also tried to avoid that licensing issues.

Meanwhile i also did some testing with wireplumber. Both media-session 
and wireplumber are working well for me after i updated the wireplumber 
recipe. I'll send a patch for wireplumber also. Modules and 
systemd-user-service needed to be installed to get it running.

Am Do, 18. Aug 2022 um 10:57:13 -0700 schrieb Khem Raj 
<raj.khem@gmail.com>:
> also a compiler error here
> 
> <https://errors.yoctoproject.org/Errors/Details/668536/>
> 
> On Thu, Aug 18, 2022 at 10:53 AM Khem Raj <raj.khem@gmail.com 
> <mailto:raj.khem@gmail.com>> wrote:
>> 
>>  We have some issues with this w.r.t licenses
>> 
>>  ERROR: Nothing PROVIDES 'fdk-aac' (but
>>  
>> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
>>  DEPENDS on or otherwise requires it)
>>  fdk-aac was skipped: because it has a restricted license 
>> 'commercial'.
>>  Which is not listed in LICENSE_FLAGS_ACCEPTED
>>  ERROR: Nothing RPROVIDES 'pipewire-media-session-dev' (but
>>  
>> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb
>>  RDEPENDS on or otherwise requires it)
>>  No eligible RPROVIDERs exist for 'pipewire-media-session-dev'
>>  NOTE: Runtime target 'pipewire-media-session-dev' is unbuildable, 
>> removing...
>>  Missing or unbuildable dependency chain was: 
>> ['pipewire-media-session-dev']
>>  ERROR: Nothing RPROVIDES 'pipewire-media-session' (but
>>  
>> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb,
>>  
>> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
>>  RDEPENDS on or otherwise requires it)
>>  No eligible RPROVIDERs exist for 'pipewire-media-session'
>>  NOTE: Runtime target 'pipewire-media-session' is unbuildable, 
>> removing...
>>  Missing or unbuildable dependency chain was: 
>> ['pipewire-media-session']
>>  ERROR: Nothing RPROVIDES 'pipewire' (but
>>  
>> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb,
>>  
>> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/wireplumber/wireplumber_0.4.9.bb,
>>  
>> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
>>  RDEPENDS on or otherwise requires it)
>>  No eligible RPROVIDERs exist for 'pipewire'
>>  NOTE: Runtime target 'pipewire' is unbuildable, removing...
>>  Missing or unbuildable dependency chain was: ['pipewire']
>>  ERROR: Nothing RPROVIDES 'wireplumber-scripts' (but
>>  
>> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/wireplumber/wireplumber_0.4.9.bb
>>  RDEPENDS on or otherwise requires it)
>>  No eligible RPROVIDERs exist for 'wireplumber-scripts'
>>  NOTE: Runtime target 'wireplumber-scripts' is unbuildable, 
>> removing...
>>  Missing or unbuildable dependency chain was: ['wireplumber-scripts']
>>  ERROR: Nothing RPROVIDES 'wireplumber-dev' (but
>>  
>> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/wireplumber/wireplumber_0.4.9.bb
>>  RDEPENDS on or otherwise requires it)
>>  No eligible RPROVIDERs exist for 'wireplumber-dev'
>>  NOTE: Runtime target 'wireplumber-dev' is unbuildable, removing...
>>  Missing or unbuildable dependency chain was: ['wireplumber-dev']
>>  ERROR: Nothing RPROVIDES 'wireplumber-modules-meta' (but
>>  
>> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/wireplumber/wireplumber_0.4.9.bb
>>  RDEPENDS on or otherwise requires it)
>>  No eligible RPROVIDERs exist for 'wireplumber-modules-meta'
>>  NOTE: Runtime target 'wireplumber-modules-meta' is unbuildable, 
>> removing...
>>  Missing or unbuildable dependency chain was: 
>> ['wireplumber-modules-meta']
>>  ERROR: Nothing RPROVIDES 'wireplumber' (but
>>  
>> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/wireplumber/wireplumber_0.4.9.bb
>>  RDEPENDS on or otherwise requires it)
>>  No eligible RPROVIDERs exist for 'wireplumber'
>>  NOTE: Runtime target 'wireplumber' is unbuildable, removing...
>>  Missing or unbuildable dependency chain was: ['wireplumber']
>>  ERROR: Nothing RPROVIDES 'pipewire-modules-protocol-pulse' (but
>>  
>> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
>>  RDEPENDS on or otherwise requires it)
>>  No eligible RPROVIDERs exist for 'pipewire-modules-protocol-pulse'
>>  NOTE: Runtime target 'pipewire-modules-protocol-pulse' is 
>> unbuildable,
>>  removing...
>>  Missing or unbuildable dependency chain was: 
>> ['pipewire-modules-protocol-pulse']
>>  ERROR: Nothing RPROVIDES 'pipewire-spa-plugins-meta' (but
>>  
>> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
>>  RDEPENDS on or otherwise requires it)
>>  No eligible RPROVIDERs exist for 'pipewire-spa-plugins-meta'
>>  NOTE: Runtime target 'pipewire-spa-plugins-meta' is unbuildable, 
>> removing...
>>  Missing or unbuildable dependency chain was: 
>> ['pipewire-spa-plugins-meta']
>>  ERROR: Nothing RPROVIDES 'pipewire-modules-protocol-native' (but
>>  
>> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
>>  RDEPENDS on or otherwise requires it)
>>  No eligible RPROVIDERs exist for 'pipewire-modules-protocol-native'
>>  NOTE: Runtime target 'pipewire-modules-protocol-native' is
>>  unbuildable, removing...
>>  Missing or unbuildable dependency chain was:
>>  ['pipewire-modules-protocol-native']
>>  ERROR: Nothing RPROVIDES 'pipewire-spa-plugins-support' (but
>>  
>> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
>>  RDEPENDS on or otherwise requires it)
>>  No eligible RPROVIDERs exist for 'pipewire-spa-plugins-support'
>>  NOTE: Runtime target 'pipewire-spa-plugins-support' is unbuildable, 
>> removing...
>>  Missing or unbuildable dependency chain was: 
>> ['pipewire-spa-plugins-support']
>>  ERROR: Nothing RPROVIDES 'pipewire-modules-meta' (but
>>  
>> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
>>  RDEPENDS on or otherwise requires it)
>>  No eligible RPROVIDERs exist for 'pipewire-modules-meta'
>>  NOTE: Runtime target 'pipewire-modules-meta' is unbuildable, 
>> removing...
>>  Missing or unbuildable dependency chain was: 
>> ['pipewire-modules-meta']
>>  ERROR: Nothing RPROVIDES 'pipewire-dev' (but
>>  
>> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
>>  RDEPENDS on or otherwise requires it)
>>  No eligible RPROVIDERs exist for 'pipewire-dev'
>>  NOTE: Runtime target 'pipewire-dev' is unbuildable, removing...
>>  Missing or unbuildable dependency chain was: ['pipewire-dev']
>>  ERROR: Nothing RPROVIDES 'pipewire-modules-client-node' (but
>>  
>> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
>>  RDEPENDS on or otherwise requires it)
>>  No eligible RPROVIDERs exist for 'pipewire-modules-client-node'
>>  NOTE: Runtime target 'pipewire-modules-client-node' is unbuildable, 
>> removing...
>>  Missing or unbuildable dependency chain was: 
>> ['pipewire-modules-client-node']
>> 
>>  On Wed, Aug 17, 2022 at 12:48 PM Markus Volk <f_l_k@t-online.de 
>> <mailto:f_l_k@t-online.de>> wrote:
>>  >
>>  > Add the configuration to make pipewire work as a drop-in 
>> replacement for pulseaudio-server.
>>  >
>>  > Add pipewire-media-session as a standalone recipe, since pipewire 
>> would fetch the code as a
>>  > subproject at do_configure.
>>  >
>>  > Signed-off-by: Markus Volk <f_l_k@t-online.de 
>> <mailto:f_l_k@t-online.de>>
>>  > ---
>>  >  .../pipewire/pipewire-media-session_0.4.1.bb  | 22 
>> +++++++++++++++
>>  >  ...{pipewire_0.3.50.bb => pipewire_0.3.56.bb} | 27 
>> ++++++++++++-------
>>  >  2 files changed, 40 insertions(+), 9 deletions(-)
>>  >  create mode 100644 
>> meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb
>>  >  rename 
>> meta-multimedia/recipes-multimedia/pipewire/{pipewire_0.3.50.bb => 
>> pipewire_0.3.56.bb} (93%)
>>  >
>>  > diff --git 
>> a/meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb 
>> b/meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb
>>  > new file mode 100644
>>  > index 000000000..bec911fc5
>>  > --- /dev/null
>>  > +++ 
>> b/meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb
>>  > @@ -0,0 +1,22 @@
>>  > +SUMMARY = "PipeWire Media Session is an example session manager 
>> for PipeWire"
>>  > +HOMEPAGE = 
>> "<https://gitlab.freedesktop.org/pipewire/media-session>"
>>  > +LICENSE = "MIT"
>>  > +
>>  > +LIC_FILES_CHKSUM = 
>> "file://COPYING;md5=97be96ca4fab23e9657ffa590b931c1a" 
>> <file://copying;md5=97be96ca4fab23e9657ffa590b931c1a/>
>>  > +
>>  > +DEPENDS = " \
>>  > +       pipewire \
>>  > +       alsa-lib \
>>  > +       dbus \
>>  > +"
>>  > +
>>  > +RDEPENDS:${PN} = "pipewire"
>>  > +
>>  > +SRC_URI = 
>> "git://gitlab.freedesktop.org/pipewire/media-session.git;protocol=https;branch=master"
>>  > +
>>  > +S = "${WORKDIR}/git"
>>  > +SRCREV = "e5d5cf2404786af8bcc40bdb8a2962bef4ec18b6"
>>  > +
>>  > +inherit meson pkgconfig
>>  > +
>>  > +FILES:${PN} += "${libdir} ${datadir}"
>>  > diff --git 
>> a/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.50.bb 
>> b/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
>>  > similarity index 93%
>>  > rename from 
>> meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.50.bb
>>  > rename to 
>> meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
>>  > index c176c6eeb..7a913d5f9 100644
>>  > --- 
>> a/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.50.bb
>>  > +++ 
>> b/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
>>  > @@ -13,10 +13,9 @@ LIC_FILES_CHKSUM = " \
>>  >
>>  >  DEPENDS = "dbus ncurses"
>>  >
>>  > -SRCREV = "64cf5e80e6240284e6b757907b900507fe56f1b5"
>>  > +SRCREV = "f274e53d25ee8f483ac6fce9e516bb1830abe88b"
>>  >  SRC_URI = " \
>>  >         
>> git://gitlab.freedesktop.org/pipewire/pipewire.git;branch=master;protocol=https 
>> \
>>  > -       file://0001-spa-fix-c90-header-include.patch 
>> <file://0001-spa-fix-c90-header-include.patch/> \
>>  >  "
>>  >
>>  >  S = "${WORKDIR}/git"
>>  > @@ -73,11 +72,12 @@ EXTRA_OEMESON += " \
>>  >  "
>>  >
>>  >  PACKAGECONFIG:class-target ??= "\
>>  > +    ${@bb.utils.contains 
>> <mailto:${@bb.utils.contains>('DISTRO_FEATURES', 'gstreamer', 
>> 'gstreamer', 'ffmpeg', d)} \
>>  >      ${@bb.utils.contains 
>> <mailto:${@bb.utils.contains>('DISTRO_FEATURES', 'zeroconf', 
>> 'avahi', '', d)} \
>>  > -    ${@bb.utils.contains 
>> <mailto:${@bb.utils.contains>('DISTRO_FEATURES', 'bluetooth', 
>> 'bluez', '', d)} \
>>  > -    ${@bb.utils.contains 
>> <mailto:${@bb.utils.contains>('DISTRO_FEATURES', 'systemd', 'systemd 
>> systemd-system-service', '', d)} \
>>  > -    ${@bb.utils.filter 
>> <mailto:${@bb.utils.filter>('DISTRO_FEATURES', 'alsa', d)} \
>>  > -    gstreamer jack libusb pw-cat raop sndfile v4l2 \
>>  > +    ${@bb.utils.contains 
>> <mailto:${@bb.utils.contains>('DISTRO_FEATURES', 'bluetooth', 'bluez 
>> bluez-aac', '', d)} \
>>  > +    ${@bb.utils.contains 
>> <mailto:${@bb.utils.contains>('DISTRO_FEATURES', 'systemd', 'systemd 
>> systemd-system-service systemd-user-service', '', d)} \
>>  > +    ${@bb.utils.filter 
>> <mailto:${@bb.utils.filter>('DISTRO_FEATURES', 'alsa dbus vulkan 
>> pulseaudio', d)} \
>>  > +    jack libusb pw-cat raop sndfile v4l2 udev volume \
>>  >  "
>>  >
>>  >  # "jack" and "pipewire-jack" packageconfigs cannot be both 
>> enabled,
>>  > @@ -96,6 +96,7 @@ PACKAGECONFIG[jack] = 
>> "-Djack=enabled,-Djack=disabled,jack,,,pipewire-jack"
>>  >  PACKAGECONFIG[libcamera] = 
>> "-Dlibcamera=enabled,-Dlibcamera=disabled,libcamera"
>>  >  PACKAGECONFIG[libcanberra] = 
>> "-Dlibcanberra=enabled,-Dlibcanberra=disabled,libcanberra"
>>  >  PACKAGECONFIG[libusb] = 
>> "-Dlibusb=enabled,-Dlibusb=disabled,libusb"
>>  > +PACKAGECONFIG[pulseaudio] = 
>> "-Dlibpulse=enabled,-Dlibpulse=disabled,pulseaudio"
>>  >  PACKAGECONFIG[pipewire-alsa] = 
>> "-Dpipewire-alsa=enabled,-Dpipewire-alsa=disabled,alsa-lib"
>>  >  PACKAGECONFIG[pipewire-jack] = "-Dpipewire-jack=enabled 
>> -Dlibjack-path=${libdir}/${PW_MODULE_SUBDIR}/jack,-Dpipewire-jack=disabled,jack,,,jack"
>>  >  PACKAGECONFIG[pw-cat] = "-Dpw-cat=enabled,-Dpw-cat=disabled"
>>  > @@ -109,7 +110,10 @@ PACKAGECONFIG[systemd-system-service] = 
>> "-Dsystemd-system-service=enabled,-Dsyst
>>  >  # currently lacks the feature of enabling user services.
>>  >  PACKAGECONFIG[systemd-user-service] = 
>> "-Dsystemd-user-service=enabled,-Dsystemd-user-service=disabled,systemd"
>>  >  # pw-cat needs sndfile packageconfig to be enabled
>>  > +PACKAGECONFIG[udev] = "-Dudev=enabled,-Dudev=disabled,udev"
>>  >  PACKAGECONFIG[v4l2] = "-Dv4l2=enabled,-Dv4l2=disabled,udev"
>>  > +PACKAGECONFIG[volume] = "-Dvolume=enabled,-Dvolume=disabled"
>>  > +PACKAGECONFIG[vulkan] = 
>> "-Dvulkan=enabled,-Dvulkan=disabled,vulkan-headers vulkan-loader"
>>  >  PACKAGECONFIG[webrtc-echo-cancelling] = 
>> "-Decho-cancel-webrtc=enabled,-Decho-cancel-webrtc=disabled,webrtc-audio-processing"
>>  >
>>  >  PACKAGESPLITFUNCS:prepend = " split_dynamic_packages "
>>  > @@ -227,10 +231,15 @@ PACKAGES_DYNAMIC = "^${PN}-spa-plugins.* 
>> ^${PN}-modules.*"
>>  >  SYSTEMD_SERVICE:${PN} = "${@bb.utils.contains 
>> <mailto:${@bb.utils.contains>('PACKAGECONFIG', 
>> 'systemd-system-service', 'pipewire.service', '', d)}"
>>  >  CONFFILES:${PN} += "${datadir}/pipewire/pipewire.conf"
>>  >  FILES:${PN} = " \
>>  > -    ${datadir}/pipewire/pipewire.conf \
>>  > -    ${systemd_system_unitdir}/pipewire.* \
>>  > -    ${systemd_user_unitdir}/pipewire.* \
>>  > +    ${datadir}/pipewire \
>>  > +    ${systemd_system_unitdir}/pipewire* \
>>  > +    ${systemd_user_unitdir}/pipewire* \
>>  >      ${bindir}/pipewire \
>>  > +    ${bindir}/pipewire-avb \
>>  > +"
>>  > +
>>  > +RRECOMMENDS:${PN} += " \
>>  > +    ${PN}-media-session \
>>  >  "
>>  >
>>  >  FILES:${PN}-dev += " \
>>  > --
>>  > 2.34.1
>>  >
>>  >
>>  > -=-=-=-=-=-=-=-=-=-=-=-
>>  > Links: You receive all messages sent to this group.
>>  > View/Reply Online (#98312): 
>> <https://lists.openembedded.org/g/openembedded-devel/message/98312>
>>  > Mute This Topic: 
>> <https://lists.openembedded.org/mt/93090043/1997914>
>>  > Group Owner: openembedded-devel+owner@lists.openembedded.org 
>> <mailto:openembedded-devel+owner@lists.openembedded.org>
>>  > Unsubscribe: 
>> <https://lists.openembedded.org/g/openembedded-devel/unsub> 
>> [raj.khem@gmail.com <mailto:raj.khem@gmail.com>]
>>  > -=-=-=-=-=-=-=-=-=-=-=-
>>  >
Markus Volk Aug. 19, 2022, 2 p.m. UTC | #4
i sent a v3 patch for pipewire that would also cleanup the unneeded 
patch

Am Fr, 19. Aug 2022 um 13:42:19 +0200 schrieb Markus Volk 
<f_l_k@t-online.de>:
> Hi Khem,
> 
> I can't reproduce your compile error but i sent a v2 that will 
> hopefully fix it and also tried to avoid that licensing issues.
> 
> Meanwhile i also did some testing with wireplumber. Both 
> media-session and wireplumber are working well for me after i updated 
> the wireplumber recipe. I'll send a patch for wireplumber also. 
> Modules and systemd-user-service needed to be installed to get it 
> running.
> 
> Am Do, 18. Aug 2022 um 10:57:13 -0700 schrieb Khem Raj 
> <raj.khem@gmail.com>:
>> also a compiler error here
>> 
>> <https://errors.yoctoproject.org/Errors/Details/668536/>
>> 
>> On Thu, Aug 18, 2022 at 10:53 AM Khem Raj <raj.khem@gmail.com 
>> <mailto:raj.khem@gmail.com>> wrote:
>>> 
>>>  We have some issues with this w.r.t licenses
>>> 
>>>  ERROR: Nothing PROVIDES 'fdk-aac' (but
>>>  
>>> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
>>>  DEPENDS on or otherwise requires it)
>>>  fdk-aac was skipped: because it has a restricted license 
>>> 'commercial'.
>>>  Which is not listed in LICENSE_FLAGS_ACCEPTED
>>>  ERROR: Nothing RPROVIDES 'pipewire-media-session-dev' (but
>>>  
>>> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb
>>>  RDEPENDS on or otherwise requires it)
>>>  No eligible RPROVIDERs exist for 'pipewire-media-session-dev'
>>>  NOTE: Runtime target 'pipewire-media-session-dev' is unbuildable, 
>>> removing...
>>>  Missing or unbuildable dependency chain was: 
>>> ['pipewire-media-session-dev']
>>>  ERROR: Nothing RPROVIDES 'pipewire-media-session' (but
>>>  
>>> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb,
>>>  
>>> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
>>>  RDEPENDS on or otherwise requires it)
>>>  No eligible RPROVIDERs exist for 'pipewire-media-session'
>>>  NOTE: Runtime target 'pipewire-media-session' is unbuildable, 
>>> removing...
>>>  Missing or unbuildable dependency chain was: 
>>> ['pipewire-media-session']
>>>  ERROR: Nothing RPROVIDES 'pipewire' (but
>>>  
>>> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb,
>>>  
>>> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/wireplumber/wireplumber_0.4.9.bb,
>>>  
>>> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
>>>  RDEPENDS on or otherwise requires it)
>>>  No eligible RPROVIDERs exist for 'pipewire'
>>>  NOTE: Runtime target 'pipewire' is unbuildable, removing...
>>>  Missing or unbuildable dependency chain was: ['pipewire']
>>>  ERROR: Nothing RPROVIDES 'wireplumber-scripts' (but
>>>  
>>> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/wireplumber/wireplumber_0.4.9.bb
>>>  RDEPENDS on or otherwise requires it)
>>>  No eligible RPROVIDERs exist for 'wireplumber-scripts'
>>>  NOTE: Runtime target 'wireplumber-scripts' is unbuildable, 
>>> removing...
>>>  Missing or unbuildable dependency chain was: 
>>> ['wireplumber-scripts']
>>>  ERROR: Nothing RPROVIDES 'wireplumber-dev' (but
>>>  
>>> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/wireplumber/wireplumber_0.4.9.bb
>>>  RDEPENDS on or otherwise requires it)
>>>  No eligible RPROVIDERs exist for 'wireplumber-dev'
>>>  NOTE: Runtime target 'wireplumber-dev' is unbuildable, removing...
>>>  Missing or unbuildable dependency chain was: ['wireplumber-dev']
>>>  ERROR: Nothing RPROVIDES 'wireplumber-modules-meta' (but
>>>  
>>> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/wireplumber/wireplumber_0.4.9.bb
>>>  RDEPENDS on or otherwise requires it)
>>>  No eligible RPROVIDERs exist for 'wireplumber-modules-meta'
>>>  NOTE: Runtime target 'wireplumber-modules-meta' is unbuildable, 
>>> removing...
>>>  Missing or unbuildable dependency chain was: 
>>> ['wireplumber-modules-meta']
>>>  ERROR: Nothing RPROVIDES 'wireplumber' (but
>>>  
>>> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/wireplumber/wireplumber_0.4.9.bb
>>>  RDEPENDS on or otherwise requires it)
>>>  No eligible RPROVIDERs exist for 'wireplumber'
>>>  NOTE: Runtime target 'wireplumber' is unbuildable, removing...
>>>  Missing or unbuildable dependency chain was: ['wireplumber']
>>>  ERROR: Nothing RPROVIDES 'pipewire-modules-protocol-pulse' (but
>>>  
>>> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
>>>  RDEPENDS on or otherwise requires it)
>>>  No eligible RPROVIDERs exist for 'pipewire-modules-protocol-pulse'
>>>  NOTE: Runtime target 'pipewire-modules-protocol-pulse' is 
>>> unbuildable,
>>>  removing...
>>>  Missing or unbuildable dependency chain was: 
>>> ['pipewire-modules-protocol-pulse']
>>>  ERROR: Nothing RPROVIDES 'pipewire-spa-plugins-meta' (but
>>>  
>>> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
>>>  RDEPENDS on or otherwise requires it)
>>>  No eligible RPROVIDERs exist for 'pipewire-spa-plugins-meta'
>>>  NOTE: Runtime target 'pipewire-spa-plugins-meta' is unbuildable, 
>>> removing...
>>>  Missing or unbuildable dependency chain was: 
>>> ['pipewire-spa-plugins-meta']
>>>  ERROR: Nothing RPROVIDES 'pipewire-modules-protocol-native' (but
>>>  
>>> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
>>>  RDEPENDS on or otherwise requires it)
>>>  No eligible RPROVIDERs exist for 'pipewire-modules-protocol-native'
>>>  NOTE: Runtime target 'pipewire-modules-protocol-native' is
>>>  unbuildable, removing...
>>>  Missing or unbuildable dependency chain was:
>>>  ['pipewire-modules-protocol-native']
>>>  ERROR: Nothing RPROVIDES 'pipewire-spa-plugins-support' (but
>>>  
>>> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
>>>  RDEPENDS on or otherwise requires it)
>>>  No eligible RPROVIDERs exist for 'pipewire-spa-plugins-support'
>>>  NOTE: Runtime target 'pipewire-spa-plugins-support' is 
>>> unbuildable, removing...
>>>  Missing or unbuildable dependency chain was: 
>>> ['pipewire-spa-plugins-support']
>>>  ERROR: Nothing RPROVIDES 'pipewire-modules-meta' (but
>>>  
>>> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
>>>  RDEPENDS on or otherwise requires it)
>>>  No eligible RPROVIDERs exist for 'pipewire-modules-meta'
>>>  NOTE: Runtime target 'pipewire-modules-meta' is unbuildable, 
>>> removing...
>>>  Missing or unbuildable dependency chain was: 
>>> ['pipewire-modules-meta']
>>>  ERROR: Nothing RPROVIDES 'pipewire-dev' (but
>>>  
>>> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
>>>  RDEPENDS on or otherwise requires it)
>>>  No eligible RPROVIDERs exist for 'pipewire-dev'
>>>  NOTE: Runtime target 'pipewire-dev' is unbuildable, removing...
>>>  Missing or unbuildable dependency chain was: ['pipewire-dev']
>>>  ERROR: Nothing RPROVIDES 'pipewire-modules-client-node' (but
>>>  
>>> /mnt/b/yoe/master/sources/meta-openembedded/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
>>>  RDEPENDS on or otherwise requires it)
>>>  No eligible RPROVIDERs exist for 'pipewire-modules-client-node'
>>>  NOTE: Runtime target 'pipewire-modules-client-node' is 
>>> unbuildable, removing...
>>>  Missing or unbuildable dependency chain was: 
>>> ['pipewire-modules-client-node']
>>> 
>>>  On Wed, Aug 17, 2022 at 12:48 PM Markus Volk <f_l_k@t-online.de 
>>> <mailto:f_l_k@t-online.de>> wrote:
>>>  >
>>>  > Add the configuration to make pipewire work as a drop-in 
>>> replacement for pulseaudio-server.
>>>  >
>>>  > Add pipewire-media-session as a standalone recipe, since 
>>> pipewire would fetch the code as a
>>>  > subproject at do_configure.
>>>  >
>>>  > Signed-off-by: Markus Volk <f_l_k@t-online.de 
>>> <mailto:f_l_k@t-online.de>>
>>>  > ---
>>>  >  .../pipewire/pipewire-media-session_0.4.1.bb  | 22 
>>> +++++++++++++++
>>>  >  ...{pipewire_0.3.50.bb => pipewire_0.3.56.bb} | 27 
>>> ++++++++++++-------
>>>  >  2 files changed, 40 insertions(+), 9 deletions(-)
>>>  >  create mode 100644 
>>> meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb
>>>  >  rename 
>>> meta-multimedia/recipes-multimedia/pipewire/{pipewire_0.3.50.bb => 
>>> pipewire_0.3.56.bb} (93%)
>>>  >
>>>  > diff --git 
>>> a/meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb 
>>> b/meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb
>>>  > new file mode 100644
>>>  > index 000000000..bec911fc5
>>>  > --- /dev/null
>>>  > +++ 
>>> b/meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb
>>>  > @@ -0,0 +1,22 @@
>>>  > +SUMMARY = "PipeWire Media Session is an example session manager 
>>> for PipeWire"
>>>  > +HOMEPAGE = 
>>> "<https://gitlab.freedesktop.org/pipewire/media-session>"
>>>  > +LICENSE = "MIT"
>>>  > +
>>>  > +LIC_FILES_CHKSUM = 
>>> "file://COPYING;md5=97be96ca4fab23e9657ffa590b931c1a" 
>>> <file://copying;md5=97be96ca4fab23e9657ffa590b931c1a/>
>>>  > +
>>>  > +DEPENDS = " \
>>>  > +       pipewire \
>>>  > +       alsa-lib \
>>>  > +       dbus \
>>>  > +"
>>>  > +
>>>  > +RDEPENDS:${PN} = "pipewire"
>>>  > +
>>>  > +SRC_URI = 
>>> "git://gitlab.freedesktop.org/pipewire/media-session.git;protocol=https;branch=master"
>>>  > +
>>>  > +S = "${WORKDIR}/git"
>>>  > +SRCREV = "e5d5cf2404786af8bcc40bdb8a2962bef4ec18b6"
>>>  > +
>>>  > +inherit meson pkgconfig
>>>  > +
>>>  > +FILES:${PN} += "${libdir} ${datadir}"
>>>  > diff --git 
>>> a/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.50.bb 
>>> b/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
>>>  > similarity index 93%
>>>  > rename from 
>>> meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.50.bb
>>>  > rename to 
>>> meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
>>>  > index c176c6eeb..7a913d5f9 100644
>>>  > --- 
>>> a/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.50.bb
>>>  > +++ 
>>> b/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
>>>  > @@ -13,10 +13,9 @@ LIC_FILES_CHKSUM = " \
>>>  >
>>>  >  DEPENDS = "dbus ncurses"
>>>  >
>>>  > -SRCREV = "64cf5e80e6240284e6b757907b900507fe56f1b5"
>>>  > +SRCREV = "f274e53d25ee8f483ac6fce9e516bb1830abe88b"
>>>  >  SRC_URI = " \
>>>  >         
>>> git://gitlab.freedesktop.org/pipewire/pipewire.git;branch=master;protocol=https 
>>> \
>>>  > -       file://0001-spa-fix-c90-header-include.patch 
>>> <file://0001-spa-fix-c90-header-include.patch/> \
>>>  >  "
>>>  >
>>>  >  S = "${WORKDIR}/git"
>>>  > @@ -73,11 +72,12 @@ EXTRA_OEMESON += " \
>>>  >  "
>>>  >
>>>  >  PACKAGECONFIG:class-target ??= "\
>>>  > +    ${@bb.utils.contains 
>>> <mailto:${@bb.utils.contains>('DISTRO_FEATURES', 'gstreamer', 
>>> 'gstreamer', 'ffmpeg', d)} \
>>>  >      ${@bb.utils.contains 
>>> <mailto:${@bb.utils.contains>('DISTRO_FEATURES', 'zeroconf', 
>>> 'avahi', '', d)} \
>>>  > -    ${@bb.utils.contains 
>>> <mailto:${@bb.utils.contains>('DISTRO_FEATURES', 'bluetooth', 
>>> 'bluez', '', d)} \
>>>  > -    ${@bb.utils.contains 
>>> <mailto:${@bb.utils.contains>('DISTRO_FEATURES', 'systemd', 
>>> 'systemd systemd-system-service', '', d)} \
>>>  > -    ${@bb.utils.filter 
>>> <mailto:${@bb.utils.filter>('DISTRO_FEATURES', 'alsa', d)} \
>>>  > -    gstreamer jack libusb pw-cat raop sndfile v4l2 \
>>>  > +    ${@bb.utils.contains 
>>> <mailto:${@bb.utils.contains>('DISTRO_FEATURES', 'bluetooth', 
>>> 'bluez bluez-aac', '', d)} \
>>>  > +    ${@bb.utils.contains 
>>> <mailto:${@bb.utils.contains>('DISTRO_FEATURES', 'systemd', 
>>> 'systemd systemd-system-service systemd-user-service', '', d)} \
>>>  > +    ${@bb.utils.filter 
>>> <mailto:${@bb.utils.filter>('DISTRO_FEATURES', 'alsa dbus vulkan 
>>> pulseaudio', d)} \
>>>  > +    jack libusb pw-cat raop sndfile v4l2 udev volume \
>>>  >  "
>>>  >
>>>  >  # "jack" and "pipewire-jack" packageconfigs cannot be both 
>>> enabled,
>>>  > @@ -96,6 +96,7 @@ PACKAGECONFIG[jack] = 
>>> "-Djack=enabled,-Djack=disabled,jack,,,pipewire-jack"
>>>  >  PACKAGECONFIG[libcamera] = 
>>> "-Dlibcamera=enabled,-Dlibcamera=disabled,libcamera"
>>>  >  PACKAGECONFIG[libcanberra] = 
>>> "-Dlibcanberra=enabled,-Dlibcanberra=disabled,libcanberra"
>>>  >  PACKAGECONFIG[libusb] = 
>>> "-Dlibusb=enabled,-Dlibusb=disabled,libusb"
>>>  > +PACKAGECONFIG[pulseaudio] = 
>>> "-Dlibpulse=enabled,-Dlibpulse=disabled,pulseaudio"
>>>  >  PACKAGECONFIG[pipewire-alsa] = 
>>> "-Dpipewire-alsa=enabled,-Dpipewire-alsa=disabled,alsa-lib"
>>>  >  PACKAGECONFIG[pipewire-jack] = "-Dpipewire-jack=enabled 
>>> -Dlibjack-path=${libdir}/${PW_MODULE_SUBDIR}/jack,-Dpipewire-jack=disabled,jack,,,jack"
>>>  >  PACKAGECONFIG[pw-cat] = "-Dpw-cat=enabled,-Dpw-cat=disabled"
>>>  > @@ -109,7 +110,10 @@ PACKAGECONFIG[systemd-system-service] = 
>>> "-Dsystemd-system-service=enabled,-Dsyst
>>>  >  # currently lacks the feature of enabling user services.
>>>  >  PACKAGECONFIG[systemd-user-service] = 
>>> "-Dsystemd-user-service=enabled,-Dsystemd-user-service=disabled,systemd"
>>>  >  # pw-cat needs sndfile packageconfig to be enabled
>>>  > +PACKAGECONFIG[udev] = "-Dudev=enabled,-Dudev=disabled,udev"
>>>  >  PACKAGECONFIG[v4l2] = "-Dv4l2=enabled,-Dv4l2=disabled,udev"
>>>  > +PACKAGECONFIG[volume] = "-Dvolume=enabled,-Dvolume=disabled"
>>>  > +PACKAGECONFIG[vulkan] = 
>>> "-Dvulkan=enabled,-Dvulkan=disabled,vulkan-headers vulkan-loader"
>>>  >  PACKAGECONFIG[webrtc-echo-cancelling] = 
>>> "-Decho-cancel-webrtc=enabled,-Decho-cancel-webrtc=disabled,webrtc-audio-processing"
>>>  >
>>>  >  PACKAGESPLITFUNCS:prepend = " split_dynamic_packages "
>>>  > @@ -227,10 +231,15 @@ PACKAGES_DYNAMIC = "^${PN}-spa-plugins.* 
>>> ^${PN}-modules.*"
>>>  >  SYSTEMD_SERVICE:${PN} = "${@bb.utils.contains 
>>> <mailto:${@bb.utils.contains>('PACKAGECONFIG', 
>>> 'systemd-system-service', 'pipewire.service', '', d)}"
>>>  >  CONFFILES:${PN} += "${datadir}/pipewire/pipewire.conf"
>>>  >  FILES:${PN} = " \
>>>  > -    ${datadir}/pipewire/pipewire.conf \
>>>  > -    ${systemd_system_unitdir}/pipewire.* \
>>>  > -    ${systemd_user_unitdir}/pipewire.* \
>>>  > +    ${datadir}/pipewire \
>>>  > +    ${systemd_system_unitdir}/pipewire* \
>>>  > +    ${systemd_user_unitdir}/pipewire* \
>>>  >      ${bindir}/pipewire \
>>>  > +    ${bindir}/pipewire-avb \
>>>  > +"
>>>  > +
>>>  > +RRECOMMENDS:${PN} += " \
>>>  > +    ${PN}-media-session \
>>>  >  "
>>>  >
>>>  >  FILES:${PN}-dev += " \
>>>  > --
>>>  > 2.34.1
>>>  >
>>>  >
>>>  >
>>>  >
diff mbox series

Patch

diff --git a/meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb b/meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb
new file mode 100644
index 000000000..bec911fc5
--- /dev/null
+++ b/meta-multimedia/recipes-multimedia/pipewire/pipewire-media-session_0.4.1.bb
@@ -0,0 +1,22 @@ 
+SUMMARY = "PipeWire Media Session is an example session manager for PipeWire"
+HOMEPAGE = "https://gitlab.freedesktop.org/pipewire/media-session"
+LICENSE = "MIT"
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=97be96ca4fab23e9657ffa590b931c1a"
+
+DEPENDS = " \
+	pipewire \
+	alsa-lib \
+	dbus \
+"
+
+RDEPENDS:${PN} = "pipewire"
+
+SRC_URI = "git://gitlab.freedesktop.org/pipewire/media-session.git;protocol=https;branch=master"
+
+S = "${WORKDIR}/git"
+SRCREV = "e5d5cf2404786af8bcc40bdb8a2962bef4ec18b6"
+
+inherit meson pkgconfig
+
+FILES:${PN} += "${libdir} ${datadir}"
diff --git a/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.50.bb b/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
similarity index 93%
rename from meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.50.bb
rename to meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
index c176c6eeb..7a913d5f9 100644
--- a/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.50.bb
+++ b/meta-multimedia/recipes-multimedia/pipewire/pipewire_0.3.56.bb
@@ -13,10 +13,9 @@  LIC_FILES_CHKSUM = " \
 
 DEPENDS = "dbus ncurses"
 
-SRCREV = "64cf5e80e6240284e6b757907b900507fe56f1b5"
+SRCREV = "f274e53d25ee8f483ac6fce9e516bb1830abe88b"
 SRC_URI = " \
 	git://gitlab.freedesktop.org/pipewire/pipewire.git;branch=master;protocol=https \
-	file://0001-spa-fix-c90-header-include.patch \
 "
 
 S = "${WORKDIR}/git"
@@ -73,11 +72,12 @@  EXTRA_OEMESON += " \
 "
 
 PACKAGECONFIG:class-target ??= "\
+    ${@bb.utils.contains('DISTRO_FEATURES', 'gstreamer', 'gstreamer', 'ffmpeg', d)} \
     ${@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)} \
-    ${@bb.utils.filter('DISTRO_FEATURES', 'alsa', d)} \
-    gstreamer jack libusb pw-cat raop sndfile v4l2 \
+    ${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'bluez bluez-aac', '', d)} \
+    ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd systemd-system-service systemd-user-service', '', d)} \
+    ${@bb.utils.filter('DISTRO_FEATURES', 'alsa dbus vulkan pulseaudio', d)} \
+    jack libusb pw-cat raop sndfile v4l2 udev volume \
 "
 
 # "jack" and "pipewire-jack" packageconfigs cannot be both enabled,
@@ -96,6 +96,7 @@  PACKAGECONFIG[jack] = "-Djack=enabled,-Djack=disabled,jack,,,pipewire-jack"
 PACKAGECONFIG[libcamera] = "-Dlibcamera=enabled,-Dlibcamera=disabled,libcamera"
 PACKAGECONFIG[libcanberra] = "-Dlibcanberra=enabled,-Dlibcanberra=disabled,libcanberra"
 PACKAGECONFIG[libusb] = "-Dlibusb=enabled,-Dlibusb=disabled,libusb"
+PACKAGECONFIG[pulseaudio] = "-Dlibpulse=enabled,-Dlibpulse=disabled,pulseaudio"
 PACKAGECONFIG[pipewire-alsa] = "-Dpipewire-alsa=enabled,-Dpipewire-alsa=disabled,alsa-lib"
 PACKAGECONFIG[pipewire-jack] = "-Dpipewire-jack=enabled -Dlibjack-path=${libdir}/${PW_MODULE_SUBDIR}/jack,-Dpipewire-jack=disabled,jack,,,jack"
 PACKAGECONFIG[pw-cat] = "-Dpw-cat=enabled,-Dpw-cat=disabled"
@@ -109,7 +110,10 @@  PACKAGECONFIG[systemd-system-service] = "-Dsystemd-system-service=enabled,-Dsyst
 # currently lacks the feature of enabling user services.
 PACKAGECONFIG[systemd-user-service] = "-Dsystemd-user-service=enabled,-Dsystemd-user-service=disabled,systemd"
 # pw-cat needs sndfile packageconfig to be enabled
+PACKAGECONFIG[udev] = "-Dudev=enabled,-Dudev=disabled,udev"
 PACKAGECONFIG[v4l2] = "-Dv4l2=enabled,-Dv4l2=disabled,udev"
+PACKAGECONFIG[volume] = "-Dvolume=enabled,-Dvolume=disabled"
+PACKAGECONFIG[vulkan] = "-Dvulkan=enabled,-Dvulkan=disabled,vulkan-headers vulkan-loader"
 PACKAGECONFIG[webrtc-echo-cancelling] = "-Decho-cancel-webrtc=enabled,-Decho-cancel-webrtc=disabled,webrtc-audio-processing"
 
 PACKAGESPLITFUNCS:prepend = " split_dynamic_packages "
@@ -227,10 +231,15 @@  PACKAGES_DYNAMIC = "^${PN}-spa-plugins.* ^${PN}-modules.*"
 SYSTEMD_SERVICE:${PN} = "${@bb.utils.contains('PACKAGECONFIG', 'systemd-system-service', 'pipewire.service', '', d)}"
 CONFFILES:${PN} += "${datadir}/pipewire/pipewire.conf"
 FILES:${PN} = " \
-    ${datadir}/pipewire/pipewire.conf \
-    ${systemd_system_unitdir}/pipewire.* \
-    ${systemd_user_unitdir}/pipewire.* \
+    ${datadir}/pipewire \
+    ${systemd_system_unitdir}/pipewire* \
+    ${systemd_user_unitdir}/pipewire* \
     ${bindir}/pipewire \
+    ${bindir}/pipewire-avb \
+"
+
+RRECOMMENDS:${PN} += " \
+    ${PN}-media-session \
 "
 
 FILES:${PN}-dev += " \