Closed Captions & Subtitles

PLAYDECK supports Closed Captions (CEA-608 / CEA-708) and Subtitles (ASS / SRT). They look similar on screen, but they behave differently.

  • Subtitles always end up burned into the picture.
  • Closed Captions can be burned in or passed through in the signal (SDI VANC, or embedded in supported video streams).

For the full from→to matrix (SDI, NDI, UDP/SRT/DVB, RTMP, HLS, recording), start here:
Closed Captions & SCTE — Overview

In this article:
Subtitles vs Closed Captions
Subtitles (ASS / SRT)
Closed Captions sources
Burn-in vs Pass-Through
Enable CC on inputs and outputs
Quick test
Related


Subtitles vs Closed Captions

SubtitlesClosed Captions
Typical sourcesASS embedded, external SRTCC embedded, SCC/MCC/ANC sidecars, SDI VANC, streams, NDI (PLAYDECK loop)
On outputsAlways in the pictureBurn-in or pass-through in the signal
Styling in PLAYDECKFont etc. in settingsPreview/burn-in style in settings; position/animation often fixed inside the CC data
Same as SCTE?NoNo — SCTE is separate signaling (overview)

Subtitles (ASS / SRT)

Subtitles can only come from video files and are always burned onto the frames.

  1. Add the clip to a playlist.
  2. Right-click the clip and select the subtitle track (disabled by default).


Embedded: shown as ASS Embedded.
External SRT: same base filename as the video (.srt), in the same folder or in a Subs / Subtitles subfolder.

Wherever you send the channel (SDI, NDI, stream, desktop), the subtitle text is already in the image. Adjust font and related options in settings.

PLAYDECK does not include an editor to type new subtitle/CC text into files. Use an external tool if you need to author captions.


Closed Captions sources

From files

Right-click the clip → select the CC track (e.g. CC Embedded).

Also supported as sidecars (same base name, same folder): SCC, MCC, ANC.

When recording with scc_capture / anc_capture, PLAYDECK can write .scc / .anc next to the media file; playback can pick them up again. See the overview recording notes.

From live inputs / streams

PLAYDECK can read, preview, and forward CC with:

  • SDI (if the device supports VANC; enable VANC Data on the input)
  • Streams with MPEG-2 or H.264 (also MPEG-4 Part 2 in our tests) — UDP, SRT, DVB-compatible, etc., with embed_cc='true' on the sender
  • NDI in a PLAYDECKPLAYDECK loop (many third-party NDI tools do not show CC)
  • RTMP to YouTube with embed_cc='true' (YouTube can display CC)


Not for CC pass-through: HEVC with embed_cc (no usable pass-through in our tests).


Burn-in vs Pass-Through

In settings (Closed Captions):

  • Burn-in (default): CC text is rendered onto the channel output frames. Every destination sees the text in the picture (including Desktop Output).
  • Pass-Through (always active): CC is not burned into the output picture. PLAYDECK still shows CC in the channel preview. Downstream players/decoders (YouTube, another PLAYDECK, etc.) are responsible for displaying the captions.

Use Desktop Output (window mode) to check whether text is in the picture or only in the preview.

Tip: If you loop a burn-in channel into a second channel that also pass-through-previews CC, you can see double text (pixels + overlay). Switch the first channel to Pass-Through to avoid that.

CC data often includes fixed position and mode (e.g. roll-up / pop-on). PLAYDECK does not restyle that for preview/burn-in beyond its CC display settings.


Enable CC on inputs and outputs

Full matrix: Closed Captions & SCTE — Overview.

SDI input

Enable VANC Data → Enable Closed Captions and SCTE-104 Triggers.
Required to capture CC (and SCTE-104) from SDI. Opt-in because VANC capture adds processing.

SDI / NDI output

With a Closed Captions license, SDI/NDI output is prepared to carry CC when present in the channel pipeline.

Streams + Recordings

In Parameter, add:

embed_cc='true'


Without this, pass-through CC will not be embedded in the outgoing elementary stream (burn-in still works if enabled).

UDP target: use your LAN IP, not 127.0.0.1.


Quick test

  1. Load a sample clip with embedded CC; select the CC track; loop the block. Confirm CC in the channel preview.
  2. Enable SDI and/or NDI output; optionally loop SDI/NDI back into an input (VANC on for SDI).
  3. Add a UDP (or SRT) stream with H.264 and embed_cc='true'; play that URL on another channel.
  4. Confirm Desktop Output vs preview behaviour.

Sample clip:
https://downloads.playdeck.tv/assets/Sample Video_QTCC.mov

Related

ArticleWhat you will find
Closed Captions & SCTE — OverviewFull matrix, SCTE domains, limits
SCTE on SDISCTE-104
SCTE-35 to a stream serverSCTE-35, Nimble, HLS cues
Recording CC & SCTEMKV vs TS, sidecars, playback checks