mirror of
https://github.com/Bijit-Mondal/VoiceAgent.git
synced 2026-03-02 18:36:39 +00:00
- Added ConversationManager for managing conversation history with configurable limits. - Implemented InputQueue for serial processing of input items. - Created SpeechManager for handling text-to-speech generation and streaming. - Developed StreamProcessor for processing LLM streams and forwarding events. - Added TranscriptionManager for audio transcription using AI SDK. - Introduced WebSocketManager for managing WebSocket connections and messaging. - Updated VoiceAgent to support new architecture and improved socket handling. - Refactored index files to export new core components.
28 lines
1.1 KiB
TypeScript
28 lines
1.1 KiB
TypeScript
import { EventEmitter } from "events";
|
|
import { type TranscriptionModel } from "ai";
|
|
export interface TranscriptionManagerOptions {
|
|
transcriptionModel?: TranscriptionModel;
|
|
maxAudioInputSize?: number;
|
|
}
|
|
/**
|
|
* Handles audio transcription using the AI SDK transcription model
|
|
* and validation of incoming audio data.
|
|
*/
|
|
export declare class TranscriptionManager extends EventEmitter {
|
|
private transcriptionModel?;
|
|
private maxAudioInputSize;
|
|
/** Callback to send messages over the WebSocket */
|
|
sendMessage: (message: Record<string, unknown>) => void;
|
|
constructor(options?: TranscriptionManagerOptions);
|
|
get hasTranscriptionModel(): boolean;
|
|
/**
|
|
* Transcribe audio data to text.
|
|
*/
|
|
transcribeAudio(audioData: Buffer | Uint8Array): Promise<string>;
|
|
/**
|
|
* Process incoming base64-encoded audio: validate, decode, transcribe.
|
|
* Returns the transcribed text, or null if invalid / empty.
|
|
*/
|
|
processAudioInput(base64Audio: string, format?: string): Promise<string | null>;
|
|
}
|
|
//# sourceMappingURL=TranscriptionManager.d.ts.map
|