Recut's video editor: FFmpeg, compiled to WebAssembly ===================================================== The files in this folder are loaded by Recut the first time a step edits a video (or writes an MP3) on your device. They are served from Recut itself and nothing in them contacts a network. ffmpeg-core.wasm, ffmpeg-core.js FFmpeg n5.1.4 and the libraries below, built for Recut worker.js the worker that runs it (adapted from ffmpeg.wasm, MIT) licenses/ every licence text, the build configuration and the build recipe What is inside, and under which licence --------------------------------------- FFmpeg n5.1.4 LGPL v2.1 or later https://ffmpeg.org OpenH264 v2.6.0 BSD 2-clause https://github.com/cisco/openh264 (H.264 encoding) libvpx v1.13.1 BSD 3-clause https://chromium.googlesource.com/webm/libvpx libvorbis v1.3.3 BSD 3-clause https://xiph.org/vorbis libogg v1.3.4 BSD 3-clause https://xiph.org/ogg LAME LGPL v2 or later https://lame.sourceforge.io (MP3 encoding) libwebp v1.3.2 BSD 3-clause https://chromium.googlesource.com/webm/libwebp zlib v1.2.11 zlib licence https://zlib.net ffmpeg.wasm binding MIT https://github.com/ffmpegwasm/ffmpeg.wasm FFmpeg was configured without --enable-gpl and without --enable-nonfree (see licenses/build-configuration.txt), so this build is covered by the GNU Lesser General Public License, version 2.1 or later. It does not contain x264, x265 or any other GPL component. This software uses code of FFmpeg (https://ffmpeg.org) licensed under the LGPL v2.1, and its source can be downloaded from the addresses in licenses/Dockerfile.txt. Source code and rebuilding -------------------------- licenses/Dockerfile.txt is the complete recipe this binary was built from. It names the exact source release or commit of every component and the build options, and fetches them from their public repositories. With Docker installed, `docker buildx build -o out .` in a folder holding that file (renamed to Dockerfile) reproduces ffmpeg-core.js and ffmpeg-core.wasm. FFmpeg and LAME are used as a separate module: Recut loads these files at run time and talks to them only through FFmpeg's command line. You may replace ffmpeg-core.js and ffmpeg-core.wasm with your own build of the same interface (createFFmpegCore, as in ffmpeg.wasm 0.12) and Recut will use it.