@kajidog/mcp-tts-voicevox
Version:
VOICEVOX integration for MCP - Text-to-Speech server using VOICEVOX engine
145 lines • 3.62 kB
TypeScript
/**
* VOICEVOXクライアントの設定オブジェクト
*/
export interface VoicevoxConfig {
/** VOICEVOXエンジンのURL */
url: string;
/** デフォルトの話者ID */
defaultSpeaker: number;
/** デフォルトの再生速度 */
defaultSpeedScale?: number;
}
/**
* 音声合成用のクエリ
*/
export interface AudioQuery {
/** アクセント句のリスト */
accent_phrases: AccentPhrase[];
/** 全体の話速 */
speedScale: number;
/** 全体の音高 */
pitchScale: number;
/** 全体の抑揚 */
intonationScale: number;
/** 全体の音量 */
volumeScale: number;
/** 音声の前の無音時間 */
prePhonemeLength: number;
/** 音声の後の無音時間 */
postPhonemeLength: number;
/** 音声データの出力サンプリングレート */
outputSamplingRate: number;
/** 音声データをステレオ出力するか否か */
outputStereo: boolean;
/** AquesTalk風記法によるテキスト */
kana?: string;
}
/**
* 文字列またはAudioQueryのいずれかを受け入れる型
*/
export type StringOrAudioQuery = string | AudioQuery;
/**
* アクセント句ごとの情報
*/
export interface AccentPhrase {
/** モーラのリスト */
moras: Mora[];
/** アクセント箇所 */
accent: number;
/** 後ろに無音を付けるかどうか */
pause_mora?: Mora;
/** 疑問形かどうか */
is_interrogative?: boolean;
}
/**
* モーラ(子音+母音)ごとの情報
*/
export interface Mora {
/** 文字 */
text: string;
/** 子音の音素 */
consonant?: string;
/** 子音の音長 */
consonant_length?: number;
/** 母音の音素 */
vowel: string;
/** 母音の音長 */
vowel_length: number;
/** 音高 */
pitch: number;
}
/**
* 歌唱パラメータ
*/
export interface SingingParameters {
/** 全体の話速 */
speedScale?: number;
/** 全体の音高 */
pitchScale?: number;
/** 全体の抑揚 */
intonationScale?: number;
/** 全体の音量 */
volumeScale?: number;
}
/**
* 楽譜情報
*/
export interface Score {
/** 音符のリスト */
notes: Note[];
}
/**
* 音符ごとの情報
*/
export interface Note {
/** ID */
id?: string | null;
/** 音階 */
key?: number;
/** 音符のフレーム長 */
frame_length: number;
/** 音符の歌詞 */
lyric: string;
}
/**
* フレームごとの音声合成用のクエリ
*/
export interface FrameAudioQuery {
/** フレームごとの基本周波数 */
f0: number[];
/** フレームごとの音量 */
volume: number[];
/** 音素のリスト */
phonemes: FramePhoneme[];
/** 全体の音量 */
volumeScale: number;
/** 音声データの出力サンプリングレート */
outputSamplingRate: number;
/** 音声データをステレオ出力するか否か */
outputStereo: boolean;
}
/**
* 音素の情報
*/
export interface FramePhoneme {
/** 音素 */
phoneme: string;
/** 音素のフレーム長 */
frame_length: number;
/** 音符のID */
note_id?: string | null;
}
/**
* VOICEVOXエラークラス
*/
export declare class VoicevoxError extends Error {
/** ステータスコード */
statusCode: number;
/**
* VOICEVOXエラーを初期化する
* @param message エラーメッセージ
* @param statusCode ステータスコード
*/
constructor(message: string, statusCode: number);
}
//# sourceMappingURL=types.d.ts.map