A.I.VOICE Editor API の非公式Rustバインディング
Cargo.toml
に以下を追加してください:
[dependencies]
ai_voice = { git = "https://github.com/nusu-github/ai_voice-rs" }
基本的な使用例:
use anyhow::Result;
use ai_voice::AiVoice;
fn main() -> Result<()> {
let ai_voice = AiVoice::new()?;
// A.I.VOICEを起動
ai_voice.start_host()?;
ai_voice.connect()?;
// ボイスとパラメータを設定
ai_voice.set_current_voice_preset_name("琴葉 茜")?;
// 音声を生成
ai_voice.set_text("こんにちは")?;
ai_voice.play()?;
// 再生が終わるまで待機
while ai_voice.status()? != HostStatus::Idle {
std::hint::spin_loop();
}
// A.I.VOICEから切断
ai_voice.disconnect()?;
ai_voice.terminate_host()?;
Ok(())
}
詳細なAPIドキュメントについては、プロジェクトディレクトリでcargo doc --open
を実行してください。
このプロジェクトは以下の依存クレートを使用しています:
anyhow
: エラーハンドリングserde
: 構造体のシリアライズとデシリアライズserde_json
: JSONのシリアライズとデシリアライズwindows-rs
: Windows APIバインディング
貢献を歓迎いたします!プルリクエストを気軽に送ってください。
- 本ライブラリーは、株式会社エーアイ様、その他関係者とは一切関係がありません。
- 「A.I.VOICE」、「琴葉 茜」は株式会社エーアイの登録商標です。
A.I.VOICEの使用にあたっては、A.I.VOICEの利用規約を遵守してください。本ライブラリを使用して生成されたコンテンツの利用に関しては、ユーザー自身の責任において行ってください。
A.I.VOICEの詳細な使用方法や最新の情報については、上記の公式サイトやAPIドキュメントを参照してください。