Whisper Speech to Text — Audio & Video Transcriber
Pricing
from $40.00 / 1,000 result rows
Whisper Speech to Text — Audio & Video Transcriber
Transcribe audio and video URLs to timestamped text with speaker labels, chapters, keywords and SRT/VTT subtitles in 99 languages.
Pricing
from $40.00 / 1,000 result rows
Rating
0.0
(0)
Developer
Andrew
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Turn any direct audio or video URL into a clean, timestamped transcript with speaker labels, chapters, keywords and ready-to-use SRT / VTT / TXT subtitle files — in one run, from a spreadsheet-friendly dataset. Paste one file or a batch of ten; podcasts, interviews, meetings, webinars, voice memos and video files all work.
What you get
Every row in the dataset carries a rowType, so you can filter to exactly what you need:
minute— one row per transcribed minute with the plain-text transcript, the sentence-levelsegments(start, end, content, confidence, speaker), the language, and the names of the subtitle filesspeaker— one row per detected voice (SPEAKER_1,SPEAKER_2, …): speaking time, share of speech, word count, first-spoke timestamp and a sample quotechapter— pause-detected sections withstartSec/endSec, a title from the opening sentence, a YouTube-readyyoutubeChapterstamp (MM:SS Title) and a 200-character previewkeyword— the ten most-mentioned topic words with occurrence counts and the timestamp of every mentionfile-summary— language, duration, transcribed minutes, word count, words per minute, speaker count, chapter count, top keywords and the full transcript textsegment— opt-in, one row per sentence with exact timestamps (roughly 10 per minute of speech)- Subtitle files —
transcript-1.srt,transcript-1.vttandtranscript-1.txtper input file in the run's Key-value store, with[SPEAKER_N]tags when diarization is on
Files that fail to download, cannot be decoded, contain no speech or were trimmed produce an unbilled notice row (noticeCode + message), so an empty result is never silent.
Use cases
- Podcast show notes and SEO pages — chapters with timestamps, keywords and a full transcript from one episode URL
- Meeting and interview analysis — who said what, how long each person spoke, and quotable lines per speaker
- Video subtitling — drop the SRT/VTT straight into YouTube, Premiere, CapCut or your player
- Content repurposing — turn webinars and recordings into blog posts, clips and social captions
- Research pipelines — sentence-level rows with timestamps and confidence scores for joining, searching and embedding
- Multilingual archives — 99 languages auto-detected, or translated straight into English
How to use
- Paste one or more direct media URLs (mp3, wav, m4a, aac, ogg, flac, mp4, mov, mkv, webm, …) into Audio / video URLs
- Leave Speaker diarization on for anything with more than one voice; set Number of speakers if you know it
- Optionally set a Language code, turn on Translate to English, or add Word-level timestamps
- Use Max minutes per file and Max result rows per run as spend guards
- Run the actor — rows appear in the Dataset tab, subtitle files in the Key-value store tab
Example input:
{"audioUrls": ["https://example.com/podcast-episode-42.mp3"],"speakerDiarization": true,"numSpeakers": 2,"enrichmentRows": true,"segmentRows": false,"maxMinutesPerFile": 60,"maxResults": 500}
Output format
A minute row:
{"rowType": "minute","sourceUrl": "https://example.com/podcast-episode-42.mp3","fileIndex": 1,"minuteIndex": 0,"startSec": 0,"endSec": 60,"transcript": "Welcome back to the show. Today we are talking about…","speakers": ["SPEAKER_1", "SPEAKER_2"],"segments": [{ "start": 0.0, "end": 4.2, "content": "Welcome back to the show.", "confidence": 0.94, "speaker": "SPEAKER_1" }],"language": "en","task": "transcribe","audioDurationSec": 1834.2,"subtitleFiles": ["transcript-1.srt", "transcript-1.vtt", "transcript-1.txt"],"charged": true}
A speaker row:
{"rowType": "speaker","speaker": "SPEAKER_2","speakingTimeSec": 412.5,"speechShare": 0.38,"wordCount": 1093,"segmentCount": 141,"firstSpokeSec": 12.4,"sampleQuote": "The thing nobody tells you about launching is…"}
Pricing
Pay per result row (transcribed-minute event). A row is a transcribed minute, a chapter, a keyword, a file summary, a speaker summary or an opt-in sentence segment. Minute rows that carry speaker labels add a speaker-diarization surcharge on top of the row price, because diarization is several times more expensive to run; switch Speaker diarization off when you only need the words. Notice rows and subtitle files are free. Switch off Enrichment rows or Sentence segment rows to receive only the rows you need, and cap any run with Max result rows or a maximum cost in the run options.
Free-plan runs return up to 25 rows without speaker labels; any paid plan lifts both limits.
Notes and limits
- Direct file URLs only — pair with a downloader actor for YouTube, TikTok or other platform pages
- Up to 10 files per run and 500 MB per file; files longer than 60 minutes are transcribed in 60-minute parts, and speaker labels restart in each part
- Word-level timestamps are produced when speaker diarization is off; with diarization on, segments carry sentence-level timing
- Translate to English produces an English transcript without speaker labels
- Heavy crosstalk, phone-quality audio or very similar voices can blur speaker labels; setting Number of speakers helps
- Confidence scores are available on non-diarized transcripts
Only transcribe media you have the right to process. Files are downloaded into the run, transcribed, and discarded with it.