Transkrip yang bisa Anda kueri
Tombol Transkripsikan di samping audio dalam dokumen Sanity Studio Anda. Transkrip disimpan di dokumen sebagai teks yang dapat disunting dan kalimat bertimestamp, sehingga GROQ, frontend, dan pencarian Anda membacanya seperti field lainnya.
SANITY STUDIO 3+ · REACT 18+ · NODE 20+ · MULAI $0.20 PER JAM AUDIOKueri dengan GROQ
Transkrip dan kalimat bertimestamp-nya tersimpan di dokumen, sehingga GROQ dan API GraphQL mengembalikannya bersama semua data lain.
Progres yang terlihat
Field ini menunjukkan berapa banyak audio yang sudah selesai dan tetap bertahan setelah halaman dimuat ulang. Berhenti mengakhiri job yang tidak lagi Anda perlukan.
Editor tetap memegang kendali
Transkrip berupa teks biasa yang bisa dikoreksi editor, dengan riwayat dan alur publikasi yang sama seperti bagian dokumen lainnya.
Kunci tetap di server
Studio berkomunikasi dengan satu rute di server Anda sendiri, yang menyimpan kunci API. Kunci tidak pernah sampai ke browser.
Satu plugin, satu field, satu rute
Tambahkan plugin ke sanity.config.ts, field vocalstack.transcript di samping audio dalam skema Anda, dan rute VocalStack ke frontend Anda (rute Next.js, atau server Node maupun edge apa pun). Rute menyimpan kunci API, sehingga kunci tidak pernah sampai ke browser.
vocalstack.transcript di samping field file audio, lalu klik Transkripsikan.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' }),Menyesuaikan cara Anda membangunnya
Bawaan yang masuk akal, dan hook untuk setiap bagian penyiapan Anda yang berbeda.
handlerURLLokasi tempat rute VocalStack dipasang di server Anda. Studio hanya memanggil alamat ini.
audioFieldField file mana di dokumen yang berisi audio. Secara bawaan, field pertama yang berisi file audio.
spokenLanguageBahasa yang diucapkan dalam audio. Biarkan kosong untuk mendeteksinya secara otomatis.
fileURLAlamat tempat VocalStack mengambil audio. Secara bawaan, alamat file di CDN Sanity; kembalikan alamat bertanda tangan untuk file privat.
allowedOriginsAlamat Studio mana yang boleh memanggil rute.
Tanpa biaya plugin
Anda hanya membayar VocalStack untuk audio yang Anda transkripsikan, dengan tarif yang sama seperti Dasbor dan API. Ditagih per detik, dengan minimum 5 menit per transkripsi.
Setiap file audio yang Anda transkripsi, lengkap dengan pembicara, tanda baca, dan pewaktuan.