Captions with NextGen Live

Configure in-band EIA-608/708 captions and Media AI autocaptions for NextGen Live channels using Studio and the Live API.

Overview

NextGen Live supports closed captions for live playback in two ways:

  • In-band passthrough: EIA-608 and EIA-708 captions embedded in your encoder output are passed through to playback manifests
  • Media AI autocaptions: automatically generated captions from the live audio track

For Control Room caption language settings, see Creating and Managing NextGen Live Events (Captions section).

In-band captions (608/708)

Brightcove Live accepts captions in-band inside H.264 headers. Configure caption languages so players, especially on Android, can identify tracks correctly.

  • Specify up to 4 caption languages using 3-letter ISO 639-2 codes (eng, spa, fra, etc.)
  • Order languages to match your encoder: first language maps to CC1, second to CC2, and so on
  • Set caption positioning in the 608 data at the encoder when using 608 captions

API configuration

Include caption outputs when you create or update a job:

{
  "name": "Captioned channel",
  "type": "channel",
  "region": "us-west-2",
  "input": { "protocol": "srt" },
  "outputs": {
    "video": [{ "label": "720p", "height": 720, "width": 1280, "bitrate": 3000000, "codec": "h264" }],
    "audio": [{ "label": "default", "codec": "aac", "bitrate": 128000 }],
    "caption": [
      {
        "type": "embedded_closed_caption",
        "passthrough": true,
        "language_code": "eng"
      },
      {
        "type": "embedded_closed_caption",
        "passthrough": true,
        "language_code": "spa"
      }
    ]
  }
}

Media AI autocaptions

Enable autocaptions in the media_ai object on create or update:

{
  "media_ai": {
    "autocaption": {
      "source_language": "en-US",
      "filter_profanity": true,
      "filter_disfluency": true,
      "diarization": false,
      "use_dictionary": false
    },
    "buffer": 5
  }
}
Autocaption fields
Field Description
source_language BCP-47 language tag for spoken audio (e.g. en-US). Omit to disable autocaption
filter_profanity Mask profanity when true (default)
filter_disfluency Remove filler words when true (default)
diarization Attribute speech to speakers when supported
buffer Latency buffer in seconds (5–90) for caption timing relative to audio