Ubuntu – Enabling 7.1 audio passthru in 14.04 for Kodi

14.04kodisound

Hardware: Gigabyte GA-A75m-d2 mobo using integrated graphics and soundcard which should be capable of passing 7.1 audio.

Basically, I'm just looking for a way to enable passthrough audio for Kodi or Plex Home Theater in Ubuntu 14.04. I want to pass lossless audio to my AVR for decoding – I don't need my HTPC to decode anything.

None of the tutorials or walk-thrus I've found have worked and I'm about to completely give up on Ubuntu and Linux in general out of frustration. I've tried a little over a dozen so far and am on my 6th fresh Ubuntu install.

Best Answer

To enable audio passthrough from Ubuntu running PulseAudio and Kodi we need to make several settings:

Using Pulse Audio

  • Enable passthrough for our audio output device
    This is done using pavucontrol Install pavucontrol where we can enable passtrough in advanced settings for our digital output through HDMI, or S/PDIF resp.:

    enter image description here
    enter image description here

    The profile used for our audio devices is defined in the Configuration tab. For passthough mode we need to set pulseaudio to 2.0 channels.

  • Enable audio passthrough from Kodi system audio output settings:

    • Choose a digital output device (HDMI or S/PDIF) in the output configuration
    • Tick enable passthrough
    • Select which output device to use in case there are more than one
    • Tick what encodings our AVR is capable of decoding

    enter image description here

Please note that S/PDIF is only capable of providing 5.1. audio. For 7.1. audio we'd need a HDMI connection.

For further limitations on using Pulse Audio for passthrough and for indepth additional hints read the great tutorial from the Kodi team. There you will also find an extremely helpful table for setting to be made under various conditions.

Using ALSA

Sadly Pulse Audio currently does not support passthrough of DTS-HD or TrueHD audio. To get this working we therefore can not use Pulse Audio as a sound server for Kodi.

  • We need to start Kodi with ALSA instead (AE_SINK=ALSA kodi).
  • To avoid unwanted side effects with Pulse Audio it is recommended to remove it completely, or suspend it using pauspender before starting Kodi.

  • Both can be achieved by a startup script for Kodi:

    #! /bin/bash
    
    pasuspender
    AE_SINK=ALSA kodi
    
  • In case we always want to start Kodi with ALSA and to always suspend Pulse Audio just link to this script in our kodi.desktop file giving the full path to the (executable) script in its Exec line.

  • Then the passthrough device will point to the ALSA device:

    enter image description here

Related Question