Na úrovni ALSA zařízení, žádná takováhle klasifikace klientů (normální, exclusive) není.. tam by se nejspíš muselo něco dohackovat (nevím, přes BPF sledovat, který proces to otevírá, ale asi by to byla prasečina, protože jakmile by s tím nepočítalo vyploženě API, musel by se ten ne-exklusivní klient nějak zvenku urvat).
Samozřejmě přes lsof /dev/snd/* lze zjistit, který proces má zařízení otevřené, a ten by se dal zabít, ale to je hodně na hulváta.
Ale myslím, že tohle má v sobě právě přímo Pipewire.
https://docs.pipewire.org/page_man_pipewire-props_7.html#:~:text=node%2Eexclusive,source
Nikdy jsem to nezkoušel, ale chápu (možná blbě) to tak, že když se vytvoří klient (node) s tímhle příznakem a pak se připojí na sink, tak to po dobu spojení vyruší ostatní klienty.
Teoreticky i pokud to nepodporuje přímo aplikace při vytváření, tak by to pak mohlo jít přidat nějakým pravidlem (match jména "privilegovaného" procesu) i přes WirePluber.
V rámci PW to lze, v podstatě to znamená, že nebude docházet k mixování, node má sink jen sám pro sebe. Ale jakmile se něco připojí na alsí zařízení, už je to natvrdo, ani PW s tím nic neudělá.
Jinak to, co jsem myslel předtím, že PW zavře ALSA zařízení, tak jen klasicky přes sw_params.
grep -H '^' /proc/asound/*/pcm*/sub?/sw_params
Jj, zjistit proces, který zařízení používá, je snadné. Ale pak už jen jej killnout natvrdo, aby zařízení pustil. Zatím jsem nikde neviděl, že by to někdo takhle používal, ale technicky takovému ošklivému hacku nic nebrání.