| Architecture / Runtime |
Pure TypeScript / ESM (DOM, SVG & Canvas2D Worker)
|
WebAssembly + Canvas (C libass compiled via Emscripten)
|
Native C / C++ (Desktop binary: mpv, VLC, Aegisub)
|
| Bundle Size / Download |
~35 KB gzipped (Zero dependencies)
|
~2.5–5 MB (WASM binary + HarfBuzz + FreeType)
|
N/A (Embedded desktop system library)
|
| Startup Time |
<10 ms instant (Zero compile, instantaneous first frame)
|
300–800 ms (Network download & WASM compilation)
|
<5 ms (Native desktop execution)
|
| Text Rendering & Scaling |
Sharp HiDPI/Retina SVG & Canvas (Crisp at any zoom)
|
Fixed raster canvas (Bitmap scaling, prone to blur)
|
Direct raster (Native glyph compositing)
|
| Selectable Text & A11y |
Yes in DOM (Screen readers, copy/paste, text search)
|
No (Opaque canvas pixels)
|
No (Video overlay pixels)
|
| Memory & Mobile |
Low heap, battery-friendly (Browser-managed GC)
|
Heavy WASM heap (64MB+ allocated linear memory)
|
N/A (Native OS memory management)
|
| ASS Quirks Parity |
High web parity with dual engine (Dialogue + Worker)
|
100% C parity (Direct execution of libass)
|
Reference implementation (De facto standard)
|