SubtitlesOctopus displays subtitles in .ass format and easily integrates with HTML5 videos. It supports all SSA/ASS features and fully compatible with libass.
ONLINE DEMO / other examples with demo
- Supports all SSA/ASS features
- Supports any fonts
- Works fast (because uses WebAssembly with fallback to asm.js if it's not available)
- Uses Web Workers thus video and interface doesn't lag even on "heavy" subtitles (working in background)
- Doesn't use DOM manipulations and render subtitles on single canvas
- Fully compatible with libass
- Easy to use - just connect it to video element
- expat
- fontconfig
- freetype
- fribidi
- harfbuzz
var options = {
video: document.getElementById('video'), // HTML5 video element
subUrl: '/test/test.ass', // Link to subtitles
fonts: ['/test/font-1.ttf', '/test/font-2.ttf'], // Links to fonts (not required, default font already included in build)
workerUrl: '/libassjs-worker.js' // Link to file "libassjs-worker.js"
};
var instance = new SubtitlesOctopus(options);
After that SubtitlesOctopus automatically "connects" to your video and showing subtitles. You can use it with any HTML5 player.
You can also use it without any video, like that:
var options = {
canvas: document.getElementById('canvas'), // canvas element
subUrl: '/test/test.ass', // Link to subtitles
fonts: ['/test/font-1.ttf', '/test/font-2.ttf'], // Links to fonts (not required, default font already included in build)
workerUrl: '/libassjs-worker.js' // Link to file "libassjs-worker.js"
};
var instance = new SubtitlesOctopus(options);
// And then...
instance.setCurrentTime(15); // Render subtitles at 00:15 on your canvas
- emscripten (Configure the enviroment)
- llvm
- clang
- ragel
- make
- autoconf
- python2
- pkgconfig
- patch
- libtool
- itstool
- automake
- python2-lxml
- python2-pip
- python2-html5lib
- python2-chardet
- gperf
Run ´git clone --recursive https://github.com/TFSThiagoBR98/JavascriptSubtitlesOctopus.git´
- Install Dependencies, see above
- ´cd JavascriptSubtitlesOctopus´
- ´make´
- Artifacts are in /dist
- Master - Development Branch
- stable - Stable Branch
How am I an Octopus? Ba da ba da ba!