Get Early Access

← Blog

How Subtitles Trigger Unnecessary Plex Transcoding

Why adding subtitles to a direct play stream forces full video transcoding. SRT vs PGS vs ASS formats, burn-in behavior, and how to avoid the performance hit.

You have a 4K HEVC file that direct plays perfectly on your NVIDIA Shield. Then someone enables English subtitles. Suddenly the Plex dashboard shows a full video transcode — CPU spiking, quality dropping, buffering starting. The video itself hasn’t changed. The subtitles are just text. Why is your server re-encoding the entire video stream just to show words at the bottom of the screen?

The Three Subtitle Formats and Why They Matter

Not all subtitles are created equal, and the format determines whether your server transcodes or not. There are three categories:

Text-based subtitles (SRT, WebVTT, SSA/ASS). These are plain text files with timestamps. SRT is the simplest — just timing and dialogue, no formatting. WebVTT is the web equivalent. SSA and ASS add styling: fonts, colors, positioning, effects, karaoke timing. The critical thing about text subtitles is that they’re separate from the video stream. They can be rendered by the client player independently, overlaid on top of the video without touching the video data at all.

Image-based subtitles (PGS, VOBSUB, SUP). These are bitmaps — actual images of pre-rendered text. PGS (Presentation Graphic Stream) is the format used on Blu-ray discs and is by far the most common image-based format in media libraries. VOBSUB comes from DVDs. Each subtitle “event” is a PNG-like image with alpha transparency. The text has already been rendered into pixels, including any styling, positioning, and effects.

Forced/foreign subtitles. These aren’t a format but a flag. Any subtitle track can be marked as “forced,” indicating it contains only translations of foreign-language dialogue (like when characters speak Elvish in Lord of the Rings). Forced tracks are usually small, but their format still matters for transcoding.

Why Image-Based Subtitles Force a Transcode

Here’s the core problem: most Plex client apps cannot overlay image-based subtitles on their own. When a PGS subtitle track is selected, Plex has to burn them in — composite the subtitle images onto the video frames and re-encode the entire video stream. This is a full video transcode, even though the video codec, resolution, and bitrate don’t need to change.

The burn-in process works like this:

Even if the original video is 4K HEVC that would normally direct play, enabling PGS subtitles forces a full decode → composite → re-encode cycle. On a CPU, this can easily consume 100% of a modern processor for a single stream. With GPU hardware transcoding, it’s faster but still uses significant resources that weren’t needed before.

When Text Subtitles Also Cause Transcoding

You might think SRT subtitles are always safe. They usually are — but not always. There are two cases where even text subtitles trigger a transcode:

1. ASS/SSA with complex styling. Advanced SubStation Alpha subtitles can include custom fonts, colored text, positioned dialogue (like signs in anime), drawing commands, and animated effects. Most Plex clients can’t render these natively, so Plex burns them into the video. If you watch a lot of anime with fansubs, this is probably why your server transcodes even with “text” subtitles — those fansubs are almost always ASS format with heavy styling.

2. Client app doesn’t support text subtitle overlay. Some older or less capable Plex clients (certain smart TV apps, older Roku models, and the web player in some configurations) don’t support client-side subtitle rendering for all text formats. When the client reports it can’t handle the subtitle format, Plex falls back to burn-in.

The Plex Subtitle Settings That Matter

Plex has a subtitle burn-in setting that many users never touch, and it’s the single most impactful setting for avoiding unnecessary transcodes. You’ll find it under Settings → Languages in the Plex web UI:

How to Fix Your Library for Maximum Direct Play

The real solution isn’t fighting Plex’s transcoder — it’s fixing the subtitle tracks in your files. Here’s a practical strategy:

Convert PGS to SRT. Tools like Tesseract OCR with SubtitleEdit or Bazarr can OCR image-based subtitles into SRT text. The accuracy is generally excellent for Latin scripts (98%+) and good for CJK characters (90%+). Run this as a batch job across your library and you eliminate the biggest source of subtitle-triggered transcoding.

Use Bazarr for automatic SRT downloads. Bazarr integrates with Sonarr and Radarr to automatically download SRT subtitles from OpenSubtitles, Subscene, and other providers. If your media files have PGS subtitles embedded, Bazarr can find and download matching SRT files, which Plex will prefer for client-side rendering.

Strip ASS styling to SRT. If you have anime with ASS fansubs, you can convert them to SRT (losing the styling but gaining direct play) using ffmpeg:

ffmpeg -i input.mkv -map 0:s:0 -c:s srt output.srt

You lose sign translations, karaoke effects, and positioned text, but you gain direct play for every client.

The Performance Cost: Numbers

To quantify how much subtitles actually cost in transcoding overhead:

Scenario Transcode? CPU Impact
4K HEVC, no subsDirect Play~1%
4K HEVC + SRT subsDirect Play~1%
4K HEVC + PGS subsFull transcode85–100%
4K HEVC + ASS subs (styled)Full transcode85–100%

The difference between “1% CPU” and “100% CPU” is the difference between serving 12 users and serving 1. And it’s all determined by the subtitle format, not the video itself.

How PlexBeam Handles Subtitle Burn-In

When subtitle burn-in is unavoidable — PGS on a Blu-ray remux that has no SRT alternative, or ASS fansubs where the styling is actually important — PlexBeam offloads the entire burn-in pipeline to a remote GPU worker. The GPU composites the subtitle images onto decoded video frames and re-encodes using NVENC, completing the transcode at 8–11× realtime. Your local server stays idle while the burn-in happens on dedicated hardware.

For libraries heavy on anime or Blu-ray remuxes with PGS tracks, this turns what would be an unwatchable experience on a NAS into seamless playback for every user.

More from the Blog

Plex Transcoding Explained

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

Plex Media Optimization Guide

How to encode and organize your media library for maximum direct play compatibility.

How to Reduce Plex Buffering

Diagnose and fix buffering issues across your Plex setup.

Ready to offload your transcodes?

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

Claim My Early-Adopter Spot →