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.