Como depuro problemas com o Pulse Audio?

13

Eu instalei o Ubuntu 11.10 na minha máquina. Eu entrei como USER_A. Meu dispositivo de áudio externo é um fone de ouvido e eu pude ouvir o áudio corretamente.

Preciso associar minha máquina Ubuntu ao domínio de uma janela (meu servidor de escritório). Eu segui as etapas explicadas em http://www.ghacks.net/2010/04/21/join-a-ubuntu-machine-to-a-windows-domain/ e consegui ingressar minha máquina ubuntu no domínio windows .

sudo apt-get install likewise-open5
sudo domainjoin-cli join DOMAIN USER_B

Agora, quando eu entrei como USER_B, não há áudio para esse usuário na mesma máquina.

Cruzei o cheque com minha conta User_A. Não há problemas com o som para User_A. Somente para User_B, não há áudio.

Quando verifiquei as configurações de som do User_B, não há nenhum dispositivo listado em Hardware, Entrada e Saída. Enquanto que para o usuário A, meu fone de ouvido está listado em Entrada e Saída.

Alguém pode me ajudar nisto por favor. Por que não há som para o User_B?

Você pode me informar um pouco mais sobre como 'Verificar se os usuários foram adicionados ou não no grupo de áudio'.

E também quando tentei executar o pulseaudio -k em um terminal (do User_B)

E: [pulseaudio] main.c: Failed to kill daemon: No such process

E também eu encontrei isso no registro de áudio de pulso. Quando eu corro:

pulseaudio --log-level=4 --log-target=stderr

Encontrei as seguintes linhas de erro no meu log:

E: [pulseaudio] module-dbus-protocol.c: dbus_server_listen() failed: org.freedesktop.DBus.Error.BadAddress: Abstract socket name too long
E: [pulseaudio] module-dbus-protocol.c: Starting the local D-Bus server failed.
E: [pulseaudio] module.c: Failed to load module "module-dbus-protocol" (argument: ""): initialization failed.
E: [pulseaudio] main.c: Module load failed.
E: [pulseaudio] main.c: Failed to initialize daemon.
Senthil Kumaran
fonte
Obrigado pela resposta. Apenas B é logado no meu sistema. Ele não tem som. Saio de B e entrei como A. Agora A tem som. Basicamente, A sempre possui áudio, enquanto B não possui som no mesmo sistema. E mesmo após a reinicialização B não tem som
Senthil Kumaran
Mesmo como eu disse antes, para B o fone de ouvido não está listado nos dispositivos de som. Enquanto que para A, o fone de ouvido está listado.
Senthil Kumaran
Você pode me informar um pouco mais sobre como 'Verificar se os usuários foram adicionados ou não no grupo de áudio'. E também quando eu tentei executar pulseaudio k em um terminal (de user_b) E: [pulseaudio] main.c: Falha de matar daemon: Nenhum tal processo
Senthil Kumaran
E também eu encontrei isso no registro de áudio de pulso. Quando executo: pulseaudio --log-level = 4 --log-target = stderr , encontrei as seguintes linhas de erro no meu log: E: [pulseaudio] module-dbus-protocol.c: falha no dbus_server_listen (): org.freedesktop .DBus.Error.BadAddress: nome do soquete abstrato muito longo E: [pulseaudio] module-dbus-protocol.c: A inicialização do servidor D-Bus local falhou. E: [pulseaudio] module.c: Falha ao carregar o módulo "module-dbus-protocol" (argumento: ""): falha na inicialização. E: [pulseaudio] main.c: falha no carregamento do módulo. E: [pulseaudio] main.c: falha ao inicializar o daemon.
Senthil Kumaran
1
Resumiu os comentários em uma resposta.
Takkat 18/10/12

Respostas:

16

Esta resposta preliminar resume as etapas envolvidas para depurar o som disponível para um usuário apenas em um ambiente em que os domínios foram ingressados ​​para esse usuário. Pode ser necessário estender mais tarde.

Caso tenhamos som para apenas um usuário, podemos ter uma configuração ruim na configuração dessa conta de usuário. Precisamos executar as seguintes etapas na conta de usuário afetada para obter mais informações sobre o problema.

  1. O pulseaudio está funcionando?
    Normalmente, você verá isso ao acessar o menu de som na barra superior. Como alternativa, podemos emitir o seguinte comando em um terminal:

    pulseaudio -k
    

    Haverá um erro caso o pulseaudio não seja executado. Além disso, este comando cuida da interrupção e reaparecimento do pulseaudio, caso seja interrompido.

  2. Existem configurações de usuário incorretas para o daemon pulseaudio?
    Para testar isso, precisamos renomear o diretório de configurações na HOME do usuário afetado, seguido de uma reinicialização do pulseaudio (consulte 1. ):

    mv ~/.pulse ~/.pulse.bad
    

    ou

    mv ~/.config/pulse ~/.config/pulse.bad  ## for newer releases
    
  3. Os canais são desativados do ALSA?
    Podemos abrir o alsamixer em um terminal para ajustar os volumes dos canais e ativar o som de um canal caso ele tenha sido desativado acidentalmente:

    alsamixer
    
  4. Verifique se os usuários não estão no grupo 'áudio'
    Um usuário no audiogrupo tem acesso exclusivo ao servidor pulseaudio. Outros usuários não podem acessá-lo enquanto este usuário o utiliza. Portanto, o usuário não deve estar no audiogrupo.

  5. Iniciar o Pulseaudio manualmente
    No caso de o pulseaudio não estar em execução, também podemos iniciar o daemon na linha de comando com

    pulseaudio -D
    

    O Pulseaudio usa as configurações padrão e inicia o daemon. Também podemos colocar esse comando em nossos aplicativos de inicialização automática para superar o caso em que o pulseaudio falha ao executar antes do carregamento da área de trabalho.

  6. Procurar arquivos de log O
    Pulseaudio será carregado na inicialização do sistema e no login do usuário. Portanto, os erros podem ser lidos apenas a partir de um log gerado no início do pulseaudio. Consulte este guia sobre como gerar um script de log pulsaudio . Resumindo, temos que cuidar do pulseaudio não reaparecer, podemos executá-lo no modo detalhado:

    pulseaudio -vvvv <options>
    

ser completado


No caso apresentado na pergunta, vimos que o pulseaudio falha ao executar porque não foi possível iniciar o serviço D-Bus. Provavelmente, isso pode ser causado por um caminho quebrado ou longo para a HOME do usuário ( consulte o bug # 872992 ). Como solução alternativa, podemos emitir o pulseaudio sem o controle D-Bus, comentando a seguinte linha da seguinte maneira /etc/pulse/default.pa:

# load-module module-dbus-protocol

No entanto, nós (e nossos aplicativos) não conseguiremos controlar o pulseaudio usando o D-Bus.

Takkat
fonte
Ubuntu 17.10, procedimento ainda atual. Isso me ajudou.
precisa saber é o seguinte
Não tenho muita certeza do que fez a correção. Isto é o que eu tentei. Criou uma pasta .pulsena pasta pessoal. Simbólico vinculado a .config. ln -s /home/<user>/.pulse /home/<user>/.config/pulse. Como eu estava usando o i3, adicionado exec /usr/bin/pulseaudio --start --log-target=syslogpara iniciar o pulseaudio na inicialização. (Ubuntu 18.04)
Hari KT
2

no meu sistema Debian, eu consegui fazer isso funcionar, seguindo o conselho de alguém mais inteligente que eu, copiando (como root) a pasta $ HOME / .pulse / e $ HOME / .pulse-cookie de $ USER_A para $ USER_B, usando chown-os adequadamente.

jcomeau_ictx
fonte
Obrigado! Isso resolveu o meu problema, como indicado aqui: askubuntu.com/questions/752574/...
Joshua Fox