Support for non DSP mode
This MR adds support for non DSP mode.
The si-audio-adapter
session item has now a disable.dsp
configuration property that can be set to TRUE
if we don't want to configure the adapter in DSP
mode. When doing this, the adapter will be configured in passthrough
mode instead, and then, if 2 adapters want to be linked with different formats, the si-standard-link
session item will automatically reconfigure one of the adapters in convert
mode so that the format matches.
Since the disable.dsp
configuration property is per adapter, it is possible to have some adapters configured in DSP mode and others configured in non DSP mode. If a DSP adapter wants to be linked with a non DSP adapter, the configuration of the adapter that is a device node will take preference over the non device adapter.
By default, disable.dsp
is set to FALSE
so that the default behavior is the same as master.
Finally, keep in mind that monitor ports are not yet supported in non DSP mode. This is because the PipeWire fmtconvert
and alsa-pcm-sink
plugins don't have a monitor port (only the merger
plugin has monitor ports), so in non DSP mode, the monitor nodes won't be able to link. I am looking forward to adding support for monitor ports in PipeWire's audioadapter
plugin if configured in non DSP mode at some point in the future.