2 * Implement fast quad-tree rasterizer in C and SSE2/AVX2 assembly
4 * Add BorderStyle=4 (GH #105)
5 * Add selective style override functionality
6 * ass_set_selective_style_override()
7 * ass_set_selective_style_override_enabled()
8 * Support for assembly on DragonFly BSD
10 * Various parser fixes
11 * Fix premature parser exit on }{ in drawing mode (GH #75)
12 * Reset clipping mode on every rectangle clip
13 * Improved error handling for FriBidi and FreeType (GH #131)
14 * Fix bitmap combining cache
17 * Improve yasm version check
19 * Actually export ass_library_version
20 * Fix change detection with vector clips
21 * SIMD assembly bugfixes
22 * Parse drawing numbers as floats (GH #63)
23 * Fix shaper sign bug (GH #68)
24 * Initialize \pbo correctly (GH #74)
27 * Fix distfile generation
28 * No functional changes
31 * Add bitmap run combining/compositing
32 This changes the text rendering model and increases compatibility with
33 VSFilter. It may make rendering faster or slower in certain cases.
34 * Add AVX/SSE2 implementations for \be and compositing
35 This adds yasm as (optional) build dependency.
36 * Add ass_library_version() API funcion (GC #113)
37 * Add 'profile' program for benchmarks
38 * Improve gaussian blur
39 * Fix compilation with MSVC 2013
40 * Speed up HarfBuzz shaper
42 * Notable compatibility bugfixes
43 * Reset origin on \fay changes (GC #88)
44 * Tons of parser fixes
45 * Fix ascender/descender metrics (GH #8)
46 * Fix \pbo sign and scaling
47 * Don't reset wrap style on \r (GC #116, GH #45)
49 * Correctly handle @font advance (GC #94)
50 * Disable ligatures for non-zero \fsp
51 * Make sure to release vector clip (GH #22)
54 * API additions and some ABI changes, bumped SONAME
55 * Expose header field for VSFilter color mangling (GC #87)
56 * Add functions for explicit scaling hints (GC #6)
57 * Add 'type' field to ASS_Image (GC #31)
58 * Workaround Freetype's font size grid-fitting where appropriate
59 * Apply blur to both glyph and border when using opaque box
61 * Parse angles in style as number
62 * Fix fallback event formats
63 * Make closing ')' optional for some tags
64 * Fix crazy VSFilter behaviour for \move (GC #90)
65 * Make \r fall back to line style (GC #104)
66 * Parse style name like VSFilter
67 * Ignore junk in nested \t tags
68 * Make \clip tag arguments mandatory
69 * Properly handle script and language in the HarfBuzz shaper
70 * Allow ASS_Track and ASS_Renderer to have different ASS_Library
71 * Fix stroking in some rare cases
72 * Correctly handle @font advance (GC #94)
73 * Fix ascent/descent for some fonts (GC #106)
74 * Fix ass_step_sub to not require sorted events
76 * Don't mutate input strings (GC #88)
77 * Remove/change some error messages
78 * Fix various small memory leaks
82 * Add \rSTYLENAME syntax support (GC #43)
83 * Fix border generation and border style reset (GC #56)
84 * Fix various issues with bug-for-bug compatibility of
85 transformations (\fax, \fay, etc.) to VSFilter (GC #46, GC #42)
86 * Fix drawing parsing (GC #47)
87 * Various fixes to shaper (GC #54, GC #55, GC#59)
88 * Fix change detection
89 * Add ass_set_line_position API to set a vertical subtitle offset
90 * Fix scaling of drawing baseline offset (\pbo) values
91 * Fix skipping of zero-width characters for FriBiDi shaper
92 * Use LTR text base direction by default, similar to VSFilter
95 * Bidirectional layout and Arabic shaping via FriBidi (GC #13)
96 * OpenType shaping via HarfBuzz-ng (GC #13)
97 * Add API for shaper configuration
98 * Add support for `Language' Script Info property, this can be used for
99 hinting the text language
100 * Vertical layout improvements
101 * Use `vert' and `vkna' OpenType features for vertical glyph variants
102 * Position rotated glyphs onto baseline
103 * Parse font encoding property for base text direction hinting
104 * Refactor cache system
105 * Use generic outlines in place of FreeType glyphs
106 * Direct outline bitmap rendering
107 * Fix whitespace trimming (GC #35)
108 * Do not render border if there's no shadow or glyph (GC #29)
109 * Adjust spacing after a italic to non-italic style change (GC #37)
111 * Fix x positioning with borders (GC #27)
112 * Build system tweaks
115 * Switch to permissive (ISC) license
116 * Support \fs+ and \fs- syntax for modifying font size
118 * Improved charmap fallback matching
119 * Handle a few more VSFilter quirks correctly
120 * Add a sensible default style
121 * Fix compilation against libpng 1.5
124 * Fix serious memory leaks
125 * Reduce frame/drawing initialization overhead
128 * Basic (incorrect, but working) support for @font vertical text layout
129 * Fix multiple faces per font attachment
130 * charmap selection fixes
131 * Add ass_flush_events API function
132 * Improve fullname font matching
133 * Better PAR correction if text transforms are used
134 * Calculate drawing bounding box like VSFilter
135 * Performance improvements
136 * Cache vector clip masks
137 * Avoid unnecessary glyph copies
138 * Various rendering fixes
141 * Parse numbers in a locale-independent way
142 * Remove support for freetype < 2.2.1, fontconfig < 2.4.1; this especially
143 means libass will not extract fonts into the file system anymore
144 * Disable script file size limit
145 * Match fonts against the full name ("name for humans")
146 * Reset clip mode after \iclip
147 * Improve VSFilter compatibility
148 * Update API documentation
149 * A couple of smaller fixes and cleanups
152 * Support \q override tag
153 * Support wrap style 1 (i.e. wrap, but do not equalize line lengths)
154 * Support border style 3 (opaque box)
155 * Use the event bounding box (instead of vertical position and height) for
157 * Embold glyphs if no bold variant is available, but was requested
158 * Modify \fax to be similar to VSFilter
159 * Trim spaces after line wrapping
160 * Fix border/shadow overlap combining in some cases
161 * Disable kerning by default. Use "Kerning=yes" style override or
162 "Kerning: yes" in [Script Info] to enable it
163 * Slight bitmap handling optimizations
168 * Fixed cache lookup and overload problems
169 * All globals have been eliminated, libass is reentrant
170 * Dynamically allocate glyph and line buffers
171 * Fix up stroking of big borders
172 * Support empty lines (\N\N)
173 * Support for the following override tags:
174 \fax, \fay, \xshad, \yshad, \ybord, \xbord, \iclip, \u, \s, \p, \pbo
175 * Full subpixel accuracy for positioning
176 * PAR and rotation correction for EOSD rendering
177 * Drawing mode (including vector \clip and \iclip)
178 * Fixed a few memory leaks
179 * Removed MPlayer compatibility code
180 * Introduced message handling callback
181 * Various fixes to match VSFilter quirks and Windows font metrics
185 * Various fixes and updates to match VSFilter renderer.
186 * Support \blur tag and ScaledBordersAndShadow property.
187 * Fractional arguments and subpixel accuracy.
188 * Keep positions when pan-and-scan is used.
189 * Lots of bugfixes and other changes.
192 * Support '=' and '.' in style name in arguments to ass_set_style_overrides().
193 * Allow overriding [Script Info] parameters with ass_set_style_overrides().
194 * Add workarounds for some buggy fonts.
195 * Remove buggy workarounds for some other fonts.
196 * Fixed ass_set_line_spacing() (was broken before).
197 * Negative margin sizes are now used for image cropping.
198 * Better handling of behind-the-camera objects.
199 * Case insensitive parsing of SSA/ASS section headers.
200 * Improved font matching.
201 * When 2 styles have the same name, the later one is used.
202 * Fixed several other bugs.