Get Early Access

← Blog

How Remote GPU Transcoding Works (Without SSH Tunnels or Shared Storage)

Technical deep-dive on remote GPU transcoding: how the cartridge intercepts Plex transcode requests, pipes them to a GPU worker over HTTPS, and streams results back.

Most Plex users assume transcoding has to happen on the same machine as the media server. It doesn’t. Here’s how remote GPU transcoding works, and why it’s simpler than you think.

The Traditional Approach (And Why It’s Hard)

People have been trying to offload Plex transcoding for years. The typical DIY approach involves:

  1. Setting up NFS/CIFS shared storage between your server and GPU machine
  2. Installing a second Plex instance on the GPU machine
  3. Using SSH tunnels or VPN to connect the two
  4. Manually routing transcodes somehow

This is fragile, complex, and breaks with every Plex update. Most people give up and just buy a bigger server.

The Cartridge Model

PlexBeam takes a different approach. Instead of sharing storage or running multiple Plex instances, it intercepts the transcode at the request level.

Here’s the flow:

  1. Client requests a stream — Plex determines it needs transcoding
  2. Plex calls its internal transcoder — normally this is the local FFmpeg binary
  3. The cartridge intercepts the call — instead of running FFmpeg locally, it packages the transcode parameters and sends them to the GPU worker
  4. GPU worker processes the transcode — hardware decode + scale + encode using NVENC/QSV
  5. Stream pipes back — the transcoded segments stream back over HTTPS to Plex, which serves them to the client

No Shared Storage Required

This is the key insight. The media file doesn’t need to be on the GPU worker’s filesystem. The relevant segments are streamed to the worker on-demand, transcoded, and streamed back. No NFS mounts, no SMB shares, no rsync.

Your media stays on your NAS or server. The GPU worker never stores it. The only data that crosses the network is the video segments being transcoded — and those are time-bounded (they’re deleted after playback).

HTTPS, Not SSH Tunnels

Everything runs over standard HTTPS. No port forwarding. No SSH tunnels. No VPN setup. The cartridge communicates with the GPU worker the same way your browser communicates with a website.

For managed workers, there’s nothing to configure on the network side. For self-hosted workers, you just point the cartridge at your worker’s URL.

Automatic Fallback

What happens if the GPU worker is down? The cartridge falls back to local transcoding automatically. Your viewers never see an error — the stream just uses your server’s CPU instead of the remote GPU. When the worker comes back online, future transcodes automatically route there again.

This is critical for a media server: reliability matters more than performance. PlexBeam is an enhancement, not a dependency.

Self-Healing Watchdog

Plex updates can reset customizations. The cartridge includes a watchdog daemon that:

Set it up once, forget about it.

Performance Numbers

In our benchmarks, a single managed GPU worker achieves:

Compare that to a Synology NAS doing the same 4K transcode at 0.3× realtime (constant buffering) or an N100 mini PC doing 2× realtime (works, but barely).

More from the Blog

Plex Transcoding Explained

Why 4K HEVC kills your CPU and how GPU offloading fixes it.

Best Plex Server Hardware (2026)

N100 mini PCs, NAS boxes, or GPU offloading — which fits your library?

Jellyfin vs Plex: Transcoding

GPU support, codec handling, and the real differences for 4K streaming.

Ready to offload your transcodes?

Join the pre-beta waitlist and lock in 50% off for life.

Claim My Early-Adopter Spot →