Questão Automatize a criação de dissipadores nulos do PulseAudio


Eu recentemente troquei para o Ubuntu e estou tentando imitar o que eu costumava fazer com cabo de áudio virtual no Windows. Achei um ótimo tutorial Isso faz exatamente o que eu quero fazer, mas é claro que se torna um pouco cansativo digitar todos esses comandos detalhados toda vez que eu tenho que reiniciar a máquina. Meus comandos são os seguintes:

pactl load-module module-null-sink sink_name=GAME sink_properties=device.description="GAME"
pactl load-module module-null-sink sink_name=MUSIC sink_properties=device.description="MUSIC"
pactl load-module module-combine-sink sink_name=GAME_and_out sink_properties=device.description="GAME_and_out", slaves=0,1
pactl load-module module-combine-sink sink_name=MUSIC_and_out sink_properties=device.description="MUSIC_and_out", slaves=0,2

Eu quero mover os comandos necessários para o meu .profile arquivo, mas isso duplica o procedimento toda vez que eu fizer login, levando à criação de muitos coletores extras que eu não preciso nem quero.

Existe uma maneira de remover os antigos coletores nulos criados com pactl load-module module-null-sinkou escreva um if bloco para envolvê-lo em que não irá disparar se esses sumidouros já existem?


2
2017-07-19 18:49


origem




Respostas:


Rater do que colocar esses comandos em nossa .profile recomenda-se adicionar todos os módulos necessários ao nosso /etc/pulse/default.pa ou em uma cópia deste arquivo em nossa casa em ~/.pulse/default.pa resp. ~/.config/pulse/default.pa para uma configuração por usuário (que substituirá todas as configurações definidas /etc/pulse/default.pa).

Adicionando estas linhas a este arquivo:

load-module module-null-sink sink_name=GAME sink_properties=device.description="GAME"
load-module module-null-sink sink_name=MUSIC sink_properties=device.description="MUSIC"
load-module module-combine-sink sink_name=GAME_and_out sink_properties=device.description="GAME_and_out", slaves=0,1
load-module module-combine-sink sink_name=MUSIC_and_out sink_properties=device.description="MUSIC_and_out", slaves=0,2

sempre carregará os dissipadores NULL desejados ao iniciar o servidor de som pulseaudio.

Removendo os sumidouros que haviam sido carregados por pactl ou pacmd, ou seja, sem configurações em nossa default.pa pode mais rapidamente feito por

pulseaudio -k

Esse comando matará a instância pulseaudio em execução, para reaparecer instantaneamente (em uma configuração padrão) usando valores definidos no default.pa.


2
2017-07-19 19:59



Isso é além uma solução perfeita. Ele corrigiu um equívoco, forneceu uma solução e me deu a resposta para o problema XY final que fiz como uma adição. Muito obrigado! - Adam Smith