Unsolved Audio-Ausgang umschalten zwischen HifiberryDAC und Jack
-
Hallo liebe Recalbox-Gemeinde,
aktuell arbeite ich an einer kleinen Reiseconsole.
Dazu soll der RPi mit externen Lautsprechern und einem 7" Display ausgestattet werden.
Das Display konnte ich breits erfolgreich einrichten und alle Anzeigen sind i.O.
Für den Ton habe ich dem Pi einen HifiberryDAC und kleine Lautsprecher spendiert (http://www.exp-tech.de/adafruit-i2s-3w-stereo-speaker-bonnet-for-raspberry-pi-mini-kit) und eingerichtet.
Innerhalb von Kodi kann ich unter Audio-Output perfekt zwischen Kopfhörer und externen Lautsprechern wechseln.
Nur innerhalb der ES von Recalbox funktioniert das nicht!
Hier mal die Änderungen die ich vorgenommen habe.# /boot/config.txt #aktivieren der Amplifiere-Karte dtoverlay=hifiberry-dac dtoverlay=i2s-mmap # uncomment if you get no picture on HDMI for a default "safe" mode #hdmi_safe=1 disable_overscan=1 # uncomment to force a specific HDMI mode (this will force VGA) hdmi_group=2 hdmi_mode=1 hdmi_mode=87 hdmi_cvt=800 480 60 6 0 0 0 # comment to get jack audio hdmi_drive=2
# /etc/modules.conf snd_bcm2835 uinput
# /etc/asound.conf pcm.hifiberry { type hw card 0 } pcm.!default { type plug slave.pcm "dmixer" } pcm.dmixer { type dmix ipc_key 1024 slave { pcm "hifiberry" channels 2 } } ctl.dmixer { type hw card 0 }
Kann mich einer bitter Erleuchten wo mein fehler in der Software / in den Einstellungen ist?
Viele Dank
Corlen -
Hello @Corlen
May be this link help you
https://github.com/recalbox/recalbox-os/wiki/Audio-HiFiBerry-(EN) -
ask @lackyluuk he should be of good help
-
@Corlen Lies das mal durch (Auf Deutsch ;))
https://github.com/recalbox/recalbox-os/wiki/Audio-HiFiBerry-(DE)Falls das deine Fragen nicht beantwortet, einfach nochmal nachfragen.
Wie meinst du das genau mit Kodi? Steckst du deine Kopfhörer direkt an der RPi Jack-Buchse ein?
Bei mir war es so, dass durch das HiFiBerry die Jackbuchse funktionslos war und der Sound nur noch über das Board kam.
-
Hallo,
Vielen Dank für die Antworten.@lackyluuk said in Audio-Ausgang umschalten zwischen HifiberryDAC und Jack:
@Corlen Lies das mal durch (Auf Deutsch ;))
https://github.com/recalbox/recalbox-os/wiki/Audio-HiFiBerry-(DE)Ja die Seite habe ich auch gefunden. Sie hat mir insoweit geholfen, dass ich verstanden habe, warum ich die Lautstärke nicht mehr innerhalb der ES verändern kann bzw. jede Änderung der Soundoptionen innerhalb von .../recalbox.conf ohne Auswirkung bleiben.
Gehe ich mittels SSH auf den RPi drauf und führe
amixer
aus passiert nichts. Es ist keine Ausgabe zu sehen.
Alsamixer
öffnet zwar die Konsole aber ich kann dann keine Einstellungen ändern (This Device does not have any controls)Wie meinst du das genau mit Kodi? Steckst du deine Kopfhörer direkt an der RPi Jack-Buchse ein?
Bei mir war es so, dass durch das HiFiBerry die Jackbuchse funktionslos war und der Sound nur noch über das Board kam.Genau so meine ich das. Und die Jack-Buchse des RPi wird innerhalb der /etc/modules.conf deaktiviert, weil laut den Anleitungen immer der Soundchip auskommentiert werden soll.
Den Schritt habe ich gekonnt ignoriert. Starte ich jetzt Kodi aus dem Menu der ES kann ich unter System/Audio/Audio-Output einfach zwischen Lautsprechern und Pi-Jack-Buchse wechseln.
Aber halt nur innerhalb von Kodi. Beim spielen in der ES kommt der Sound immer aus den externen Lautsprechern. Führ dass Spielen zu Zweit super, aber nicht wenn man alleine ist und seine Mitmenschen nicht stören möchte.Falls das deine Fragen nicht beantwortet, einfach nochmal nachfragen.
Ist also noch vorhanden das Problem. Ich habe entweder die Vermutung das in /etc/asound.conf oder bei der Priorisierung der Soundkarte der Fehler zu suchen ist. Aber mein Latein ist leider erschöpft.
Viele Grüße
Corlen -
@Corlen Kann es sein, dass das RPi die On-Board Soundkarte nicht richtig erkennt / umschaltet? Du hast ja HiFiBerry als card 0 bezeichnet.
Ich bin auch noch etwas neu in der Sound Konfiguration, aber dieses Problem interessiert mich nun doch auch
Ich z.B habe die Umschaltung mit ein wenig Mechanik gemacht. Bei mir läuft nur die HiFiBerry Soundkarte und dort nehme ich eine (4-polige) Kopfhörerbuchse ab sowie meine beiden Lautsprecher. Nun habe ich den 4. Pol mit dem ENABLE pin des Verstärkers verbunden. Wenn ich nun einen 3-poligen Jackstecker einstecke, zieht es den ENABLE pin auf GND und der Verstärker geht aus. Somit habe ich den Sound nur noch auf den Kopfhörern
Wie änderst du denn jetzt momentan die Lautstärke im ES für die Spiele?
Und welches Hifiberry und Raspi hast du genau?
-
Hallo,
Hallo Lackyluuk@lackyluuk said in Audio-Ausgang umschalten zwischen HifiberryDAC und Jack:
@Corlen Kann es sein, dass das RPi die On-Board Soundkarte nicht richtig erkennt / umschaltet? Du hast ja HiFiBerry als card 0 bezeichnet.
Das wurde in allen Tutorials so gemacht. Eine Änderung auf hw card 1 beringt keine Änderung.Ich bin auch noch etwas neu in der Sound Konfiguration, aber dieses Problem interessiert mich nun doch auch
Ich erst Recht. Habe nur langsam an Elektrotechnik und Basteln mit Pis Interesse gefunden.Ich z.B habe die Umschaltung mit ein wenig Mechanik gemacht. Bei mir läuft nur die HiFiBerry Soundkarte und dort nehme ich eine (4-polige) Kopfhörerbuchse ab sowie meine beiden Lautsprecher. Nun habe ich den 4. Pol mit dem ENABLE pin des Verstärkers verbunden. Wenn ich nun einen 3-poligen Jackstecker einstecke, zieht es den ENABLE pin auf GND und der Verstärker geht aus. Somit habe ich den Sound nur noch auf den Kopfhörern
Gute Idee. Allerdings sehe ich nicht wie ich das mit meiner HF-Berry und dem Pi realisieren kann/muss. (Deswegen lernt man ja:-) Grundsätzlich habe ich mir auch schon eine hardwareseitige Lösung überlegt.
Wie änderst du denn jetzt momentan die Lautstärke im ES für die Spiele?
Aktuell gar nicht. Später werde ich hinter der HF-Berry ein 1k StereoPoti verwenden. Ggf werde ich nach dem Poti noch eine 4-pol-Weiche einbauen um dann das Signal entweder auf die Boxen oder die Kopfhörer zu legen.
Und welches Hifiberry und Raspi hast du genau?
HiBerry: Adafruit I2S 3W Stereo Speaker Bonnet for Raspberry Pi - Mini Kit (http://www.exp-tech.de/adafruit-i2s-3w-stereo-speaker-bonnet-for-raspberry-pi-mini-kit)
Wenn man den Tuts auf Adafruit folgt (ich es richtig verstanden habe) ist deren Grundplatine wohl von HifiBerry. Zumindest verlinken die auf https://support.hifiberry.com/hc/en-us/articles/207397665-Mixing-different-audio-sources
RPi 3 Model B mit 1GB-Ram: http://www.exp-tech.de/raspberry-pi-3-modell-b-1gb-ram?___SID=UAktuell habe ich noch diesen Artikel hier gefunden:
https://wiki.ubuntuusers.de/Soundkarten_konfigurieren/durch
cat /proc/asound/cards
werden auch beide Karten angezeigt. Veränderungen bleiben ohne Ergebnis.Eine theoretische Lösung die mir noch eingefallen ist:
Kodi bietet mir in den Audio-Einstellungen die 4 Optionen für Audio-Ouput: HDMI/JACK/Auto/ALSA (Das ist die Soundkarte, steht halt nur etwas kryptischer da)
Da liegt doch irgendein Code dahinter, wo auch immer k.A., aber er funktioniert und schalter perfekt um.Warum kann man diese Code-Zeilen nicht in die ES importieren?
Viele Grüße
Corlen -
@Corlen Wie ich sehe, hat dieses "pseudo" HiFiBerry (Ist etwas speziell :D) keine Enable Pins, das heisst, meine Lösung mit dem mechanischem Abschalten des Verstärkers geht wohl hier nicht.
Was mir aufgefallen ist: Hast du diese Zeile noch in deiner config.txt? dtparam=audio=on
Falls nicht, füge diese mal hinzu und starte neu. Diese Zeile lädt nämlich das Modul snd_bcm2835 aus dem /etc/modulesWelche Einstellung hast du denn in Kodi wenn du über die Lautsprecher hörst? ALSA?
-
@lackyluuk said in Audio-Ausgang umschalten zwischen HifiberryDAC und Jack:
@Corlen Wie ich sehe, hat dieses "pseudo" HiFiBerry (Ist etwas speziell :D) keine Enable Pins, das heisst, meine Lösung mit dem mechanischem Abschalten des Verstärkers geht wohl hier nicht.
Wobei ich ja schon stolz auf mich bin, dass ich mit der klar komme
Was mir aufgefallen ist: Hast du diese Zeile noch in deiner config.txt? dtparam=audio=on
Falls nicht, füge diese mal hinzu und starte neu. Diese Zeile lädt nämlich das Modul snd_bcm2835 aus dem /etc/modulesinnerhalb von /boot/config.txt
dtparam=audio=on
bewirkt das ich gar keinen Ton mehr habe.Innerhlab von /etc/asound.conf habe ich mal
pcm.!default { type plug slave { pcm "jack" } } pcm.jack { type jack playback_ports { 0 alsa_pcm:playback_1 1 alsa_pcm:playback_2 } capture_ports { 0 alsa_pcm:capture_1 1 alsa_pcm:capture_2 } } ctl.mixer0 { type hw }
Hat aber leider auch nicht geholfen. Auch Änderungen die in https://wiki.ubuntuusers.de/ALSA/ oder https://wiki.ubuntuusers.de/JACK/Programme_ohne_JACK-Schnittstelle/ empfohlen wurden, gehen nicht.
Welche Einstellung hast du denn in Kodi wenn du über die Lautsprecher hörst? ALSA?
Genau in System -> Settings -> System -> Audio-Output kann ich wählen zwischen:
Pi: HDMI
Pi: Analouge <- Kopfhörer
Pi: HDMI and Analogue
ALSA: Default(snd_rpi_hifiberry_dac Analog) <- externe LautsürecherVG
Corlen -
Ich habe mich mal in
es_config, es_system uns es_settings umgeschaut, aber auch nichts gefunden wo man neue Audio-Ausgänge definieren kann. -
@Corlen Ich kann mir vorstellen, dass diese libasound jack libraries nicht installiert sind wenn das nicht funktioniert. Nebenbei ist mit JACK nicht die Jack-Buchse gemeint sondern, ein Soundserver: https://wiki.ubuntuusers.de/JACK/
Hier gibt es noch einige gute Erklärungen dazu: http://www.pro-linux.de/artikel/2/1462/alsa-konfigurieren.html
Was sagt dir den der Befehl cat /proc/asound/cards ?
-
@lackyluuk said in Audio-Ausgang umschalten zwischen HifiberryDAC und Jack:
@Corlen Ich kann mir vorstellen, dass diese libasound jack libraries nicht installiert sind wenn das nicht funktioniert. Nebenbei ist mit JACK nicht die Jack-Buchse gemeint sondern, ein Soundserver: https://wiki.ubuntuusers.de/JACK/
Hier gibt es noch einige gute Erklärungen dazu: http://www.pro-linux.de/artikel/2/1462/alsa-konfigurieren.html
Ähnliche Artikel habe ich auch gefunden, aber wie gesagt die überfliegen langsam meinen Horizont.
https://wiki.ubuntuusers.de/Soundkarten_konfigurieren/Was sagt dir den der Befehl cat /proc/asound/cards ?
cat /proc/asound/cards 0 [sndrpihifiberry]: snd_rpi_hifiber - snd_rpi_hifiberry_dac snd_rpi_hifiberry_dac 1 [ALSA ]: bcm2835 - bcm2835 ALSA bcm2835 ALSA
cat /proc/asound/modules 0 snd_soc_hifiberry_dac 1 snd_bcm2835
Es wird wohl doch auf eine Mechanik-Lösung hinauslaufen. ..(
Cheers & LG
€:
Ich habe die Prioritäten der beiden Soundkarten gewechselt
echo options snd_bcm2835 index=0 >> /etc/modprobe.d/sound-cards-order
und
echo options snd_soc_hifiberry_dac index=1 >> /etc/modprobe.d/sound-cards-order
ohne Erfolg.