# Local HEIC decoder notices

This site lazy-loads the unmodified `src/lib/libheif.js` distribution from **heic-to 1.6.6**, served as `libheif.mjs`. The source header identifies **libheif 1.23.6** and **libde265 1.0.16**. Checked 13 October 2026. No heic-to worker wrapper is used: Toolcross manages decoding, dimension checks and resource cleanup directly.

- heic-to, Hopper Gee: LGPL-3.0-or-later. [License](LICENSE), [exact source](https://github.com/hoppergee/heic-to/tree/v1.6.6), [source archive and build recipe](https://github.com/hoppergee/heic-to/archive/refs/tags/v1.6.6.tar.gz).
- libheif, Struktur AG and Dirk Farin: LGPL-3.0-or-later. [License and notices](libheif-COPYING), [corresponding source](https://github.com/strukturag/libheif/tree/v1.23.6), [source archive](https://github.com/strukturag/libheif/archive/refs/tags/v1.23.6.tar.gz).
- libde265, Struktur AG and Dirk Farin: LGPL-3.0-or-later. [License](libde265-COPYING), [corresponding source](https://github.com/strukturag/libde265/tree/v1.0.16), [source archive](https://github.com/strukturag/libde265/archive/refs/tags/v1.0.16.tar.gz).

Full LGPL/GPL texts are retained in the license files. The module remains separate and replaceable: substitute a compatible `buildLibheif` ES-module factory at this URL, or edit the import in `ImageCompressorPro/heic-decoder.mjs`. No restriction on modification, replacement, or reverse engineering for debugging modifications to the library is imposed by Toolcross. Upstream warranties and notices apply.

`libheif.mjs` is 3,324,817 uncompressed bytes. SHA-256: `739c935cd332f43676d6c1c5125e12f5bd05152a540c34de90a93e8e536b1290`. It uses an embedded JavaScript decoder, with no remote image service. Pixel buffers alone use about 96 MB for a 24-megapixel RGBA image; decoding, canvases and encoding add memory. One image runs at a time, and each worker is terminated after its task or on cancellation. Low-memory devices may need smaller inputs. This distribution does not include every HEIF codec, HDR profile, auxiliary image or sequence workflow; only one still image is exported.
