belt CLIスキルをインストール:
npx skills add belt-sh/cli
AI音声生成
inference.sh CLI経由で自然なAI音声を生成します。

クイックスタート
inference.sh CLI(
belt)が必要です。インストール手順
belt login
# 音声を生成
belt app run infsh/kokoro-tts --input '{
"prompt": "こんにちは!これは自然で魅力的なAI生成音声です。",
"voice": "af_sarah"
}'
利用可能なモデル
| モデル | アプリID | 最適な用途 |
|---|---|---|
| Inworld TTS-2 | inworld/text-to-speech-2 | 100以上の言語、感情/非言語ステアリング、配信モード |
| Inworld TTS 1.5 Max | inworld/text-to-speech-1-5-max | 低レイテンシ(<200ms)、15言語 |
| Inworld TTS 1.5 Mini | inworld/text-to-speech-1-5-mini | 超低レイテンシ(約120ms)、15言語、リアルタイム |
| ElevenLabs TTS | elevenlabs/tts | プレミアム品質、22以上の音声、32言語 |
| ElevenLabs ボイスチェンジャー | elevenlabs/voice-changer | 既存の音声録音を変換 |
| Kokoro TTS | infsh/kokoro-tts | 自然で多様な音声 |
| DIA | infsh/dia-tts | 会話的で表現豊か |
| Chatterbox | infsh/chatterbox | カジュアル、エンターテイメント |
| Higgs | infsh/higgs-tts | プロフェッショナルなナレーション |
| VibeVoice | infsh/vibevoice | 感情表現の幅広さ |
Kokoro音声ライブラリ
アメリカ英語
| 音声ID | 性別 | スタイル |
|---|---|---|
af_sarah | 女性 | 暖かく、友好的 |
af_nicole | 女性 | プロフェッショナル |
af_sky | 女性 | 若々しい |
am_michael | 男性 | 権威的 |
am_adam | 男性 | 会話的 |
am_echo | 男性 | 明瞭でニュートラル |
イギリス英語
| 音声ID | 性別 | スタイル |
|---|---|---|
bf_emma | 女性 | 洗練された |
bf_isabella | 女性 | 暖かい |
bm_george | 男性 | クラシック |
bm_lewis | 男性 | モダン |
Inworld TTS — キャラクター&感情音声
Inworld TTS-2は、キャラクターボイス、ゲーム、表現豊かなスピーチのために特別に設計されています。感情、非言語表現、配信コントロールには[ブラケット]をインラインで使用します:
# 感情ステアリングを使った表現豊かなキャラクターボイス
belt app run inworld/text-to-speech-2 --input '{
"text": "[excited] わあ、まさか古代の遺物を見つけるなんて! [gasp] 信じられない… [whisper] これは私たちだけの秘密にしよう。",
"voice_id": "Sarah",
"delivery_mode": "CREATIVE"
}'
# 安定した配信の落ち着いたナレーター
belt app run inworld/text-to-speech-2 --input '{
"text": "太陽が山の向こうに沈み、長い影が谷に落ちた。新たな章が始まろうとしていた。",
"voice_id": "Sarah",
"delivery_mode": "STABLE"
}'
配信モード: STABLE(一貫性、ナレーション)、BALANCED(自然、デフォルト)、CREATIVE(表現豊か、キャラクター)
ステアリング例: [laugh]、[sigh]、[whisper]、[excited]、[sad]、[angry]、[pause]、[gasp]
内蔵音声(15言語で271以上): Sarah、Alex、Ashley、Dennis、Hana、Blake、Luna、Clive など。すべてはInworld TTS Playgroundで閲覧できます。
リアルタイム/会話型AI向け低レイテンシ
# チャットボットやゲームNPC向け超高速応答(約120ms)
belt app run inworld/text-to-speech-1-5-mini --input '{
"text": "ようこそ、旅人よ。私たちの村に何の用ですか?",
"voice_id": "Clive",
"speaking_rate": 0.9
}'
音声生成例
プロフェッショナルナレーション
belt app run infsh/kokoro-tts --input '{
"prompt": "本日の決算説明会へようこそ。昨四半期の財務実績と戦略的イニシアチブについて説明します。",
"voice": "am_michael",
"speed": 1.0
}'
会話スタイル
belt app run infsh/dia-tts --input '{
"text": "ねえ、あのプロジェクトについて考えてたんだけど、別のアプローチを試してみない?",
"voice": "conversational"
}'
オーディオブックナレーション
belt app run infsh/kokoro-tts --input '{
"prompt": "第一章。朝もやが谷間に低く立ち込める中、サラは曲がりくねった道を進んでいた。彼女は何時間も歩き続けていた。",
"voice": "bf_emma",
"speed": 0.9
}'
ビデオボイスオーバー
belt app run infsh/kokoro-tts --input '{
"prompt": "次世代の生産性を紹介します。スマートに、より効率的に働きましょう。",
"voice": "af_nicole",
"speed": 1.1
}'
ポッドキャストホスト
belt app run infsh/kokoro-tts --input '{
"prompt": "テックトークへようこそ!私はあなたのホストです。今日は人工知能の世界に深く潜り込みます。",
"voice": "am_adam"
}'
複数音声による会話
# 2人の話者のダイアログを生成
# 話者1
belt app run infsh/kokoro-tts --input '{
"prompt": "最新のAI開発についてもう見た?物事がどれだけ速く進んでいるか信じられないよ。",
"voice": "am_michael"
}' > speaker1.json
# 話者2
belt app run infsh/kokoro-tts --input '{
"prompt": "でしょ?先週あの新しい画像生成ツールを試してみたんだけど、本当に驚いたよ。",
"voice": "af_sarah"
}' > speaker2.json
# 会話を合成
belt app run infsh/media-merger --input '{
"audio_files": ["<speaker1-url>", "<speaker2-url>"],
"crossfade_ms": 300
}'
長文コンテンツ
チャンク分割処理
5000文字を超えるコンテンツは、チャンクに分割します:
# 長いテキストをチャンクで処理
TEXT="ここに非常に長いテキストを入力..."
# 分割して生成
# チャンク1
belt app run infsh/kokoro-tts --input '{
"prompt": "<chunk-1>",
"voice": "bf_emma"
}' > chunk1.json
# チャンク2
belt app run infsh/kokoro-tts --input '{
"prompt": "<chunk-2>",
"voice": "bf_emma"
}' > chunk2.json
# チャンクを合成
belt app run infsh/media-merger --input '{
"audio_files": ["<chunk1-url>", "<chunk2-url>"],
"crossfade_ms": 100
}'
音声+ビデオワークフロー
ビデオにボイスオーバーを追加
# 1. ボイスオーバーを生成
belt app run infsh/kokoro-tts --input '{
"prompt": "この素晴らしい映像は、最も純粋な形の自然の美しさを示しています。",
"voice": "am_michael"
}' > voiceover.json
# 2. ビデオと合成
belt app run infsh/media-merger --input '{
"video_url": "https://your-video.mp4",
"audio_url": "<voiceover-url>"
}'
トーキングヘッドを作成
# 1. 音声を生成
belt app run infsh/kokoro-tts --input '{
"prompt": "こんにちは、今日はいくつかのアップデートを共有できることを嬉しく思います。",
"voice": "af_sarah"
}' > speech.json
# 2. アバターでアニメーション
belt app run bytedance/omnihuman-1-5 --input '{
"image_url": "https://portrait.jpg",
"audio_url": "<speech-url>"
}'
速度とテンポ
| 速度 | 効果 | 用途 |
|---|---|---|
| 0.8 | 遅く、意図的 | オーディオブック、瞑想 |
| 0.9 | やや遅い | 教育、チュートリアル |
| 1.0 | 通常 | 一般的な用途 |
| 1.1 | やや速い | CM、エネルギッシュな場面 |
| 1.2 | 速い | 短い告知 |
# ゆっくりとしたナレーション
belt app run infsh/kokoro-tts --input '{
"prompt": "深呼吸をしてください。リラックスしましょう。",
"voice": "bf_emma",
"speed": 0.8
}'
句読点によるテンポ調整
句読点を使ってスピーチのリズムをコントロールします:
| 句読点 | 効果 |
|---|---|
ピリオド . | 完全な休止 |
カンマ , | 短い休止 |
... | 長めの休止 |
! | 強調 |
? | 疑問のイントネーション |
- | 短い区切り |
belt app run infsh/kokoro-tts --input '{
"prompt": "待って…聞こえた?何かが来ている。大きな何かだ!",
"voice": "am_adam"
}'
ベストプラクティス
- 音声をコンテンツに合わせる - ビジネスにはプロフェッショナルな声、ソーシャルにはカジュアルな声
- 句読点を使う - ピリオドやカンマでテンポをコントロール
- 文章は短く - 生成が容易で、より自然に聞こえる
- 異なる音声を試す - 同じテキストでも音声によって異なる印象に
- 速度を調整する - 少し遅めの方が自然に聞こえることが多い
- 長いコンテンツは分割 - 一貫性のためにチャンクで処理
ユースケース
- ボイスオーバー - ビデオナレーション、CM
- オーディオブック - 書籍の全文ナレーション
- ポッドキャスト - AIホストとゲスト
- eラーニング - コースナレーション
- アクセシビリティ - スクリーンリーダーコンテンツ
- IVR - 電話システムメッセージ
- コンテンツローカライゼーション - 翻訳と音声化
関連スキル
# ElevenLabs TTS(プレミアム、22以上の音声)
npx skills add inference-sh/skills@elevenlabs-tts
# ElevenLabs ボイスチェンジャー(録音を変換)
npx skills add inference-sh/skills@elevenlabs-voice-changer
# すべてのTTSモデル
npx skills add inference-sh/skills@text-to-speech
# ポッドキャスト作成
npx skills add inference-sh/skills@ai-podcast-creation
# AIアバター
npx skills add inference-sh/skills@ai-avatar-video
# ビデオ生成
npx skills add inference-sh/skills@ai-video-generation
# フルプラットフォームスキル
npx skills add inference-sh/skills@infsh-cli
オーディオアプリを閲覧: belt app list --category audio