Skip to content

bodhi-realtime-agent / GeminiLiveTranscribeSTTProvider

Class: GeminiLiveTranscribeSTTProvider ​

Defined in: src/transport/gemini-live-transcribe-stt-provider.ts:214

Provider-agnostic interface for pluggable speech-to-text providers.

VoiceSession creates the provider, calls configure() with the transport's audio format, then start(). Audio flows via feedAudio(); turn signals via commit()/handleInterrupted()/handleTurnComplete(). Results arrive via the onTranscript/onPartialTranscript callbacks.

Implements ​

Constructors ​

Constructor ​

new GeminiLiveTranscribeSTTProvider(config): GeminiLiveTranscribeSTTProvider

Defined in: src/transport/gemini-live-transcribe-stt-provider.ts:259

Parameters ​

config ​

GeminiLiveTranscribeSTTConfig | GeminiLiveTranscribeSTTProviderConfig

Returns ​

GeminiLiveTranscribeSTTProvider

Properties ​

onConnectionLifecycle? ​

optional onConnectionLifecycle?: (event) => void

Defined in: src/transport/gemini-live-transcribe-stt-provider.ts:218

See GeminiLiveTranscribeSTTOptions.onConnectionLifecycle.

Parameters ​

event ​

GeminiLiveTranscribeLifecycleEvent

Returns ​

void


onFatal? ​

optional onFatal?: (error) => void

Defined in: src/transport/gemini-live-transcribe-stt-provider.ts:220

See GeminiLiveTranscribeSTTOptions.onFatal.

Parameters ​

error ​

Error

Returns ​

void


onPartialTranscript? ​

optional onPartialTranscript?: (text) => void

Defined in: src/transport/gemini-live-transcribe-stt-provider.ts:216

Partial/interim transcription (streaming providers only). Replaces any previous partial for the same turn.

Parameters ​

text ​

string

Returns ​

void

Implementation of ​

STTProvider.onPartialTranscript


onTranscript? ​

optional onTranscript?: (text, turnId) => void

Defined in: src/transport/gemini-live-transcribe-stt-provider.ts:215

Final transcription of user speech.

Parameters ​

text ​

string

The transcribed text.

turnId ​

number | undefined

The turn this transcript belongs to (from commit()). Undefined when a streaming provider's VAD auto-commits before the framework calls commit().

Returns ​

void

Implementation of ​

STTProvider.onTranscript

Methods ​

commit() ​

commit(_turnId): void

Defined in: src/transport/gemini-live-transcribe-stt-provider.ts:362

Signal that the user's turn has ended (model started responding). For batch providers, this triggers transcription. For streaming providers, this may trigger a manual commit.

Parameters ​

_turnId ​

number

Returns ​

void

Implementation of ​

STTProvider.commit


configure() ​

configure(audio): void

Defined in: src/transport/gemini-live-transcribe-stt-provider.ts:306

Configure the audio format that feedAudio() will deliver. Called once before start(). The provider MUST resample or reject if it cannot handle the given format.

Parameters ​

audio ​

STTAudioConfig

Returns ​

void

Implementation of ​

STTProvider.configure


feedAudio() ​

feedAudio(base64Pcm): void

Defined in: src/transport/gemini-live-transcribe-stt-provider.ts:344

Feed audio data. Format matches the STTAudioConfig from configure().

Parameters ​

base64Pcm ​

string

Base64-encoded PCM audio chunk.

Returns ​

void

Implementation of ​

STTProvider.feedAudio


handleInterrupted() ​

handleInterrupted(): void

Defined in: src/transport/gemini-live-transcribe-stt-provider.ts:363

Signal that the current turn was interrupted by the user. Providers MUST preserve buffered audio for the next commit().

Returns ​

void

Implementation of ​

STTProvider.handleInterrupted


handleTurnComplete() ​

handleTurnComplete(): void

Defined in: src/transport/gemini-live-transcribe-stt-provider.ts:364

Signal a natural turn completion (model finished, no interruption). Batch providers SHOULD clear buffers. Streaming providers may no-op.

Returns ​

void

Implementation of ​

STTProvider.handleTurnComplete


start() ​

start(): Promise<void>

Defined in: src/transport/gemini-live-transcribe-stt-provider.ts:316

Resolves once the first session is set up; rejects (and resets) if setup fails or times out.

Returns ​

Promise<void>

Implementation of ​

STTProvider.start


stop() ​

stop(): Promise<void>

Defined in: src/transport/gemini-live-transcribe-stt-provider.ts:339

Stop the STT session (e.g. close WebSocket).

Returns ​

Promise<void>

Implementation of ​

STTProvider.stop

Built with VitePress