Work in Progress: These docs are incomplete and may contain inaccuracies. Norri is not yet available for download.

Source Code

Norri includes components licensed under the GNU General Public License (GPL) and GNU Lesser General Public License (LGPL). Source code for these components is provided below.


norri-transcoder

A build of FFmpeg for media server transcoding, streaming, and codec operations. Based on an upstream media-server FFmpeg fork, itself derived from FFmpeg.

License

norri-transcoder enables GPL components and --enable-version3, and is therefore licensed under the GNU General Public License v3 or later (GPL-3.0+).

The build configuration and all license texts are included in the source tarball.

Attribution

  • FFmpeg. ffmpeg.org. Copyright (c) 2000-2025 the FFmpeg developers.
  • Upstream media-server FFmpeg fork. Full attribution is preserved in the source tarball.

Changes from upstream

norri-transcoder is derived from an upstream media-server FFmpeg fork with the following changes:

  • Removed fdk-aac. The third-party FDK AAC encoder has been removed; norri-transcoder uses FFmpeg’s native AAC encoder instead. The upstream patch that reclassified fdk-aac-stripped as a standard library has also been removed, reducing the patch count from 93 to 92.
  • Rebranded. Package name, installation paths, and version string changed to norri-transcoder.

The remaining 92 media-server patches from upstream are preserved unmodified.

Modified files carry notices identifying the changes and their date, as required by GPL v2 Section 2(a).

Source code

norri-transcoder-7.1.3-1.tar.gz
sha256: 9c9f67e7b93335e7380c90fbbc8b05b5b70359876818985859f2c9a63a5077de


norri-wasm

A WebAssembly build of the libass subtitle renderer for the browser, used by Norri’s web client to render ASS/SSA subtitles. Forked from an actively maintained downstream JavascriptSubtitlesOctopus branch, itself a fork of the upstream github.com/libass/JavascriptSubtitlesOctopus project.

License

The package license expression is:

LGPL-2.1-or-later AND (FTL OR GPL-2.0-or-later) AND MIT AND MIT-Modern-Variant AND ISC AND NTP AND Zlib AND BSL-1.0

The dominant license for the relinkable browser subtitle renderer is GNU Lesser General Public License v2.1 or later (LGPL-2.1+). Bundled libraries retain their own licenses, including FreeType under FTL or GPL-2.0-or-later, plus MIT, MIT-Modern-Variant, ISC, NTP, Zlib, and BSL-1.0 components. All license texts are included in the source distribution.

Attribution

Changes from upstream

norri-wasm is derived from the actively maintained JavascriptSubtitlesOctopus fork with the following changes:

  • Rebranded. Package name and homepage changed; npm name is now norri-wasm.
  • No code modifications. The renderer, worker, and WebAssembly artifacts are preserved unmodified to retain upstream subtitle-rendering fixes.

Source code

Norri provides complete corresponding source as a componentized source set. The root archive contains the norri-wasm source tree, build scripts, .gitmodules, SUBMODULES.txt, COPYING.LESSER, and COPYRIGHT. The submodule archives contain the pinned source trees for the bundled libraries. Unpack all archives into the same parent directory to reconstruct the complete source tree without contacting external repositories.

ArchiveSHA-256
norri-wasm-4.2.5-norri.1-src.tar.gz0f94bd3b1c55e4f15adff5dd0b3ffb30ee439a76fbae341379e2b78779bbe7f1
norri-wasm-4.2.5-norri.1-submodule-libass.tar.xz25f635845b5bd41fe937ea122f2c2269d9330d2f3be7ba8a8439db1656b74432
norri-wasm-4.2.5-norri.1-submodule-fribidi.tar.xzfbebbcbeea6b4b7262907ab7b72629c6ea2ee7beabb180ee1af015704cf3038f
norri-wasm-4.2.5-norri.1-submodule-fontconfig.tar.xz7e40446ce2c392a01294fb88630b0b86016b08457ab34f2d7923bc3cfc8bccc1
norri-wasm-4.2.5-norri.1-submodule-freetype.tar.xzac030f39b8565997db806fe747b1b75b6a40f7b37705148e61fafe90a15526a7
norri-wasm-4.2.5-norri.1-submodule-expat.tar.xzf5964fb7e097e16e4dc90f709f1b212b557738945a061316551c329176f2712e
norri-wasm-4.2.5-norri.1-submodule-harfbuzz.tar.xz247a0a0a5ef65077d8844d627ad932cdd272cd1101a999b6c9192eb20e36b70c
norri-wasm-4.2.5-norri.1-submodule-brotli.tar.xzc4ed7a34bae97e65e14c1fc0327cc2a88d94537cf97c0de237bfc38c2707c793

This split keeps each file under the static hosting file-size limit while preserving a complete, machine-readable source distribution for relinking.


norri-airplay

AirPlay audio sending to speakers and devices like HomePods. Translated from the AirPlay component of OwnTone (formerly forked-daapd).

License

GNU General Public License v2 or later (GPL-2.0+)

Attribution

  • OwnTone (formerly forked-daapd). github.com/owntone/owntone-server. Copyright (c) 2009-2011 Julien BLACHE, Copyright (c) 2012-2020 Espen Jürgensen, and OwnTone contributors.
  • FFmpeg (ALAC encoder). ffmpeg.org. Copyright (c) 2000-2025 the FFmpeg developers.

Changes from upstream

norri-airplay is a translation of OwnTone’s AirPlay implementation from C to Go, extracted as a standalone component with an integrated ALAC encoder.

norri-airplayOwnTone source
internal/airplay2/src/outputs/airplay.c
internal/raop/src/outputs/raop.c
internal/hap/src/pair_ap/
internal/rtp/src/outputs/rtp_common.c
internal/discovery/src/mdns.c
internal/audio/src/outputs/raop.c (ALAC encoding) + FFmpeg

Each Go source file carries a header identifying the original OwnTone source it is derived from.

Source code

Source downloads will be available here when Norri reaches public release.


Building from source

Each source tarball includes a build script and instructions needed to reproduce the distributed binaries.


Written offer for source code

In accordance with the GNU General Public License and GNU Lesser General Public License, we will provide the complete corresponding source code for any GPL-licensed or LGPL-licensed component distributed with Norri to any party, for a period of at least three years from the date of each release, at no charge beyond the cost of distribution.

To request source code, contact hello@norri.tv.