Updated July 2026

First, check what your server is actually doing

Open the Jellyfin admin dashboard while something is playing. Every active stream is labeled Direct Play, Direct Stream, or Transcoding — and when it is converting, the dashboard tells you why. That reason maps to one of four causes.

Reason 1: the client cannot play the video codec

If the player does not support the codec, the server re-encodes video in real time. This is the expensive case — it is what makes a NAS fan scream. The fix is not a faster server; it is a client that decodes more. On Apple TV, Trovu direct plays H.264, HEVC, AV1, VP9, and MPEG-4, with hardware decoding doing the work. That covers what the overwhelming majority of libraries contain.

Reason 2: the container, not the codec

A file can hold perfectly playable video in a container the client refuses — the classic case being MKV on Apple platforms. The server then remuxes (Direct Stream): cheaper than transcoding but still unnecessary work and often breaks seeking. Trovu reads MKV, MP4, WebM, MOV, HLS, and MPEG-TS directly, so the container stops being a reason. More on that in playing MKV on Apple TV.

Reason 3: audio the device cannot decode

This is the sneaky one. Apple TV has no native DTS, DTS-HD, or TrueHD support, so with most clients a Blu-ray rip's audio track alone forces a conversion — and dragging the video along with it. Trovu decodes these formats on the Apple TV itself and outputs multichannel audio, so the video track stays untouched and the stream direct plays.

Reason 4: a bitrate cap in the client settings

If the client's playback quality is set to anything below the file's real bitrate — a common default is 20 Mbps, while 4K remuxes run 40 to 80 Mbps — the server transcodes down to the cap even though the client could play the file natively. Check the quality setting in your client and set it to maximum (or auto) when you are on a local network. Burned-in subtitles are the same story: image subtitles force video re-encoding in clients that cannot render them, while Trovu renders PGS natively.

What direct play gets you

The short version: transcoding is a client problem wearing a server costume. Put a direct-play client on the device and the problem mostly disappears. That is the entire design goal of Trovu for Jellyfin on Apple TV — and the same applies to Plex.

Questions

Transcoding, answered.

Open the Jellyfin admin dashboard while something is playing. Each active stream is labeled Direct Play, Direct Stream, or Transcoding, and shows the reason when it is converting. High server CPU usage during playback is the other giveaway.

Usually one of two things: the client's quality setting has a bitrate cap below the file's actual bitrate, or the client cannot play the codec or audio natively. Setting playback quality to maximum and using a client that direct plays HEVC and DTS usually gets 4K files to direct play.

No — the opposite. Direct play sends the original file untouched, so you see exactly what was encoded. Transcoding re-encodes video in real time at a target bitrate, which softens fine detail and can introduce banding.

Almost none. When a client direct plays, the server only reads the file from disk and sends it over the network — a Raspberry Pi or a low-power NAS can serve multiple 4K remuxes at once. Transcoding is what demands a fast CPU or GPU.

With many clients, yes — Apple TV has no native DTS or TrueHD decoding, so the server converts the audio and often re-packages the video with it. Trovu decodes DTS, DTS-HD, and TrueHD on the Apple TV itself, so these files direct play.

Let your server
stop sweating.

Free up to 1080p. Trovu Pro adds 4K and HDR. No account, no ads, no tracking.

tvOS 17.0 or later. Apple TV HD and Apple TV 4K.
Trovu