# Local FFmpeg runtime source notice

The browser-only MOV and MP4 conversion desk distributes the unmodified single-thread WebAssembly core from `@ffmpeg/core 0.12.10`. The application uses `@ffmpeg/ffmpeg 0.12.15` with one deterministic compatibility patch: its class-worker hook accepts the already hash-verified classic-worker Blob URL instead of forcing a module worker. The patch is implemented and hash-checked in `scripts/sync-ffmpeg-runtime.mjs`; it does not modify the GPL core.

## Licence

The bundled core declares `GPL-2.0-or-later`. The complete GPL version 2 text shipped with this build is [COPYING.GPLv2](./COPYING.GPLv2). The repository keeps the verbatim canonical text at `licenses/GPL-2.0.txt`, pinned to SHA-256 `edaef632cbb643e4e7a221717a6c441a4c1a7c918e6e4d56debc3d8739b233f6` from [gnu.org](https://www.gnu.org/licenses/old-licenses/gpl-2.0.txt), so synchronizing the runtime does not depend on a live license-server request.

The wrapper and classic worker are derived from `@ffmpeg/ffmpeg 0.12.15` and are distributed under the MIT license. Their required copyright and permission notice is shipped as [NOTICE.MIT](./NOTICE.MIT), mirrored from `licenses/FFMPEG-WASM-MIT.txt` at SHA-256 `3e123e29517d76504ffce77b3f8e2ccffd4712493f27694b0aba3e376676459f`.

## Corresponding source

The matching build files and source for this released core and wrapper are available in the [ffmpeg.wasm v12.15 source tree at commit `71aa99d37c02a7b4c435275ca9ef50e612f6efa1`](https://github.com/ffmpegwasm/ffmpeg.wasm/tree/71aa99d37c02a7b4c435275ca9ef50e612f6efa1). That immutable snapshot declares `@ffmpeg/core 0.12.10` and `@ffmpeg/ffmpeg 0.12.15`. It contains the FFmpeg WebAssembly build configuration and upstream source references.

To inspect the exact release locally, clone `https://github.com/ffmpegwasm/ffmpeg.wasm.git` and check out `71aa99d37c02a7b4c435275ca9ef50e612f6efa1`. The `v12.15` tag currently resolves to that commit, but this notice names the commit so it remains accurate if a tag is moved later.

## Deployment requirement

Before publishing this runtime, the operator must complete a GPL corresponding-source distribution plan: either publish a durable, project-controlled source package for this exact build or approve and operate a GPL section 3(b) source-offer process. This repository provides the immutable upstream source reference and application patch needed for that process, but does not by itself make an operational legal commitment.

WhisperWeb does not modify the bundled core. The manifest below records the exact static-byte hashes distributed by this build:

- core JavaScript: `b266ab5b952555881dd6310663986994a182acb2b7ff25cf10a25f7a37ac2b21`
- core WebAssembly: `9f57947a5bd530d8f00c5b3f2cb2a3492faa7e5d823315342d6a8656d0a6b7b7`
- browser wrapper: `7afd9518b80c6ce183d20efebf8815ccd31529fe2add29aa87bfd808d3623dbd`
- classic worker: `976f4174ae7da80c0d4f9523ee6dde3ecbce7dc2ee392b2a5322049abb9b8627`

This notice covers only the third-party conversion runtime. It does not include application code or user media.
