# PGS and VobSub: image subtitles explained for Mac users

> PGS and VobSub subtitles store bitmap images rather than plain text. Learn why you cannot restyle them, why players lag, and how to play them on Mac.

Published 2026-10-31 · Formats & codecs · https://www.hazenstudio.com/maclc/blog/pgs-subtitles/

## In short

- PGS and VobSub are bitmap image subtitle formats extracted from Blu-ray and DVD discs.
- Because image subtitles are raster graphics, you cannot change their font, size, or colors.
- Converting PGS or VobSub into searchable text requires Optical Character Recognition (OCR).
- Media servers often stutter on PGS subtitles because they transcode and burn images into video frames.
- Modern desktop Mac players decode and composite PGS bitmap overlays locally without transcoding lag.

PGS subtitles are graphic image overlays rather than text files. The acronym stands for Presentation Graphic Stream, and it is the standardized subtitle format developed by the Blu-ray Disc Association for commercial 1080p Blu-ray and 4K Ultra HD Blu-ray releases.

When you toggle a PGS subtitle track while watching a movie, your media player is not rendering a typography font from your operating system. Instead, it is decompressing a sequence of transparent picture files and compositing those images directly on top of the moving video frame.

## What is the difference between text subtitles and image subtitles?

Most subtitle files encountered on the web, such as SubRip (`.srt`) or WebVTT (`.vtt`), are pure text files. As explained in our guide to [what an SRT file is](/maclc/blog/what-is-an-srt-file/), a text subtitle document stores timing coordinates alongside ASCII or Unicode characters. Your media player reads the text, applies its own font styling rules, and draws the letters onto the screen in real time.

Image subtitles operate on a fundamentally different principle. Physical optical media formats like DVD and Blu-ray were designed to run on consumer hardware players with strictly limited memory and processing power. Rather than requiring every standalone disc player to carry complex multi-language font libraries and text-shaping engines, disc authoring studios rendered every subtitle cue into a static graphic image beforehand.

Inside an MKV file or Blu-ray stream, a PGS subtitle track is a sequential stream of binary image packets. When an actor speaks, the disc player unpacks a compressed picture—often a transparent PNG-like bitmap matching the full 1920 × 1080 or 3840 × 2160 canvas—and overlays it over the video layer for a designated duration.

This graphic architecture guarantees that the studio's exact font choices, kerning, positioning, and foreign alphabets appear identically on every television on earth, regardless of whether that TV has Chinese, Arabic, or Cyrillic fonts installed in its firmware.

## How does DVD VobSub differ from Blu-ray PGS?

Long before Blu-ray standardized PGS, DVD-Video introduced the original digital image subtitle format: VobSub.

While both PGS and VobSub are bitmap formats, they reflect the technological limitations of their respective eras:

- **VobSub (DVD):** Extracted from DVD `VIDEO_TS` folders, VobSub tracks typically consist of two paired files: a `.sub` file containing the raw run-length encoded (RLE) bitmap streams, and an `.idx` file containing timecodes, screen coordinates, and color palette definitions. VobSub is restricted to standard-definition resolutions (720 × 480 for NTSC or 720 × 576 for PAL) and can display a maximum of only four concurrent colors per cue, selected from a 16-color look-up palette.
- **PGS (Blu-ray):** Standardized under the Matroska codec identifier `S_HDMV/PGS` or saved as standalone `.sup` files, PGS supports high-definition resolutions (1080p and 4K). It utilizes 8-bit palette graphics supporting up to 256 colors with 256 levels of alpha-channel transparency per graphic. This allows smooth antialiasing, semi-transparent drop shadows, and subtle gradient outlines.

| Technical Feature | SubRip Text (SRT) | DVD VobSub (.sub / .idx) | Blu-ray PGS (.sup / S_HDMV/PGS) |
| :--- | :--- | :--- | :--- |
| **Data Architecture** | Plain-text strings (Unicode) | 2-bit RLE bitmap images | 8-bit indexed bitmap images |
| **Native Resolution** | Scalable vector text | Standard definition (480p / 576p) | High definition (1080p / 2160p) |
| **Color Support** | Unlimited (player dependent) | 4 colors from 16-color palette | Up to 256 colors with alpha channel |
| **File Size per Movie** | Tiny (50 KB – 150 KB) | Small (5 MB – 15 MB) | Moderate (20 MB – 80 MB) |
| **Restyling & Resizing** | Completely customizable | Fixed pixel canvas | Fixed pixel canvas |
| **Player Compatibility** | Universal across all devices | Requires legacy DVD demuxer | Modern open-source players |

Because VobSub images were drawn for standard-definition cathode-ray tube televisions, displaying them on a modern 4K Mac display reveals jagged, pixelated edges. PGS subtitles look significantly sharper on modern screens because they were authored natively for high-definition displays.

## Why can't you resize or change the font of PGS subtitles?

One of the most common frustrations among home theater enthusiasts is discovering that their video player's subtitle customization controls do not work on Blu-ray rips.

If you open your player's settings and adjust the subtitle font from Helvetica to Courier, or change the font size from 24 pt to 36 pt, text-based formats like SRT respond instantly. However, when you switch to a PGS subtitle track, the appearance of the subtitles remains stubborn and unchanged.

You cannot resize, restyle, or change the color of PGS subtitles because the video player does not know what words are being displayed. There are no ASCII characters or typography parameters inside the file for the player to manipulate. 

To the media player, a PGS subtitle is just a rectangular graphic bitmap, identical to a JPEG photo or PNG sticker. The only way a player can alter the size of a PGS subtitle is by applying raw digital scaling to the entire bitmap:

- **Upscaling PGS bitmaps:** Stretches the pixel grid, introducing noticeable bilinear blur or pixelation around the edges of letters.
- **Downscaling PGS bitmaps:** Causes aliasing and can make thin letter strokes vanish entirely.

Furthermore, because the graphic is not text, you cannot copy dialogue to your clipboard, search for a spoken quote in your media player, or run real-time automated language translation tools.

## Why do PGS subtitles make media servers stutter and buffer?

If you stream movies across your local network using home media servers like Plex, Jellyfin, or Emby, enabling a PGS subtitle track on a smart TV, tablet, or web browser frequently causes playback to freeze, stutter, or buffer incessantly.

This problem is not caused by your Mac's network connection. It is caused by server-side subtitle burning.

Many client devices—such as older smart TVs, streaming dongles, and web browsers—lack dedicated graphic pipelines capable of decoding and blending high-definition bitmap overlays over hardware-decoded video in real time. When the streaming client informs the media server that it cannot decode `S_HDMV/PGS` streams natively, the server triggers an emergency transcode.

Instead of passing the original video stream directly to your screen (Direct Play), the server's processor must:

1. Fully decode the 4K HEVC or 1080p video stream into uncompressed video frames.
2. Decode the PGS bitmap images.
3. Physically draw (burn) the subtitle pixels directly into the video frame pixels.
4. Re-encode the combined image into a brand-new H.264 video stream in real time.

Burning subtitles into a high-bitrate 4K HDR movie requires substantial processing power. Even powerful desktop processors can struggle to maintain real-time 4K encoding speeds, leading to dropped frames, processor thermal throttling, and endless loading spinners.

MacLC decodes Blu-ray PGS and DVD VobSub image subtitles locally on your Mac using FFmpeg's libavcodec. It composites the bitmap overlays directly over the video layer on your display, delivering smooth playback without forcing CPU transcode burns.

## How can you convert PGS or VobSub subtitles to an SRT file?

If you want to reduce file sizes, enable custom font styling, or eliminate transcoding headaches on lightweight streaming clients, you can convert PGS and VobSub tracks into standard text-based SRT files.

Because image subtitles contain pictures rather than text, you cannot change the file extension from `.sup` to `.srt`. Doing so results in a corrupted file that no player can read. Instead, you must process the image through an Optical Character Recognition (OCR) engine that scans the visual pixel patterns and translates them into machine-encoded text characters.

The standard tool for this process across the open-source community is Subtitle Edit, a free utility that integrates the Tesseract OCR engine. Here is the general conversion workflow:

1. **Extract the raw subtitle track:** Use MKVToolNix or FFmpeg to demux the PGS (`.sup`) or VobSub (`.sub/.idx`) track out of your MKV file without touching the video. To see exact commands, read our guide on [how to extract subtitles from an MKV on a Mac](/maclc/blog/extract-subtitles-from-mkv/).
2. **Import into OCR software:** Load the `.sup` file into an OCR conversion utility.
3. **Run character recognition:** The OCR engine compares each bitmap character against digital font models. When it encounters ambiguous letters—such as distinguishing an uppercase `I` from a lowercase `l`—it prompts you to confirm the correct letter.
4. **Export as SubRip:** Once recognition is complete, export the project as an editable, lightweight `.srt` file.

While OCR conversion produces editable, customizable text, it requires manual review to catch misspelled words or punctuation errors.

## What is the difference between PGS and styled ASS subtitles?

Viewers often confuse PGS subtitles with Advanced SubStation Alpha (`.ass`) subtitles because both can display customized fonts, colored outlines, and non-standard screen positions.

However, their underlying architectures are diametrically opposed:

- **PGS is graphical:** It achieves styling by drawing everything into static picture bitmaps before the movie is packaged. It requires no font files on your system, but it consumes significant storage and cannot be edited.
- **ASS is programmatic:** It achieves intricate styling by executing a plain-text vector script. An ASS file defines font names, margins, outline thicknesses, color hexadecimal codes, and geometric animations. A specialized rendering engine, called `libass`, interprets those text instructions and rasterizes the vector shapes dynamically at your screen's native resolution.

To learn why anime fansubbers and international film preservationists rely almost exclusively on vector scripts, explore our detailed analysis of [what libass is](/maclc/blog/what-is-libass/).

If you are encountering subtitle tracks in a film that only appear during moments when characters speak an alien or foreign language, you are viewing forced subtitles. You can learn how players identify these tracks in our guide to [what forced subtitles are](/maclc/blog/what-are-forced-subtitles/).

## How should you play PGS subtitles on an Apple Silicon Mac?

If your movie library contains Blu-ray rips packaged in Matroska containers, you do not need to waste hours running OCR tools just to watch a film on your Mac.

Modern Apple Silicon Macs have ample memory bandwidth and processing power to decode high-definition bitmap subtitles. Rather than relying on Apple's QuickTime Player—which cannot read MKV containers or PGS bitmaps—download [MacLC from the download page](/maclc/donate/).

MacLC uses FFmpeg's `libavcodec` library to unpack PGS and VobSub graphic overlays in real time. It composites the subtitles directly over your video, preserving the filmmaker's original disc typography without dropped frames.

## Questions people ask

### What does PGS mean in subtitles?

PGS stands for Presentation Graphic Stream. It is the official bitmap image subtitle format used on commercial Blu-ray and Ultra HD Blu-ray discs, often stored inside MKV files or as standalone .sup files.

### What is the difference between PGS and SRT subtitles?

SRT stores subtitle dialogue as plain text characters that your media player renders using system fonts. PGS stores subtitles as pre-rendered bitmap images with fixed pixel dimensions, meaning the player cannot change the typography or text size.

### Why can't I change the font or size of PGS subtitles?

You cannot change the font, size, or styling of PGS subtitles because there is no underlying text data in the file. The subtitle is an unalterable graphical picture created by the film studio during disc authoring.

### How do I convert PGS subtitles to SRT on a Mac?

Converting PGS to SRT requires Optical Character Recognition (OCR) software such as Subtitle Edit or OCR utilities in HandBrake. The software scans the graphic pixels and matches them against character shapes to output editable text.

---
MacLC is a free, open-source video player for Apple Silicon Macs: https://www.hazenstudio.com/maclc/ · download: https://www.hazenstudio.com/maclc/donate/
