I think I got something. At least I could find a configuration which solves my issue, even though it requires some "tweaking".
I observed that Windows Media Player
does correctly pass through the Dolby Digital Plus stream (my AV receiver displays DD+ when I use Windows Media Player to play the file). So it's not a receiver issue nor the other players that silently reencode the stream to AC3.
I decided to try a few different advanced cofigurations:
- Audio -> force S/PDIF support: does not change anything
- Audio -> force detection of dolby surround: does not change anything
Then I tried to change all settings using the "DirectX audio output" module without any luck:
Finally I tried to switch the output module to "Windows Multimedia Device output". The default settings did
not resolve my issue, but the following did:
With these settings, the audio stream is being correctly passed through to the AV receiver! You need to make sure you have selected the right output module ("Windows Multimedia Device output"), and set the "HDMI/SPDIF audio passthrough" option to "Enabled" (
not "Enabled (AC3/DTS only)"). If you don't, VLC will not perform passthrough when the audio is E-AC3, and instead send a 2-channel PCM stream.
So, there might be a bug with the DirectX output module which makes VLC incorrectly guess the device's E-AC3 decoding capabilities.
But I still don't get why VLC sends a 2-channel PCM audio stream instead of a multi-channel PCM when it does the decoding itself, whether it be when this bug occurs or when passthrough is excplicitly disabled.