Come posso eseguire il debug di problemi con Pulse Audio?


13

Ho installato Ubuntu 11.10 sulla mia macchina. Ho effettuato l'accesso come USER_A. Il mio dispositivo audio esterno è un auricolare e sono stato in grado di ascoltare l'audio correttamente.

Devo unire la mia macchina Ubuntu al dominio di una finestra (il mio server d'ufficio). Ho seguito i passaggi spiegati in http://www.ghacks.net/2010/04/21/join-a-ubuntu-machine-to-a-windows-domain/ e sono riuscito a unire la mia macchina Ubuntu al dominio Windows .

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

Ora quando ho effettuato l'accesso come USER_B, non c'è audio per questo utente nella stessa macchina.

Ho superato il controllo con il mio account User_A. Non ci sono problemi con il suono per User_A. Solo per User_B, non c'è audio.

Quando ho controllato le impostazioni audio di User_B, non c'è nessun dispositivo elencato in Hardware, Ingresso e Uscita. Considerando che per l'utente A, il mio auricolare è elencato in Input e Output.

Qualcuno può aiutarmi per favore su questo. Perché non viene emesso alcun suono per User_B?

Potete per favore darmi qualche informazione in più su come "Controllare se gli utenti vengono aggiunti o meno nel gruppo audio".

E anche quando ho provato a eseguire pulseaudio -k in un terminale (da User_B)

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

E ho anche trovato questo sul registro audio a impulsi. Quando corro:

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

Ho trovato le seguenti righe di errore nel mio registro:

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.

Grazie per la risposta. Solo B è connesso al mio sistema. Non ha suono. Esco da B e ricollego come A. Ora A ha il suono. Fondamentalmente A ha sempre l'audio mentre B non ha l'audio nello stesso sistema. E anche dopo il riavvio B non ha alcun suono
Senthil Kumaran,

Anche come ho detto prima, per B l'auricolare non è elencato nei dispositivi audio. Considerando che per A, le cuffie sono elencate.
Senthil Kumaran,

Potete per favore darmi qualche informazione in più su come "Controllare se gli utenti vengono aggiunti o meno nel gruppo audio". E anche quando ho provato a eseguire pulseaudio -k in un terminale (da User_B) E: [pulseaudio] main.c: Impossibile uccidere il demone: nessun processo simile
Senthil Kumaran,

E ho anche trovato questo sul registro audio a impulsi. Quando eseguo : pulseaudio --log-level = 4 --log-target = stderr Ho trovato le seguenti righe di errore nel mio registro: E: [pulseaudio] module-dbus-protocol.c: dbus_server_listen () non riuscito: org.freedesktop .DBus.Error.BadAddress: nome socket astratto troppo lungo E: [pulseaudio] module-dbus-protocol.c: avvio del server D-Bus locale non riuscito. E: [pulseaudio] module.c: Impossibile caricare il modulo "module-dbus-protocol" (argomento: ""): inizializzazione non riuscita. E: [pulseaudio] main.c: caricamento del modulo non riuscito. E: [pulseaudio] main.c: Impossibile inizializzare il demone.
Senthil Kumaran,

1
Riassumi i commenti in una risposta.
Takkat,

Risposte:


16

Questa risposta preliminare riassume i passaggi necessari per eseguire il debug dell'audio disponibile per un utente solo in un ambiente in cui i domini sono stati aggiunti per questo utente. Potrebbe essere necessario estenderlo in seguito.

Nel caso in cui abbiamo audio per un solo utente, potremmo avere una cattiva configurazione nelle impostazioni di questo account utente. Per ottenere ulteriori approfondimenti sul problema, è necessario eseguire le seguenti operazioni dall'account utente interessato .

  1. Pulseaudio funziona?
    Di solito lo vedrai dall'accesso al menu audio nella barra in alto. In alternativa, possiamo emettere il seguente comando in un terminale:

    pulseaudio -k
    

    Si verificherà un errore nel caso in cui pulseaudio non funzioni. Inoltre, questo comando si occupa di arrestare e rigenerare pulseaudio in caso di blocco.

  2. Ci sono impostazioni utente errate per il demone pulseaudio?
    Per testarlo dobbiamo rinominare la directory delle impostazioni nella HOME dell'utente interessato seguita da un riavvio di pulseaudio (vedi 1. ):

    mv ~/.pulse ~/.pulse.bad
    

    o

    mv ~/.config/pulse ~/.config/pulse.bad  ## for newer releases
    
  3. I canali sono disattivati ​​da ALSA?
    È possibile aprire alsamixer in un terminale per regolare i volumi dei canali e riattivare l'audio di un canale nel caso in cui sia stato silenziato accidentalmente:

    alsamixer
    
  4. Assicurarsi che gli utenti non appartengano al gruppo "audio"
    Un utente del audiogruppo ha accesso esclusivo al server pulseaudio. Altri utenti non possono accedervi mentre l'utente lo utilizza. Pertanto l'utente non dovrebbe essere nel audiogruppo.

  5. Avvia Pulseaudio manualmente
    Nel caso pulseaudio non fosse in esecuzione, possiamo anche avviare il demone dalla riga di comando con

    pulseaudio -D
    

    Pulseaudio utilizza quindi le impostazioni predefinite e avvia il suo demone. Possiamo anche inviare questo comando alle nostre applicazioni di avvio automatico per superare il caso in cui pulseaudio non viene eseguito prima del caricamento del desktop.

  6. Sfoglia i file di registro
    Pulseaudio verrà caricato all'avvio del sistema e all'accesso dell'utente. Pertanto, gli errori possono essere letti solo da un registro che si genera all'avvio di pulseaudio. Vedi questa guida su come generare uno script di registro pulsaudio . In breve, dobbiamo preoccuparci che pulseaudio non si rigeneri, potremmo eseguirlo in modalità dettagliata:

    pulseaudio -vvvv <options>
    

essere completato


Nel caso indicato nella domanda potremmo vedere che pulseaudio non riesce a funzionare perché non è stato in grado di avviare il servizio D-Bus. Ciò può essere probabilmente causato da un percorso interrotto o troppo lungo verso la HOME dell'utente ( vedi bug # 872992 ). Per ovviare al problema, possiamo emettere pulseaudio senza controllo D-Bus commentando la seguente riga in /etc/pulse/default.paquesto modo:

# load-module module-dbus-protocol

Tuttavia, noi (e le nostre applicazioni) non saremo in grado di controllare pulseaudio utilizzando D-Bus.


Ubuntu 17.10, procedura ancora attuale. Mi ha aiutato
hariprasad,

Non sono del tutto sicuro di ciò che ha reso la correzione. Questi sono quelli che ho provato. Creata una cartella .pulsenella cartella principale. Simbolico collegato a .config. ln -s /home/<user>/.pulse /home/<user>/.config/pulse. Mentre stavo usando i3, aggiunto exec /usr/bin/pulseaudio --start --log-target=syslogper avviare pulseaudio all'avvio. (Ubuntu 18.04)
Hari KT

2

sul mio sistema Debian, sono stato in grado di farlo funzionare dopo, su consiglio di qualcuno più intelligente di me, copiando (come root) i file $ HOME / .pulse / e $ HOME / .pulse-cookie da $ USER_A a $ USER_B, inserendoli in chownmodo appropriato.


Grazie! Ciò ha risolto il mio problema, come indicato qui: askubuntu.com/questions/752574/…
Joshua Fox
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.