Estou tentando descobrir como descarregar saídas de loopback do pulseaudio. Estou usando o pulseaudio para criar um mix de loopback para capturar o microfone e o áudio do sistema para streaming. Toda vez que eu lanço meu script que tem este código:
pactl load-module module-null-sink sink_name=mix
pactl load-module module-loopback sink=mix
pactl load-module module-loopback sink=mix
avconv ...
pactl unload-module module-loopback
deixa dois dispositivos de saída para trás depois de fechar. O comando unload-module se livra do comando de gravação, mas não consigo encontrar um comando para as saídas.
fonte
MODULE_NUMBER=$(pacmd list-sinks | grep -E "^\s*name:|^\s*module:" | grep -A 1 -E "^\s*name: <MY-SINK-NAME>" | grep -oP "module: \K[0-9]+")
ondeMY-SINK-NAME
está o que diz. Mantenha<
>
o código!pactl list short modules | grep "sink_name=MY-SINK-NAME" | cut -f1 | xargs -L1 pactl unload-module
. Tem a vantagem de excluir TODOS os módulos nomeadosMY-SINK-NAME
(nomes de coletores não são exclusivos).