Third-party code #
Rubylight is GPL-3.0-only. Its administration console is a Svelte application served by the Rust host; the bundle includes the Svelte runtime (MIT License, Svelte Contributors), and the console's npm dependencies and their versions are recorded in rust/web/package-lock.json. Rust package names, versions, license declarations and repositories are recorded in the packaged rust-dependencies.json; exact versions and registry checksums are in Cargo.lock. Source is available in the corresponding repository checkout.
External SDKs are not a port of the original host:
- FFmpeg SDK: LizardByte/build-deps
v2026.516.30821, Windows AMD64 archive SHA-2562f7a2c2fc6be9b96de3c6f654389f73a5e5d369d7e802d017894fae96247661d. Static encoding libraries include FFmpeg/libavcodec/libavutil/libswscale, x264, x265, SVT-AV1 and HDR10+ support. FFmpeg and codec source/build recipes: https://github.com/LizardByte/build-deps/tree/v2026.516.30821. GPL source and distribution requirements apply to the combined executable. - AMF headers are provided by the FFmpeg SDK; AMF runtime is loaded from the installed AMD graphics driver. SDK: https://github.com/GPUOpen-LibrariesAndSDKs/AMF.
- Native NVENC/CUDA ABI headers are vendored unchanged from FFmpeg/nv-codec-headers commit
33a9ede8d9914299d9262539c576a15bd0a19621, the baseline's Video Codec SDK 13.0 headers. Their permission/copyright notices remain in the headers and are copied into the package. Only installed Windows system driver DLLs are loaded; no NVIDIA import library, CUDA toolkit or previous host implementation is linked. Source: https://github.com/FFmpeg/nv-codec-headers/tree/33a9ede8d9914299d9262539c576a15bd0a19621. - PyroWave
502a3b52a39312ab82c85b1e2fc0e746faee91a4, API 1.0.0 (bitstream v1, frozen 2026-10-03 and identical on the wire to the186f0393bitstream Vibepollo 2.0 and its clients use); Granitefb178c8080d163419e8d20f10715c61c53c1ec9b.rust/tools/build_pyrowave.shbuilds the pinned upstream SDK and applies Vibepollo 2.0's 4:4:4 payload-sizing and short-decoder-block patches fromrust/codec-patches/pyrowave(Vibepollo's encoder buffer-pool patch is no longer needed: upstream now keeps those buffers). Their source patches are retained; packagedpyrowave-build-info.txtrecords revisions and patches. MIT notices are included for PyroWave/Granite/volk. Source: https://github.com/Themaister/pyrowave/tree/502a3b52a39312ab82c85b1e2fc0e746faee91a4. - Opus, oneVPL and GNU runtime DLLs come from MSYS2 UCRT64. Their installed license notices are copied into the package. MSYS2 source/build recipes: https://github.com/msys2/MINGW-packages.
- NVIDIA RTX Video SDK 1.1.0 archive SHA-256
abf4f34e2b5a618e355b0d5a0365d8ecc3db4396e756e4c850a867e1ae2ed69e. The optional adapter links NVIDIA's NGX import library and shipsnvngx_truehdr.dllunder the included NVIDIA RTX Video SDK license. It is excluded with-SkipTrueHdr. - Virtual display driver libvirtualdisplay v1.6.3 (MIT, https://github.com/Nonary/libvirtualdisplay) and virtual gamepad driver libvirtualgamepad v0.1.0-beta.6 (MIT, https://github.com/Nonary/libvirtualgamepad), with their catalogs, tools and install scripts as released in Vibepollo 2.0.0 (GPL-3.0, https://github.com/Nonary/Vibepollo) and signed by the SignPath Foundation, plus the Sunshine Playnite Connector plugin from the same release.
rust/build.ps1extracts them from the pinned Vibepollo 2.0.0 installer (SHA-2567b3500ec0c774644ce5a435a48f61c046c48494d0f18b67afa0b3561931794b7), checks the driver signatures, and records them withnefconc.exe(https://github.com/nefarius/nefcon) in the packageddrivers.txt. No ViGEmBus driver or client code is included. - Windows GPU, audio, input, service and security APIs are imported through Microsoft's Rust
windowscrate. Vulkan headers define the PyroWave ABI; Vulkan is supplied by the installed graphics driver. - The host compiles its embedded HLSL GPU conversion shaders through Windows' D3DCompiler API. These shaders are part of Rubylight's source; the Windows compiler and GPU driver remain system dependencies.
The standalone C programs under rust/tests are independent interoperability fixtures. Moonlight-common-c, nanors, FFmpeg decoding, OpenSSL and Opus are used by these fixtures and are not compiled as original host implementation code.