Green-Screen Subtitles API

Captions on a green canvas — key them in anywhere

When your tool cannot read an alpha channel, get styled captions back on a solid green backdrop instead. ZapCap renders a caption layer over #04F404 that you chroma-key in OBS, a hardware or software switcher, or any NLE — perfect for live overlays and tools without alpha support.

Solid #04F404 canvas · key out in OBS / switchers · live-overlay friendly
When alpha is not an option

Why a green canvas instead of transparency

Plenty of live and broadcast tools can't ingest a real alpha channel — but they can all chroma-key. A green-screen caption layer is the universal fallback for those pipelines.

OPTION 01

Transparent overlay
ProRes 4444 · VP9 alpha
  • Cleanest edges
  • Best when alpha is supported
  • Won't load in alpha-less tools
  • No good for many switchers

OPTION 02

Burned-in MP4
Flattened render
  • Final, self-contained clip
  • Captions locked to footage
  • Can't overlay on a live feed
  • Re-render to change

OPTION 03 · YOU ARE HERE

ZapCap · green-screen layer
Captions on #04F404
  • Works in any chroma-key tool
  • Live overlays in OBS / switchers
  • Standard MP4, ingests anywhere
  • Universal alpha-less fallback

OPTION 04

Subtitle file
SRT / VTT
  • Timed text only
  • No styled layer to key
  • No animation
  • Not a compositing source
API workflow

From clip to green-screen layer

Upload the clip, create a task in green-screen output mode, then poll or get a webhook. ZapCap renders the styled captions over a #04F404 canvas and returns a standard MP4 you key in downstream.

  1. 1

    Upload your video

    POST the file to /videos. We stream it to storage and hand you back a videoId.

    POSTPOST /videos
  2. 2

    Create the captioning task

    One POST starts transcription, styling and rendering with your chosen template. Add a notification webhook to skip polling.

    POSTPOST /videos/:id/task
  3. 3

    Receive the webhook

    We POST status updates to your endpoint as the render moves through transcribing → rendering → completed.

    HOOKPOST → your URL
  4. 4

    Download the finished render

    Burned-in subtitles, served from a global CDN. No watermark. MP4 ready for any social platform.

    GETGET renderUrl
Step 1 / 4·~2s
1import { readFileSync } from "node:fs";
2
3const form = new FormData();
4form.append(
5 "file",
6 new Blob([readFileSync("clip.mp4")]),
7 "clip.mp4",
8);
9
10const { id: videoId } = await fetch(
11 "https://api.zapcap.ai/videos",
12 {
13 method: "POST",
14 headers: { "x-api-key": process.env.ZAPCAP_KEY! },
15 body: form,
16 },
17).then(r => r.json());

POST /videos·Upload your video

Styling as an API primitive

Style the captions

Leave the canvas keyable.

The layer is your styled captions over a flat green field. Send a templateId for a complete look, or override individual renderOptions. Pick caption colors that contrast with #04F404 so the key stays clean.

  • Templates — Beast, Hormozi, Tracy, Devin, plus 25 more (29 presets) — the full styled look on a green canvas.
  • Animation — word-by-word pops, karaoke fill, fades — rendered over the green field.
  • Keyword emphasis — flag punchwords to color / scale / box for live emphasis.
  • Layout — font, color, stroke, shadow, words per cue, vertical position with safe-zone math.
  • Contrast tip — avoid green-on-green — choose caption fills that key out cleanly against #04F404.
Try a style
Render options
{
  "templateId": "46d20d67-255c-4c6a-b971-31fddcfea7f0",
  "outputMode": "greenScreen",
  "renderOptions": {
    "subsOptions": {
      "emphasizeKeywords": true,
      "animation": true,
      "displayWords": 3
    },
    "styleOptions": {
      "fontUppercase": true,
      "fontShadow": "m"
    }
  }
}
Output modes

Green-screen layer — and the alpha options it falls back from

This API

Green-screen layer

Styled captions over a solid #04F404 canvas, returned as a standard MP4. Chroma-key it in OBS, a switcher, or your NLE — works in any tool that can key a color, including live pipelines.

.mp4 · #04F404 backdrop
Cleaner edges

Transparent overlay

When your tool can read alpha, prefer a transparent overlay — ProRes 4444 or VP9 with a real alpha channel for cleaner edges and no keying step.

.mov ProRes 4444 · .webm VP9 alpha
Self-contained

Burned-in MP4

If you just need a finished clip rather than a layer to composite, render the captions burned into the frames instead.

.mp4 · h264

Use green-screen when your tool cannot ingest alpha. The canvas is #04F404 — choose caption colors that contrast with it so the key is clean and there is no green fringing on the type.

Two transcript paths

Auto-transcribe — or bring your own

Auto-transcribe

ZapCap transcribes and times the captions, then renders them onto the green canvas. Edit cues first when the broadcast or stream calls for it.

  • Inspect / edit the transcript via PUT /videos/:id/task/:taskId/transcript
  • Re-render the green-screen layer after a transcript edit
  • Render one transcript into multiple styled green-screen layers

Bring your own transcript

Send approved cues — from a show script or localization vendor — and ZapCap renders the green-screen layer without retranscribing.

  • Supported via the SRT-to-burned-in workflow
  • Preserve approved names, claims, and disclaimers
  • Produce a keyable layer per language from approved files
Multilingual layers

A keyable caption layer per language

Render a separate green-screen caption layer per target language and switch them in your live or post pipeline. CJK and Thai use language-aware line-breaking so wrapped lines key cleanly.

  • Swap caption-language layers in OBS or a switcher mid-stream
  • A brand-term dictionary keeps product names accurate in each layer
  • Language-aware layout for Chinese, Japanese, Thai
Key it out
抠掉绿色
คีย์สีเขียวออก
Simple API credits

Per-minute, usage-based credits

Pay for the minutes you render. The green-screen layer is a standard MP4 render — see pricing for the full multiplier table.

  • Top up credits to keep renders flowing in production
  • Volume credits available at scale
  • No per-seat fee — pay for renders, not users
$0.10 / min

Indicative starting rate. Final pricing depends on render mode and output format. API access requires a Pro plan plus credits.

Customer · Anonymized

A live-streaming team overlaid styled captions on their broadcast by keying ZapCap green-screen layers in their switcher — no alpha support required

Caption layers render over #04F404 and load as standard MP4s into a switcher that cannot ingest alpha. The team keys out the green and composites captions over the live feed, swapping layers per segment.

any tool
Keys in alpha-less switchers
live
Captions over a broadcast feed
standard MP4
Ingests anywhere, no special codec
swappable
Layers changed per segment

About the Green-Screen Subtitles API

They are styled captions rendered over a solid green canvas (#04F404) instead of a transparent background. You chroma-key out the green in your editor or live tool to composite the captions over your footage — the universal fallback for pipelines that cannot read an alpha channel.

Render green-screen caption layers through the API

Create a key on a Pro plan and buy credits in the dashboard.