mpv/demux
wm4 fae31f39c7 demux: refactor cache range init/deinit
Remove the duplicated creation of the first range. Explicitly destroy
ranges, including the last one on final deinit.

It looks like this also fixes a leak of removed range structs, which was
never noticed because they're so small, and were freed on final deinit
due to having the demuxer as talloc parent.

This improves upon the previous commit too (that change should have
been part of it I guess). Sub-demuxers (demux_timeline only) now
automatically don't use the cache (like it was intended by the previous
commit). The cache is "initialized" (or disabled) last in the recursive
call chain, which is messy, but this sub demuxer stuff FUCKING SUCKS, as
mentioned in the previous commit message. This would be no problem if
the caching layer and actual demuxer implementations were separate.

Most of this change has no purpose. Might make (de-)initialization of
further cache exerpiments simpler.
2019-09-19 20:37:05 +02:00
..
codec_tags.c codec_tags: fix wrong buffer size 2019-07-03 17:47:24 +03:00
codec_tags.h
cue.c demux: support cue sheets longer than 100 minutes 2019-04-01 23:39:08 +02:00
cue.h
demux.c demux: refactor cache range init/deinit 2019-09-19 20:37:05 +02:00
demux.h demux: refactor cache range init/deinit 2019-09-19 20:37:05 +02:00
demux_cue.c demux_edl, cue, mkv: slightly nicer file format indication 2019-09-19 20:37:04 +02:00
demux_edl.c demux_edl: fix assertion failure on exit in obscure ytdl cases 2019-09-19 20:37:04 +02:00
demux_lavf.c demux_lavf: implement bad hack for backward playback of wav 2019-09-19 20:37:04 +02:00
demux_libarchive.c demux: change hack for closing subtitle files early 2019-09-19 20:37:04 +02:00
demux_mf.c demux: return packets directly from demuxer instead of using sh_stream 2019-09-19 20:37:04 +02:00
demux_mkv.c demux_mkv: don't set keyframe flag for timestamp-less audio frames 2019-09-19 20:37:05 +02:00
demux_mkv_timeline.c demux_edl, cue, mkv: slightly nicer file format indication 2019-09-19 20:37:04 +02:00
demux_null.c demux_null: mark as seekable 2018-01-06 14:42:22 -08:00
demux_playlist.c demux: change hack for closing subtitle files early 2019-09-19 20:37:04 +02:00
demux_raw.c demux_raw: fix operation with demuxer cache and backward playback 2019-09-19 20:37:04 +02:00
demux_timeline.c demux: refactor cache range init/deinit 2019-09-19 20:37:05 +02:00
ebml.c demux_mkv: adjust log verbosity levels 2018-04-29 02:21:32 +03:00
ebml.h demux_mkv: rewrite packet reading to avoid 1 memcpy() 2017-11-05 18:13:34 +01:00
matroska.h
packet.c Implement backwards playback 2019-09-19 20:37:04 +02:00
packet.h packet: change len field from int to size_t 2019-09-19 20:37:05 +02:00
stheader.h demux, demux_mkv: fix seeking in cache with large codec delay 2019-09-19 20:37:04 +02:00
timeline.c demux_edl, cue, mkv: slightly nicer file format indication 2019-09-19 20:37:04 +02:00
timeline.h demux_edl, cue, mkv: slightly nicer file format indication 2019-09-19 20:37:04 +02:00