summaryrefslogtreecommitdiffstats
path: root/meta-pipewire/recipes-multimedia/wireplumber
AgeCommit message (Collapse)AuthorFilesLines
2023-11-28wireplumber: Add Equalizer filter chain nodeAshok Sidipotu3-0/+89
- The filter has two bands one for bass and another one for treble. - The filter node attaches itself to multimedia endpoint, this setting is configurable. - Also add a patch to fix the dangling logs issue in the endpoints policy. Bug-AGL: SPEC-4931 Change-Id: Ibb3f56ac40eedc8c30445186624e50cbb3049afa Signed-off-by: Ashok Sidipotu <ashok.sidipotu@collabora.com> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/29466 Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> Tested-by: Jenkins Job builder account
2023-11-23wireplumber: Upgrade to v0.4.16quillback_16.91.0quillback/16.91.016.91.0Ashok Sidipotu1-3/+3
- The endpoints policy now marks the endpoint nodes as "passive" instead of marking their links, adjusting for the behavior change in PipeWire 0.3.68, this fixes the pipewire busy loop issue. - Introduced the filter node in between the endpoints and sink devices. This mechanism is intended to add equalizer node with multimedia endpoint. Bug-AGL: SPEC-4972 Change-Id: Ib624ac89ddff66b161025235a30fdaa6372e597b Signed-off-by: Ashok Sidipotu <ashok.sidipotu@collabora.com> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/29465 Reviewed-by: Georgios Kiagiadakis <george.kiagiadakis@collabora.com> ci-image-boot-test: Jenkins Job builder account Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> ci-image-build: Jenkins Job builder account Tested-by: Jenkins Job builder account
2023-11-07pipewire: Update PipeWire to v0.3.83 and WirePlumber to v0.4.15Ashok Sidipotu1-3/+4
Highlights of Pipewire. - Add BAP broadcast source and sink support. - Vulkan DMA buf support was merged. - Fix a leak in the SBC codecs for SCO. - More bugfixes and improvements. - IRQ based scheduling in ALSA was improved and enabled by default for Pro-Audio profile. It will also link the pcms together to get lower latency. This now matches what JACK does and results in equal latency for Pro-Audio profiles. - A new L permission was added to make it possible to force a link between nodes even when the nodes can't see each other. - Libcamera and v4l2 devices now have properties so that duplicates can be filtered out by the session manager. - Improve RAOP compatibility. - ALSA hires timestamps are now disabled by default. Highlights of Wireplumber. - A new "DSP policy" module has been added; its purpose is to automatically load a filter-chain when a certain hardware device is present, so that audio always goes through this software DSP before reaching the device. This is mainly to support Apple M1/M2 devices, which require a software DSP to be always present - WpImplModule now supports loading module arguments directly from a SPA-JSON config file; this is mainly to support DSP configuration for Apple M1/M2 and will likely be reworked for 0.5 Bug-AGL: SPEC-4940 Change-Id: I7caa7b08686704cc94be896bcd0c2269ab3c8133 Signed-off-by: Ashok Sidipotu <ashok.sidipotu@collabora.com> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/29388 Tested-by: Jenkins Job builder account Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> ci-image-boot-test: Jenkins Job builder account ci-image-build: Jenkins Job builder account
2023-08-28wireplumber: Enable v4l2 monitorAshok Sidipotu1-1/+1
The monitor scans for the V4L2 camera devices and registers pipewire device nodes for them. This effectively enables AGL to talk to cameras. Bug-AGL: SPEC-4881 Change-Id: Ia1d989da229304b1b514d6b25ebbc2530503d370 Signed-off-by: Ashok Sidipotu <ashok.sidipotu@collabora.com> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/29117 Tested-by: Jenkins Job builder account ci-image-build: Jenkins Job builder account ci-image-boot-test: Jenkins Job builder account Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2023-04-14bluetooth.conf: open secondary access to pipewireAshok Sidipotu1-1/+1
with out having a secondary access to pipewire(export core), wireplumber creates bluetooth device objects as well as access the existing pipewire objects using the same pipewire connection, which can some times create race conditions. Enable export core, so that wireplumber bluetooth monitor has access to both the regular core and the export core. Bug-AGL: SPEC-4750 Change-Id: I0db9b276ecd6972294c36722bf5a31c5ac00f186 Signed-off-by: Ashok Sidipotu <ashok.sidipotu@collabora.com> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/28639 Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> Tested-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2023-04-04pipewire: Update pw to v0.3.67 and wp to v0.4.14Ashok Sidipotu7-473/+5
Highlights of Pipewire. - The loopback module and other couples streams will now not randomly fail in some cases. (#3028). - PipeWire can now generate a limits.d config file with our recommended settings for priorities and memlock. - Add back the deprecated symbols but make sure a deprecated warning is emitted for them. This fixes compilation issues in bindings. - Clear old buffer memory on ports to fix some SIGBUS errors. - Fix a critical bug that causes audio distortion in some cases when using. AVX2. Highlights of Wireplumber. - Added bluetooth SCO (HSP/HFP) hardware offload support, together with an example script that enables this functionality on the PinePhone. - WirePlumber now maintains a stack of previously configured default nodes and prioritizes to one of those when the actively configured default node becomes unavailable, before calculating the next default using priorities (see !396). - The libcamera monitor is now enabled by default, so if the libcamera source is enabled in PipeWire, cameras discovered with the libcamera API will be available out of the box. This is safe to use alongside V4L2, as long as the user does not try to use the same camera over different APIs at the same time. - Added i18n support to be able to translate some user-visible strings. Bug-AGL: SPEC-4732 Change-Id: Ie2f9cb99b4594d21e5c2acd092fe54e93d067410 Signed-off-by: Ashok Sidipotu <ashok.sidipotu@collabora.com> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/28590 Tested-by: Jenkins Job builder account ci-image-build: Jenkins Job builder account ci-image-boot-test: Jenkins Job builder account Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2022-05-04wireplumber: Create new recipe for policy daemonAshok Sidipotu7-15/+111
-carve out a new recipe for wireplumber policy, so that it can be assigned to the concerned container. -create new packagegroup-pipewire-base capturing the set of packages required to use PipeWire API. -remove the implicit dependencies between different wireplumber recipes, now each of those recipes will have to be included in the top level bb file. -remove the wireplumber-config virtual package. Bug-AGL: SPEC-4100 Signed-off-by: Ashok Sidipotu <ashok.sidipotu@collabora.com> Change-Id: I8ff6834c5dae94b75e07a0709c403b5d7f3b274b Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/27254 Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> Tested-by: Jenkins Job builder account
2022-03-05pipewire: Update pw to v0.3.47 and wp to v0.4.8Ashok Sidipotu4-20/+235
Highlights of Pipewire. - Removed check and warnings to catch leaked listeners on the proxy. - Fix critical bug where alsa devices would not show when the kernel was compiled without VERBOSE_PROCFS - Almost all limits on number of ports, clients and nodes are removed. - Many more bug fixes and imporovements. Highlights of Wireplumber. - Added bluetooth profile auto-switching support between A2DP and HFP modes - Better default audio sources and sinks selection - Backported a fix for a known issue with selecting the default devices on top of 0.4.8 (ae6c9a5e) - Many more bug fixes and imporovements. Change-Id: Id5414aed065593893a237437a8c77645cbf15804 Signed-off-by: Ashok Sidipotu <ashok.sidipotu@collabora.com> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/27220 Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> Tested-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2022-01-30config: fix wireplumber config issuesAshok Sidipotu2-3/+8
- AGL project not to take the wireplumber project upstream config files which are recently moved to /usr/share/wireplumber/. - create-items.lua to be loaded with correct arguments. Change-Id: I57200755d749e2222e90996cc034f66baca5568a Signed-off-by: Ashok Sidipotu <ashok.sidipotu@collabora.com> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/27099 Reviewed-by: Georgios Kiagiadakis <george.kiagiadakis@collabora.com> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> Tested-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2022-01-30policy: fix record not workingAshok Sidipotu1-1/+11
Define a capture endpoint to get record working. Change-Id: I3356736676bf112249b078ffeb16548cfa3daea3 Signed-off-by: Ashok Sidipotu <ashok.sidipotu@collabora.com> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/27073 Tested-by: Jenkins Job builder account ci-image-build: Jenkins Job builder account ci-image-boot-test: Jenkins Job builder account Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/27092 Reviewed-by: Georgios Kiagiadakis <george.kiagiadakis@collabora.com> Tested-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2022-01-30pipewire: update to pw 0.3.43 and wp 0.4.7Ashok Sidipotu3-8/+25
Change-Id: I3e478f5e1215d128f0d76ffb2b18c278d90de266 Signed-off-by: Ashok Sidipotu <ashok.sidipotu@collabora.com> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/27022 Reviewed-by: Georgios Kiagiadakis <george.kiagiadakis@collabora.com> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> Tested-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2021-12-22pipewire: update to pw 0.3.40 and wp 0.4.5Ashok Sidipotu5-15/+229
Change-Id: Ie9e3fd0a67e6a5fa38543cb9b4cc54f2e0555813 Signed-off-by: Ashok Sidipotu <ashok.sidipotu@collabora.com> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/27040 Tested-by: Jenkins Job builder account ci-image-build: Jenkins Job builder account ci-image-boot-test: Jenkins Job builder account Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2021-10-14meta-agl: split wireplumber to run in multiple instancesGeorge Kiagiadakis12-74/+356
The "IC SoundManager" design specifies that there needs to be a session manager running in the host to manage devices and permissions, but all the domain-specific policy and app management needs to run in the IVI container, together with the apps. With this split, we are able to achieve that. In addition to the "host" and "policy" instances, we are also adding a "bluetooth" one, which loads the bluetooth plugin and manages the bluetooth device. This can be moved to the IVI container as well, or elsewhere... it only depends on bluez (so it must run in the same container as bluez). For now, given the absence of an IVI container in the lxc-demo image, all instances are running in the host, but it is trivial to move all the non-host ones to another container later. To compliment pipewire-ic-ipc, this change also adds an "alsa-suspend" lua script that runs in the context of the "host" wireplumber instance and its purpose is to mute pipewire-managed alsa devices when there is a sound playing in the IC container (on another alsa device). Finally, this change also adds V4L2 configuration in the "host" wireplumber instance, which is still disabled (and untested), but you can easily enable it for experimentation by uncommenting the relevant line in host.lua.d/90-enable-all.lua Bug-AGL: SPEC-4027 Signed-off-by: George Kiagiadakis <george.kiagiadakis@collabora.com> Change-Id: I9febc4f3919e7c559a5d7d32bfe7bc95c75934f2 Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/26662 Tested-by: Jenkins Job builder account ci-image-build: Jenkins Job builder account ci-image-boot-test: Jenkins Job builder account Reviewed-by: Naoto YAMAGUCHI <naoto.yamaguchi@aisin.co.jp> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2021-08-23Convert to new override syntaxScott Murray2-13/+13
This is mostly the result of running a slightly customized version of the convert-overrides.py script from poky with additional overrides added. A few minor fixups were done by hand afterwards during a review of the changes. The intent of these changes is to minimize the effort to keep the "next" branch that builds against poky master up to date and tested in preparation for the switch to the next Yocto LTS release in early 2022. Bug-AGL: SPEC-4052 Signed-off-by: Scott Murray <scott.murray@konsulko.com> Change-Id: Ia3bf63b7cb1aa1d95ada373d1a3ab56def0a125d Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/26564 Tested-by: Jenkins Job builder account ci-image-build: Jenkins Job builder account ci-image-boot-test: Jenkins Job builder account Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2021-06-21pipewire: update to pw 0.3.30 and wp 0.4.0George Kiagiadakis6-26/+18
* The pipewire recipe has been synced with the upstream yocto one * WirePlumber configuration now has volume ducking enabled for navigation messages. This means that music will now duck when a navigation message plays instead of being corked. * PipeWire's default configuration now lives in /usr/share/pipewire, with the possibility to override it in /etc/pipewire. This allows resetting to upstream defaults by removing /etc/pipewire v2: add licenses to the layer to match the upstream recipe, adapt licenses of sub-packages v3: mark each package with the desired license instead of the mix v4: simplify the license output of the sub-packages Bug-AGL: SPEC-3844 Change-Id: I7a15ddb503d5b064f244c8a42a1aafb4caa1d46a Signed-off-by: George Kiagiadakis <george.kiagiadakis@collabora.com> Signed-off-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/26426 Tested-by: Jenkins Job builder account ci-image-build: Jenkins Job builder account ci-image-boot-test: Jenkins Job builder account
2021-06-01Remove dra7xx-evm machine supportScott Murray1-10/+0
Remove dra7xx-evm machine template and related BSP configuration tweaks. The configuration is stale and untested, and no one has expressed interest in it for long enough that it seems better to just remove it to avoid confusion about support status. Bug-AGL: SPEC-3934 Signed-off-by: Scott Murray <scott.murray@konsulko.com> Change-Id: I1659eef113cf1e6fcfdddf65f712275b8fc49b6f Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/26378 Tested-by: Jenkins Job builder account ci-image-build: Jenkins Job builder account ci-image-boot-test: Jenkins Job builder account Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2021-05-12wireplumber: update to 0.4 rc1George Kiagiadakis4-8/+119
* Update the bluetooth config to be aligned with the default upstream config * Make a2dp streams use the Multimedia role instead of Communication * Add wireplumber.conf in the agl config, which is now required Bug-AGL: SPEC-3844 Change-Id: Ifdc61065593b7cbd366dd490689135f0973ebf66 Signed-off-by: George Kiagiadakis <george.kiagiadakis@collabora.com> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/26340 Tested-by: Jenkins Job builder account ci-image-build: Jenkins Job builder account ci-image-boot-test: Jenkins Job builder account Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2021-04-26meta-pipewire: update to pipewire 0.3.25 and wireplumber masterGeorge Kiagiadakis36-408/+515
Bug-AGL: SPEC-3844 Change-Id: Ie32bfa43bf078c7d218d3150dc616501b8848bd0 Signed-off-by: George Kiagiadakis <george.kiagiadakis@collabora.com> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/26094 Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> Tested-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2021-01-06meta-pipewire: restore rcar3 Wireplumber sink configurationScott Murray2-0/+2
The most recent fixes to the Wireplumber sink configuration for the rcar3 boards (for SPEC-3661) seem to have accidentally been dropped during the changes for the layer reorganization done for SPEC-3723. Restore them to get the expected default output sink behavior. Bug-AGL: SPEC-3661 Signed-off-by: Scott Murray <scott.murray@konsulko.com> Change-Id: I2a81041629e81746d6990e5604db483e0583ad46 Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/25865 Tested-by: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-build: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-boot-test: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2020-12-17SPEC-3723: restructure meta-aglJan-Simon Moeller2-2/+0
Goal is to reach a minimal meta-agl-core as base for IVI and IC work at the same time. Trim dependencies and move most 'demo' related recipes to meta-agl-demo. v2: changed to bbapend + .inc , added description v3: testbuild of all images v4: restore -test packagegroup and -qa images, compare manifests and adapt packagegroups. v5: rebased v6: merged meta-agl-distro into meta-agl-core, due to dependency on meta-oe, moved -test packagegroup and -qa images to own layer meta-agl-core-test v7: Fixed comments from Paul Barker v8: Update the markdown files v9: restore wayland/weston/agl-compositor recipes/appends, reworked to move app f/w specific changes to bbappends in meta-app-framework and only demo specific weston-init changes to meta-agl-demo v10: fix s/agldemo/aglcore/ missed in weston-init.bbappend Description: This patch is part 1 out of 2 large patches that implement the layer rework discussed during the previous workshop. Essentially meta-agl-core is the small but versatile new core layer of AGL serving as basis for the work done by the IC and IVI EGs. All demo related work is moved to meta-agl-demo in the 2nd patchset. This should be applied together as atomic change. The resulting meta-agl/* follows these guidelines: - only bsp adaptations in meta-agl-bsp - remove the agl-profile-* layers for simplicity -- the packagegroup-agl(-profile)-graphical and so on have been kept in meta-agl-demo - meta-agl-profile-core is now meta-agl-core - meta-agl-core does pass yocto-check-layer -- therefore use the bbappend + conditional + .inc file construct found in meta-virtualization - meta-agl/meta-security has been merged into meta-agl/meta-app-framework - meta-netboot does pass yocto-check-layer - meta-pipewire does pass yocto-check-layer Migration: All packagegroups are preserved but they're now enabled by 'agl-demo'. Bug-AGL: SPEC-3723 Signed-off-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> Signed-off-by: Scott Murray <scott.murray@konsulko.com> Change-Id: Ia6c6e5e6ce2b4ffa69ea94959cdc57c310ba7c53 Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/25769
2020-11-10[RCAR] Fix the soundcard ak4613 audio sink.Ronan Le Martret2-0/+2
Now (RCAR BSP 4.1.0) the card ak4613 got two device (the new one is for the hdmi), so we must specify the device in the wireplumber configuration. Bug-AGL: SPEC-3661 Signed-off-by: Ronan Le Martret <ronan.lemartret@iot.bzh> Change-Id: I6fdf4fdc22d93a0558874e447ec5c4254f13d238 Signed-off-by: Ronan Le Martret <ronan.lemartret@iot.bzh> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/25510 Reviewed-by: Scott Murray <scott.murray@konsulko.com> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> ci-image-build: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> Tested-by: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-boot-test: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org>
2020-08-25meta-pipewire: Add imx8mq audio sink to WirePlumber configurationWalter Lozano2-0/+13
In order to use audio jack as default audio sink on iMX8MQ EVK add a specific configuration file in WirePlumber. Bug-AGL: SPEC-3410 Signed-off-by: Walter Lozano <walter.lozano@collabora.com> Change-Id: Iab6b85d3cd2072ea2d081fd44bdb492a25a92d74 Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/25129 Tested-by: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-build: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-boot-test: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2020-07-14meta-pipewire: Fix Kingfisher WirePlumber configurationScott Murray2-2/+2
Fix Kingfisher WirePlumber configuration files with the required s/rcarsound/ak4613/ to match the filenames. Bug-AGL: SPEC-3453 Signed-off-by: Scott Murray <scott.murray@konsulko.com> Change-Id: Ic8398060e0085abe0b69b458788fb5b404a26010 Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/25010 Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> Reviewed-by: Stéphane Desneux <stephane.desneux@iot.bzh> Tested-by: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org>
2020-06-26Move meta-agl-profile-graphical-html5 and meta-pipewire into the main layerJan-Simon Möller27-0/+426
Reasoning: - the profile-graphical-html5 belongs in the main layer - meta-pipewire is enabled by default For reference - the original location is: https://gerrit.automotivelinux.org/gerrit/gitweb?p=AGL%2Fmeta-agl-devel.git;a=commit;h=8479cd0c37e5e5e207a16f21c864610103e4f20f Bug-AGL: SPEC-3453 Signed-off-by: Jan-Simon Möller <jsmoeller@linuxfoundation.org> Change-Id: Ib475331bb6f84437020728fbb3f17b4acaab0106 Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/24875 Reviewed-by: Scott Murray <scott.murray@konsulko.com>