diff options
author | Dudemanguy <random342@airmail.cc> | 2023-07-15 12:57:31 -0500 |
---|---|---|
committer | Dudemanguy <random342@airmail.cc> | 2023-07-15 23:57:16 +0000 |
commit | cab544889a6ce2dd48a5859b54ccfd807518bd92 (patch) | |
tree | 39815919ddc44746e8cf6f40b24b1c48a8800915 /etc/mpv.metainfo.xml | |
parent | b077cf72df6b5c8270c72184a976a2b5aa6d40f1 (diff) | |
download | mpv-cab544889a6ce2dd48a5859b54ccfd807518bd92.tar.bz2 mpv-cab544889a6ce2dd48a5859b54ccfd807518bd92.tar.xz |
sd_ass: don't reconfigure ass on every frame
dbc5d7b7db70f898dcd5cbbba76ffed38e5371ee seems to have originally
introduced this behavior. At the time, wm4 simply reconfigured ass on
every frame in order to accommodate runtime changes in sub options. This
certainly works, but these libass API calls are not free and there is at
least one known performance regression due to a change in libass*.
Regardless of whether or not the libass change is good/bad, there is no
need for mpv to constantly reconfigure this. When wm4 made that commit,
there was no notification mechanism for options changing that could
easily be used so he didn't really have any other choice. But it's
nearly 10 years later now and internally we have all the necessary
pieces to only configure ass again when we need to: on option changes or
resizes. So go ahead and implement that in this commit which simply uses
the already existing SD_CTRL_UPDATE_OPTS and compares osd_res sizes to
determine whether or not an ass configure is needed.
*: https://github.com/libass/libass/issues/698
Diffstat (limited to 'etc/mpv.metainfo.xml')
0 files changed, 0 insertions, 0 deletions