0
0
mirror of https://github.com/mpv-player/mpv.git synced 2024-09-20 12:02:23 +02:00
mpv/DOCS/man
wm4 9bcb9fcf26 player: make screenshot commands honor the async flag
And also change input.conf to make all screenshots async. (Except the
every-frame mode, which always uses synchronous mode and ignores the
flag.) By default, the "screenshot" command is still asynchronous,
because scripts etc. might depend on this behavior.

This is only partially async. The code for determining the filename is
still always run synchronously. Only encoding the screenshot and writing
it to disk is asynchronous. We explicitly document the exact behavior as
undefined, so it can be changed any time.

Some of this is a bit messy, because I wanted to avoid duplicating the
message display code between sync and async mode. In async mode, this is
called from a worker thread, which is not safe because showing a message
accesses the thread-unsafe OSD code. So the core has to be locked during
this, which implies accessing the core and all that. So the code has
weird locking calls, and we need to do core destruction in a more
"controlled" manner (thus the outstanding_async field).

(What I'd really want would be the OSD simply showing log messages
instead.)

This is pretty untested, so expect bugs.

Fixes #4250.
2017-04-01 20:47:23 +02:00
..
af.rst command: add better runtime filter toggling method 2017-03-25 17:07:40 +01:00
ao.rst options: remove deprecated sub-option handling for --vo and --ao 2016-11-25 21:17:25 +01:00
changes.rst manpage: mention the client API/interface change logs 2016-09-02 09:48:35 +02:00
encode.rst man: fix grammar issues 2015-12-19 09:26:41 +01:00
input.rst player: make screenshot commands honor the async flag 2017-04-01 20:47:23 +02:00
ipc.rst client API: turn mpv_suspend() and mpv_resume() into stubs 2016-11-22 15:54:44 +01:00
libmpv.rst manpage: define stricter rules for C plugin return values 2017-01-14 17:41:04 +01:00
lua.rst lua: allow unregistration of idle handlers 2017-01-15 17:02:21 +01:00
mpv.rst manpage: add empty line between protocol header/description 2017-03-25 12:51:50 +01:00
options.rst external_files: enable autoloading with URLs 2017-04-01 15:42:42 +01:00
osc.rst osc: escape ASS and strip newlines on title 2017-03-27 18:00:56 +01:00
vf.rst command: change and simplify filter toggle syntax 2017-03-26 13:13:34 +02:00
vo.rst image_writer: remove useless formats 2017-03-18 14:24:53 +01:00