Page MenuHomeSolus

Update libass to 0.15.1
ClosedPublic

Authored by aleksvor on Sun, May 2, 5:55 AM.

Details

Summary

Changelog:

  • Fix crashing on some ASS files with embedded fonts.
  • Fix embedded and memory fonts not actually being used unless ass_set_fonts was called after they have been added.
  • Fix events assuming the largest xbord-value of a preceding event of the same frame during collision handling.
  • Fix \fscx0 and \fscy0 making more text disappear than they should.
  • Fix shift in vertical positioning of some right-to-left events with \an4-6, \pos, \move or Scroll effects.
  • Fix imprecise output for \be with huge argument.
  • Fix output of ASM-enabled builds deviating from non-ASM builds.
  • Overhaul x86 assembly for better performance and to allow ASM-enabled PIC-builds on 32-bit.
  • Reduce temporary allocation in rendering.
  • Log libass version numbers upon renderer startup.
  • Accept pointers to const as arguments to ass_add_font.
  • Improve VSFilter compatibility:
    • Disregard zero area events in collision handling.
    • Do not apply \fsp to vector drawings.
    • Fix bug preventing cutting out glyphs from border & shadow with abnormal \fad values (or causing aliasing artifacts in some cases with normal values).
Test Plan
  1. Rebuilt mpv against this version.
  2. Played back video with lots of complex ASS subtitles in mpv and VLC.

Diff Detail

Repository
R1630 libass
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

aleksvor created this revision.Sun, May 2, 5:55 AM
aleksvor requested review of this revision.Sun, May 2, 5:55 AM
JoshStrobl accepted this revision.Wed, May 12, 4:14 PM
JoshStrobl added a subscriber: JoshStrobl.

LGTM, thanks!

This revision is now accepted and ready to land.Wed, May 12, 4:14 PM
This revision was automatically updated to reflect the committed changes.