# FFmpeg GPL Source Instructions

Slipstream DRC bundles FFmpeg and ffprobe as separate Tauri sidecar
executables. The bundled binaries are invoked as external processes. Slipstream
DRC does not link to libav* libraries and does not copy FFmpeg source into the
application code.

## Bundled Binary

| Property | Value |
|----------|-------|
| Components | ffmpeg.exe, ffprobe.exe |
| Version | 8.1.2-essentials_build-www.gyan.dev |
| Provider | https://www.gyan.dev/ffmpeg/builds/ |
| Binary package | ffmpeg-release-essentials.zip |
| Binary archive SHA256 | `DB580001CAA24AC104C8CB856CD113A87B0A443F7BDF47D8C12B1D740584A2EC` |
| License | GNU General Public License version 3 |

## Configure Line

```text
--enable-gpl --enable-version3 --enable-static --disable-w32threads --disable-autodetect --enable-cairo --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-bzlib --enable-lzma --enable-zlib --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-sdl2 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxvid --enable-libaom --enable-libopenjpeg --enable-libvpx --enable-mediafoundation --enable-libass --enable-libfreetype --enable-libfribidi --enable-libharfbuzz --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-dxva2 --enable-d3d11va --enable-d3d12va --enable-ffnvcodec --enable-libvpl --enable-nvdec --enable-nvenc --enable-vaapi --enable-openal --enable-libgme --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libtheora --enable-libvo-amrwbenc --enable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-librubberband
```

## Corresponding Source

The verified Gyan archive identifies the exact FFmpeg source commit:

- Commit: `38b88335f9`
- URL: https://github.com/FFmpeg/FFmpeg/commit/38b88335f9
- Source archive SHA256:
  `2AE7E42343CFFFB811D15CFE98B6D005F082595FCDF034D30A4FF90CFED9F9C6`

Each paid release must include `third-party-sources.zip` beside the installer
and updater artifacts. The archive contains:

- This file and `THIRD_PARTY_NOTICES.md`
- The exact FFmpeg source archive for commit `38b88335f9`
- The verified Gyan build README, including the external-library inventory
- The GPL text, dependency notices, lockfiles, and fetch script

The Gyan build is a static GPLv3 build. Its README identifies external libraries
such as libx264, libx265, libxvid, libaom, and libvpx. Those components remain
subject to their own copyright, license, and source-availability terms; the
README and provider source references are included so recipients can identify
the components used by the binary.

The binary archive and source archive are validated by SHA256 pins in
`scripts/fetch-ffmpeg.ps1` and `scripts/package-third-party-sources.ps1`.

If the bundled FFmpeg build changes, update this file,
`THIRD_PARTY_NOTICES.md`, the public legal notice files, the source archive
commit/hash, and the release artifact before shipping.

## GPL Rights

FFmpeg and ffprobe are governed by their own GPL terms. Slipstream DRC's
proprietary app license and EULA do not restrict rights granted by the GPL,
including source access, replacement, modification, redistribution, and reverse
engineering of FFmpeg or ffprobe.
