summaryrefslogtreecommitdiffstats
path: root/demux/timeline.h
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2020-02-15 18:09:28 +0100
committerwm4 <wm4@nowhere>2020-02-15 18:29:44 +0100
commitc92c08edc671e64c31d98584e709b0f712864772 (patch)
tree7895910f80f81c11493fcf546c9fdbf77f4856e4 /demux/timeline.h
parent1d53a8f2e725cb9e3e71a9ca70feb880747d782f (diff)
downloadmpv-c92c08edc671e64c31d98584e709b0f712864772.tar.bz2
mpv-c92c08edc671e64c31d98584e709b0f712864772.tar.xz
edl: add mechanism for delay loading streams
Add something that will access an URL embedded in EDL only when the track it corresponds to is actually selected. This is meant to help with ytdl_hook.lua and to improve loading speeds. In theory, all this stuff is available to any mpv user, but discourage using it, as it's so specialized towards ytdl_hook.lua, that there's danger we'll just break this once ytdl_hook.lua stops using it, or similar. Mostly untested.
Diffstat (limited to 'demux/timeline.h')
-rw-r--r--demux/timeline.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/demux/timeline.h b/demux/timeline.h
index c8151a0606..faeec53b32 100644
--- a/demux/timeline.h
+++ b/demux/timeline.h
@@ -1,6 +1,8 @@
#ifndef MP_TIMELINE_H_
#define MP_TIMELINE_H_
+#include "common/common.h"
+
// Single segment in a timeline.
struct timeline_part {
// (end time must match with start time of the next part)
@@ -20,7 +22,11 @@ struct timeline_part {
// "par" is short for parallel stream.
struct timeline_par {
bstr init_fragment;
- bool dash, no_clip;
+ bool dash, no_clip, delay_open;
+
+ // If non-NULL, _some_ fields are used. If delay_open==true, this must be
+ // set, and the codec info is used.
+ struct sh_stream *sh_meta;
// Segments to play, ordered by time.
struct timeline_part *parts;