summaryrefslogtreecommitdiffstats
path: root/player/core.h
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2020-02-28 17:25:07 +0100
committerwm4 <wm4@nowhere>2020-02-28 17:25:07 +0100
commitd32ce14d2c957cdb8cc9d0fdada06fe128ab673b (patch)
treea061e7a62181cef268d1c55e1e1235fec60a3a9b /player/core.h
parent7e2bb7b43948eeab67a03ba0e89dbf4761027073 (diff)
downloadmpv-d32ce14d2c957cdb8cc9d0fdada06fe128ab673b.tar.bz2
mpv-d32ce14d2c957cdb8cc9d0fdada06fe128ab673b.tar.xz
demux_lavf: don't interpret errors as EOF
It seems sporadic errors are possible, such as connection timeouts. Before the recent demuxer change, the demuxer thread retried many times even on EOF, so an error was only interpreted as EOF once the decoder queues ran out. Change it to use EOF only. Since this may actually lead to the demuxer thread being "stuck" and retrying forever (depending on libavformat API behavior), I'm also adding a heuristic to prevent this, using a random retry counter. This should not be necessary, but libavformat cannot be trusted. (This retrying forever could be stopped by the user, but obviously it would still heat the CPU for a longer time if the user is not present.)
Diffstat (limited to 'player/core.h')
0 files changed, 0 insertions, 0 deletions