Ativar o modulo de escuta loopback no PipeWire-Pulse da sua distribuição Linux

Confira nessa matéria como ativar o Loopback ou Mixer de som na sua distribuição Linux que usa o servidor de áudio PipeWire-Pulse, muito útil para APPs como OBS, SSR e similares.

 

 

 

O Loopback


A ativação do modulo Loopback é algo bem particular e depende totalmente da necessidade de cada um.
O Loopback é conhecido no Windows como o "Mixer de som" que tem uma ativação de forma gráfica nas referencias de som.

A sua utilização pode ser para:

 

  • Realizar gravação de áudio de jogos.
  • Ouvir o som do seu microfone.
  • Realizar mixagens.


Mais informações do modulo Loopback.

Fonte


module-loopback
Since 0.9.16. This allows one to route audio from a source directly back to a sink.

source
The name of the input source to connect to. If not specified the source will be picked automatically. You can use a tool like pavucontrol to move the loopback stream to the right source.
sink
The name of the sink the audio is forwarded to. If not specified the sink will be picked automatically.
adjust_time
How often to readjust the sample rates in seconds. Defaults to 10.
latency_msec
The desired latency in milliseconds, from 1 to 2000. Defaults to 200. (Note that this is only a friendly request, the actual latency might be higher or lower than this value.)
format
The sample format. Defaults to that of specified sink.
rate
The sample rate. Defaults to that of specified sink.
channels
Number of source channels to use. Defaults to that of specified sink.
channel_map
List of the channels to connect to the sink.
sink_input_properties
Since 1.0. Property list for the playback stream object.
source_output_properties
Since 1.0. Property list for the capture stream object.
source_dont_move
Since 1.0. Takes a boolean value. Disallows moving the capture stream to some other than the initial source. Defaults to "false".
sink_dont_move
Since 1.0. Takes a boolean value. Disallows moving the playback stream to some other than the initial sink. Defaults to "false".
remix
Since 1.0. Takes a boolean value. If the channel map of the capture stream doesn't match the source's channel map, or the channel map of the playback stream doesn't match the sink's channel map, the mismatch has to be handled somehow. If remixing isn't disabled in the global server configuration, by default the audio will get remixed. This parameter can be used to disable remixing for the loopback streams (but if remixing is disabled in the global server configuration, this parameter can't be used for forcing remixing - setting this parameter simply has no effect at all).




PipeWire



PipeWire é um servidor para lidar com streams de áudio e vídeo e hardware no Linux. Foi criado por Wim Taymans da Red Hat. Ele lida com roteamento de multimídia e processamento de pipeline. Alguns de seus objetivos são: Trabalhar com aplicativos Flatpak em sandbox. Wikipédia

Atualmente sendo adotado em conjunto com o Alsa e Pulseaudio nas distribuições Linux.



Ativar o modulo de escuta loopback no PipeWire-Pulse


Antes de fazer alguma alteração você precisa confirmar se o seu sistema operacional usa o Pipewire, execute o comando abaixo no terminal.

 

pactl info

Na saída deve ter.

Nome do servidor: PulseAudio (on PipeWire 0.3.40)
 

Caso tenha apenas "Nome do servidor: PulseAudio" você deve seguir essa matéria especifica para o PulseAudio.


Ativar ou desativar o modulo de escuta loopback no PulseAudio

Confira nessa matéria como ativar ou desativar a reprodução do som do microfone e ou entrada de som no seu deskto




Tendo confirmado que o seu sistema utiliza o PipeWire crie o diretório para as configurações como usuário comum, não use o root.

mkdir ~/.config/pipewire

Copie o arquivo de configurações com o comando.

cp -r /usr/share/pipewire/pipewire-pulse.conf ~/.config/pipewire/
 

Abra o arquivo de configurações com o nano.

nano ~/.config/pipewire/pipewire-pulse.conf

Localize "context.modules"


Cole as linhas abaixo no final do bloco do "context.modules"


       {   name = libpipewire-module-loopback
       args = {
           audio.position = [ FL FR ]
           capture.props = {
               media.class = Audio/Sink
               node.name = Loopback
               node.description = "Loopback"
               #node.latency = 1024/48000
               #audio.rate = 44100
               #audio.channels = 2
               #audio.position = [ FL FR ]
               #node.target = "my-default-sink"
           }
           playback.props = {
               #media.class = Audio/Source
               node.name = Loopback
               node.description = "Loopback"
               #node.latency = 1024/48000
               #audio.rate = 44100
               #audio.channels = 2
               #audio.position = [ FL FR ]
               node.target = "my-default-sink"
           }
       }
   }


Basta colar acima do ] que fecha o "context.modules" como na imagem.

 


Salve teclando ctrl + x tecle s e tecle Enter para fechar o nano.

Faça o processo com atenção, se errar vai ficar sem som e vai ter que fazer novamente.


Reinicie o computado.

 

sudo reboot

 

 Ai está ele no applete de áudio.



No SSR.



No OBS.



Comentários

  1. Excelente tutorial, Ricardo. Fiz aqui no Fedora 36 e deu certo, inclusive, já fiz meus testes, está tudo funcionando perfeitamente. Muito obrigado pela ajuda. Abraço

    ResponderExcluir

Postar um comentário

olá, seja bem vindo ao Linux Dicas e suporte !!

Você precisa ver isso

Todos os arquivos do blog

Mostrar mais