Audio & Video Transcriber – Whisper Speech to Text, SRT, VTT avatar

Audio & Video Transcriber – Whisper Speech to Text, SRT, VTT

Pricing

from $6.00 / 1,000 transcribed minutes

Go to Apify Store
Audio & Video Transcriber – Whisper Speech to Text, SRT, VTT

Audio & Video Transcriber – Whisper Speech to Text, SRT, VTT

Transcribe audio and video files and podcast RSS feeds with Whisper: 99 languages, translation to English, timestamps, SRT/VTT subtitles, word timings and paragraphs. $0.006 per minute.

Pricing

from $6.00 / 1,000 transcribed minutes

Rating

0.0

(0)

Developer

Phuc Tiet

Phuc Tiet

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

7 days ago

Last modified

Categories

Share

Audio & Video Transcriber – Whisper Speech to Text, SRT & VTT

Turn audio and video files and podcast RSS feeds into accurate text, with timestamps and ready-made SRT / VTT subtitles. The open-source OpenAI Whisper model runs inside the Actor (via faster-whisper), so your audio is never sent to a third-party API.

  • 🎙️ Any audio or video file: MP3, M4A, AAC, WAV, OGG, OPUS, FLAC, MP4, MOV, WEBM, MKV, AVI and more (the audio track is extracted automatically).
  • 📻 Podcast feeds: paste an RSS feed URL and the newest episodes are transcribed, with episode title, date and GUID.
  • 🌍 99 languages with automatic language detection, or translate any language to English.
  • ⏱️ Timestamped segments, optional word-level timestamps, and SRT/VTT files for YouTube uploads, video editors and accessibility.
  • 🤖 Made for AI pipelines. Clean paragraph text for LLMs, RAG, summarisation, show notes, meeting minutes and search indexing. Easy to call from AI agents via the Apify API/MCP.
  • 💸 From $0.006 per audio minute ($0.36/hour), billed only for files that were transcribed.

How to use

  1. Add one or more direct media URLs (e.g. https://example.com/episode-12.mp3) or podcast RSS feed URLs.
  2. Pick a model: base (fast, great for clear speech) or small (more accurate for accents, noise and non-English).
  3. Run. Each file becomes one dataset row; subtitles are saved to the key-value store.
{
"mediaUrls": [
"https://upload.wikimedia.org/wikipedia/commons/c/c4/GWBush_Oval_Office_Address_20010911-1-.ogg",
"https://feeds.npr.org/510289/podcast.xml"
],
"model": "base",
"maxEpisodesPerFeed": 2
}

Input options

FieldDefaultWhat it does
mediaUrls–Audio/video file URLs or podcast RSS feeds (required)
modelbasebase = fast, small = more accurate
languageautoISO code (en, de, es, ja...) or empty to detect
tasktranscribetranslate outputs English for non-English speech
maxEpisodesPerFeed3Newest episodes taken from each RSS feed
includeSegmentstrueTimestamped segments in the output
saveSubtitlestrueSave .srt and .vtt files
wordTimestampsfalsePer-word timing and confidence
skipSilencetrueVoice-activity detection skips silence/music (fewer hallucinations)
maxDurationMinutes180Longer files are skipped, not charged
maxFileSizeMb500Larger downloads are stopped, not charged

Output

{
"url": "https://upload.wikimedia.org/.../GWBush_Oval_Office_Address_20010911-1-.ogg",
"status": "ok",
"model": "base",
"language": "en",
"languageProbability": 0.992,
"durationSeconds": 262.1,
"billedMinutes": 5,
"wordCount": 592,
"text": "Good evening. Today, our fellow citizens, our way of life, our very freedom, came under attack...",
"srtUrl": "https://api.apify.com/v2/key-value-stores/.../records/transcript-1.srt",
"vttUrl": "https://api.apify.com/v2/key-value-stores/.../records/transcript-1.vtt",
"segments": [ { "start": 0.0, "end": 6.4, "text": "Good evening." } ]
}

Podcast episodes also include podcastTitle, episodeTitle, episodePublished, episodeGuid and episodeLink. Failed files have status: "error" with an errorCode (HTTP_404, NOT_MEDIA, UNSUPPORTED_MEDIA, TOO_LONG, TOO_LARGE, PLATFORM_NOT_SUPPORTED...) and are not charged. A run summary is saved as OUTPUT.

Pricing

Pay per event, plus a tiny Actor start fee ($0.00005 per GB of memory):

ModelPrice per audio minutePer hour of audio
base (fast)$0.006$0.36
small (more accurate)$0.014$0.84
  • Billed per started minute of each successfully transcribed file (a 4 min 22 s file = 5 minutes).
  • Compute is included, with no separate platform usage charge for the transcription.
  • Failed downloads, unsupported files, files over your limits and refused links are free.
  • If you set a maximum cost per run, files that would exceed it are skipped before transcription.

For comparison, transcription Actors on the Store typically charge $0.01–$0.05 per audio minute.

Accuracy and speed (honest)

  • On clear speech, base is close to human-quality for English. small is clearly better for accents, crosstalk, background noise and most non-English languages.
  • Typical processing on the default 4 GB memory: base ≈ 6 s per audio minute, small ≈ 17 s per audio minute. Increase memory to 8–16 GB for faster runs on long files (more CPU cores; same price).
  • Not included: speaker diarisation (who said what), and live/streaming audio.

Supported sources, and what is not supported

  • ✅ Direct file links on your own server, cloud storage (S3/GCS/Dropbox direct links), CDNs, and podcast hosting enclosures.
  • ❌ Pages on YouTube, TikTok, Instagram, Facebook, X, Vimeo, Spotify, SoundCloud and similar platforms. Their terms do not allow automated media downloads, so these links are refused with PLATFORM_NOT_SUPPORTED.
  • Only transcribe media you own or have the right to process.

FAQ

Is my audio sent to OpenAI or another API? No. The Whisper model runs inside the Apify container, and files are deleted after processing.

Can I get subtitles for a video? Yes. Pass the video file URL; srtUrl/vttUrl link to subtitle files you can download or attach.

Can it run on a schedule for a podcast? Yes. Use an Apify Schedule with your feed URL and maxEpisodesPerFeed: 1 to transcribe each new episode.

Which Whisper models? base and small (MIT licence), int8 quantised CTranslate2 builds via faster-whisper.