diff --git a/files/0004-osd-libass-set-ScaledBorderAndShadow.patch b/files/0004-osd-libass-set-ScaledBorderAndShadow.patch new file mode 100644 --- /dev/null +++ b/files/0004-osd-libass-set-ScaledBorderAndShadow.patch @@ -0,0 +1,29 @@ +From d086421ca478940b8588e33c9f836472a578b199 Mon Sep 17 00:00:00 2001 +From: Oleg Oshmyan +Date: Sat, 11 Jul 2020 21:06:48 +0300 +Subject: [PATCH] osd_libass: set ScaledBorderAndShadow + +libass recently switched the default from 1 to 0 for compatibility +with ASS scripts that rely on the historical/VSFilter default of 0. + +libass does attempt to detect and avoid breaking scripts that rely +on the historic libass-only default of 1, but it doesn't cover tracks +created directly through the API, so set the header explicitly. + +Fixes https://github.com/mpv-player/mpv/issues/7900. +--- + sub/osd_libass.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/sub/osd_libass.c b/sub/osd_libass.c +index 2efcef00be..5f9bc52f66 100644 +--- a/sub/osd_libass.c ++++ b/sub/osd_libass.c +@@ -132,6 +132,7 @@ static void create_ass_track(struct osd_state *osd, struct osd_object *obj, + track->Timer = 100.; + track->WrapStyle = 1; // end-of-line wrapping instead of smart wrapping + track->Kerning = true; ++ track->ScaledBorderAndShadow = true; + + update_playres(ass, &obj->vo_res); + } diff --git a/files/0005-sd-ass-osd-libass-dont-use-deprecated-libass-symbols.patch b/files/0005-sd-ass-osd-libass-dont-use-deprecated-libass-symbols.patch new file mode 100644 --- /dev/null +++ b/files/0005-sd-ass-osd-libass-dont-use-deprecated-libass-symbols.patch @@ -0,0 +1,76 @@ +From 6f8768c55fad1d82dfefd2426f153d44d8e350ac Mon Sep 17 00:00:00 2001 +From: Oneric +Date: Fri, 28 Aug 2020 13:55:20 +0000 +Subject: [PATCH 1/2] osd_libass: don't use deprecated ass_set_aspect_ratio + +--- + sub/osd_libass.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/sub/osd_libass.c b/sub/osd_libass.c +index 5f9bc52f66..667431eb7b 100644 +--- a/sub/osd_libass.c ++++ b/sub/osd_libass.c +@@ -63,7 +63,7 @@ static void create_ass_renderer(struct osd_state *osd, struct ass_state *ass) + + mp_ass_configure_fonts(ass->render, osd->opts->osd_style, + osd->global, ass->log); +- ass_set_aspect_ratio(ass->render, 1.0, 1.0); ++ ass_set_pixel_aspect(ass->render, 1.0); + } + + static void destroy_ass_renderer(struct ass_state *ass) +@@ -622,7 +622,7 @@ static void append_ass(struct ass_state *ass, struct mp_osd_res *res, + update_playres(ass, res); + + ass_set_frame_size(ass->render, res->w, res->h); +- ass_set_aspect_ratio(ass->render, res->display_par, 1.0); ++ ass_set_pixel_aspect(ass->render, res->display_par); + + int ass_changed; + *img_list = ass_render_frame(ass->render, ass->track, 0, &ass_changed); + +From f7ba291e578627fb93e19ce95cca96d993cded65 Mon Sep 17 00:00:00 2001 +From: Oneric +Date: Fri, 28 Aug 2020 13:59:04 +0000 +Subject: [PATCH 2/2] sd_ass: replace deprecated ASS_OVERRIDE_BIT_FONT_SIZE + +This requires a slightly more recent libass than before +--- + sub/sd_ass.c | 6 ++---- + wscript | 2 +- + 2 files changed, 3 insertions(+), 5 deletions(-) + +diff --git a/sub/sd_ass.c b/sub/sd_ass.c +index eae1536df8..e5e12cbc04 100644 +--- a/sub/sd_ass.c ++++ b/sub/sd_ass.c +@@ -418,13 +418,11 @@ static void configure_ass(struct sd *sd, struct mp_osd_res *dim, + ass_set_shaper(priv, opts->ass_shaper); + int set_force_flags = 0; + if (total_override) +- set_force_flags |= ASS_OVERRIDE_BIT_STYLE | ASS_OVERRIDE_BIT_FONT_SIZE; ++ set_force_flags |= ASS_OVERRIDE_BIT_STYLE | ASS_OVERRIDE_BIT_SELECTIVE_FONT_SCALE; + if (opts->ass_style_override == 4) // 'scale' +- set_force_flags |= ASS_OVERRIDE_BIT_FONT_SIZE; +-#if LIBASS_VERSION >= 0x01201001 ++ set_force_flags |= ASS_OVERRIDE_BIT_SELECTIVE_FONT_SCALE; + if (converted) + set_force_flags |= ASS_OVERRIDE_BIT_ALIGNMENT; +-#endif + #ifdef ASS_JUSTIFY_AUTO + if ((converted || opts->ass_style_override) && opts->ass_justify) + set_force_flags |= ASS_OVERRIDE_BIT_JUSTIFY; +diff --git a/wscript b/wscript +index 1c45e20a27..a54a1191dd 100644 +--- a/wscript ++++ b/wscript +@@ -312,7 +312,7 @@ iconv support use --disable-iconv.", + }, { + 'name': 'libass', + 'desc': 'SSA/ASS support', +- 'func': check_pkg_config('libass', '>= 0.12.1'), ++ 'func': check_pkg_config('libass', '>= 0.12.2'), + 'req': True, + 'fmsg': "Unable to find development files for libass, or the version " + + "found is too old. Aborting." diff --git a/files/series b/files/series --- a/files/series +++ b/files/series @@ -1,3 +1,5 @@ 0001-Support-a-stateless-configuration-on-nix-systems.patch 0002-stream-file-cache-file-size.patch 0003-stream-file-use-fstat-instead-of-lseek-to-determine-file-size.patch +0004-osd-libass-set-ScaledBorderAndShadow.patch +0005-sd-ass-osd-libass-dont-use-deprecated-libass-symbols.patch diff --git a/package.yml b/package.yml --- a/package.yml +++ b/package.yml @@ -1,7 +1,7 @@ name : mpv homepage : https://mpv.io/ version : 0.32.0 -release : 78 +release : 79 source : - https://github.com/mpv-player/mpv/archive/v0.32.0.tar.gz : 9163f64832226d22e24bbc4874ebd6ac02372cd717bef15c28a0aa858c5fe592 - https://waf.io/waf-2.0.19 : ba63c90a865a9bcf46926c4e6776f9a3f73d29f33d49b7f61f96bc37b7397cef diff --git a/pspec_x86_64.xml b/pspec_x86_64.xml --- a/pspec_x86_64.xml +++ b/pspec_x86_64.xml @@ -58,7 +58,7 @@ While mpv has no official GUI, it has a small controller that is triggered by mouse movement. mpv leverages the FFmpeg hwaccel APIs to support VDPAU, VAAPI and VDA video decode acceleration. - mpv-libs + mpv-libs /usr/include/mpv/client.h @@ -75,8 +75,8 @@ - - 2020-08-26 + + 2020-10-27 0.32.0 Packaging update Alexander Vorobyev