Trascrizioni che puoi interrogare
Un pulsante Trascrivi accanto all'audio nei documenti del tuo Sanity Studio. La trascrizione viene salvata nel documento come testo modificabile e frasi con i tempi, così GROQ, il tuo frontend e la tua ricerca la leggono come qualsiasi altro campo.
SANITY STUDIO 3+ · REACT 18+ · NODE 20+ · DA $0.20 PER ORA DI AUDIOInterrogala con GROQ
La trascrizione e le sue frasi con i tempi stanno nel documento, quindi GROQ e la GraphQL API le restituiscono insieme a tutto il resto.
Avanzamento visibile
Il campo mostra quanto audio è stato elaborato e sopravvive a un ricaricamento. Interrompi termina un job che non ti serve più.
Il controllo resta agli editor
La trascrizione è testo semplice che un editor può correggere, con la stessa cronologia e la stessa pubblicazione del resto del documento.
La chiave resta sul server
Lo Studio comunica con una sola route sul tuo server, che custodisce la chiave API. La chiave non arriva mai al browser.
Un plugin, un campo, una route
Aggiungi il plugin a sanity.config.ts, un campo vocalstack.transcript accanto all'audio nel tuo schema e la route di VocalStack al tuo frontend (una route Next.js, o qualsiasi server Node o edge). La route custodisce la chiave API, così non arriva mai al browser.
vocalstack.transcript accanto a un campo file audio, poi clicca Trascrivi.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' }),Si adatta a come l'hai costruito
Impostazioni predefinite sensate, e un aggancio per ogni punto in cui la tua configurazione è diversa.
handlerURLDove è montata la route di VocalStack sul tuo server. Lo Studio chiama solo questo indirizzo.
audioFieldQuale campo file del documento contiene l'audio. Per impostazione predefinita, il primo con un file audio.
spokenLanguageLa lingua parlata nell'audio. Omettila per rilevarla automaticamente.
fileURLL'indirizzo da cui VocalStack preleva l'audio. Per impostazione predefinita, l'indirizzo del file sulla CDN di Sanity; restituiscine uno firmato per i file privati.
allowedOriginsQuali indirizzi dello Studio possono chiamare la route.
Nessun costo per il plugin
Paghi VocalStack solo per l'audio che trascrivi, alla stessa tariffa della Dashboard e dell'API. Addebito al secondo, con un minimo di 5 minuti per trascrizione.
Ogni file audio che trascrivi, con parlanti, punteggiatura e tempi inclusi.