The use case is the following. Consider one that has:
* 5.1 capable audio system
* A TVBox (KODI)
* A TV
* A projector
Now * The TV apps can play 5.1 content
* The TVBox (KODI) can play 5.1 content when connected to TV through HMDI (5.1 was agreed in the handshake between TV and TVBox)
* The TVBox __cannot play__ 5.1 content when connected to projector through HDMI because the projector is stereo audio only and there is no option to accept 5.1 content.
KODI gives the capability to __force__ audio output to be 5.1 if the playing video has it. It can transcoding on the fly i.e simple 5.1 in file to DTS.It does not bypass ALSA. It uses ALSA. It bypasses the original HDMI handshake and follows the user's wishes.
Of course it does not work in my case because a) that's the universe we live and b) it hits some android capability / security problem and it switches back to stereo output.
They run their own audio stack.
The other meaning of "ALSA" is libasound / asound.conf / dmix, the old userspace audio stack, which is deprecated since Pulseaudio except for a few holdout distros. ALSA had difficulty mixing multiple playback streams, let alone bitstreaming DTS. I think the GP is talking about this meaning.
That and bitbanging audio through GPIO or otherwise bypassing the ALSA stack doesn't seem all that unreasonable. I can't find any specific information about it with LibreElec/etc. but it would not surprise me.
Oh well. I think Pipewire has a lot of potential today. It brings much improvement to routing and session management for audio and the hybrid scheduler design and considerations for pro audio use cases makes it very promising. I hope the need to bypass the Linux audio stack can disappear.
At some point long before PulseAudio was ever a thing maybe but dmix with the default config has been working just fine all this time.
On the contrary, that's super easy with ALSA. Literally all you need to do to "bitstream" is "play" the data as if it were audio, and not have any software in between trying to adjust volume or otherwise modify it. You could do it with nothing more complicated than "aplay", making sure to specify the correct card and not dmix.