1
0
mirror of https://github.com/mpv-player/mpv synced 2024-12-27 17:42:17 +00:00
mpv/player
wm4 75a36662cb osd, lua: manage multiple ASS overlays set with set_osd_ass() calls
Until now, there was only 1 global ASS overlay that could be set by all
scripts. This was often perceived as bug when multiple scripts tried to
set their own ASS overlay.

This was kind of hard to solve because the script could set its own ASS
PlayResX/Y, which makes it impossible to share a single ASS_Renderer for
multiple scripts. The OSC unfortunately makes use of this feature (and
unfortunately can't be fixed because it's a POS), so we're stuck with
this complication.

Implement the worst-case solution and fix this by creating separate ASS
track and renderer objects for each script that wants to set an ASS
overlay.

The z-order is decided by the order the scripts set their text first.
This is essentially random, unless you do it at script init, and you
pass scripts in a specific order. Script initialization is currently
serialized (as a feature), so the first loaded script gets lowest
Z-order.

The Lua script API interestingly remains the same. (And also will remain
undocumented, unsupported, and potentially volatile.)
2016-03-08 22:00:02 +01:00
..
lua osc: fix mouse areas 2016-03-08 09:23:50 +01:00
audio.c player: minor simplification 2016-02-27 20:03:15 +01:00
client.c client API: handle double->int64 conversion correctly 2016-02-13 13:07:53 +01:00
client.h global: add client API pointer to library handle 2016-01-15 22:54:08 +01:00
command.c command: fix property notification for cache-buffering-state 2016-03-02 13:57:30 +01:00
command.h video: always re-probe auto deint filter on filter reconfig 2015-07-21 21:54:15 +02:00
configfiles.c mpv_talloc.h: rename from talloc.h 2016-01-11 21:05:55 +01:00
core.h sub: make preloading more robust 2016-03-06 15:17:59 +01:00
external_files.c player: fix previous commit 2015-12-25 13:40:06 +01:00
external_files.h player: rename and move find_subfiles.c 2015-09-20 18:05:06 +02:00
lavfi.c lavfi: dump the filter graph 2016-02-12 20:28:07 +01:00
lavfi.h player: add complex filter graph support 2016-02-05 23:19:56 +01:00
loadfile.c demux: remove relative seeking 2016-02-28 19:28:34 +01:00
lua.c osd, lua: manage multiple ASS overlays set with set_osd_ass() calls 2016-03-08 22:00:02 +01:00
main.c options: set fs=yes by default on RPI, and change RPI defaults handling 2016-02-05 18:05:38 +01:00
misc.c player: simplify error_on_track() 2016-02-05 23:17:27 +01:00
osd.c player: remove old timeline/ordered chapters support 2016-02-15 21:03:51 +01:00
playloop.c player: simplify mp_seek() 2016-02-28 20:01:29 +01:00
screenshot.c Relicense some non-MPlayer source files to LGPL 2.1 or later 2016-01-19 18:36:06 +01:00
screenshot.h Relicense some non-MPlayer source files to LGPL 2.1 or later 2016-01-19 18:36:06 +01:00
scripting.c Relicense some non-MPlayer source files to LGPL 2.1 or later 2016-01-19 18:36:06 +01:00
sub.c sub: make preloading more robust 2016-03-06 15:17:59 +01:00
video.c player: minor simplification 2016-02-27 20:03:15 +01:00