Selecione placa de som com comandos do console

1

É possível usar o aplicativo de configurações de canela na linha de comando para alterar a placa de som padrão? A placa de som padrão não parece estar definida no dconf.
Estou tentando escrever um script que alterna entre HDMI e saída de som analógico.

    
por Thommy 12.10.2017 / 18:52

1 resposta

2

Eu acho que você está procurando

pacmd set-default-sink <sink_name|index>

como descrito em link e link

Você pode obter o índice disponível com

pacmd list-sinks|grep index|awk '{print $NF}'

Se você quiser controlar o volume, você pode fazer isso na linha de comando com alsamixer (ncurses) ou amixer.

Se você for tocar com configurações pulseaudio, então

cp -i /etc/pulse/default.pa ~/.config/pulse/

fornecerá sua cópia mais segura para edição

pulseaudio -k  #should restart pulseaudio after you change settings.

Para o seu script, você pode querer verificar se as taxas de áudio disponíveis são compatíveis com seu dispositivo sink:

grep rates $(grep -ci hdmi /proc/asound/card*/codec#0|grep -v :0|sed 's,:.$,,'|head -n1)

e dependendo de qual perfil cada cartão é anexado a

pactl --server "unix:/run/user/$(id -u)/pulse/native"  set-card-profile 1 output:analog-stereo

e

pactl --server "unix:/run/user/$(id -u)/pulse/native"  set-card-profile 0 output:hdmi-stereo

pode ajudar a criar variáveis úteis. Parece que alguém já tentou fazer o que você está fazendo :

Mas algumas de suas variáveis são específicas do archlinux ou desatualizadas. (Embora o caminho para acionar seu script possa ser de ajuda.)

    
por 12.10.2017 / 19:21