VocalStack LogoVocalStack Logo
VOCALSTACK FOR CONTENTFUL

Audio your content model understands

A Transcribe button in the Contentful entry editor, for the audio your entries link to. The transcript is saved on the entry as editable text and timed sentences, so the Content Delivery API and GraphQL deliver it with everything else.

CONTENTFUL APP FRAMEWORK · ANY SPACE · FROM $0.20 AN HOUR OF AUDIO
app.contentful.com/spaces/acme/entries/42
AcmeContent modelContentMediaApps
←Episode
TitleEpisode 42: Building in public
Audio
MP3episode-042.mp346.3 MB · audio/mpeg
Transcript
00:00Welcome back to the show. Today: shipping early.
00:07The first version was rough, and that was the point.
STATUSDRAFTPublishVocalStack
Transcribing31:06 / 48:20
Stop

Part of the entry

The transcript is a JSON field on the entry, so the Content Delivery API, the Preview API and GraphQL return it with everything else.

Progress you can see

The sidebar shows how much audio is done and survives a reload. Stop ends a job you no longer want.

Editors stay in charge

Editors correct the transcript in the entry editor and publish it with the entry, through Contentful's usual workflow.

Your content model

Point the app at the content types and fields you already have. Nothing to migrate, and Contentful runs the app for you.

SETUP

Install it in your space

Create a custom app in your Contentful organization and deploy it from GitHub: Contentful hosts the app and the function that talks to VocalStack. Then add a JSON field for the transcript next to the audio, and paste a key or connect an account on the app's configuration screen.

01Create a custom app with the configuration screen, entry field and sidebar locations.
02Deploy the app and its function to Contentful with npm run deploy.
03Add a JSON field for the transcript, install the app in a space and click Transcribe.
bash
git clone https://github.com/vocalstack/contentful-app
cd contentful-app
npm install && npm run build
npm run deploy
OPTIONS

Fits the way you built it

Sensible defaults, and a setting for every place your content model differs.

apiKey

A VocalStack API key, kept as a secret parameter that only the app's function can read.

audioField

Which media field on the entry links the audio. By default, the first one that links an audio file.

spokenLanguage

The language spoken in the audio. Leave it out to detect it automatically.

contentTypes

Which content types show the Transcribe button, chosen on the app's configuration screen.

PRICING

No app fee

You pay VocalStack only for the audio you transcribe, on the same rate as the Dashboard and the API. Billed per second, with a minimum of 5 minutes per transcription.

FILES$0.20an hour

Every audio file you transcribe, with speakers, punctuation and timings included.

Frequently Asked Questions

View on GitHubRead the README