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

Configuration Options

Norri stores most server preferences in the database and exposes them through the admin UI. Use Settings in the web app for normal configuration. Use environment variables for deployment-level settings such as ports, data paths, and credentials.

See Environment Variables for deployment settings.

Transcoding Settings

Go to Settings → Transcoding as an admin to change these values.

UI settingAPI fieldDefaultDescription
Maximum Streams Per Usermax_per_user5Maximum active playback sessions one user can start.
Maximum Streams Server-Widemax_global10Maximum active playback sessions across the server.
Transcode Idle Timeout (seconds)idle_timeout_seconds300How long a transcode survives without activity before Norri tears it down.
Active Playback Idle Timeout (seconds)playback_active_idle_timeout_seconds120How long a playing session survives without a client heartbeat.
Paused Playback Idle Timeout (seconds)playback_paused_idle_timeout_seconds21600How long a paused session survives without a client heartbeat. The default is 6 hours.
Buffer Ahead (seconds)throttle_buffer_seconds60How far ahead Norri prepares a transcoded stream.
Hardware Accelerationhardware_accelerationautoGPU acceleration mode. Valid values are auto, videotoolbox, nvidia, vaapi, qsv, and software.
Subtitle Burn Modesubtitle_burn_modeautoSubtitle burn-in policy. Valid values are auto, always, and never.
Burn In Styled Subtitlesburn_in_styled_subtitlestrueWhen true, ASS and SSA subtitles are burned into the video to preserve styling. When false, they are side-loaded as plain WebVTT where possible.
Prefer External Subtitlesprefer_external_subtitlesfalseWhen true, matching sidecar subtitle files win over embedded subtitle tracks during automatic selection.
Enable HDR Tone Mappinghdr_tone_mappingtrueWhen true, HDR sources are tone-mapped to SDR for clients that do not support the source HDR format.

Timeout values are in seconds.

Playback Preferences

Go to Settings → Playback to change user-level playback preferences. Admins can also set server defaults for users who have not customized their own preferences.

SettingDescription
Preferred Audio LanguageSelects matching audio automatically when available.
Preferred Subtitle LanguageSelects matching subtitles when subtitle mode enables them.
Subtitle ModeControls when subtitles are selected automatically.
Prefer SDHPrefers SDH or CC subtitle tracks over standard subtitles in the same language.
Audio OutputPrefers audio tracks that match the selected speaker layout.

API Access

Integrations can read or update transcoding settings through:

MethodEndpointPurpose
GET/api/playback/settingsRead current transcoding settings.
PATCH/api/playback/settingsUpdate transcoding settings. Admin only.