diff options
author | wm4 <wm4@nowhere> | 2015-06-25 17:32:00 +0200 |
---|---|---|
committer | wm4 <wm4@nowhere> | 2015-06-25 17:32:00 +0200 |
commit | fd1194de3c4b14126269f2db918c0f8bcf2bf34a (patch) | |
tree | dbc3146079a212b5fb17c7aa3941a90d0834ef74 /DOCS/interface-changes.rst | |
parent | 5d71188c9939a0a881b82982efb5203d6704fd0b (diff) | |
download | mpv-fd1194de3c4b14126269f2db918c0f8bcf2bf34a.tar.bz2 mpv-fd1194de3c4b14126269f2db918c0f8bcf2bf34a.tar.xz |
audio: fix channel map fallback selection (again)
The speaker replacement nonsense sometimes made blatantly incorrect
decisions. In this case, it prefered a 7.1(rear) upmix over outputting
5.1(side) as 5.1, which makes no sense at all. This happened because 5.1
and 7.1(rear) appeared equivalent to the final selection, as both of
them lose the sl-sr channels. The old code was too stupid to select the
one with the lower number of channels as well.
Redo this. There's really no reason why there should be a separate final
decision, so move the speaker replacement logic into the
mp_chmap_is_better() function.
Improve some other details. For example, we never should compare the
plain number of channels for deciding upmix/downmix, because due to NA
channels this is essentially meaningless. Remove the NA channels when
doing this comparison. Also, explicitly handle exact matches.
Conceptually this is not necessary, but it avoids that we have to
needlessly shuffle audio data around.
Diffstat (limited to 'DOCS/interface-changes.rst')
0 files changed, 0 insertions, 0 deletions