@aituber-onair/voice
Version:
Voice synthesis library for AITuber OnAir
71 lines (70 loc) • 2.44 kB
TypeScript
import { Talk } from '../types/voice';
import { VoiceEngine } from './VoiceEngine';
/**
* VOICEVOX audio query parameter overrides
* Reference: https://voicevox.github.io/voicevox_engine/api/#tag/音声合成/operation/synthesis
*/
export interface VoiceVoxQueryParameterOverrides {
speedScale?: number;
pitchScale?: number;
intonationScale?: number;
volumeScale?: number;
prePhonemeLength?: number;
postPhonemeLength?: number;
pauseLength?: number | null;
pauseLengthScale?: number;
outputSamplingRate?: number;
outputStereo?: boolean;
}
/**
* VoiceVox voice synthesis engine
*/
export declare class VoiceVoxEngine implements VoiceEngine {
private apiEndpoint;
private queryOverrides;
private enableKatakanaEnglish?;
private enableInterrogativeUpspeak?;
private coreVersion?;
fetchAudio(input: Talk, speaker: string): Promise<ArrayBuffer>;
/**
* Adjust parameters according to emotion
*/
private adjustEmotionParameters;
/**
* Apply user-provided overrides to audio query payload
*/
private applyQueryOverrides;
/**
* Update override map while allowing undefined to reset values
*/
private updateQueryOverrides;
private hasOverride;
getTestMessage(textVoiceText?: string): string;
/**
* Set custom API endpoint URL
* @param apiUrl custom API endpoint URL
*/
setApiEndpoint(apiUrl: string): void;
/**
* Set query parameter overrides in batch
* @param overrides Audio query parameter overrides
*/
setQueryParameters(overrides: VoiceVoxQueryParameterOverrides): void;
setSpeedScale(speedScale?: number): void;
setPitchScale(pitchScale?: number): void;
setIntonationScale(intonationScale?: number): void;
setVolumeScale(volumeScale?: number): void;
setPrePhonemeLength(prePhonemeLength?: number): void;
setPostPhonemeLength(postPhonemeLength?: number): void;
setPauseLength(pauseLength?: number | null): void;
setPauseLengthScale(pauseLengthScale?: number): void;
setOutputSamplingRate(outputSamplingRate?: number): void;
setOutputStereo(outputStereo?: boolean): void;
setEnableKatakanaEnglish(enable?: boolean): void;
setEnableInterrogativeUpspeak(enable?: boolean): void;
setCoreVersion(coreVersion?: string): void;
/**
* Build endpoint URL with optional query parameters
*/
private buildUrl;
}