stack-chan

TTS(音声合成)の使用

English

現在、TTSを使用するには2つの方法があります。

現在、アクエストークのような__ローカル(オンデマンド)__のTTSは利用できませんが、プルリクエストは歓迎します!

前提条件

どちらの方法を選んでも、まず外部のTTSエンジンを準備する必要があります。

以下がテスト済みです:

それぞれの公式ドキュメントも参照してください。

Google Cloud TTS

Coqui AI TTS

$ tts-server --port 8080 --model_name tts_models/ja/kokoro/tacotron2-DDC
{
    "config": {
        "tts": {
            "host": "your.tts.host.local",
            "port": 8080
        }
    }
}

ElevenLabs TTS

{
    "config": {
        "tts": {
            "type": "elevenlabs",
            "token": "YOUR_API_KEY"
        },
    }
}

使用方法(事前生成)

以下のようなJavaScriptファイルに発話する文章を書き込みます(mods/monologue/speeches_monologue.jsなどを参照)。

// speeches.js
export const speeches = {
  niceToMeetYou: 'Hello. I am Stach-chan. Nice to meet you.',
  hello: 'Hello World.',
  konnichiwa: 'Konnichiwa.',
  nihao: 'Nee hao.',
}
import { speeches } from 'speeches'
const keys = Object.keys(speeches)

export async function onRobotCreated(robot) {
  await robot.say('hello')
  await robot.say(keys[0] /* 'niceToMeetYou' */)
}

使用方法(リモート)

{
    "config": {
        "tts": {
            "type": "remote",
            "host": "your.tts.host.local",
            "port": 8080
        }
    }
}
// ...
export async function onRobotCreated(robot) {
  await robot.say('Now I can speak any sentense you want.')
}