/libass

libass is a portable subtitle renderer for the ASS/SSA (Advanced Substation Alpha/Substation Alpha) subtitle format.

Primary LanguageCISC LicenseISC

libass Coverity scan build status Build status

libass is a portable subtitle renderer for the ASS/SSA (Advanced Substation Alpha/Substation Alpha) subtitle format. It is mostly compatible with VSFilter.

Get it

See GitHub releases for the latest release 0.17.3 (released 2024-07-02). See the changelog for a detailed list of changes.

Source code is available from our GitHub repository.

Contact

Please use the issue tracker to report bugs or feature requests.

We have an IRC channel, too. Talk to us on irc.libera.chat/#libass. Note that we cannot be online all the time and we cannot answer IRC questions if you leave the channel. Even if you do not get an immediate response, keep your IRC client open, and we will eventually get back to you.

Building

libass offers two build systems to choose from: Autotools and Meson.

Autotools is preferred for development since it integrates with our testing infrastructure and is feature-complete on all platforms supported by Autotools.
If you are packaging libass for distribution, Autotools is recommended; when packaging for Windows Meson should work equally well.

Meson lacks integration with testing infrastructure, but works otherwise well on Windows. It is suited for static-only builds on any platform well supported by Meson and as a Meson subproject. Notably, Meson supports MSVC and generation of VS project files.

Macro defines

Unless developing libass there’s usually no need to manually define macros and there are no stability guarantees for these manual defines.

  • DEBUG_LEVEL=0..3
    • 0 use the default set of asserts; implied if macro is not defined at all
    • 1, 2 unused
    • 3 additionally assert assumptions usually pledged to the compiler for optimization purposes

Information about the ASS format:

Other ASS/SSA implementations:

Packaging status

Packaging status