sub/sd_ass: set ASS_OVERRIDE_BIT_BLUR if available

4df64d060a

Fixes: https://github.com/mpv-player/mpv/issues/14852
This commit is contained in:
llyyr 2024-11-03 09:05:52 +05:30 committed by Kacper Michajłow
parent b057af0a56
commit 9bf0c53763
3 changed files with 8 additions and 2 deletions

View File

@ -0,0 +1 @@
`sub-blur` is now applied by `sub-ass-override=force` with new enough libass

View File

@ -2545,7 +2545,8 @@ Subtitles
``--sub-ass-override=<no|yes|scale|force|strip>`` ``--sub-ass-override=<no|yes|scale|force|strip>``
Control whether user style overrides should be applied. Note that all of Control whether user style overrides should be applied. Note that all of
these overrides try to be somewhat smart about figuring out whether or not these overrides try to be somewhat smart about figuring out whether or not
a subtitle is considered a "sign". a subtitle is considered a "sign" and try to be as non-destructive as
possible.
:no: Render subtitles as specified by the subtitle scripts, without :no: Render subtitles as specified by the subtitle scripts, without
overrides. overrides.
@ -2554,7 +2555,8 @@ Subtitles
rendering. rendering.
:scale: Like ``yes``, but also apply ``--sub-scale`` (default). :scale: Like ``yes``, but also apply ``--sub-scale`` (default).
:force: Like ``yes``, but also force all ``--sub-*`` options. Can break :force: Like ``yes``, but also force all ``--sub-*`` options. Can break
rendering easily. rendering easily. Certain options aren't overridden if they can
potentially be too destructive.
:strip: Radically strip all ASS tags and styles from the subtitle. This :strip: Radically strip all ASS tags and styles from the subtitle. This
is equivalent to the old ``--no-ass`` / ``--no-sub-ass`` options. is equivalent to the old ``--no-ass`` / ``--no-sub-ass`` options.

View File

@ -533,6 +533,9 @@ static void configure_ass(struct sd *sd, struct mp_osd_res *dim,
| ASS_OVERRIDE_BIT_COLORS | ASS_OVERRIDE_BIT_COLORS
| ASS_OVERRIDE_BIT_BORDER | ASS_OVERRIDE_BIT_BORDER
| ASS_OVERRIDE_BIT_SELECTIVE_FONT_SCALE; | ASS_OVERRIDE_BIT_SELECTIVE_FONT_SCALE;
#if LIBASS_VERSION >= 0x01703020
set_force_flags |= ASS_OVERRIDE_BIT_BLUR;
#endif
} }
if (shared_opts->ass_style_override[sd->order] == ASS_STYLE_OVERRIDE_SCALE) if (shared_opts->ass_style_override[sd->order] == ASS_STYLE_OVERRIDE_SCALE)
set_force_flags |= ASS_OVERRIDE_BIT_SELECTIVE_FONT_SCALE; set_force_flags |= ASS_OVERRIDE_BIT_SELECTIVE_FONT_SCALE;