Skip to content
Search Documentation
Search across all documentation pages
AI Captions

AI Captions

Overview

Transcodely can transcribe a video’s audio track into a caption file automatically, using the generate subtitle operation. It runs on the same worker fleet that encodes your video — the audio is transcribed in-house, not handed off to a third-party captioning service, and it composes with the rest of the pipeline (HLS/DASH packaging, other subtitle tracks, thumbnails).

Generated captions are always labelled as machine-produced. Transcodely makes no accuracy guarantee — see Honesty markers for exactly how that is surfaced.

For the full wire contract — fields, formats, validation — see the Subtitles reference.


Two ways to add captions

1. Caption a new transcode

Add a generate track to any output that has audio when you create the job. In the dashboard’s new-job flow (and the uploader), this is the Auto-generate captions checkbox; on the wire it is a single subtitle track:

{
  "subtitle_tracks": [
    { "operation": "generate" }
  ]
}

2. Retro-caption an already-hosted video

You do not need to re-encode a video to caption it. Point a captions-only job at a hosted video with input_video_id — no video variants, no re-encode:

{
  "input_video_id": "vid_a1b2c3d4e5f6g7",
  "outputs": [
    { "subtitle_tracks": [{ "operation": "generate" }] }
  ]
}

In the dashboard this is the Generate captions button on the video detail page. When the job finishes, the caption track appears there with an Auto-generated badge and a download link.


Accessibility for your whole library

Retro-captioning is the back-catalogue play: input_video_id lets you caption videos you uploaded months or years ago without re-encoding them, one API call (or one button) at a time. Script it across your library and every video gains a subtitle track without your originals being touched.

On the law, briefly and carefully, because most of what is written about it is wrong. The European Accessibility Act (Directive (EU) 2019/882) has applied since 28 June 2025, but its video duty in Annex I, Section III(b) is about carrying access services — where subtitles, audio description or sign language already exist, they must be transmitted with adequate quality, synchronised, and under the viewer’s control. It does not itself require you to create captions, it sets no back-catalogue deadline, and it names no percentage-of-revenue penalty. The duty to progressively add access services to audiovisual media services is AVMSD Article 7, which sets no date either.

What that means here: our HLS and DASH outputs carry subtitle tracks as first-class renditions with language, label, default, hearing-impaired and forced flags, and the player exposes track selection — which is the carriage half. Whether you are obliged to generate the tracks in the first place depends on what you distribute and where, and on national implementations that differ a great deal.

This is not legal advice. Captions are one requirement among several — WCAG 2.1 Level AA, for instance, requires audio description as well as captions for prerecorded video, and we do not generate audio description. Transcodely provides the captions; it does not certify accessibility compliance for your product. Read the primary texts, or ask a lawyer, before relying on a date.


Where your audio is processed

AI captions run on the same EU-based worker fleet that encodes your transcodes. The audio is transcribed in-house on that infrastructure — it is not sent to an external transcription API — so your media stays inside the Transcodely pipeline, consistent with how the rest of your encoding runs.


Correcting a generated caption

Because captions are machine-produced, you may want to fix a word or a timestamp. There is no special edit endpoint — reuse the tools you already have:

  1. Download the caption file from the track’s url (or the download link on the video page).
  2. Edit it in any subtitle editor.
  3. Re-attach it as a convert or passthrough track from source_url on your next job, replacing the generated one.

Pricing

AI captions are an additive fee of €0.05 per minute of source video, metered on the input duration and charged once per job — the audio is transcribed once, no matter how many renditions you produce. Details:

  • It is added on top of the encode cost as a fees line item on the job, shown in the dashboard cost breakdown as Encoding + Captions.
  • It is additive to the processing fee, not absorbed by it. The processing fee pays for starting an encoder; captions are a separately metered service billed on top.
  • The fee is only confirmed if a caption artifact is actually produced. No artifact, no charge.

See the pricing page for the full rate card and the calculator to estimate a captions bill.

Run this against your own file

A free account includes 30-second test encodes, so the request on this page can be tried before anything is configured.