Importing a Transcript
Already have transcripts from another service? Import them into your episodes instead of paying to transcribe them again. Importing is free: no provider is called, and you don’t need an API key.
An imported transcript behaves like a transcribed one. It follows your transcript visibility, goes into the feed, shows on the episode page and is found by site search. Chapter suggestions work when it has timestamps.
Where It Is
Open the episode in Benecaster → Episodes and go to its Transcript tab. In the Transcript section, click Import transcript. Once the episode has a transcript the button reads Replace transcript. While a transcription is queued or processing the button is unavailable, with a note saying why.
An episode that has never been saved reads Save the episode first, then request or import its transcript.
On an episode with files under Tier Audio Variants, each audio has its own section and button, so a transcript goes with the audio you import it into.
Three Ways to Bring One In
The window has three tabs.
Upload File
Choose a file of up to 10 MB:
| Format | Timestamps |
|---|---|
SRT (.srt) |
Kept |
WebVTT (.vtt) |
Kept |
Plain text (.txt) |
None |
OpenAI Whisper JSON (.json) |
Kept |
PDF can’t be imported. If your transcripts exist only as PDFs, transcribing the episode again gives you a better result, with timestamps.
Paste Text
Paste the transcript and choose Auto-detect, SRT, VTT or Plain text. Auto-detect reads it as WebVTT if it starts with WEBVTT, as SRT if it has numbered cues with time ranges, and as plain text otherwise.
From RSS Feed
Enter a feed’s address. Benecaster finds this episode in that feed by the GUID it had in the feed it was imported from, its own GUID, or its exact title. If the feed lists several transcripts for the episode, you choose one, with SRT and WebVTT offered first. If there is none, you see No transcript found in this feed for this episode.
Private feeds work. Use the private address with its token, a login written into the address, or the Username and Password boxes for an HTTP login. They are used only for that one fetch, are never saved, and are never sent to another host. A feed behind a login page, cookies or a Patreon-style sign-in can’t be fetched, so download the file and use Upload file instead.
Before It Is Saved
Preview shows the first 10 lines as Benecaster read them, so you can check them first. Replacing a transcript asks you to confirm, and clears the old transcript’s corrections and formatting.
What Changes Without Timestamps
A plain-text import keeps its layout and its speaker labels as you wrote them, but it has no timestamps. So it has no click-to-jump and no chapter suggestions, and it exports as plain text and PDF only. Its link in the episode, and its <podcast:transcript> tag, point at its .txt file with the type text/plain.
If Your Audio Has Inserted Ads
A timed transcript’s timestamps can drift from what your listeners hear if your audio is on another site that inserts ads dynamically. Each inserted ad shifts everything after it by the ad’s length. The window warns you when the audio is external. Paid feeds rarely carry ads, so this is uncommon, but check a few timestamps if yours do.
The Episode’s Language
Importing sets the episode’s transcript Language (episode editor, More → Podcasting 2.0) when the source says what it is: a Language: line in a WebVTT header, the language in a Whisper JSON file, or the language on the feed’s tag with From RSS feed. If both the file and the feed tag say, the file wins.
SRT and plain text have no language field of their own, so theirs comes only from a feed. A source that says nothing leaves Language as it was, including on Replace transcript. A transcript link you set yourself keeps its language.
A Link You Set Yourself
A transcript link you entered yourself is kept, as it is for a transcription. The imported transcript is stored and shown on the page, but isn’t linked in the feed in place of yours.
When Import Is Unavailable
Import stops while Transcription is switched off for a show. Transcripts you have already imported keep being served, as every transcript does.
Moving From Another Platform
The Migration Wizard can bring a whole feed’s transcripts across in one step. It never replaces a transcript an episode already has.
For Developers
To import from your own add-on, use benecaster_import_episode_transcript(): see Import a transcript into an episode from your add-on. To react to one arriving, see React when a transcript is imported.
See Also
Need this built rather than just documented? See our services →
Last updated