JavaScript SDK
Scribe: realtime spraak-naar-teksttranscriptie in JavaScript
Voor een overzicht van Scribe en de mogelijkheden ervan, zie het overzicht van Speech to Text . Zie voor stapsgewijze gebruikshandleidingen streaming aan de clientzijde .
Installatie
Gebruik de ElevenLabs speech-to-text-skill om audio te transcriberen met je AI-codingassistent:
Deze bibliotheek kan worden gebruikt in elk project op basis van JavaScript. Als je React gebruikt, overweeg dan de
useScribe hook, die ingebouwd
statebeheer en lifecycleafhandeling biedt.
Gebruik
Hier is een minimaal werkend voorbeeld dat verbinding maakt met Scribe en transcriptieresultaten logt:
Een token verkrijgen
Scribe vereist een token voor eenmalig gebruik voor authenticatie. Maak een API-endpoint op je server:
Je ElevenLabs API-sleutel is gevoelig. Stel deze nooit bloot aan de client. Genereer het token altijd op de server.
Verbindingsopties
Scribe.connect() accepteert microfoonopties of handmatige audio-opties. Beide delen een gemeenschappelijke set basisopties.
Basisopties
Microfoonopties
Geef een microphone-object door om audio rechtstreeks vanaf de microfoon van de gebruiker te streamen. De verbinding handelt getUserMedia en audiocodering automatisch af.
Handmatige audio-opties
Geef audioFormat en sampleRate door om audiogegevens handmatig te versturen via connection.send().
AudioFormat-enum
Microfoonmodus
Stream audio rechtstreeks vanaf de microfoon van de gebruiker:
Handmatige audiomodus (bestandstranscriptie)
Transcribeer vooraf opgenomen audiobestanden door audiogegevens handmatig te versturen:
RealtimeConnection
Scribe.connect() retourneert een RealtimeConnection-instance met de volgende methoden.
on(event, listener)
Registreer een event listener. Zie Events voor beschikbare eventtypen.
off(event, listener)
Verwijder een eerder geregistreerde event listener.
send(data)
Verstuur audiogegevens naar Scribe (alleen handmatige audiomodus).
Het veld previousText kan alleen worden verstuurd in het eerste audiochunk van een sessie. Het versturen ervan in
volgende chunks leidt tot een fout.
commit()
Commit de huidige transcriptie handmatig. Alleen nodig bij gebruik van CommitStrategy.MANUAL.
close()
Sluit de WebSocket-verbinding en ruim resources op (microfoonstream, audiocontext).
Events
Registreer event listeners met connection.on(event, listener). Alle events zijn beschikbaar als constanten in de RealtimeEvents-enum.
Transcriptie-events
Het type WordsItem bevat timinginformatie op woordniveau:
Verbindings-events
Fout-events
Alle fout-events ontvangen { error: string }.
Commitstrategieën
Bepaal wanneer transcripties worden gecommit:
Zie Transcripten en commitstrategieën voor meer details.
Volledig voorbeeld
Hier is een volledig voorbeeld dat microfoonaudio transcribeert met een op VAD gebaseerde commitstrategie: