Re: UCM: two devices that exclude a third but not each other

Jaroslav Kysela <[email protected]>
Newsgroups org.alsa-project.alsa-devel
Message-ID <[email protected]>
On 8/23/26 22:11, Mikhail Gavrilov wrote:

> Both list types are group relations, then, and a partial relation
> cannot be written. A profile has to choose: two mono inputs or one
> stereo pair. I have chosen the two mono inputs and said so in the file,
> but I would rather describe the card than choose for its owner.
> 
> Is there a way to express this that I have missed? If there is not,
> would a pairwise form be worth considering -- a list taken as written,
> without the closure -- alongside the grouping one, so that existing
> profiles keep their meaning? 
You can define multiple verbs one with stereo input and second with two mono 
inputs (mics) - the most easy way is to use Variant blocks to not duplicate 
configurations.

But it may make sense to describe this partial dependency directly with new 
list in the device configuration block (proposal). I am not sure if it will 
work for the current pipewire code - could you check to comment 
verb_dev_list_check() function in alsa-lib and test ?

Also note that your device naming does not follow UCM spec - see usecase.h 
header file [1]. E.g. generic inputs should be named as line. Labels on the 
card should be in comments (for GUI).

				Jaroslav

[1] https://www.alsa-project.org/alsa-doc/alsa-lib/use-case_8h_source.html

-- 
Jaroslav Kysela <[email protected]>
Linux Sound Maintainer; ALSA Project; Red Hat
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.