diff options
author | wm4 <wm4@nowhere> | 2014-07-05 16:57:56 +0200 |
---|---|---|
committer | wm4 <wm4@nowhere> | 2014-07-05 17:07:15 +0200 |
commit | 338004bcfc224727d1477d303aa1521bf3ac21be (patch) | |
tree | 5066a689bb13f4c00a360d9b33a485d81eb17d72 /stream/cache.c | |
parent | 4d2a4afdef24c343b98e71dddcb3382e85c09c96 (diff) | |
download | mpv-338004bcfc224727d1477d303aa1521bf3ac21be.tar.bz2 mpv-338004bcfc224727d1477d303aa1521bf3ac21be.tar.xz |
dvd, bluray, cdda: add demux_disc containing all related hacks
DVD and Bluray (and to some extent cdda) require awful hacks all over
the codebase to make them work. The main reason is that they act like
container, but are entirely implemented on the stream layer. The raw
mpeg data resulting from these streams must be "extended" with the
container-like metadata transported via STREAM_CTRLs. The result were
hacks all over demux.c and some higher-level parts.
Add a "disc" pseudo-demuxer, and move all these hacks and special-cases
to it.
Diffstat (limited to 'stream/cache.c')
-rw-r--r-- | stream/cache.c | 6 |
1 files changed, 0 insertions, 6 deletions
diff --git a/stream/cache.c b/stream/cache.c index 3523f04704..f96cdef0e7 100644 --- a/stream/cache.c +++ b/stream/cache.c @@ -112,7 +112,6 @@ struct priv { double stream_time_length; double stream_start_time; int64_t stream_size; - bool stream_manages_timeline; unsigned int stream_num_chapters; int stream_cache_idle; int stream_cache_fill; @@ -381,9 +380,6 @@ static void update_cached_controls(struct priv *s) s->stream_start_time = MP_NOPTS_VALUE; if (stream_control(s->stream, STREAM_CTRL_GET_START_TIME, &d) == STREAM_OK) s->stream_start_time = d; - s->stream_manages_timeline = false; - if (stream_control(s->stream, STREAM_CTRL_MANAGES_TIMELINE, NULL) == STREAM_OK) - s->stream_manages_timeline = true; s->stream_num_chapters = 0; if (stream_control(s->stream, STREAM_CTRL_GET_NUM_CHAPTERS, &ui) == STREAM_OK) s->stream_num_chapters = ui; @@ -428,8 +424,6 @@ static int cache_get_cached_control(stream_t *cache, int cmd, void *arg) return STREAM_UNSUPPORTED; *(int64_t *)arg = s->stream_size; return STREAM_OK; - case STREAM_CTRL_MANAGES_TIMELINE: - return s->stream_manages_timeline ? STREAM_OK : STREAM_UNSUPPORTED; case STREAM_CTRL_GET_NUM_CHAPTERS: *(unsigned int *)arg = s->stream_num_chapters; return STREAM_OK; |