mistura som de processos de múltiplos usuários no linux

3

Como no título.

É possível sem configurar um servidor de pulso de todo o sistema para misturar a saída de áudio de vários processos pertencentes a diferentes usuários no Linux? Eu não tenho problemas para mixar áudio quando todos os processos são de propriedade do mesmo usuário, mas assim que eu tento usar som em processos pertencentes a diferentes usuários (especificamente, o mpd e os programas do usuário atualmente logado), ele vai para first- venha, primeiro a ser servido. Qualquer que seja o usuário que pega a placa de som, obtém acesso e os processos de qualquer outro usuário aguardam até que ela seja liberada.

    
por enkiduh 14.02.2014 / 03:20

1 resposta

0

Consegui compartilhar um servidor de pulso no modo de usuário entre usuários locais via TCP.

Edite /etc/pulse/default.pa para ativar o módulo TCP. Eu basicamente desativado auth para simplificar a configuração. Observe que pode haver implicações de segurança se você não for o único usando o computador.

load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1 auth-anonymous=1

Reinicie o PulseAudio, se você estiver usando o systemd, isso pode ser feito com systemctl --user restart pulseaudio . Observe que, se já houver vários servidores PulseAudio em execução, talvez seja necessário pará-los. Caso contrário, apenas o que começou primeiro funciona.

Agora o PulseAudio deve estar escutando em uma porta TCP, isso pode ser verificado com o comando ss -ltp . Você provavelmente verá algo assim:

LISTEN     0    0        *:4713       *:*                    
users:(("pulseaudio",pid=3130,fd=31))

que indica que o PulseAudio está escutando na porta 4713.

Para configurar clientes, edite /etc/pulse/client.conf e ative a conexão automática:

auto-connect-localhost = yes

Por padrão, isso está desabilitado nas versões mais recentes do PulseAudio.

Em seguida, tente tocar alguns sons de áudio!

    
por 22.07.2016 / 07:22