Skip to content

bodhi-realtime-agent / OpenAIRealtimeWhisperSTTProvider

Class: OpenAIRealtimeWhisperSTTProvider ​

Defined in: src/transport/openai-realtime-whisper-stt-provider.ts:51

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 OpenAIRealtimeWhisperSTTProvider(config): OpenAIRealtimeWhisperSTTProvider

Defined in: src/transport/openai-realtime-whisper-stt-provider.ts:85

Parameters ​

config ​

OpenAIRealtimeWhisperConfig

Returns ​

OpenAIRealtimeWhisperSTTProvider

Properties ​

onPartialTranscript? ​

optional onPartialTranscript?: (text) => void

Defined in: src/transport/openai-realtime-whisper-stt-provider.ts:83

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/openai-realtime-whisper-stt-provider.ts:82

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


supportedEncodings ​

readonly supportedEncodings: readonly ["pcm"]

Defined in: src/transport/openai-realtime-whisper-stt-provider.ts:52

Optional static declaration of which audio encodings the provider can consume. When omitted, defaults to ['pcm'] (today's behaviour). VoiceSession reads this at configure time and decides whether to feed raw PCM or encode to G.711 before calling feedAudio().

Implementation of ​

STTProvider.supportedEncodings

Methods ​

commit() ​

commit(turnId): void

Defined in: src/transport/openai-realtime-whisper-stt-provider.ts:179

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

Monotonically increasing turn counter for ordering.

Returns ​

void

Implementation of ​

STTProvider.commit


configure() ​

configure(audio): void

Defined in: src/transport/openai-realtime-whisper-stt-provider.ts:97

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/openai-realtime-whisper-stt-provider.ts:169

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/openai-realtime-whisper-stt-provider.ts:186

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/openai-realtime-whisper-stt-provider.ts:192

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/openai-realtime-whisper-stt-provider.ts:124

Start the STT session (e.g. open WebSocket).

Returns ​

Promise<void>

Implementation of ​

STTProvider.start


stop() ​

stop(): Promise<void>

Defined in: src/transport/openai-realtime-whisper-stt-provider.ts:147

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

Returns ​

Promise<void>

Implementation of ​

STTProvider.stop

Built with VitePress