Releases: libass/JavascriptSubtitlesOctopus
4.1.0
- update libass to
0.17.0
, notably including support forLayoutRes{X,Y}
headers among others - fix copyright and licence notices
- deprecate support for manually decompressing brotli subtitles. Might be fully removed in the next release. See 4.1.0’s
README.md
for what to use instead. - add new
wasm-blend
rendering mode which is faster than the old default ofjs-blend
- change default rendering mode to
wasm-blend
- unify rendering mode options into a
renderMode
setting. DeprecatelossyRender
option, this mode can now be selected via therenderMode
option. - parse and use embedded fonts
- add
fallbackFont
to override the default fallback - add
lazyFileLoading
to opt-in to loading files, in particular fonts, lazily; requires a compatible server configuration - add
prescaleFactor
,prescaleHeightLimit
andmaxRenderHeight
options to control performance-quality trade-offs - add
dropAllAnimations
- various bugfixes
Version of included libraries:
- brotli: 1.0.9
- libexpat: 2.5.0
- fontconfig: 2.14.1
- freetype: 2.12.1
- fribidi: 1.0.12
- harfbuzz: 5.3.1
- libass: 0.17.0
Note: the attached libass-wasm-4.1.0.tgz
is the binary release identical to what was uploaded to npm.
4.0.0
This release include a new Event and Style API, allow manipulation of then at run-time as well all libass API exposed to worker environment.
New functions
Wrapper
- octopusInstance.createEvent(event)
- octopusInstance.getEvents() - Print events in console, to get the events, edit this block
- octopusInstance.setEvent(event, index) - See setStyle
- octopusInstance.removeEvent()
- octopusInstance.createStyle(style)
- octopusInstance.getStyles() - Print Styles in console, to get the styles, edit this block
- octopusInstance.setStyle(style, index) - it is also possible to set the value of a single property instead of sending all values, eg.:
octopusInstance.setStyle({ FontName: "Arial" }, 0)
this will only set the font arial to style - octopusInstance.removeStyle()
Worker
This most not change at all but now have two new classes, self.octObj - SubtitleOctopus Native Class Wrapper instance, which contains every internal Wasm native functions used by this library and the class libass witch contains every libass public functions.
Native Code
Because of WebIDL, I have switched from C to C++, and now have three files, SubtitleOctopus.cpp (Native Wrapper), libass.cpp (libass Wrapper) and SubOctpInterface.cpp and SubOctpInterface.js - These files are generated by WebIDL bind-gen, from SubtitleOctopus.idl - If you want to modify SubtitleOctopus.cpp and/or libass.cpp you must delete SubOctpInterface.cpp and SubOctpInterface.js and edit SubtitleOctopus.idl.
ASS_Event Object
Property | Type |
---|---|
Start | Number(Int64) |
Duration | Number(Int64) |
ReadOrder | Number |
Layer | Number |
Style | Number |
Name | String |
MarginL | Number |
MarginR | Number |
MarginV | Number |
Effect | String |
Text | String |
ASS_Style Object
Property | Type |
---|---|
Name | String |
FontName | String |
FontSize | Number |
PrimaryColour | Number |
SecondaryColour | Number |
OutlineColour | Number |
BackColour | Number |
Bold | Number |
Italic | Number |
Underline | Number |
StrikeOut | Number |
ScaleX | Number(Double) |
ScaleY | Number(Double) |
Spacing | Number(Double) |
Angle | Number(Double) |
BorderStyle | Number |
Outline | Number(Double) |
Shadow | Number(Double) |
Alignment | Number |
MarginL | Number |
MarginR | Number |
MarginV | Number |
Encoding | Number |
treat_fontname_as_pattern | Number |
Blur | Number(Double) |
Justify | Number |
3.0.2
Bump version to 3.0.2
3.0.1
Changelog
- Add Support for Woff2 font files
- Add Support for Brotli Compressed Subtitle files (.ass.br)
- Bug fixes
2.2.0
Changelog
- Add Suport for Emscripten v1.38.40
- Fix build script
- Use CMake to build libexpat
Libraries Version
- libexpat/libexpat@87674af (10/13/2019 v2.2.9)
- freedesktop/fontconfig@75eadca (10/08/2019 v2.13.92)
- freetype@90a30f1 (10/10/2019 v2.10.1)
- fribidi/fribidi@79581cc (10/13/2019 v1.0.7)
- harfbuzz/harfbuzz@b0b8551 (10/13/2019 v2.6.2)
- libass/libass@be0d161 (09/26/2019 v0.14.0)
2.1.0
Version 2.1.0
2.0.1
Version 2.0.1