diff options
author | wm4 <wm4@nowhere> | 2013-08-25 20:40:21 +0200 |
---|---|---|
committer | wm4 <wm4@nowhere> | 2013-08-26 10:09:45 +0200 |
commit | 8be9c49fcd8b23463199036eda5fc290ded6d078 (patch) | |
tree | 285f8a1cdcd89c8da9f8a50631a1af5176a783b1 /demux/demux.c | |
parent | ddc973344685b8fee1d7b00e23ba93692d56d7c9 (diff) | |
download | mpv-8be9c49fcd8b23463199036eda5fc290ded6d078.tar.bz2 mpv-8be9c49fcd8b23463199036eda5fc290ded6d078.tar.xz |
core: add a playlist demuxer
Modeled after the old playlist_parser.c, but actually new code, and it
works a bit differently.
Demuxers (and sometimes streams) are the component that should be used
to open files and to determine the file format. This was already done
for subtitles, but playlists still use a separate code path.
Diffstat (limited to 'demux/demux.c')
-rw-r--r-- | demux/demux.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/demux/demux.c b/demux/demux.c index 272b089871..404050a420 100644 --- a/demux/demux.c +++ b/demux/demux.c @@ -59,6 +59,7 @@ extern const demuxer_desc_t demuxer_desc_lavf; extern const demuxer_desc_t demuxer_desc_mng; extern const demuxer_desc_t demuxer_desc_libass; extern const demuxer_desc_t demuxer_desc_subreader; +extern const demuxer_desc_t demuxer_desc_playlist; /* 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 @@ -81,6 +82,7 @@ const demuxer_desc_t *const demuxer_list[] = { #ifdef CONFIG_MNG &demuxer_desc_mng, #endif + &demuxer_desc_playlist, // Pretty aggressive, so should be last. &demuxer_desc_subreader, /* Please do not add any new demuxers here. If you want to implement a new @@ -309,6 +311,8 @@ static void free_sh_stream(struct sh_stream *sh) void free_demuxer(demuxer_t *demuxer) { + if (!demuxer) + return; if (demuxer->desc->close) demuxer->desc->close(demuxer); // free streams: |