New: AI voiceover + auto-captions - script to captioned video in one API call. Read the announcement

News

Renderly Ships AI Voiceover and Auto-Captions

Renderly now turns a script into a narrated, word-synced-captioned video in one API call. AI voiceover (9 voices) + auto-captions, flat credit pricing.

Phil Duong

Phil Duong

Founder

Renderly Ships AI Voiceover and Auto-Captions

Two new AI features are live in Renderly today: AI voiceover and auto-captions. Each is useful on its own. Together, they collapse an entire production pipeline: one render request now takes a script and returns a narrated video with word-synced captions.

Here's the release in one demo. We took a 31-second real-estate listing template with an empty narration slot, wrote a 77-word script, and sent this:

POST https://renderly.video/api/v1/renders
Authorization: Bearer rnd_...
 
{
  "projectId": "your-project-id",
  "replacements": {
    "narration": {
      "tts": {
        "text": "Just listed in Montauk: twenty-seven Dune Crest Road. Tucked where the dunes meet the door, this is coastal living at its finest. Inside — sun-drenched spaces, walls of glass, a chef's kitchen in white oak, and a wrap-around deck over the water. Four bedrooms. Three baths. Thirty-two hundred square feet. And open sand, just a two-minute walk away. Offered at three million, four hundred ninety-five thousand. Book your private tour with Salt and Cedar today.",
        "voice": "onyx"
      }
    }
  }
}

That's the whole integration. Out came the finished listing video — narration mixed over the music bed, scenes paced to the script — for 1.5 credits total (0.5 for the voiceover, 1.0 for the 31-second render). No TTS service, no audio file juggling, no second pass.

And because we're that kind of team, we verified it by transcribing the finished video back through our own captions endpoint. The transcript came back word for word — with the spoken price formatted back to "$3,495,000".

Key Takeaways

  • POST /api/v1/ai/voiceover turns text into narration (9 voices, up to 4,096 characters); POST /api/v1/ai/captions transcribes any public URL into captions with real word-level timings
  • Both work inside a render: declare tts and transcribe values on template variables and one API call goes script → voiceover → word-synced captions → video
  • Clip windows mean you're billed for what you transcribe — a 9-second highlight of a 6-minute podcast costs 0.25 credits, not 1.75
  • Flat pricing: 0.25 credits per started caption-minute, 0.5 credits per started 1,000 TTS characters, charged only on success

What's in the release?

Auto-captionsPOST /api/v1/ai/captions transcribes any public audio or video URL into captions with real word-level timings, so word-by-word highlighting works out of the box. It handles files up to 5 GB and audio up to 3 hours, ingested by URL — we never proxy your file. The response includes both a captions[] array and a paste-able captionOverlay JSON.

AI voiceoverPOST /api/v1/ai/voiceover takes up to 4,096 characters of text and returns a narration mp3, saved to your media library, with its public URL and measured duration. Nine voices (alloy, ash, coral, echo, fable, nova, onyx, sage, shimmer) and adjustable speed from 0.25× to 4×.

Both are also available in the editor. Select a video overlay, open the AI tab, and Generate Captions transcribes exactly the trimmed portion on your timeline — with a confirmation dialog showing the credit cost before anything runs.

Why is the one-call pipeline the real story?

Auto-captions and text-to-speech are table stakes for video APIs in 2026 — most platforms have some version of them. What nobody else does is chain them on template variables inside a single render.

In Renderly, the same replacements object you already use for text and media now accepts AI values:

  • A sound variable set to {"tts": {"text": "...", "voice": "onyx"}} generates the narration at render time. The overlay — and the composition itself, if needed — stretches to the real audio length, and billing reflects it.
  • A caption variable set to {"transcribe": {"source": "narration"}} fills the overlay with word-synced captions transcribed from that overlay's audio. And source can point at the TTS narration generated in the same request — so the captions are guaranteed to match the voiceover, word for word.

Add that one transcribe line to the listing request above and the same call also burns in styled captions. Script in, narrated and captioned video out. (Caps: 3 tts and 3 transcribe values per render.)

If you run automation workflows, you'll feel this immediately: the usual script → TTS service → transcription service → compose → render chain — five nodes in n8n or Make — becomes one Renderly node. And the captions don't take JSON styling parameters; they inherit whatever caption design your template already uses, word-highlight styles included. Designers own the look, the API fills the words.

Caption a clip, pay for the clip

Long source, short clip is the normal case — a podcast highlight, a webinar excerpt, a talking-head cut. Auto-captions bill by the clip window, not the file. Pass startTime/endTime (in seconds) to the captions endpoint, or let a render derive the window automatically from the video overlay's trim — including speed changes. Timings come back clip-relative, ready to drop onto a caption overlay.

Clip-window billing: caption a 9-second highlight of a 6-minute podcastHorizontal bar chart. Transcribing the full 6-minute podcast file costs 1.75 credits. Transcribing only the 9-second clip window costs 0.25 credits. Source: Renderly AI features pricing, 2026.Captioning a 9s highlight of a 6-minute podcastYou're billed for the window you transcribe, not the file you uploadWhole file1.75 creditsClip window (9 s)0.25 creditsSource: Renderly AI features pricing, 2026

That 7× difference compounds fast if you're clipping at scale. Most caption APIs don't discuss trims at all — you transcribe the file you send.

What does it cost?

Flat, predictable rates from the same credit balance you already use for rendering:

OperationPrice
Auto-captions0.25 credits per started minute of transcribed audio
AI voiceover0.5 credits per started 1,000 characters

Three guarantees behind those numbers: you're charged only on success, failed operations are refunded automatically, and retrying an in-flight transcription never double-charges. Per-usage metering surprises are the top pricing complaint we hear about AI audio tooling — so every operation is also logged as an inspectable AI job.

For context: 1 credit covers about 4 caption-minutes or 2,000 characters of voiceover.

Your AI assistant can do this too

Both features are exposed through Renderly's MCP connector as renderly_generate_captions, renderly_generate_voiceover, and renderly_get_ai_job. Connect Renderly to Claude and "write a 30-second narration for my listing video and render it with captions" is now a sentence, not a pipeline.

Getting started

API keys are self-serve — grab one from your Renderly dashboard under Settings → API Keys, and new accounts start with free credits to test with.

  • AI features guide — pricing, endpoints, clip windows, and the full one-call walkthrough
  • Rendering guide — AI replacement values alongside regular text and media replacements
  • MCP guide — all nine tools for AI assistants
  • API reference — the OpenAPI spec, under the "AI" tag

We'll follow up with step-by-step tutorials for the two workflows we get asked about most: adding AI narration to real-estate listing videos, and auto-captioning podcast clips. In the meantime, the real-estate automation guide shows the template pattern the narration slot plugs into.

If you build something with tts + transcribe chained in one call, we'd genuinely love to see it — drop us a line at support@renderly.video.