Raspberry Pi, Kodi und Tonausgabe in Mono über HDMI

Veröffentlicht am

In Kodi kann man alle möglichen Lautsprecherkombinationen einstellen. Nur Mono, also “1.0”, fehlt.
Falls unbedingt mal jemand (wie ich) Mono-Sound über HDMI haben will, so funktioniert’s:

  1. /etc/asound.conf anlegen:
    pcm.snd_card {
        type hw
        card 0
        device 0
    }
    ctl.snd_card {
        type hw
        card 0
        device 0
    }
    pcm.mono {
        type route
        slave {
            pcm "snd_card"
            channels 2
        }
        ttable {
               0.1 0.75
               1.1 0.75
               0.0 0.75
               1.0 0.75
        }
    }
    pcm.!default {
        type plug
        slave.pcm "mono"
    }
    
  2. In Kodi als Audio-Ausgabegerät “ALSA Default bcm2835” auswählen.
  3. Außerdem in Kodi die Anzahl der Audiokanäle auf “2.0” stellen.

Die Downmix-Magie steckt in der “ttable”: Ein Stereo-Signal hat zwei Kanäle: Links und Rechts, bzw. 0 und 1.
Die erste Zeile “0.1 0.75” heißt, dass Eingangskanal 0 zu Ausgangskanal 1 geroutet wird (“0.1”), und zwar mit 75% (“0.75”) Lautstärke. Je 50% wäre zwar logischer, mir kam es dann aber zu leise vor.

Das Ganze wird für jeden Ein- und Ausgangskanal gemacht. Am Ende liegt das zu Mono heruntergemische Stereosignal an beiden Ausgangskanälen an: Aus dem linken Lautsprecher kommt das gleiche wie aus dem rechten.