@astiob astiob released this Oct 31, 2017 · 4 commits to master since this release

Assets 4
  • Brand new, faster and better outline stroker (replaces FreeType stroker)
  • Remove option to use the FreeType rasterizer
  • Fix spots of missing border around self-intersecting shapes
  • Switch from Yasm to NASM for building hand-written assembler code
  • Support Core Text font provider on Mac OS X 10.6 and 10.7
  • Clear font cache in ass_set_fonts(). This fixes potentially incorrect font choices and an occasional crash if this function is called midway through rendering a file.

@grigorig grigorig released this Jun 3, 2017 · 38 commits to master since this release

Assets 4
  • Fix invalid memory accesses with BorderStyle=4
  • Fix change detection bug on frame resizes
  • Fix cache bugs with border size
  • Reduce precision of border width in font outline caching
  • Don't treat :;<=>? as hexadecimal digits in color headers
  • Fix parsing of unusual Alignment values in ASS style definitions
  • Fix potential truncation in timestamp parsing
  • Treat negative PlayResX/PlayResY like VSFilter
  • Fixes to parsing of embedded fonts
  • Remove arbitrary bitmap limit (fixes issues with subtitle rendering at 4K)
  • Allow using shadow offset to adjust size of background with BorderStyle=4
  • Fix TrueType/OpenType font collection handling with the DirectWrite backend

@astiob astiob released this Jan 3, 2017 · 68 commits to master since this release

Assets 4
  • Add Justify style override that changes text justification
    (left/right/center) without affecting event positioning.
    This breaks ABI compatibility with prior releases.
  • Fix ass_set_cache_limits() to affect total bitmap cache size
    including composite bitmap cache.
  • Number parsing fixes
    • Fix illegal read when parsing some numbers in scientific notation
      with huge exponents.
    • Correctly evaluate numbers in scientific notation with large exponents.
    • Correctly evaluate numbers with many leading zeros.
  • Bug fixes found with fuzzing
    • Fix a small memory leak in the parser.
    • Fix illegal read in the parser on specially crafted input with \t tags.

Note: this is functionally equivalent to release 0.13.5, but the libtool version number has been increased to account for the ABI break.

@astiob astiob released this Jan 3, 2017 · 69 commits to master since this release

Assets 4

Do not use this release. This release breaks ABI compatibility, but the libtool version number does not reflect this. Instead, use 0.13.6, which bumps the libtool version number. If you rather need ABI compatibility with releases 0.10.2 to 0.13.4, use 0.13.4.

See the change log for release 0.13.6.

@grigorig grigorig released this Oct 4, 2016 · 83 commits to master since this release

Assets 4
  • Bug fixes found with fuzzing
    • Fix memory reallocation in the shaper. (CVE-2016-7972)
    • Fix two small memory leaks in the parser and test program.
    • Fix illegal read in Gaussian blur coefficient calculations. (CVE-2016-7970)
    • Fix mode 0/3 line wrapping equalization in specific cases which could
      result in illegal reads while laying out and shaping text. (CVE-2016-7969)

@grigorig grigorig released this Sep 24, 2016 · 92 commits to master since this release

Assets 4
  • Improve compatibility/portablility of build system,
    should fix e.g. compilation on Solaris.
  • Fix memory leak in DirectWrite font provider.
  • Fix the rasterizer when rendering some large outlines.
  • Remove hack that forced RTL base direction depending on font encoding.
  • Greatly improve the internal caches with refcounting and gradual clearing.

@astiob astiob released this Feb 20, 2016 · 115 commits to master since this release

Assets 4
  • Add ass_set_check_readorder() API function to disable use of the ReadOrder field for duplicate checking in ass_process_chunk().
  • ass_step_sub(track, now, 0) now finds the start of the subtitle at now.
  • Bug fixes:
    • Fix an issue with the new duplicate checking, which could lead to missing subtitles after seeking.
    • Fix a crash with Core Text under specific circumstances.

@astiob astiob released this Dec 1, 2015

Assets 4
  • Much faster duplicate event check in ass_process_chunk. This can
    bring a large speedup for embedded subtitles with lots of events.
    To make this possible, it is now forbidden to combine calls to
    ass_process_chunk with any other method of manipulating the event
    list, namely, manual manipulation and calls to ass_process_data,
    ass_read_memory and ass_read_file.
  • Interpret negative timestamp components as actual negative numbers.
    This change increases compatibility with VSFilter.
  • Font matching changes for VSFilter compatibility
    • Look up fonts that contain PostScript outlines by their PostScript
      name instead of their full names. Family names continue to be used
      for all fonts.
    • Keep spaces in font names
  • Drop support for Fontconfig < 2.10.92 to ensure correct font matching
  • Bug fixes
    • Fix building the assembler code for the x32 ABI (GH #200)
    • Fix static linking against libass through pkg-config when libass
      uses libiconv
    • Fix some small memory leaks, potential crashes and bad data uses

In this release only, an old version of GNU Libtool is used in the release tarball, leading to problems building shared libraries for Windows. This is fixed in 0.13.2. This does not affect building from Git.

@wm4 wm4 released this Oct 3, 2015 · 156 commits to master since this release

Assets 4
  • Add native font selection backends for OSX (CoreText) and Windows
    (DirectWrite). You can now run libass without fontconfig on these
    platforms. This fixes problems with fontconfig behaving badly on
    these platforms (it could take minutes to scan all system fonts).
    Even on Linux, this speeds up loading of embedded fonts (such as
    provided by ass_add_font()).
    The DirectWrite backend only works on Windows Vista and later. On
    XP, fontconfig is still needed. libass can be compiled with both
    DirectWrite and fontconfig, and then it will fallback to fontconfig
    automatically if DirectWrite is not available at runtime.
  • Add ass_get_available_font_providers() API function.
  • Change the 4th parameter of ass_set_fonts(). This now selects the
    font provider. This is somewhat backwards compatible with the old
    behavior, but if you ever passed values other than 0 or 1, your
    application might break with this libass release.
  • The ass_fonts_update() function now does nothing. It's kept for
    backward compatibility only.
  • Much faster gaussian blur. This can bring a large speedup with big
    blurred signs and such.
  • Drop ENCA support
  • Bug fixes
    • Fix compilation of the freetype rasterizer (disabled by default)
    • Fix rendering with some cases of consecutive line breaks (\N\N).
    • Fix some memory allocation failure checks
    • Avoid system locale dependent behavior by reinventing some standard
      C functions
    • Fix rendering errors with strikes (GH #193)
    • MSVC compilation fixes

@wm4 wm4 released this Jun 30, 2015 · 315 commits to master since this release

Assets 4
  • VSFilter blur compatibility changes
  • VSFilter color/alpha parsing compatibility changes
  • Bugfixes
    • Fix some potential memory leaks and crashes
    • Fix large timestamps (larger than about 600 hours)
    • Fix a potential crash with the new rasterizer and complex fonts
    • Do not apply user-configured line position to non-dialog events
    • Strictly clip non-dialog events to the video rectangle