My home entertainment system is based on a Raspberry Pi 2 connected to a TV, and a home server driving six ceiling-mounted speakers (and eventually a subwoofer). The home server exposes a PulseAudio sink that plays sound on the six speakers (front-left, front-right, side-left, side-right, rear-left and rear-right).
My goal is to have Kodi running on the Raspberry, and to have it play 7.1 channel surround sound by streaming the aforementioned six channels to my server, while playing the (important) front-center channel on the TV's speakers.
I've done numerous tests with Raspbian Jessie and, frustratingly, it nearly works. It still uses PulseAudio 5.0, while my server uses PulseAudio 8.0. Any time I try to stream audio using a module-tunnel, module-combine or module-rtp-*, it comes to a stuttering halt very quickly. The only thing that works somewhat is a direct PulseAudio connection (with module-native-protocol-tcp). But that won't allow me to split off the front-center channel before streaming the others to the server, and it also stops working after a while if you start/stop playback a lot.
So I want to try a more recent PulseAudio on the Raspberry. Unfortunately, it's hard to find. I've considered starting over using one of these distributions:
Ubuntu 16.04 for Raspberry Pi 2: this looked very promising. It has recent PulseAudio and recent enough Kodi. However, its Kodi is compiled to require X11, and at the same time its X11 is missing GL acceleration. It's also missing some ALSA modules in the kernel. I'd like to avoid X11 if possible.
OpenELEC: does not support PulseAudio as far as I can see.
OSMC: this might work, it's probably what I'll try next.
Are there any other distributions that have these required packages:
- A recent version of PulseAudio.
- Kodi compiled to run without X11, ideally with native PulseAudio support.
- GLES support for the Raspberry Pi 2.
- ALSA support for the Raspberry Pi 2.
Or are there any other solutions I should be looking at (Jack?)? I'd prefer not to have to compile anything myself.