Captions for your video player, from one API call

Send an MP4, MOV or WebM (file or URL) and get a .vtt file you can drop straight into an HTML5 <track> element — with speaker voice tags — plus SRT for everything else.

Your first transcription is free · then 5 minutes a month · no card

Generate the captions

bash

curl -s -X POST https://api.audiotranscribr.com/v1/transcriptions \
  -H "x-api-key: $KEY" \
  -d '{"url": "https://audiotranscribr.com/samples/clip-22-451-01.mp3"}'   # any audio or video URL; this sample is hosted by us

# poll GET /v1/transcriptions/{id} until "status": "completed", then:
curl -sL "https://api.audiotranscribr.com/v1/transcriptions/$ID/result?format=vtt" -H "x-api-key: $KEY" -o webinar.vtt

html

<video controls src="webinar.mp4">
  <track kind="captions" src="webinar.vtt" srclang="en" label="English" default>
</video>

No need to extract the audio first — send the video as it is.

What the VTT looks like

From a real recording (full file):

webinar.vtt

WEBVTT

00:00:00.080 --> 00:00:06.800
<v Speaker 1>You'll hear argument next in case 22451,
Loper Bright Enterprises versus Raimondo.

00:00:06.800 --> 00:00:07.800
<v Speaker 1>Mister Clement.

00:00:07.840 --> 00:00:12.640
<v Speaker 2>Mister chief justice, and may it please
the court, this case well illustrates the

00:00:12.640 --> 00:00:17.795
<v Speaker 2>real world cost of Chevron, which do not
fall exclusively on the chevrons of the

Details

Pricing

Your first transcription is free, then 5 minutes a month. Paid plans start at $9 a month for 10 hours of audio. All plans →

More guides