mirror of https://github.com/mpv-player/mpv
d54e8c3f40
It turns out that probing too many blocks is bad. I did not attempt to go through all the logic but reading that many blocks causes the demux_reader_state have some pretty funny values which then makes the playloop think it needs to buffer for cache. It's probably fixable... but seems hard admittedly so I'll be lazy. Just take out a magnitude off the probing down to 10000. These seems to be more than sufficient. The sample in #13975 where we had the opposite issue only needs somewhere between 1700 and 1750 blocks to be properly detected. Crudely looking at the demuxer values, 10000 here doesn't appear to alter anything meaningfully so it does not have the "too many blocks problem". Hopefully this is a perfect medium? Further improvements to the probe can always be added later. Or maybe we decide this is all a giant mistake and delete it. Fixes #14924. |
||
---|---|---|
.. | ||
cache.c | ||
cache.h | ||
codec_tags.c | ||
codec_tags.h | ||
cue.c | ||
cue.h | ||
demux.c | ||
demux.h | ||
demux_cue.c | ||
demux_disc.c | ||
demux_edl.c | ||
demux_lavf.c | ||
demux_libarchive.c | ||
demux_mf.c | ||
demux_mkv.c | ||
demux_mkv_timeline.c | ||
demux_null.c | ||
demux_playlist.c | ||
demux_raw.c | ||
demux_timeline.c | ||
ebml.c | ||
ebml.h | ||
matroska.h | ||
packet.c | ||
packet.h | ||
stheader.h | ||
timeline.c | ||
timeline.h |