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

Hardware Transcoding

Why Hardware Transcoding?

Hardware transcoding uses your GPU instead of your CPU. This helps with:

  • Much faster encoding
  • Lower power consumption
  • Support for more simultaneous streams
  • 4K video transcoding
  • HDR to SDR tone mapping
  • Subtitle burn-in with less CPU load

Enable it in Settings → Transcoding → Hardware Acceleration. Auto-detect is the recommended setting for most servers.

Intel Quick Sync

For Intel CPUs with integrated graphics.

Docker Setup

Pass through the render device:

devices:
  - /dev/dri:/dev/dri

NVIDIA GPUs

For NVIDIA GeForce or Quadro cards.

Docker Setup

Use the NVIDIA Container Toolkit:

runtime: nvidia
environment:
  - NVIDIA_VISIBLE_DEVICES=all

AMD GPUs

For AMD graphics cards with VCE/VCN support.

HDR Tone Mapping

HDR tone mapping converts HDR video to SDR when the playback device does not support the source HDR format. It is controlled by Settings → Transcoding → Enable HDR Tone Mapping.

Tone mapping is more demanding than ordinary remuxing. Use hardware acceleration for 4K HDR libraries whenever your server supports it.

Subtitle Burn-In

Styled ASS and SSA subtitles can be burned into the video to preserve fonts, positioning, colors, and effects. Image-based subtitles such as PGS and VOBSUB may also require burn-in.

Use Settings → Transcoding → Burn In Styled Subtitles to choose whether ASS and SSA styling is preserved. Turning it off can reduce transcoding, but styled subtitles are delivered as plain WebVTT where possible.

Verifying Hardware Use

Start playback of a file that needs transcoding, then check Settings → Sessions. A hardware encoder should appear in the session details when GPU transcoding is active.

If Norri falls back to software transcoding, check device permissions, container runtime settings, and server logs.