Neben dem 3,5mm Klinkenanschluss und HDMI für die Audioausgabe kann es für diverse Projekte wichtig sein, eine weitere Soundkarte oder ein Mikrofon an den Raspberry Pi anzuschließen. In diesem Artikel zeige ich euch, wie ihr eine USB-Soundkarte unter Raspberry Pi OS Bookworm einrichtet, welche Karten sich lohnen, und erkläre wie das neue Standard-Audiosystem PipeWire funktioniert.
USB-Soundkarten für den Raspberry Pi
Es gibt diverse USB-Soundkarten auf dem Markt. Wichtig: Günstige No-Name-Karten haben oft erhebliche Qualitätsprobleme, gerade beim Aufnehmen. Hier ein paar bewährte Optionen:
- Einfache USB-Soundkarte für Wiedergabe und Aufnahme – geringe Kosten, ausreichende Qualität für Sprachaufnahmen
- Mittelpreisige DAC USB-Soundkarte mit Line-In – gutes Preis-Leistungs-Verhältnis für Musikprojekte
- HiFiBerry DAC+ (Audio HAT) – für audiophile Ansprüche, direkter Anschluss an die GPIO-Pins
Wer auf absolut hochwertigen Klang steht und kein Line-In benötigt, sollte sich die diversen Audio HATs ansehen – z.B. den HiFiBerry, der in verschiedenen Varianten erhältlich ist und direkt an die GPIO-Pins angeschlossen wird.
PipeWire – das neue Standard-Audiosystem in Bookworm
Seit Raspberry Pi OS Bookworm (ab Ende 2023) ist PipeWire das Standard-Audiosystem, nicht mehr ALSA direkt oder PulseAudio. PipeWire vereint die Vorteile beider Systeme und bietet eine bessere Latenz und einfachere Konfiguration. Die gute Nachricht: Die meisten ALSA- und PulseAudio-Befehle funktionieren dank Kompatibilitätslayer weiterhin.
Den aktuellen Status des Audiosystems prüft ihr mit:
|
1 |
wpctl status |
Ihr seht dann alle verfügbaren Audio-Geräte mit ihren IDs, gegliedert nach Wiedergabe (Sinks) und Aufnahme (Sources).
Audioausgabe über 3,5mm Anschluss oder HDMI einrichten
Wer nur einen Lautsprecher oder Kopfhörer an den 3,5mm Klinkenanschluss anschließen möchte oder die Ausgabe auf HDMI umstellen will, erledigt das in Bookworm über raspi-config.
Öffnet raspi-config via Terminal oder SSH:
|
1 |
sudo raspi-config |
Wählt „1 System Options“, dann „S2 Audio“ und bestätigt mit Enter.
Wählt dann:
- 3,5mm Klinke → „0 Headphones“
- HDMI → „1 HDMI 1″ (bzw. „2 HDMI 2″ beim Pi 4)
Beendet raspi-config mit „Finish“.
Alternativ könnt ihr das Standardgerät direkt über PipeWire setzen. Listet zuerst alle verfügbaren Ausgabegeräte:
|
1 |
wpctl status |
Notiert euch die ID des gewünschten Geräts (z.B. 47 für den HDMI-Ausgang) und setzt es als Standard:
|
1 |
wpctl set-default 47 |
Die Änderung ist sofort aktiv – kein Neustart nötig.
Audioausgabe testen
Nach der Einrichtung könnt ihr die Audioausgabe mit einer Test-WAV-Datei prüfen:
|
1 2 3 |
cd $HOME wget cdn.raspberry.tips/2017/09/test-sound-raspberry-tips.wav aplay $HOME/test-sound-raspberry-tips.wav |
USB-Soundkarte einrichten
Steckt eure USB-Soundkarte an den Raspberry Pi an und prüft, ob das System sie erkennt:
|
1 |
lsusb |
Typische Ausgabe für eine C-Media-Karte:
|
1 |
Bus 001 Device 004: ID 0d8c:0014 C-Media Electronics, Inc. Audio Adapter (Unitek Y-247A) |
USB-Soundkarte als Standard setzen (PipeWire)
Mit PipeWire ist das Setzen des Standardgeräts deutlich einfacher als früher. Listet zuerst alle Ausgabegeräte:
|
1 |
wpctl status |
Sucht unter „Sinks“ eure USB-Soundkarte und notiert die ID. Setzt sie dann als Standard:
|
1 |
wpctl set-default <id></id> |
Um auch die Aufnahme (Mikrofon) umzustellen, findet ihr das Gerät unter „Sources“:
|
1 |
wpctl set-default <ID-des-Mikrofons> |
Um die Einstellung dauerhaft zu machen, speichert ihr sie über die PipeWire-Konfiguration. Erstellt dazu die Konfigurationsdatei:
|
1 2 |
mkdir -p ~/.config/wireplumber/main.lua.d/ nano ~/.config/wireplumber/main.lua.d/51-usb-audio-default.lua |
Fügt folgenden Inhalt ein (ersetzt den Namen mit eurem tatsächlichen Gerät aus wpctl status):
|
1 2 3 4 5 |
rule = { matches = { { { "node.name", "matches", "alsa_output.usb*" } } }, apply_properties = { ["priority.session"] = 200 }, } table.insert(alsa_monitor.rules, rule) |
Gespeichert wird mit STRG+X, Y, Enter. Nach einem Neustart des WirePlumber-Dienstes ist die Einstellung aktiv:
|
1 |
systemctl --user restart wireplumber |
Alte Methode: ALSA /etc/asound.conf (Fallback)
Wer ALSA direkt konfigurieren möchte (z.B. für spezielle Anwendungen die PipeWire nicht unterstützen), kann weiterhin die alte Methode verwenden. Prüft zunächst die Kartennummer:
|
1 |
aplay -l |
Bearbeitet dann die ALSA-Konfiguration:
|
1 |
sudo nano /etc/asound.conf |
Fügt folgendes ein (ersetzt „1″ durch eure Kartennummer):
|
1 2 3 4 5 6 7 8 9 |
pcm.!default { type hw card 1 } ctl.!default { type hw card 1 } |
Wichtig: Diese Methode sollte nur als Fallback verwendet werden, wenn PipeWire nicht ausreicht. Im normalen Betrieb ist die PipeWire-Methode empfohlen.
Lautstärke anpassen
PipeWire (empfohlen)
Die Lautstärke über PipeWire stellt ihr prozentual ein:
|
1 |
wpctl set-volume @DEFAULT_AUDIO_SINK@ 80% |
Lautstärke erhöhen/senken in 5%-Schritten:
|
1 2 |
wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+ wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%- |
Stummschalten und wieder aktivieren:
|
1 |
wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle |
alsamixer (klassisch)
Die klassische ALSA-Mixer-Oberfläche funktioniert dank Kompatibilitätslayer auch unter PipeWire:
|
1 |
alsamixer |
Gesteuert wird mit den Pfeiltasten. Mit F6 könnt ihr zwischen den Soundkarten wechseln. Wer auf dem Desktop arbeitet, kann die Lautstärke auch über das Lautsprecher-Symbol in der Taskleiste anpassen.
Tipp: Projektvorschlag Volumio
Wer eine hochwertige Musikwiedergabe mit dem Raspberry Pi aufbauen möchte, sollte sich Volumio ansehen – ein speziell für Musikliebhaber entwickeltes Betriebssystem für den Raspberry Pi mit schicker Web-Oberfläche.


