mirror of
https://github.com/GoogleChromeLabs/squoosh.git
synced 2025-11-11 08:16:21 +00:00
* Fix single threaded encoding by compiling a separate copy of libsharpyuv - This version will have threads turned off * Add the fixed compilations of avif_enc.js and the wasm file * ensure that ST and MT builds run sequentially * update OUT_ENC_JS to be an order-only dependency * use WEBP_BUILD_WEBP_JS=ON flag instead * update compiled ST files * refactor to use -DWEBP_USE_THREAD=OFF
Codecs
This folder contains a self-contained sub-project for each encoder and decoder that squoosh supplies.
Build
Each subproject can be built using Docker the following commands:
$ npm install
$ npm run build
This will build two files: <codec name>_<enc or dec>.js and <codec name>_<enc or dec>.wasm. It will most likely be necessary to set Module["locateFile"] to successfully load the .wasm file. When the .js file is loaded, a global <codec name>_<enc or dec> is created with the same API as an Emscripten Module.
Each codec will document its API in its README.