mpv/player
wm4 d7ca95c3ea command: whitelist some blocking accesses for certain demuxers/streams
The properties/commands touched in this commit are all for obscure
special inputs (BD/DVD/DVB/TV), and they all block on the demuxer/stream
layer. For network streams, this blocking is very unwelcome. They will
affect playback and probably introduce pauses and frame drops. The
player can even freeze fully, and the logic that tries to make playback
abortable even if frozen complicates the player.

Since the mentioned accesses are not needed for network streams, but
they will block on network streams even though they're going to fail,
add a flag that coarsely enables/disables these accesses. Essentially it
establishes a whitelist of demuxers/streams which support them.

In theory you could to access BD/DVD images over network (or add such
support, I don't think it's a thing in mpv). In these cases these
controls still can block and could even "freeze" the player completely.

Writing to the "program" and "cache-size" properties still can block
even for network streams. Just don't use them if you don't want freezes.
2018-05-24 19:56:35 +02:00
..
javascript js: use new hooks API (match f60826c3) 2018-04-07 16:02:20 -07:00
lua lua: expose mpv_abort_async_command() 2018-05-24 19:56:34 +02:00
audio.c build: make encoding mode non-optional 2018-05-03 01:08:44 +03:00
client.c misc: move some helper code from client.c 2018-05-24 19:56:34 +02:00
client.h command: add infrastructure for async commands 2018-05-24 19:56:34 +02:00
command.c command: whitelist some blocking accesses for certain demuxers/streams 2018-05-24 19:56:35 +02:00
command.h command: add a way to abort asynchronous commands 2018-05-24 19:56:34 +02:00
configfiles.c player: silence config file loading message on resuming 2018-01-13 03:26:45 -08:00
core.h player: make various commands for managing external tracks abortable 2018-05-24 19:56:35 +02:00
external_files.c player: make track language matching case insensitive 2017-12-23 15:14:13 -07:00
external_files.h external_files: change license to LGPL 2017-06-20 14:22:10 +02:00
javascript.c js: use new hooks API (match f60826c3) 2018-04-07 16:02:20 -07:00
loadfile.c player: make various commands for managing external tracks abortable 2018-05-24 19:56:35 +02:00
lua.c lua: expose mpv_abort_async_command() 2018-05-24 19:56:34 +02:00
main.c misc: move mp_cancel from stream.c to thread_tools.c 2018-05-24 19:56:35 +02:00
misc.c player: use canonical playback time for video refreshes 2018-05-24 19:56:34 +02:00
osd.c build: make encoding mode non-optional 2018-05-03 01:08:44 +03:00
playloop.c player: don't reset last_seek_pts on playback state reset 2018-05-24 19:56:34 +02:00
screenshot.c command: add a way to abort asynchronous commands 2018-05-24 19:56:34 +02:00
screenshot.h command: move screenshot command stubs to screenshot.c 2018-05-24 19:56:34 +02:00
scripting.c scripting: change when/how player waits for scripts being loaded 2018-04-18 01:17:41 +03:00
sub.c video: make decoder wrapper a filter 2018-01-30 03:10:27 -08:00
video.c video: trust container FPS early on if possible 2018-05-24 19:56:34 +02:00