Caption conversion

Convert SCC to TTML

Scenarist Closed Caption (SCC) to Timed Text Markup Language (TTML). Convert in the web app, automate with the REST API, or run it offline with the CLI.

Converting SCC to TTML moves CEA-608 broadcast captions into XML for streaming and OTT delivery. Unlike SRT, TTML can keep the placement and styling of the original captions using regions and styles. The key decision is the target profile, because most platforms require a specific flavour of TTML rather than generic TTML.

What carries over

  • Caption text, with 608 special characters mapped to Unicode
  • Placement on the 608 grid, expressed as TTML regions
  • Italics, underline and 608 colors, as TTML styles
  • Accurate timing converted from 29.97 fps drop-frame timecode

What changes

  • Roll-up and paint-on captions are usually converted to pop-on for OTT players
  • Only one 608 channel (for example CC1) is converted at a time
  • The target profile decides which styles and timing format are allowed

How to convert SCC to TTML

The same conversion engine powers all three, so a job you set up in the web app produces identical output from the API or CLI.

In the web app

  1. Sign in to the web app, or start a free trial.
  2. Upload your .scc file and select Scenarist V1.0 as the source profile.
  3. Select Timed-Text Markup Language as the target profile.
  4. Review the recommended settings for this conversion.
  5. Run the conversion and download your .ttml file.

With the API

POST /jobs
curl -X POST https://api.closedcaptionconverter.com/jobs \
  -H "x-api-key: YOUR_API_KEY" \
  -F "source=@input.scc" \
  -F 'config={
    "job_type": "convert",
    "source_profile": "Scenarist V1.0",
    "target_profile": "Timed-Text Markup Language",
    "convert_to_pop_on": true
  }'

See API Getting Started for authentication and response handling.

With the CLI

Command line
ccconverter \
  --source input.scc \
  --target output.ttml \
  --source_profile "Scenarist V1.0" \
  --target_profile "Timed-Text Markup Language" \
  --convert_to_pop_on true

The CLI runs fully offline on macOS, Windows and Linux. See the CLI docs for every flag.

Recommended settings

Target profileGeneric TTML, or a delivery profile such as SMPTE TTML, IMSC Text Captions, Netflix TT Captions or DFXP.
Convert to Pop-OnRecommended for roll-up sources.
Language CodeWritten to xml:lang.

Format-specific options are covered in Encoding & Decoding Options and Profiles & Formats.

SCC to TTML questions

Whichever your platform names. Closed Caption Converter includes SMPTE TTML, IMSC Text Captions, Netflix TT Captions, DFXP and others. Generic TTML is best for general use or archiving.

Yes. Each caption’s row and column on the 608 grid is written as a TTML region, so captions appear in the same place on screen.

SMPTE-TT (SMPTE ST 2052) is a TTML profile created for broadcast-to-internet captioning under the US CVAA. It is TTML with SMPTE-specific extensions.

Free trial

Convert SCC to TTML now

Upload your .scc file and download TTML in seconds, or automate it with the API and CLI.