@charisma-ai/sdk
Version:
Charisma.ai SDK for Javascript (browser)
50 lines (49 loc) • 1.97 kB
TypeScript
import { AudioOutputsServicePlayOptions } from "./AudioOutputsService.js";
import { AudioTrack } from "./types.js";
export interface AudioManagerOptions {
duckVolumeLevel?: number;
sttService?: "browser" | "charisma/deepgram";
streamTimeslice?: number;
reconnectAttemptsTimeout?: number;
sttUrl?: string;
muteCharacterAudio?: boolean;
handleStartSTT?: () => void;
handleStopSTT?: () => void;
handleTranscript?: (transcript: string) => void;
handleInterimTranscript?: (transcript: string) => void;
handleError?: (error: string) => void;
handleDisconnect?: (message: string) => void;
handleConnect?: (message: string) => void;
debugLogFunction?: (message: string) => void;
}
declare class AudioManager {
private audioInputsService;
private audioInputsBrowser;
private audioOutputsService;
private audioTrackManager;
private duckVolumeLevel;
private sttService;
private microphoneIsOn;
private debugLogFunction;
constructor(options: AudioManagerOptions);
startListening: (timeout?: number) => void;
stopListening: () => void;
connect: (token: string, playerSessionId: string) => void;
disconnect: () => void;
resetTimeout: (timeout: number) => void;
browserIsSupported: () => boolean;
initialise: () => void;
playCharacterSpeech: (audio: ArrayBuffer, options: boolean | AudioOutputsServicePlayOptions) => Promise<void>;
get characterSpeechVolume(): number;
set characterSpeechVolume(volume: number);
get characterSpeechIsMuted(): boolean;
set characterSpeechIsMuted(value: boolean);
getCharacterSpeechAnalyserNode: () => AnalyserNode | null;
mediaAudioPlay: (audioTracks: AudioTrack[]) => void;
get mediaAudioVolume(): number;
set mediaAudioVolume(volume: number);
get mediaAudioIsMuted(): boolean;
set mediaAudioIsMuted(value: boolean);
mediaAudioStopAll: () => void;
}
export default AudioManager;