Podcast & Audio Transcriber: Speech to Text, SRT
Pricing
Pay per event
Podcast & Audio Transcriber: Speech to Text, SRT
Transcribe podcast RSS feeds and audio or video URLs to text, timestamped segments, SRT and VTT subtitles. Optional: translate to any language (text + SRT) and get YouTube chapters, a summary and keywords. Whisper large-v3-turbo, 99 languages. $0.004 per audio minute.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Brasspage
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Share
Podcast transcription and speech to text: audio and video to text, SRT and VTT
Transcribe podcast RSS feeds and direct audio or video file URLs to text with OpenAI's open Whisper large-v3-turbo model. For every file you get the full transcript, timestamped segments, SRT and VTT subtitles, the detected language, the duration and the word count.
Price: $0.004 per audio minute. A 1-hour podcast episode costs $0.24. You pay only for the minutes that the Actor transcribes. On the Apify free plan, you can try the first 5 audio minutes of each run, up to 30 free minutes per month (see Limits).
New: translation and chapters
Both are optional and off by default.
- Translate to any language (
translateTo): set a language code such ases,de,fr,jaorpt-BR. You get the translated text and a translated SRT file with the same timestamps, ready to upload as a second subtitle track. Useento get English subtitles for a podcast in another language. $0.002 per audio minute. - Chapters, summary and keywords (
chapters: true): 5 to 15 chapter markers with titles and start times, as YouTube description lines (00:00 Intro), plus a 3-sentence summary and 5 keywords. Paste the lines into a YouTube description or your show notes. $0.01 per file.
When you turn on both, the chapters, summary and keywords are in the translation language.
What you get
For each episode or file, one row with:
- The full transcript, plus the detected language, the duration and the word count.
- Timestamped segments (start, end, text).
- SRT and VTT subtitles, in the row and as files to download, with a
.txttranscript. - Episode details for podcast feeds: show title, episode title, GUID and publish date.
- Optional extras: a translation with its own SRT file, and chapters, a summary and keywords.
- No charge for failures: a file that fails gives a row with an
errorfield.
Quick start
- Keep the prefilled NPR News Now feed, or paste your podcast RSS feed or a direct audio or video URL.
- Optional: set Translate to (for example
es) and turn on Chapters, summary and keywords. - Click Start. A 5-minute episode is ready in about 10 seconds and costs about $0.03.
- Read the text in the Output tab, or download the
.txt,.srtand.vttfiles.
What you can do with it
- Podcast transcription: give a feed URL and get the latest N episodes as text. Schedule it with "Only new episodes since last run" to transcribe each new episode as it comes out.
- Video to text: send MP4, MOV or WEBM links. The Actor takes the audio track only. Files can be up to 2 GB.
- Subtitles: download ready-to-use
.srtand.vttfiles for video players, YouTube Studio uploads or editing tools. - Subtitles in other languages: translate the SRT to Spanish, German, Japanese or any other language, with the original timestamps.
- Show notes and YouTube chapters: get chapter lines, a summary and keywords for each episode.
- AI agents, RAG and LLM pipelines: clean text plus
{start, end, text}segments in JSON. Call it from the Apify API, the Apify MCP server, LangChain, n8n, Make or Zapier. - Content repurposing and SEO: turn episodes into show notes, blog posts, quotes and searchable archives.
- Research and monitoring: track what is said on news, finance or industry podcasts.
How it works
- You give podcast RSS feed URLs, direct media file URLs, or upload a file.
- For feeds, the Actor reads the public RSS feed and takes the newest episodes (you can filter by date).
- The Actor downloads the file from public hosts only, and ffmpeg converts the audio to 16 kHz mono. Long files are split into 20-minute parts and the timestamps are joined again, so 3-hour episodes work.
- Whisper large-v3-turbo transcribes the audio. 99 languages are supported, with automatic language detection.
- Optional: an open LLM (gpt-oss-20b) translates the segments in batches and keeps each segment's timestamps, and writes the chapters, summary and keywords.
- You get one dataset row per file, plus
.txt,.srtand.vttfiles (and the translated.txtand.srt) in the run's key-value store.
Input
| Field | Description |
|---|---|
podcastRssUrls | Public podcast RSS feed URLs. |
maxEpisodesPerFeed | How many of the newest episodes to transcribe per feed (default 1). |
publishedAfter | Skip episodes published before this date (YYYY-MM-DD). |
onlyNewSinceLastRun | Skip episodes that an earlier run already transcribed. Use with a schedule. |
mediaUrls | Direct links to MP3, M4A, AAC, WAV, OGG, OPUS, FLAC, MP4, MOV, MKV or WEBM files. Apify key-value store record URLs also work (private stores in your account too). |
audioFile | Upload one file from your computer. |
language | ISO-639-1 code such as en, es or de. Empty means automatic detection. Setting it improves accuracy. |
translateTo | Optional. Language code to translate into, such as es, de, ja or pt-BR. Empty means no translation. |
chapters | Optional. true adds chapters, a 3-sentence summary and 5 keywords. |
maxAudioMinutesPerRun | Safety limit: total audio minutes per run (default 600). A file that goes over the limit is cut at the limit. |
Example input
{"podcastRssUrls": ["https://feeds.npr.org/500005/podcast.xml"],"maxEpisodesPerFeed": 3,"mediaUrls": ["https://example.com/interview.mp4"],"language": "en","translateTo": "es","chapters": true}
https://feeds.npr.org/500005/podcast.xml is NPR News Now, a public 5-minute news podcast. It is a quick, cheap way to try the Actor.
Output
One dataset item per file:
{"sourceUrl": "https://feeds.npr.org/500005/podcast.xml","feedTitle": "NPR News Now","episodeTitle": "NPR News: 10-15-2026 1AM EDT","episodeGuid": "nx-s1-20261015-0100","publishedAt": "2026-10-15T01:00:00-04:00","mediaUrl": "https://.../default.mp3","durationSec": 318.48,"language": "English","wordCount": 812,"text": "Live from NPR News, I'm ...","segments": [{ "start": 0.0, "end": 4.2, "text": "Live from NPR News, I'm ..." }],"srt": "1\n00:00:00,000 --> 00:00:04,200\nLive from NPR News, I'm ...\n","vtt": "WEBVTT\n\n00:00:00.000 --> 00:00:04.200\nLive from NPR News, I'm ...\n","txtUrl": "https://api.apify.com/v2/key-value-stores/.../records/transcript-0001.txt","srtUrl": "https://api.apify.com/v2/key-value-stores/.../records/transcript-0001.srt","vttUrl": "https://api.apify.com/v2/key-value-stores/.../records/transcript-0001.vtt","minutesBilled": 6,"model": "whisper-large-v3-turbo","llmModel": "openai/gpt-oss-20b","translatedLanguage": "es","translatedText": "En vivo desde NPR News, soy ...","translatedSrt": "1\n00:00:00,000 --> 00:00:04,200\nEn vivo desde NPR News, soy ...\n","translatedTxtUrl": "https://api.apify.com/v2/key-value-stores/.../records/transcript-0001.es.txt","translatedSrtUrl": "https://api.apify.com/v2/key-value-stores/.../records/transcript-0001.es.srt","translationMinutesBilled": 6,"chapters": [{ "start": 0, "title": "Titulares" },{ "start": 92, "title": "Investigación federal" }],"chaptersText": "00:00 Titulares\n01:32 Investigación federal","summary": "Three sentences about the episode.","keywords": ["economía", "Ucrania", "Tennessee", "encuesta", "Starlink"],"transcribedAt": "2026-10-15T05:12:00+00:00"}
The translation and chapter fields appear only when you turn those options on. If a translation or the chapters fail, the row has a translationError or chaptersError field, you still get the transcript, and you are not charged for the failed part.
If a file or feed fails (for example a 404, or a URL that is not media), you get a row with an error field and you are not charged for it.
Pricing
Pay per event. There is no monthly fee.
| Event | Price |
|---|---|
| Actor start | $0.005 per run |
audio-minute | $0.004 per started minute of audio, per file |
translation-minute | $0.002 per started minute of audio, per translated file |
chapters-run | $0.01 per file with chapters, summary and keywords |
Examples: a 5-minute news episode costs about $0.025. A 45-minute interview costs $0.185, or $0.285 with a translation and chapters. 100 hours of audio cost $24.
Set Maximum cost per run in the run options to cap your spending. The Actor stops before a file that does not fit in the remaining budget.
Limits
- Max audio minutes per run (
maxAudioMinutesPerRun, default 600 = 10 hours). The run stops when it reaches this total. A file that goes over the limit is cut at the limit, and you pay only for the minutes you get. The last dataset row has anotethat tells you the limit was reached. Raise the limit or start another run for more. - Apify free plan: free trial of 5 audio minutes per run and 30 free minutes per month. On the free plan, the Actor transcribes only the first 5 audio minutes of each run, then stops with a note. Each audio minute, translated minute and chapters run counts as one free minute. After 30 in a calendar month (UTC), runs return only a note until the 1st of the next month. To get full transcripts of all your files, upgrade to a paid Apify plan. Paid plans have no trial limit.
- With Only new episodes since last run, an episode that was cut is not marked as done, so a later run transcribes all of it.
- Translation and chapters use only the transcribed minutes. On the free plan, you can try them on the 5 trial minutes of each run.
FAQ
Can I transcribe YouTube, Spotify, TikTok or Instagram links? No. The terms of those platforms do not allow downloading their media, so the Actor rejects those page URLs. Use direct media file URLs or public podcast RSS feeds. Most podcasts that are on Spotify or Apple Podcasts also publish a public RSS feed. Search for "
Which languages are supported?
All 99 Whisper languages, for example English, Spanish, German, French, Portuguese, Italian, Japanese, Chinese, Hindi and Arabic. Set language when you know it.
How long can a file be?
Files can be up to 2 GB. A run transcribes up to 600 audio minutes by default; raise maxAudioMinutesPerRun for more. Long files are split into 20-minute parts. Each part is sent separately, and the timestamps are joined back into one timeline.
How good is the translation? Good for clear speech in widely used languages. The model translates each subtitle line separately, so every translated line keeps its original timestamps. Names, numbers and technical terms can need a quick check before you publish.
Can the audio trick the AI that writes chapters or translations? The transcript goes to the model only as data, with fixed instructions. The model has no tools and no internet access. The Actor accepts only the expected JSON shape and drops everything else, for example extra fields, wrong line counts, or links and HTML that are not in the transcript.
How fast is it? Usually 1 to 2 minutes for a 1-hour episode. A 5-minute episode takes about 10 seconds.
How accurate is it? Whisper large-v3-turbo gives near state-of-the-art accuracy for clear speech. Music, heavy cross-talk and low-quality phone audio reduce accuracy. Speaker labels (diarization) are not included.
How do I use it from an AI agent or my code?
Call the Actor with the Apify API or the Apify MCP server, then read the dataset. The text field is ready for an LLM, and segments let you cite timestamps. To give an AI agent this one tool, connect it to the Apify MCP server at https://mcp.apify.com?tools=brasspage/media-transcriber.
Who is responsible for the rights to the audio? You are. Only transcribe media that you own, that is public, or that you have permission to process. The Actor does not store your media after the run, and it does not try to get around paywalls or logins.
Something does not work? Open an issue on the Issues tab with the run URL. Fixes are usually quick.
Related Actors
Other tools from the same developer, with the same pay-per-result pricing:
- ATS Jobs API: every open job from Greenhouse, Lever, Ashby, SmartRecruiters, Workable, Recruitee and Personio boards, with new-job alerts.
- Google Sheets Export & Sync: send the results of any Actor to a Google Sheet (append, replace or upsert).
- Website Contacts & Tech Stack: public emails, phones, social links, CMS and pixels for a list of websites.
- PDF OCR to Markdown: scanned PDFs and images to clean Markdown with tables, for $0.006 per page.