VocalStackin logoVocalStackin logo
VOCALSTACK SANITYLLE

Litteraatit, joita voi kysellä

Litteroi-painike äänen vieressä Sanity Studion dokumenteissa. Litteraatti tallennetaan dokumenttiin muokattavana tekstinä ja ajoitettuina lauseina, joten GROQ, frontendisi ja hakusi lukevat sitä kuten mitä tahansa muuta kenttää.

SANITY STUDIO 3+ · REACT 18+ · NODE 20+ · ALKAEN $0.20 ÄÄNITUNNILTA
acme.sanity.studio/structure/episode;42
AcmeStructureVision
ContentEpisodesHostsPages
EpisodesJakso 42: Rakentamista julkisestiEpisode 41: PricingEpisode 40: Hiring
OtsikkoJakso 42: Rakentamista julkisesti
Ääni
MP3episode-042.mp346.3 MB · audio/mpeg
Litteraatti
Litteroidaan31:06 / 48:20
Pysäytä
00:00Tervetuloa takaisin ohjelmaan. Tänään: varhainen julkaisu.
00:07Ensimmäinen versio oli karkea, ja juuri se oli tarkoitus.
Publish

Kysele sitä GROQilla

Litteraatti ja sen ajoitetut lauseet ovat dokumentissa, joten GROQ ja GraphQL-rajapinta palauttavat ne kaiken muun mukana.

Näkyvä edistyminen

Kenttä näyttää, kuinka paljon äänestä on valmiina, ja säilyy sivun uudelleenlatauksen yli. Pysäytä lopettaa työn, jota et enää tarvitse.

Toimittajat pitävät ohjat

Litteraatti on pelkkää tekstiä, jota toimittaja voi korjata, ja sillä on sama historia ja julkaisu kuin muulla dokumentilla.

Avain pysyy palvelimella

Studio on yhteydessä yhteen oman palvelimesi reittiin, jossa API-avain säilytetään. Avain ei koskaan päädy selaimeen.

KÄYTTÖÖNOTTO

Yksi lisäosa, yksi kenttä, yksi reitti

Lisää lisäosa tiedostoon sanity.config.ts, vocalstack.transcript-kenttä skeemaasi äänen viereen ja VocalStack-reitti frontendiisi (Next.js-reitti tai mikä tahansa Node- tai edge-palvelin). API-avain on reitin hallussa, joten se ei koskaan päädy selaimeen.

01Asenna lisäosa GitHubista ja lisää se Studion konfiguraatioon.
02Lisää VocalStack-reitti frontendiisi ja API-avaimesi sen ympäristömuuttujiin.
03Lisää vocalstack.transcript-kenttä äänitiedostokentän viereen ja klikkaa sitten Litteroi.
bash
npm install github:vocalstack/sanity-plugin
typescript
// 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' }),
ASETUKSET

Sopii siihen, miten olet sen rakentanut

Järkevät oletukset ja koukku jokaiseen kohtaan, jossa asetuksesi poikkeavat.

handlerURL

Kohta, johon VocalStack-reitti on liitetty palvelimellasi. Studio kutsuu vain tätä osoitetta.

audioField

Mikä dokumentin tiedostokenttä sisältää äänen. Oletuksena ensimmäinen, jossa on äänitiedosto.

spokenLanguage

Äänessä puhuttu kieli. Jätä pois, niin se tunnistetaan automaattisesti.

fileURL

Osoite, josta VocalStack hakee äänen. Oletuksena tiedoston osoite Sanityn CDN:ssä; palauta yksityisille tiedostoille allekirjoitettu osoite.

allowedOrigins

Mitkä Studion osoitteet saavat kutsua reittiä.

HINNOITTELU

Ei lisäosamaksua

Maksat VocalStackille vain litteroimastasi äänestä, samalla hinnalla kuin hallintapaneelissa ja API:ssa. Laskutus sekunnin tarkkuudella, vähimmäisveloitus 5 minuuttia litterointia kohden.

TIEDOSTOT$0.20tunnilta

Jokainen litteroimasi äänitiedosto, puhujat, välimerkit ja ajoitukset mukaan lukien.

Usein kysytyt kysymykset

Näytä GitHubissaLue README