Draft: demux: mkv: respect user's subtitle preference
Initializing all tracks to be defaulted causes preference matching
for subtitles to fail in es_out as ESCreate sends the last default
subtitle in the tracks array to es_out. ESSelect prefers default
subtitle over user preference, which causes unwanted behavior of ignoring user's choice even though a default does not exist.
Instead EsOutPropsInit should instruct ESSelect to choose a subtitle
if it does not exist.
Currently, in case of subtitle: for auto selection: es_out respects demux'es choice. So, if demux appoints a subtitle: that one will be selected irrespective of user preference. Which is alright as it means the demuxer should handle user preference instead.
However, in case of MKV, user preference is not handled. And it selects the "Last default subtitle track" as the "Default subtitle track". Which, in the end, causes ignorance of user preference because of the reason above. This is also a regression from VLC 3.
This patch will allow mkv module to receive the subtitle preference within it, and select a proper subtitle based on that. At the same time it will pave the way to implement FlagForced properly.