Automatize a criação de pias nulas do PulseAudio

2

Eu recentemente troquei para o Ubuntu e estou tentando emular o que eu costumava fazer com o cabo de áudio virtual no Windows. Eu encontrei um grande tutorial que faz exatamente o que eu quero mas é claro que se torna um pouco cansativo digitar todos esses comandos detalhados toda vez que eu tiver 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 arquivo .profile , 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-sink ou escrever um bloco if para encapsulá-lo, o que não será disparado se esses coletores já existirem?

    
por Adam Smith 19.07.2015 / 20:49

1 resposta

2

Mais do que colocar esses comandos em nosso .profile , é recomendável adicionar todos os módulos necessários em nosso /etc/pulse/default.pa ou em uma cópia desse arquivo em nossa página em ~/.pulse/default.pa resp. ~/.config/pulse/default.pa para uma configuração por usuário (que substituirá todas as configurações definidas em /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.

A remoção de coletores que foram carregados por pactl ou pacmd , ou seja, sem configurações em nosso default.pa , pode ser feita com mais rapidez por

pulseaudio -k

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

    
por Takkat 19.07.2015 / 21:59