Transcripts die je kunt bevragen
Een knop Transcriberen naast de audio in je Sanity Studio-documenten. Het transcript wordt in het document opgeslagen als bewerkbare tekst en getimede zinnen, zodat GROQ, je frontend en je zoekfunctie het lezen zoals elk ander veld.
SANITY STUDIO 3+ · REACT 18+ · NODE 20+ · VANAF $0.20 PER UUR AUDIOBevraag het met GROQ
Het transcript en de getimede zinnen staan in het document, dus GROQ en de GraphQL-API geven ze terug met al het andere.
Voortgang die je ziet
Het veld toont hoeveel audio klaar is en blijft staan na herladen. Met Stop beëindig je een taak die je niet meer nodig hebt.
Redacteuren houden de regie
Het transcript is platte tekst die een redacteur kan corrigeren, met dezelfde geschiedenis en publicatie als de rest van het document.
De sleutel blijft op de server
De Studio praat met één route op je eigen server, die de API-sleutel bewaart. De sleutel komt nooit in de browser.
Eén plugin, één veld, één route
Voeg de plugin toe aan sanity.config.ts, een vocalstack.transcript-veld naast de audio in je schema, en de VocalStack-route aan je frontend (een Next.js-route, of elke Node- of edge-server). De route bewaart de API-sleutel, zodat die nooit in de browser komt.
vocalstack.transcript-veld toe naast een audiobestandsveld en klik op Transcriberen.npm install github:vocalstack/sanity-plugin// app/api/vocalstack/[...path]/route.ts
import { createVocalStackHandler } from '@vocalstack/sanity/server'
// The key is read from VOCALSTACK_API_KEY
const handler = createVocalStackHandler({ sanity: { projectId, dataset, token } })
export { handler as GET, handler as OPTIONS, handler as POST }
// sanity.config.ts
import { vocalstack } from '@vocalstack/sanity'
export default defineConfig({
plugins: [vocalstack({ handlerURL: 'https://www.example.com/api/vocalstack' })],
})
// schemas/episode.ts
defineField({ name: 'audio', type: 'file' }),
defineField({ name: 'transcript', type: 'vocalstack.transcript' }),Past bij hoe jij het hebt gebouwd
Verstandige standaarden, en een hook voor elke plek waar jouw opzet afwijkt.
handlerURLWaar de VocalStack-route op je server staat. De Studio roept alleen dit adres aan.
audioFieldWelk bestandsveld in het document de audio bevat. Standaard het eerste met een audiobestand.
spokenLanguageDe taal die in de audio wordt gesproken. Laat weg om die automatisch te herkennen.
fileURLHet adres waar VocalStack de audio ophaalt. Standaard het adres van het bestand op het CDN van Sanity; geef een ondertekend adres terug voor privébestanden.
allowedOriginsWelke Studio-adressen de route mogen aanroepen.
Geen pluginkosten
Je betaalt VocalStack alleen voor de audio die je transcribeert, tegen hetzelfde tarief als het Dashboard en de API. Per seconde gefactureerd, met een minimum van 5 minuten per transcriptie.
Elk audiobestand dat je transcribeert, inclusief sprekers, interpunctie en tijdcodes.