Perché l'uscita audio (audio) non funziona?


58

Non riesco a far funzionare l'audio. Non sento niente e non posso suonare nulla.

Esiste una soluzione per abilitare l'audio?


7
Si prega di aggiungere ulteriori informazioni per rendere questa una domanda più utile per il futuro, anche se ha già ricevuto risposta.
ramblinjan,

Tag Distro obbligatorio. Oltre all'uscita audio che stai cercando di utilizzare.
Jivings,

1
Linee guida: stackoverflow.com/questions/how-to-ask Fortunatamente l'attuale migliore risposta è abbastanza ampia da coprire la tua domanda. Tuttavia, è meglio per i futuri utenti del sito se dai la tua configurazione specifica per consentire una risposta specifica.
ramblinjan,

Il mio problema era il volume basso per l'output principale.

Risposte:


66

L'audio non funziona con un monitor HDMI

Ciò è causato da alcuni monitor di computer che selezionano la modalità DVI anche se è collegato un cavo HDMI. Questa correzione potrebbe essere necessaria anche se altri dispositivi HDMI funzionano perfettamente sullo stesso monitor (o TV)! Modifica il file di configurazione: consulta le istruzioni nel file di configurazione di Raspberry-Pi .
Aggiungi la seguente riga al file di configurazione:

hdmi_drive=2

L'audio non funziona affatto o in alcune applicazioni

L'audio è disabilitato per impostazione predefinita perché il driver audio ALSA è ancora "alpha" (non completamente testato) sull'R-Pi. Per provare l'audio, dal prompt dei comandi prima di "startx", digitare

 sudo apt-get install alsa-utils
 sudo modprobe snd_bcm2835
 sudo aplay /usr/share/sounds/alsa/Front_Center.wav

Per impostazione predefinita, l'uscita sarà automatica (hdmi se hdmi supporta l'audio, altrimenti analogico). Puoi forzarlo con:

sudo amixer -c 0 cset numid=3 <n>

dove n è 0 = auto, 1 = cuffie, 2 = hdmi. ( fonte ) Se stai eseguendo Debian, prova

cd /opt/vc/src/hello_pi
 make -C libs/ilclient
 make -C libs/vgfont
cd hello_audio
 make
 ./hello_audio.bin

per testare l'uscita analogica. E per testare HDMI.

./hello_audio.bin 1

Si noti inoltre che potrebbe essere necessario aggiungere l'utente al gruppo "audio" per ottenere l'autorizzazione ad accedere alla scheda audio.

Rendere permanenti le modifiche

sudo apt-get install alsa-utilsè permanente, ma sudo modprobe snd_bcm2835inizializza solo il driver per la sessione corrente. Per assicurarsi che il modulo sia inizializzato all'avvio, aggiungere snd_bcm2835a /etc/modules( sorgente ).


4
aplay -l è anche un comando utile per enumerare l'eventuale presenza di dispositivi ALSA.
stsquad,

2
Si tratta di informazioni obsolete a partire da gennaio 2013. alsa-utils è installato per impostazione predefinita e lsmod mostra che snd_bcm2835 è lì senza dover fare nulla.
CaptSaltyJack

Forse è così, ma il problema potrebbe ancora verificarsi su vecchi dispositivi e alcune distribuzioni
Itay Grudev

1
Ho avuto snd-bcm2835a /etc/modulesquando avrebbe dovuto essere snd_bcm2835. Una volta che l'ho cambiato, ha funzionato.
daviewales,

1
Potrebbe anche essere necessario modificare il volume del mixer se non è in esecuzione in un ambiente desktop con un controllo GUI per esso. Non so se fosse solo il mio pi, o se fosse un problema comune, ma il mio volume era impostato su -25dB, il che è praticamente impercettibile. amixer cset numid=1 0lo riporta a un livello ragionevole.
Jules,

9

Penso di avere un modo per risolvere il tuo problema, provare a digitare omxplayer -o local xxx.mp3(per file mp3) o omxplayer -o local xxx.mp4(per file mp4) per ascoltare l'audio da raspi sulla cuffia. E puoi anche digitare omxplayer --helpper un maggiore utilizzo di omxplayer.


9

Ho anche riscontrato lo stesso problema con il mio Raspberry Pi 2. Ho collegato il mio Pi alla mia TV HD tramite un cavo HDMI. La mia soluzione:

Impostare l'uscita audio utilizzando il seguente comando:

amixer cset numid=3 2

Ho testato l'uscita audio utilizzando il seguente comando, ma non è stato emesso alcun suono:

speaker-test -c2 -t wav

Per abilitare l'audio HDMI, ho seguito le indicazioni trovate qui

sudo [your favourite editor] /boot/config.txt

Linea di commento #hdmi_drive=2

Riavvia Pi usando il seguente comando:

sudo shutdown -r 0

Non avevo bisogno di fare i primi due passi, e non sono sicuro che avessero nemmeno bisogno di essere nella risposta, ma il resto ha funzionato per me con un Raspberry Pi 2.
James Skemp,

4

Questo è un bug comune. Penso che ciò che sta rompendo ALSA sia PulseAudio. Se si desidera utilizzare ALSA (impostazione predefinita, consigliato da Tux), utilizzaresudo apt-get remove PulseAudio

Per altre correzioni, prova il wiki. Tutto dipende. Prova prima questo (poiché questo è il più comune)


A quale bug ti riferisci? Hai un riferimento?
bzeaman,

Questo mi ha risolto. Uso PuleAudio per riprodurre l'audio con un auricolare bluetooth. Quando ho provato a utilizzare la porta audio analogica, non sono riuscito a farlo funzionare e tutto nella mia configurazione era corretto. Ho rimosso PulseAudio e la porta audio analogica funziona. Peccato che devo disinstallare e reinstallare un pacchetto per passare dal bluetooth al jack da 3,5 mm.
MezzanotteJava

4

Sto eseguendo OSMC, che esegue Debian, e ho il suono da riprodurre attraverso i miei altoparlanti TV, che sono collegati tramite HDMI. https://youtu.be/p2ljmTE67gs

Se questo è ciò che stai cercando di fare, prova ad aggiungere dtparam=audio=ona/boot/config.txt

Soluzione originale pubblicata qui: https://discourse.osmc.tv/t/alsa-doesnt-work-after-last-update/10600


Questa risposta sarà particolarmente appropriata per le persone che aggiornano installazioni precedenti a qualcosa di più moderno.
Sam Hartman,

2

La mia attuale ipotesi di lavoro è che, almeno per me, l'audio dipende in qualche modo dall'ambiente desktop. Ho un Raspberry Pi 2, con Raspbian, installato da NOOBS. L'ho pulito e reinstallato Raspbian decine di volte. Il suono funziona quando installo per la prima volta Raspbian. La prossima cosa che faccio abitualmente è rimuovere l'ambiente desktop LXDE e sostituirlo con l'ambiente desktop XFCE, e dopo qualche tempo noto che il suono ha smesso di funzionare. Il cambio di ambienti desktop deve interrompere il mio audio. Non so se la rimozione di LXDE o l'installazione di XFCE lo rompano.

Forse la persona corretta ha suggerito che il colpevole è PulseAudio e l'installazione di XFCE installa PulseAudio. In questo momento, "lxde" è installato, "xfce4" non è installato, "pulseaudio" non è installato e il suono funziona.


1

Ho riscontrato un problema in cui il suono non funzionava o la riproduzione statica invece della mia registrazione. Ma era un problema con il mio approccio, non con il Pi stesso. Sto usando Raspbian 3.6.11 (2013-02-09-wheezy-raspbian).

In primo luogo, ho provato a riprodurre un file MP3 aplay, che sembra supportare solo i WAV. Inoltre, alcuni dei file MP3 che ho usato potrebbero non essere stati creati con un codec compatibile. Per testare l'uscita audio sul tuo Pi, ho trovato la soluzione migliore per i file audio di esempio forniti con il sistema operativo Raspbian. Assicurati anche di utilizzare un lettore appropriato per il formato audio. Per esempio:

  • Utilizzare aplayper i file .wav. Ad esempio: aplay /usr/share/scratch/Media/Sounds/Vocals/Singer2.wav(ci sono molti file audio di esempio in / usr / share / scratch / Media / Sounds).
  • Utilizzare omxplayero mpg123per file .mp3. Ad esempio: usa omxplayer /usr/share/scratch/Media/Sounds/Effects/WaterDrop.mp3o in alternativa mpg123 /usr/share/scratch/Media/Sounds/Effects/WaterDrop.mp3(se non lo hai già mpg123, dovresti essere in grado di installarlo con il comando sudo apt-get install mpg123).
  • Utilizzare amixerper controllare l'uscita del volume. Ad esempio: amixer cset numid=1 50%imposta l'uscita del volume del jack per cuffie al 50%.

Per ulteriori informazioni sui comandi di uscita audio, ho trovato utile il seguente sito Web: http://blog.scphillips.com/2013/01/sound-configuration-on-raspberry-pi-with-alsa

Per quello che vale, ho anche sentito un suono scoppiettante causato da un salto di tensione quando l'audio si avvia e si interrompe . Tale problema è ora risolto nel firmware Pi.


AFAIK quel bug avrebbe dovuto essere corretto in uno degli aggiornamenti del driver audio ...
Itay Grudev

1
Hai ragione. Probabilmente stavo solo sbagliando, ma altri potrebbero avere lo stesso problema, quindi ho aggiornato il mio post con i miei risultati. Grazie Itehnological!
Steve HHH,


1

Ho avuto problemi con l'uscita audio analogica da solo. Sono venuto a questo thread tra gli altri per cercare di risolvere. Alla fine, ho scoperto che dovevo solo fare clic con il tasto destro sull'icona audio nella mia barra degli strumenti e cambiare la selezione da HDMI ad analogico. Questo probabilmente non risolve il tuo problema, ma potrebbe aiutare qualcun altro che non sta ascoltando l'audio e che ha perso quella soluzione facile.



0

Ho riscontrato questo problema durante il tentativo di far funzionare Amazon Voice Services su un Raspberry Pi 3/3 +. Mi sono assicurato che fosse selezionato l'audio analogico. Anche usando aplay ha funzionato.

Si scopre che AVS utilizza l'elemento autoaudiosink, che a sua volta stava selezionando l'elemento omxhdmiaudiosink, che aveva una priorità più alta dell'elemento alsasink. Nel file /etc/xdg/gstomx-rpi.conf c'è una sezione per omxhdmiaudiosink che ho semplicemente commentato. Dopo aver fatto ciò, AVS ha funzionato bene (per la maggior parte - le risposte venivano interrotte di circa ~ 0,25 secondi).

Suppongo che avrei potuto cambiare anche la priorità.


-1

Se vuoi una risposta semplice ci sono 3 opzioni:

  1. hdmi: omxplayer -o hdmi filename.mp4
  2. entrambi: omxplayer -o both filename.mp4
  3. Locale: omxplayer -o local filename.mp4

Se vuoi che suoni anche se il tuo monitor lo fa

omxplayer -o hdmi

Se vuoi entrambi, allora fallo

omxplayer -o both

Se hai le cuffie e vuoi collegarlo a Raspberry do

omxplayer -o local

e quindi aggiungi il nome del tuo file e il gioco è fatto; è così facile


Se leggi la risposta accettata, il problema è che il suono non è abilitato a livello di scheda, quindi un'impostazione specifica del programma non funzionerà. Secondo, cosa ha a che fare omxplayer con la domanda originale?
Steve Robillard,

Questo ha funzionato per me, sono stato in grado di riprodurre file wav ma mp3 non funzionava con il comando omxplayer. Ho messo la bandiera locale -o ha funzionato. Continuo a capire perché ... perché ho già impostato la mia uscita in cuffia e ho provato tutte le altre cose
Taran J
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.