Raspberry Pi 4

For information, Recalbox IS NOT compatible with Raspberry Pi 4 yet.
Pour information, Recalbox N'EST PAS encore compatible avec le Raspberry Pi 4.

The Recalbox Team.

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


  • Staff
    Moderator
    Team



  • ask @lackyluuk he should be of good help :)


  • Translator
    Translation Master

    @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


  • Translator
    Translation Master

    @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=U

    Aktuell 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


  • Translator
    Translation Master

    @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/modules

    Welche Einstellung hast du denn in Kodi wenn du über die Lautsprecher hörst? ALSA?



  • @lackyluuk

    @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/modules

    innerhalb 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ürecher

    VG
    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.


  • Translator
    Translation Master

    @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.



Want to support us ?

245
Online

58881
Users

18421
Topics

138602
Posts

Looks like your connection to Recalbox Forum was lost, please wait while we try to reconnect.