pipewire/spa/plugins/alsa
Julien Massot 8aa836d588 alsa-pcm: add support for api.alsa.dll-bandwidth-max
In USB Audio Class 2 (UAC2) setups, pitch control is handled by
feedback endpoints. The host adjusts its data rate accordingly.

When pitch control is active (pitch_elem), applying the default
delay-locked loop (DLL) bandwidth can lead to instability and
oscillations around the target rate.

This patch adds a new parameter, api.alsa.dll-bandwidth-max, to
configure the maximum DLL bandwidth. It introduces a new field
in the ALSA state to store this value.

By default, it uses SPA_DLL_BW_MAX, but when pitch control is in
use, setting it to a lower value (e.g. 0.02) helps ensure better
stability, based on empirical testing.
2025-07-07 10:40:11 +00:00
..
acp alsa: add option to disable pro-audio profiles 2025-07-02 08:11:48 -04:00
mixer acp: Sennheiser GSX stereo profile 2025-03-20 12:24:56 +00:00
90-pipewire-alsa.rules Revert "alsa: add Teufel Cage Pro mapping" 2025-06-26 09:19:09 +00:00
acp-tool.c spa: acp: make spa-acp-tool debug output easier to read 2025-03-09 16:15:56 +02:00
alsa-acp-device.c acp: remove channel limit from API 2025-04-04 15:46:03 +02:00
alsa-compress-offload-device.c spa: alsa: avoid potential uninitialized variable use 2024-09-18 19:54:13 +00:00
alsa-compress-offload-sink.c loop: add method to run a function with the lock 2025-05-29 10:17:16 +02:00
alsa-pcm-device.c spa: alsa: avoid potential uninitialized variable use 2024-09-18 19:54:13 +00:00
alsa-pcm-sink.c spa: acp: get and emit UCM information for SplitPCM devices 2024-12-21 16:03:19 +02:00
alsa-pcm-source.c spa: acp: get and emit UCM information for SplitPCM devices 2024-12-21 16:03:19 +02:00
alsa-pcm.c alsa-pcm: add support for api.alsa.dll-bandwidth-max 2025-07-07 10:40:11 +00:00
alsa-pcm.h alsa-pcm: add support for api.alsa.dll-bandwidth-max 2025-07-07 10:40:11 +00:00
alsa-seq-bridge.c alsa: remove UMP negotiation constraint 2025-06-18 10:10:10 +02:00
alsa-seq.c alsa: don't log unknown events with info 2025-06-20 15:49:17 +02:00
alsa-seq.h *: unify config.h handling 2025-05-30 10:24:13 +00:00
alsa-udev.c alsa-udev: support alsa.use-ucm 2025-06-17 12:54:39 +02:00
alsa.c meson: fix build with missing libudev-devel 2024-02-06 11:49:40 +01:00
alsa.h spa: remove unnecessary indirection for some spa_log_topics 2023-10-06 13:08:24 +00:00
compress-offload-api-util.c alsa-compress-offload: Add device object and udev based autodetection 2023-09-02 08:28:22 +00:00
compress-offload-api-util.h alsa-compress-offload: Add device object and udev based autodetection 2023-09-02 08:28:22 +00:00
compress-offload-api.c alsa-compress-offload-sink: major sink rework 2023-02-24 14:15:13 +01:00
compress-offload-api.h alsa-compress-offload: Add device object and udev based autodetection 2023-09-02 08:28:22 +00:00
meson.build meson: fix build with missing libudev-devel 2024-02-06 11:49:40 +01:00
test-hw-params.c treewide: use SPDX tags to specify copyright information 2023-02-16 10:54:48 +00:00
test-timer.c fix compilation some more 2024-06-18 15:41:12 +02:00