davilla Wrote:1st thought about this is "auto-select the 'best' audio track", what's best for you might not be what's best for me or others. So now something would have to be added that defines best and that means GUI and we are hesitant about adding tons of options to the GUI as users tend to click anything a random without understanding the implication of what they have clicked.
For my part it seems sensible to go in preference order DTS->AC3->AAC->others with appropriate language behaviour. Certainly that would solve my problem and my guess is it would be most appropriate for the largest number of people. This, for instance, seems to have been the way things were going in the trac bug conversation.
eg: if you encode with HandBrake (which, let's face it, is the way to do it) from DVD, BluRay or BBC HD transport streams, using the High Profile or the AppleTV presets you get:
- audio track 1: mixdown to AAC Dolby Pro Logic II or Stereo if the source is.
- audio track 2 (if available): the AC3 passthru.
This is the compromise the HB developers came up with so a file would play seamlessly under QuickTime on a Mac and pass through AC3 to an amp from the Mac (I *think* Perian may be needed) *and* from an AppleTV. But I bet they put the AAC track first to make it most transparent in use.
(This is leaving aside where you choose to output MKV to keep a DTS passthru track. In my case, as I'd never attempt to play these in QuickTime I don't bother with an AAC mixdown track, but some might, especially if they use Perian.)
Also eg: If you take an untranscoded BBC HD programme from EyeTV (and presumably from anything else - it's just how the mpeg2 transport stream comes off-air):
- audio track 1: MP2 stereo audio-descriptive track
- audio track 2: AC3 (which sometimes actually contains a surround soundtrack)
(Imagine how annoying *these* are in XBMC right now
)
At least around here these are the common case.
These tracks may or may not be tagged 'en' for English. I've not paid excessive attention to that; if someone needs the language tagging in these conditions to be identified I'll do it.
In any case, it seems likely that in most cases DTS and AC3 are going to be passthru - that is, they haven't gone through another transcoding phase. So their lossless (from the original media) nature should at least promote *those* above AAC or MP1/2/3, which will generally be a transcode. Also they're the formats most likely to be supported in hdmi passthru by the AV amp, thus providing the purest path for the sound. (maybe availability of passthru should be a factor in the ranking of 'best'? I know this assumes the AV's decoders will be better than those in XBMC...)
There may be a remaining debate about whether to prefer DTS over AC3 should both be available in the file/stream being played with equivalent number of channels. So I suppose *that* could be an option. (But make it global, not in OSD.)
But IME it looks like on DVDs and blurays where both are present, with most it's often the case that DTS is used for the primary soundtrack and AC3 tracks tend to be other languages and commentaries and stuff. (Often those are stereo so the number of channels would be a factor in the choice of 'best'.) Sometimes there is a straight choice of the main audio track between AC3 and DTS where the above GUI option would matter, but these seem to be sufficiently rare that it would appear to me at least to be nitpicky to hold off on development for the sake of that. People who *really* think that AC3 is better than DTS when all else is equal would be happy to go to the effort to change a config file until the GUI choice is available.
Oh, one extra wrinkle I can think of. If the user's specified that their actual surround system is 5.1 presumably it should prefer 5.1 tracks over 7.1 tracks? So: Prefer the speaker config the user actually has, *then* go by number of channels?
This is of course not even going into True HD and whatnot... Let's not go there yet.
But just to finish with a question to answer whether *something* should be done: When would we prefer to play the available AAC track over the available passthru-able AC3 *or* DTS track? Because at the moment for me it's just *always* playing the AAC and I almost *always* have to go into OSD and change it, which when I have company is especially irritating.