Skip to content

Encoding

Domekologe edited this page Jul 28, 2026 · 3 revisions

Encoding

🌐 English · Deutsch

The Encoding page (/encoding, admin only) controls whether downloads are re-encoded when saved. The default is copy — the stream is taken over 1:1 without quality loss or CPU load (recommended).

Screenshot: encoding page

Modes

Mode Description
copy Keep video untouched (default); optionally convert audio to AAC/AC3
h264 Re-encode to H.264
h265 Re-encode to H.265/HEVC (smaller files, more compute)
expert Custom FFmpeg flags for video and audio (e.g. -c:v libx265 -preset slow -crf 18)

The page carries one further pill, Upscaling. It is not an encoding mode — it configures Anime4K and is documented under Anime4K Upscaling.

Hardware acceleration

For h264/h265 you can choose per mode:

Option Encoder
cpu libx264 / libx265
nvenc h264_nvenc / hevc_nvenc (NVIDIA)
vaapi h264_vaapi / hevc_vaapi (Intel/AMD, Linux)
videotoolbox h264_videotoolbox / hevc_videotoolbox (macOS)

The Detect hardware button tests the FFmpeg encoders available on your system. Quality is controlled via CRF (default: 23 for H.264, 28 for H.265) plus preset (ultrafastveryslow); for NVENC, CRF maps to the cq mode, for VAAPI to global_quality.

Audio

Selectable per mode: copy (default), aac or ac3.

Encoding timing & queue

The Encoding Queue block is shown only while the H.264 or H.265 pill is selected — it has no effect in copy, expert or Upscaling mode, so it is hidden there.

The Encoding timing setting decides when the transcode happens:

  • during download (default) — the stream is transcoded inline while it is being downloaded, as before.
  • after download (own queue) — the download itself becomes a fast stream copy; the actual transcode is deferred to a separate Encoding Queue.

Encoding starts per episode: as soon as one episode finishes downloading it is queued for encoding — so episode 1 can already be encoding while episode 2 is still downloading.

The Encoding Queue has its own worker and appears as the Encoding segment of the unified Queues window (with a badge); entries can be cancelled or removed. The replace original setting (default: on, and likewise only shown under H.264/H.265) controls whether the encoded file replaces the downloaded one.

While a job runs, the encoded file is written to MediaForge's scratch directory on the OS temp volume and only moved into place once it is complete, so a cancelled or failed encode never leaves a partial file in your library.

Together with upscaling

With both encoding and upscaling set to after download, the two run as a chain, not side by side: the episode is encoded first, and the finished file is then handed to the upscale queue — the same order the queue window shows (Download → Encoding → Upscaling → Library). Upscaling therefore always works on the encoded file, including when replace original is off and the encode wrote a new file next to the original.

The two never run on the same file at the same time, whatever queued them: a job started from the Library waits as well while an encode still has that file, and an encode waits for an upscale that is already running. Jobs for other files keep going in the meantime — only the file in question waits.

Scope

  • These settings affect the download (FFmpeg muxing).
  • The in-browser player (Library) has its own automatic encoder selection for live HLS transcoding.
  • Upscaling has its own output codec settings (Anime4K Upscaling).

Clone this wiki locally