summaryrefslogtreecommitdiffstats
path: root/demux/demux.c
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2015-03-24 21:29:09 +0100
committerwm4 <wm4@nowhere>2015-03-24 21:29:09 +0100
commit1ad4a62336c2b6f02bc1968c91b877b6d4951c58 (patch)
tree282d57d000f6dc13a01ccfca3c2340bdd099e96b /demux/demux.c
parent9b5a7241e88f8147a391f1bb79ce01593a02d443 (diff)
downloadmpv-1ad4a62336c2b6f02bc1968c91b877b6d4951c58.tar.bz2
mpv-1ad4a62336c2b6f02bc1968c91b877b6d4951c58.tar.xz
demux: fix rar support for files containing DTS audio tracks
With a recent cleanup, rar support was stuffed into demux_playlist.c (because "opening" rar files pretty much just lists archive contents and adds them to a playlist using a special rar:// protocol, which will actually access the rar file contents). Since demux_playlist.c is probed _after_ demux_lavf.c (and should/must be), libavformat was given the chance to detect DTS streams embedded within the rar file. This is not really what we want, and a regression what happened before rar listing was moved to demux_playlist.c. Fix it by moving the rar listing into its own pseudo-demuxer, and let ir probe before demux_lavf.c. (Yes, this feature still has users.)
Diffstat (limited to 'demux/demux.c')
-rw-r--r--demux/demux.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/demux/demux.c b/demux/demux.c
index e9edac78f8..6790ba52c3 100644
--- a/demux/demux.c
+++ b/demux/demux.c
@@ -54,6 +54,7 @@ extern const demuxer_desc_t demuxer_desc_libass;
extern const demuxer_desc_t demuxer_desc_subreader;
extern const demuxer_desc_t demuxer_desc_playlist;
extern const demuxer_desc_t demuxer_desc_disc;
+extern const demuxer_desc_t demuxer_desc_rar;
/* Please do not add any new demuxers here. If you want to implement a new
* demuxer, add it to libavformat, except for wrappers around external
@@ -72,6 +73,7 @@ const demuxer_desc_t *const demuxer_list[] = {
&demuxer_desc_libass,
#endif
&demuxer_desc_matroska,
+ &demuxer_desc_rar,
&demuxer_desc_lavf,
&demuxer_desc_mf,
&demuxer_desc_playlist,