SDK JavaScript
Scribe: trascrizione vocale in tempo reale in JavaScript
Per una panoramica di Scribe e delle sue funzionalità, consulta la panoramica di Speech to Text . Per guide dettagliate sull’utilizzo, consulta lo streaming lato client.
Installazione
Usa la skill Speech to Text di ElevenLabs per trascrivere l’audio dal tuo assistente di programmazione IA:
Questa libreria può essere utilizzata in qualsiasi progetto basato su JavaScript. Se usi React, considera l’
hook useScribe, che offre
la gestione integrata dello stato e del ciclo di vita.
Utilizzo
Ecco un esempio minimo funzionante che si connette a Scribe e registra i risultati della trascrizione:
Ottenere un token
Scribe richiede un token monouso per l’autenticazione. Crea un endpoint API sul tuo server:
La tua chiave API ElevenLabs è sensibile. Non esporla mai al client. Genera sempre il token sul server.
Opzioni di connessione
Scribe.connect() accetta opzioni per il microfono o opzioni audio manuali. Entrambe condividono un insieme comune di opzioni di base.
Opzioni di base
Opzioni del microfono
Passa un oggetto microphone per trasmettere l’audio direttamente dal microfono dell’utente. La connessione gestisce automaticamente getUserMedia e la codifica audio.
Opzioni audio manuali
Passa audioFormat e sampleRate per inviare manualmente dati audio tramite connection.send().
Enum AudioFormat
Modalità microfono
Trasmetti l’audio direttamente dal microfono dell’utente:
Modalità audio manuale (trascrizione di file)
Trascrivi file audio preregistrati inviando manualmente dati audio:
RealtimeConnection
Scribe.connect() restituisce un’istanza di RealtimeConnection con i seguenti metodi.
on(event, listener)
Registra un listener di eventi. Consulta Eventi per i tipi di evento disponibili.
off(event, listener)
Rimuovi un listener di eventi registrato in precedenza.
send(data)
Invia dati audio a Scribe (solo modalità audio manuale).
Il campo previousText può essere inviato solo nel primo chunk audio di una sessione. Se lo invii nei
chunk successivi, si verifica un errore.
commit()
Esegui manualmente il commit della trascrizione corrente. Necessario solo quando usi CommitStrategy.MANUAL.
close()
Chiudi la connessione WebSocket e libera le risorse (stream del microfono, contesto audio).
Eventi
Registra listener di eventi con connection.on(event, listener). Tutti gli eventi sono disponibili come costanti nell’enum RealtimeEvents.
Eventi di trascrizione
Il tipo WordsItem contiene informazioni sulla temporizzazione a livello di parola:
Eventi di connessione
Eventi di errore
Tutti gli eventi di errore ricevono { error: string }.
Strategie di commit
Controlla quando vengono eseguiti i commit delle trascrizioni:
Per maggiori dettagli, consulta Trascrizioni e strategie di commit.
Esempio completo
Ecco un esempio completo che trascrive l’audio del microfono con una strategia di commit basata su VAD: