Warum funktioniert meine Audioausgabe nicht?

58

Ich kann das Audio nicht zum Laufen bringen. Ich höre nichts und kann nichts spielen.

Gibt es eine Lösung, um Audio zu aktivieren?

Itay Grudev
quelle
7
Bitte fügen Sie weitere Informationen hinzu, um diese Frage für die Zukunft nützlicher zu machen, auch wenn sie bereits beantwortet wurde.
Ramblinjan
Distro-Tag erforderlich. Sowie welche Audioausgabe Sie verwenden möchten.
Jivings
1
Richtlinien: stackoverflow.com/questions/how-to-ask Zum Glück ist die derzeit beste Antwort breit genug, um Ihre Frage zu beantworten. Für zukünftige Benutzer der Site ist es jedoch besser, wenn Sie Ihr spezielles Setup angeben, um eine bestimmte Antwort zu ermöglichen.
Ramblinjan
Mein Problem war die geringe Lautstärke für die Master-Ausgabe.

Antworten:

66

Bei einem HDMI-Monitor funktioniert der Ton nicht

Dies wird durch einige Computermonitore verursacht, die den DVI-Modus auch dann auswählen, wenn ein HDMI-Kabel angeschlossen ist. Dieser Fix kann auch dann erforderlich sein, wenn andere HDMI-Geräte auf demselben Monitor (oder Fernsehgerät) einwandfrei funktionieren! Bearbeiten Sie die Konfigurationsdatei - siehe Anweisungen in der Raspberry-Pi-Konfigurationsdatei .
Fügen Sie der Konfigurationsdatei die folgende Zeile hinzu:

hdmi_drive=2

Sound funktioniert überhaupt nicht oder in einigen Anwendungen

Sound ist standardmäßig deaktiviert, da der ALSA-Soundtreiber auf dem R-Pi immer noch "alpha" ist (nicht vollständig getestet). Um den Sound zu testen, geben Sie an der Eingabeaufforderung vor "startx" Folgendes ein

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

Standardmäßig erfolgt die Ausgabe automatisch (HDMI, wenn HDMI Audio unterstützt, ansonsten analog). Sie können es erzwingen mit:

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

Dabei ist n 0 = Auto, 1 = Kopfhörer, 2 = HDMI. ( Quelle ) Wenn Sie Debian ausführen, versuchen Sie es

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

Analogausgang testen. Und um HDMI zu testen.

./hello_audio.bin 1

Beachten Sie auch, dass Sie Ihren Benutzer möglicherweise der Gruppe "Audio" hinzufügen müssen, um die Berechtigung zum Zugriff auf die Soundkarte zu erhalten.

Änderungen dauerhaft vornehmen

sudo apt-get install alsa-utilsist permanent, sudo modprobe snd_bcm2835initialisiert aber nur den Treiber für die aktuelle Sitzung. Um zu gewährleisten , wird das Modul beim Booten initialisiert, fügen Sie snd_bcm2835zu /etc/modules( Quelle ).

Itay Grudev
quelle
4
aplay -l ist auch ein nützlicher Befehl zum Auflisten, ob ALSA-Geräte vorhanden sind.
Stsquad
2
Dies sind veraltete Informationen ab Januar 2013. Alsa-Utils ist standardmäßig installiert, und lsmod zeigt, dass snd_bcm2835 vorhanden ist, ohne dass Sie etwas tun müssen.
CaptSaltyJack
Vielleicht ist es so, aber das Problem könnte immer noch bei alten Geräten und einigen Distributionen auftreten
Itay Grudev
1
Ich hatte snd-bcm2835in , /etc/moduleswenn es hätte sein sollen snd_bcm2835. Nachdem ich das geändert hatte, funktionierte es.
Daviewales
1
Möglicherweise müssen Sie auch die Mixer-Lautstärke ändern, wenn Sie nicht in einer Desktop-Umgebung mit einem GUI-Steuerelement ausgeführt werden. Ich weiß nicht, ob es nur mein pi war oder ob es ein häufiges Problem ist, aber meine Lautstärke war auf -25dB eingestellt, was praktisch nicht hörbar ist. amixer cset numid=1 0Setzt es wieder auf ein vernünftiges Niveau.
Jules
9

Ich glaube, ich habe eine Möglichkeit, Ihr Problem zu lösen. Geben Sie omxplayer -o local xxx.mp3(für MP3-Dateien) oder omxplayer -o local xxx.mp4(für MP3-Dateien) ein, um den Ton von Raspi über Ihren Kopfhörer zu hören. Außerdem können Sie omxplayer --helpOmxplayer verwenden.

Chinashieh
quelle
9

Das gleiche Problem trat auch bei meinem Raspberry Pi 2 auf. Ich habe meinen Pi über ein HDMI-Kabel mit meinem HD-Fernseher verbunden. Meine Lösung:

Stellen Sie die Audioausgabe mit dem folgenden Befehl ein:

amixer cset numid=3 2

Ich habe die Tonausgabe mit dem folgenden Befehl getestet, aber kein Ton war zu hören:

speaker-test -c2 -t wav

Um HDMI-Sound zu aktivieren, befolgte ich die Anweisungen hier

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

Kommentarzeile #hdmi_drive=2

Starten Sie Pi mit dem folgenden Befehl neu:

sudo shutdown -r 0
user29132
quelle
Ich musste die ersten beiden Schritte nicht ausführen, und ich bin mir nicht sicher, ob sie überhaupt in der Antwort enthalten sein müssen, aber der Rest funktionierte für mich mit einem Raspberry Pi 2.
James Skemp
4

Dies ist ein häufiger Fehler. Ich denke, was ALSA kaputt macht, ist PulseAudio. Wenn Sie ALSA (Default, empfohlen von Tux) verwenden möchten, verwenden Siesudo apt-get remove PulseAudio

Versuchen Sie für andere Updates das Wiki. Es hängt alles ab. Versuchen Sie dies zuerst (da dies am häufigsten vorkommt)

Algo
quelle
Auf welchen Fehler beziehen Sie sich? Haben Sie eine Referenz?
bzeaman
Das hat es für mich behoben. Ich verwende PuleAudio, um einen Sound für ein Bluetooth-Headset abzuspielen. Als ich versuchte, den analogen Audio-Port zu verwenden, konnte ich ihn nicht zum Laufen bringen und alles in meiner Konfiguration war korrekt. Ich habe PulseAudio entfernt und der analoge Audio-Port funktioniert. Schade, dass ich ein Paket deinstallieren und neu installieren muss, um zwischen Bluetooth und der 3,5-mm-Buchse zu wechseln.
MidnightJava
4

Ich verwende OSMC, das Debian ausführt, und ich habe Sound über meine TV-Lautsprecher, die über HDMI angeschlossen sind. https://youtu.be/p2ljmTE67gs

Wenn dies ist , was Sie zu tun versuchen, versuchen Sie , dtparam=audio=onzu/boot/config.txt

Die ursprüngliche Lösung wurde hier veröffentlicht: https://discourse.osmc.tv/t/alsa-doesnt-work-after-last-update/10600

Wichsen
quelle
Diese Antwort eignet sich besonders für Benutzer, die ältere Installationen auf etwas Moderneres aktualisieren.
Sam Hartman
2

Meine derzeitige Arbeitshypothese ist, dass zumindest für mich das Audio irgendwie von der Desktop-Umgebung abhängt. Ich habe einen Raspberry Pi 2 mit Raspbian von NOOBS installiert. Ich habe es sauber gewischt und Raspbian Dutzende Male neu installiert. Der Sound funktioniert, wenn ich Raspbian zum ersten Mal installiere. Das nächste, was ich normalerweise mache, ist, die LXDE-Desktop-Umgebung zu entfernen und durch die XFCE-Desktop-Umgebung zu ersetzen. Einige Zeit später stelle ich fest, dass der Sound nicht mehr funktioniert. Das Wechseln der Desktop-Umgebung muss mein Audio beschädigen. Ich weiß nicht, ob es LXDE entfernt oder XFCE installiert, das es zerstört.

Vielleicht hat die Person Recht, die vorgeschlagen hat, dass der Schuldige PulseAudio ist, und die Installation von XFCE installiert PulseAudio. Im Moment ist "lxde" installiert, "xfce4" ist nicht installiert, "pulseaudio" ist nicht installiert und der Sound funktioniert.

Daniel
quelle
1

Ich bin auf ein Problem gestoßen, bei dem der Ton nicht funktioniert hat oder statisch statt meiner Aufnahme abgespielt wurde. Aber es war ein Problem mit meiner Herangehensweise, nicht mit dem Pi selbst. Ich verwende Raspbian 3.6.11 (2013-02-09-wheezy-raspbian).

In erster Linie habe ich versucht, eine MP3-Datei mit abzuspielen aplay, die anscheinend nur WAVs unterstützt. Einige der von mir verwendeten MP3-Dateien wurden möglicherweise nicht mit einem kompatiblen Codec erstellt. Um die Soundausgabe auf Ihrem Pi zu testen, habe ich es am besten mit den Beispiel-Audiodateien gemacht, die mit dem Raspbian-Betriebssystem geliefert werden. Stellen Sie außerdem sicher, dass Sie einen für das Audioformat geeigneten Player verwenden. Zum Beispiel:

  • Verwenden Sie aplayfür .wav-Dateien. Zum Beispiel: aplay /usr/share/scratch/Media/Sounds/Vocals/Singer2.wav(Es gibt viele Beispiel-Audiodateien in / usr / share / scratch / Media / Sounds).
  • Verwenden Sie omxplayeroder mpg123für MP3-Dateien. Zum Beispiel: use omxplayer /usr/share/scratch/Media/Sounds/Effects/WaterDrop.mp3oder alternativ mpg123 /usr/share/scratch/Media/Sounds/Effects/WaterDrop.mp3(Wenn Sie es noch nicht getan haben mpg123, sollten Sie es mit dem Befehl installieren können sudo apt-get install mpg123).
  • Verwenden Sie amixerdiese Taste , um die Lautstärke zu regeln. Beispiel: amixer cset numid=1 50%Stellt die Lautstärke der Kopfhörerbuchse auf fünfzig Prozent ein.

Weitere Informationen zu Audioausgabebefehlen finden Sie auf der folgenden Website: http://blog.scphillips.com/2013/01/sound-configuration-on-raspberry-pi-with-alsa

Für das, was es wert ist, habe ich auch ein Knallgeräusch erlebt , das durch einen Spannungssprung verursacht wurde, als das Audio gestartet und gestoppt wurde . Dieses Problem ist jetzt in der Pi-Firmware behoben.

Steve HHH
quelle
AFAIK, dass Fehler in einem der Audio-Treiber-Updates
behoben werden sollte
1
Du hast recht. Ich habe es wahrscheinlich nur falsch gemacht, aber andere haben möglicherweise das gleiche Problem. Deshalb habe ich meinen Beitrag mit meinen Ergebnissen aktualisiert. Danke Itehnological!
Steve HHH
1

Auf meinem Raspberry Pi funktionierte der "Lautsprechertest" ohne zusätzliche Hardware. Dann habe ich ein paar Webcams hinzugefügt. Das Standardgerät hatte sich geändert und ich fand diese Frage Wie kann Alsa automatisch ein bevorzugtes Audiogerät auswählen? von welcher Lösung Nr. 1 für mich gearbeitet.

... erstellen /etc/asound.confmit: ...

Ersetzen Sie "Karte 1" durch die oben angegebene Kartennummer.

Kennzeichen
quelle
1

Ich hatte selbst Probleme mit dem analogen Audioausgang. Kam zu diesem Thread unter anderem, um zu versuchen, zu lösen. Am Ende stellte sich heraus, dass ich nur mit der rechten Maustaste auf das Audiosymbol in meiner Symbolleiste klicken und die Auswahl von HDMI auf Analog ändern musste. Dies löst wahrscheinlich nicht Ihr Problem, aber es könnte jemand anderem helfen, der kein Audio hört und diese einfache Lösung verpasst.

Alex Skarulis
quelle
0

Ich bin auf dieses Problem gestoßen, als ich versucht habe, Amazon Voice Services auf einem Raspberry Pi 3/3 + zum Laufen zu bringen. Ich habe dafür gesorgt, dass analoges Audio ausgewählt wurde. Auch mit aplay geklappt.

Es stellte sich heraus, dass AVS das Element autoaudiosink verwendet, das wiederum das Element omxhdmiaudiosink auswählte, das eine höhere Priorität als das Element alsasink hatte. In der Datei /etc/xdg/gstomx-rpi.conf gibt es einen Abschnitt für omxhdmiaudiosink, den ich einfach auskommentiert habe. Danach hat AVS einwandfrei funktioniert (zum größten Teil - die Antworten wurden um ca. 0,25 Sekunden gekürzt).

Ich nehme an, ich hätte auch die Priorität ändern können.

Bill Tonnies
quelle
-1

Wenn Sie eine einfache Antwort wünschen, gibt es 3 Möglichkeiten:

  1. HDMI: omxplayer -o hdmi filename.mp4
  2. beide: omxplayer -o both filename.mp4
  3. lokal: omxplayer -o local filename.mp4

Wenn Sie möchten, dass es auf Ihrem Monitor wiedergegeben wird, tun Sie dies

omxplayer -o hdmi

Wenn Sie beides wollen, dann tun Sie es

omxplayer -o both

Wenn Sie Kopfhörer haben und diese an Ihren Raspberry anschließen möchten, tun Sie dies

omxplayer -o local

und fügen Sie dann Ihren Dateinamen hinzu und los geht's; So einfach ist das

anon
quelle
Wenn Sie die akzeptierte Antwort lesen, ist das Problem, dass der Ton auf der Platinenebene nicht aktiviert ist, sodass eine programmspezifische Einstellung nicht funktioniert. Zweitens, was hat omxplayer mit der ursprünglichen Frage zu tun?
Steve Robillard
Dies funktionierte für mich, ich konnte WAV-Dateien abspielen, aber MP3 funktionierte nicht mit dem Befehl omxplayer. Ich habe die lokale Flagge -o gesetzt, es hat funktioniert. Immer noch herauszufinden, warum ... denn ich habe meinen Ausgang bereits auf Kopfhörer eingestellt und alle anderen Dinge ausprobiert
Taran J