xbmc/xbmc — pull request #4483 by KeyserSoze1 (2014-03-29 03:20:21+00:00)
Title: [AE] Added AC3 Core passthrough for E-AC3 tracks that support it

Added the ability to passthrough AC3 for E-AC3 tracks that have an AC3 core stream. This only affects devices that can not passthrough E-AC3 (SPDIF, some TV's, etc).

In addition I also added the ability to have a dependent stream with an E-AC3 core. Currently the only dependent streams that are supported are with an AC3 core main stream. This now allows for a dependent stream with an E-AC3 core main stream. I however have not tested this thoroughly as I have not found a sample that actually contains this. Any 7.1 non AC3 core samples out there? This could still be improved as I believe the spec allows for up to 8 dependent streams and currently there is only support for 1 (have seen no samples with more than 1).

This change also affects the number of channels reported for E-AC3 streams. Currently E-AC3 plus streams are hard coded to 7.1. I now use the main stream as the number of channels and then modify the number of channels once a dependent stream is found. This delayed update however does not seem to affect what is displayed.

Open to suggestions or opinions for improvements. I am not a huge fan of the DVDPlayer change but could not see another way to handle this.