Bug 1591142 - Default libass package significantly out of date, contains bugs that can break subtitle rendering on 2160p+ displays
Summary: Default libass package significantly out of date, contains bugs that can brea...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: libass
Version: 28
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Martin Sourada
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2018-06-14 07:20 UTC by 結城イヴ
Modified: 2018-07-01 01:07 UTC (History)
3 users (show)

Fixed In Version: libass-0.13.4-6.fc28 libass-0.13.4-6.fc27 libass-0.13.4-6.el7
Clone Of:
Environment:
Last Closed: 2018-06-16 20:17:08 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description 結城イヴ 2018-06-14 07:20:17 UTC
Description of problem:
The version of libass shipped with Fedora is over a year out of date and contains a broken check for glyph bounding box size that was removed in an a Feb 2017 commit to libass (commit aa7aa03). This bug breaks some subtitle rendering on sufficiently high resolution displays (2160p+) as the bounding box check catches them as "too large" despite their size being correct for 2160p+ displays. 

The relevant commit and issues surrounding it: 
* https://github.com/libass/libass/pull/265/commits/aa7aa03609fa6ab6f3a51b6f6a8d9e2dfa509ad2
* https://github.com/libass/libass/issues/220
* https://github.com/libass/libass/issues/260

The latest libass package in Fedora's stable and testing repositories is from October 2016, while the latest libass release is from October 2017, over a year later. 

Version-Release number of selected component (if applicable): 0.13.4-5.fc28.x86_64


How reproducible: Easily (pretty much any media with signs/songs or other complex subtitles will trigger this)


Steps to Reproduce:
1. Create a media file with significantly large glyph bounding boxes and play it full screen on a 2160p+ display with something like MPV; you will get dropped subtitles as the glyph bounding boxes are caught by the check. Example output from mpv: 

AV: 00:00:34 / 00:23:40 (2%) A-V:  0.000 
[sub/ass] Glyph bounding box too large: 9701x3367px 
AV: 00:00:34 / 00:23:40 (2%) A-V:  0.000 Dropped: 3 
[sub/ass] Glyph bounding box too large: 6979x2422px 
AV: 00:00:34 / 00:23:40 (2%) A-V:  0.000 Dropped: 3 
[sub/ass] Glyph bounding box too large: 6523x2264px 
AV: 00:00:34 / 00:23:40 (2%) A-V:  0.000 Dropped: 3 
[sub/ass] Glyph bounding box too large: 6125x2125px 
AV: 00:00:35 / 00:23:40 (2%) A-V:  0.002 Dropped: 3 
[sub/ass] Glyph bounding box too large: 5772x2003px 
AV: 00:00:35 / 00:23:40 (2%) A-V:  0.000 Dropped: 5 
[sub/ass] Glyph bounding box too large: 4929x1712px


Actual results: Subtitles with sufficiently large glyph bounding boxes not rendered and are dropped as the libass version is very out of date and contains the broken size check. 

Expected results: Subtitles should render correctly regardless of their glyph bounding box size, as libass as of over a year ago no longer has a check on glyph bounding box size.


Additional info: Since this bug has already been fixed by the libass developers, fixing it should be as simple as shipping an update to libass (latest version is 0.14.0 as of 14/06/2018) and the components that depend on it (ABI change).

Comment 1 Simone Caronni 2018-06-14 07:54:52 UTC
Can you test this build? Is the same version with the specific commit applied. Unfortunately I can't just bump the version in f28 and under as the ABI has changed:

https://koji.fedoraproject.org/koji/buildinfo?buildID=1091818

Comment 2 Fedora Update System 2018-06-14 07:56:28 UTC
libass-0.13.4-6.fc28 has been submitted as an update to Fedora 28. https://bodhi.fedoraproject.org/updates/FEDORA-2018-847d3c12fd

Comment 3 Fedora Update System 2018-06-14 07:56:39 UTC
libass-0.13.4-6.fc27 has been submitted as an update to Fedora 27. https://bodhi.fedoraproject.org/updates/FEDORA-2018-7c7ecb44ec

Comment 4 Fedora Update System 2018-06-14 07:56:48 UTC
libass-0.13.4-6.el7 has been submitted as an update to Fedora EPEL 7. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2018-e8edde23a0

Comment 5 結城イヴ 2018-06-14 09:06:58 UTC
Simone, 

Thanks for the update! I tested libass-0.13.4-6.fc28; it works on my system perfectly without breaking any other packages. 

Given that the cherrypicked commit completely removes the bounding box size check, the bounding box bug should be fixed as well, but unfortunately I'm unable to test this specifically as mpv statically links against libass and I am not able to compile it properly due to issues with mpv-build. If you know of any video players that dynamically link against libass instead of statically, I could also test this. 

Thank you!

Comment 6 Fedora Update System 2018-06-14 18:23:15 UTC
libass-0.13.4-6.fc27 has been pushed to the Fedora 27 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2018-7c7ecb44ec

Comment 7 Fedora Update System 2018-06-14 18:50:10 UTC
libass-0.13.4-6.el7 has been pushed to the Fedora EPEL 7 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2018-e8edde23a0

Comment 8 結城イヴ 2018-06-14 19:09:01 UTC
Simone,

I was incorrect about mpv being statically linked after all; it is dynamically linked and thus I was able to test this bugfix release further: all issues with glyph bounding box size are fixed and libass functions as expected without any problems.

Thank you!

Comment 9 Fedora Update System 2018-06-14 20:24:18 UTC
libass-0.13.4-6.fc28 has been pushed to the Fedora 28 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2018-847d3c12fd

Comment 10 Fedora Update System 2018-06-16 20:17:08 UTC
libass-0.13.4-6.fc28 has been pushed to the Fedora 28 stable repository. If problems still persist, please make note of it in this bug report.

Comment 11 Fedora Update System 2018-06-23 19:55:22 UTC
libass-0.13.4-6.fc27 has been pushed to the Fedora 27 stable repository. If problems still persist, please make note of it in this bug report.

Comment 12 Fedora Update System 2018-07-01 01:07:22 UTC
libass-0.13.4-6.el7 has been pushed to the Fedora EPEL 7 stable repository. If problems still persist, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.