Licenses

Apparatus uses the following open-source software.

FFmpeg

Audio encoding and muxing is performed client-side using the ffmpeg.wasm project. Apparatus uses the MIT-licensed @ffmpeg/ffmpeg JavaScript wrapper to load @ffmpeg/core and @ffmpeg/core-mt, which contain FFmpeg compiled to WebAssembly.

FFmpeg itself is licensed under the GNU Lesser General Public License v2.1 (LGPL-2.1) or, depending on build configuration, the GPL. Source and project materials are available from the ffmpeg.wasm repository linked above and from ffmpeg.org.

Three.js

3D rendering, model loading, and scene management is performed using Three.js. Apparatus uses its WebGL renderer, orbit controls, and loaders for glTF, STL, OBJ, FBX, PLY, COLLADA, 3MF, and 3DS formats, as well as exporters for glTF, OBJ, STL, and USDZ.

Licensed under the MIT License.

glTF Transform

3D model compression and optimization is performed using glTF Transform by Don McCurdy. Apparatus uses the @gltf-transform/core, @gltf-transform/extensions, and @gltf-transform/functions packages for Draco compression, Meshopt compression, mesh simplification, vertex welding, and other glTF optimizations.

Licensed under the MIT License.

meshoptimizer

Mesh simplification and Meshopt geometry compression use the meshoptimizer library by Arseny Kapoulkine, compiled to WebAssembly. This provides the MeshoptSimplifier, MeshoptEncoder, and MeshoptDecoder used for mesh decimation and EXT_meshopt_compression.

Licensed under the MIT License.

Draco

Draco geometry compression and decompression is performed using Google Draco, compiled to WebAssembly. Apparatus uses the Draco encoder and decoder for KHR_draco_mesh_compression in glTF models.

Licensed under the Apache License 2.0.

ktx2-encoder

KTX2 texture compression uses the ktx2-encoder package, which wraps the Basis Universal encoder compiled to WebAssembly. This provides Basis Universal UASTC texture compression for KHR_texture_basisu in glTF models.

ktx2-encoder is licensed under the MIT License. Basis Universal is licensed under the Apache License 2.0.