mpv/TOOLS/lua
wm4 12d1404b04 player: make various commands for managing external tracks abortable
Until now, they could be aborted only by ending playback, and calling
mpv_abort_async_command didn't do anything.

This requires furthering the mess how playback abort is done. The main
reason why mp_cancel exists at all is to avoid that a "frozen" demuxer
(blocked on network I/O or whatever) cannot freeze the core. The core
should always get its way. Previously, there was a single mp_cancel
handle, that could be signaled, and all demuxers would unfreeze. With
external files, we might want to abort loading of a certain external
file, which automatically means they need a separate mp_cancel. So give
every demuxer its own mp_cancel, and "slave" it to whatever parent
mp_cancel handles aborting.

Since the mpv demuxer API conflates creating the demuxer and reading the
file headers, mp_cancel strictly need to be created before the demuxer
is created (or we couldn't abort loading). Although we give every
demuxer its own mp_cancel (as "enforced" by cancel_and_free_demuxer),
it's still rather messy to create/destroy it along with the demuxer.
2018-05-24 19:56:35 +02:00
..
README.md
acompressor.lua acompressor.lua: Convert to use mp.options and lavfi filter bridge 2017-08-07 11:42:20 +02:00
ao-null-reload.lua
audio-hotplug-test.lua command: drop "audio-out-detected-device" property 2017-10-09 15:48:47 +02:00
autocrop.lua TOOLS/autocrop.lua: fix cropdetect black limit for 10-bit videos 2017-08-17 20:43:25 +01:00
autodeint.lua TOOLS/lua/autodeint: update to lavfi-bridge 2017-08-21 18:12:10 +01:00
autoload.lua TOOLS/autoload: be more robust with slow directory listings 2018-03-10 12:46:41 +00:00
command-test.lua player: make various commands for managing external tracks abortable 2018-05-24 19:56:35 +02:00
cycle-deinterlace-pullup.lua
observe-all.lua
ontop-playback.lua
pause-when-minimize.lua
status-line.lua

README.md

mpv lua scripts

The lua scripts in this folder can be loaded on a one-time basis by adding the option

--script=/path/to/script.lua

to mpv's command line.

Where appropriate, they may also be placed in ~/.config/mpv/scripts/ from where they will be automatically loaded when mpv starts.

This is only a small selection of internally maintained scripts. Some of them are just for testing mpv internals, or serve as examples. An extensive user-edited list of 3rd party scripts is available here:

https://github.com/mpv-player/mpv/wiki/User-Scripts

(Anyone can add their own scripts to that list.)