PipeWire (Português)/Exemplos (Português)

From ArchWiki

Sistemas de som Surround

Dividir frente/trás

Ao usar PipeWire como um substituto para PulseAudio/JACK, você pode configurar o Pipewirepara replicar o exemplo de como dividir frente/trás via Pulseaudio. Fazer isso te permite enviar transmissões de áudio usando Pulseauido a um sink separado para fones de ouvido ou caixas de som.

Concecte caixas de som à entrada line-out e fones à entrada traseira. Em pavucontrol defina a placa de som utilizada para Analog Surround 4.0 Output. Então, usando os comandos a seguir, crie novos sinks para as caixas de som e para os fones de ouvido na entrada traseira, faça o link das caixas para os canais frontais e o link dos fones de ouvido para os canais traseiros:

 pactl load-module module-null-sink sink_name=speakers object.linger=1 media.class=Audio/Sink channel_map=FL,FR
 pactl load-module module-null-sink sink_name=headphones object.linger=1 media.class=Audio/Sink channel_map=RL,RR

object.linger=1 mantém os sinks vivos mesmo depois que o client criado desconecte. Você pode dar o nome que quiser parasink_name.

Para descarregar o módulo você pode usar pw-cli destroy ID, onde ID é o resultado do comando pactl load-module. Descarregar módulos individuais através de pactl unload-module não é atualmente suportado [1]. No entanto, você pode descarregar todos os módulos module-null-sink usando pactl unload-module module-null-sink.

Usando jack_connect, conecte os monitores dos novos sinks às portas de reprodução da placa de som. Descubra os nomes dos canais rodando o comando jack_lsp -c.

 pw-jack jack_connect speakers:monitor_0  HDA\ ATI\ SB:playback_FL
 pw-jack jack_connect speakers:monitor_1  HDA\ ATI\ SB:playback_FR
 pw-jack jack_connect headphones:monitor_0  HDA\ ATI\ SB:playback_RL
 pw-jack jack_connect headphones:monitor_1  HDA\ ATI\ SB:playback_RR
Dica: Adicione os comandos acima a um script e inicie automaticamente para automatizar o processo. Garanta que HDA\ ATI\ SB seja substituído com o nome da sua placa de som.
Nota: Os sinks JACK/PipeWire parecem mudar de nome vez ou outra. No exemplo acima, HDA\ ATI\ SB:playback_FL às vezes muda para Built-in\ Audio\ Analog\ Surround\ 4.0:playback_FL. Como uma gambiarra, você pode adicionar um segundo grupo de comandos pw-jack em seu script de inicialização automática com o segundo grupo de nomes.

Para controlar seus volumes individualmente, uma opção é usar os utilitários ALSA (como o amixer) para controlar os canais Front and Rear/Surround (nome dado pelo ALSA). Um script para fazer isso automaticamente, dependendo de qual é seu sink padrão do Pulseaudio, pode ser encontrado aqui.