1
0
mirror of https://github.com/mpv-player/mpv synced 2025-02-23 08:26:56 +00:00
mpv/DOCS
wm4 b56e2efd5f demux: simplify some internals, stop trying to read packets after EOF
Remove some redundant fields that controlled or indicated whether the
demuxer was/could/should prefetch. Redefine how the eof/reading fields
work.

The in->eof field is now always valid, instead of weirdly being reset to
false in random situations. The in->reading field now corresponds to
whether the demuxer thread is working at all, and is reset if it stops
doing anything.

Also, I always found it stupid that dequeue_packet() forced the demuxer
thread to retry reading if it was EOF. This makes little sense, but was
probably added for files that are being appended to (running downloads).
It makes no sense, because if the cache really tried to read until file
EOF, it would encounter partial packets and throw errors, so all is lost
anyway. Plus stream_file now handles this better. So stop this behavior,
but add a temporary option that enables the old behavior.

I think checking for ds->eager when enabling prefetching never really
made sense (could be debated, but no, not really). On the other hand,
the change above exposed a missing wakeup in the backward demuxing code.

Some chances of regressions that could make it stuck in certain states
or so, or incorrect demuxer cache state reporting to the player
frontend.
2020-02-27 22:30:46 +01:00
..
man demux: simplify some internals, stop trying to read packets after EOF 2020-02-27 22:30:46 +01:00
client-api-changes.rst Release 0.31.0 2019-12-28 12:07:07 +01:00
compatibility.rst DOCS/compatibility.rst: add this file 2019-10-05 02:11:55 +02:00
compile-windows.md DOCS: mention that mpv doesn't build with MSVC 2019-12-14 16:05:54 +01:00
contribute.md DOCS/contribute.md: fix a typo 2019-12-15 16:33:58 +01:00
edl-mpv.rst ytdl_hook, edl: add fps, samplerate codec parameters 2020-02-21 14:48:23 +01:00
encoding.rst DOCS/encoding.rst: remove deprecated usage of multiple items with *-add 2020-01-07 18:13:12 +01:00
interface-changes.rst DOCS/interface-changes.rst: mention it's for incompatible changes 2020-02-08 14:44:53 +01:00
mplayer-changes.rst mac: remove Apple Remote support 2019-12-15 20:07:31 +01:00
release-policy.md DOCS/release-policy.md: clarify a few details 2019-10-27 14:06:16 +01:00
tech-overview.txt DOCS/tech-overview.txt: some more blabla 2019-12-28 10:09:28 +01:00
waf-buildsystem.rst DOCS/waf-buildsystem.rst: fix typo 2017-02-15 10:41:26 +01:00