LoginSignup
6
4

More than 3 years have passed since last update.

Discordのテキストをローカルのきりたんに読み上げてもらう

Last updated at Posted at 2020-07-11

概要

Discordをローカルのきりたんに読み上げて欲しいのでbotを作りました。
東北きりたん+SeikaCenter+このbotを動作させる状態になります。
ローカルでの発声が不要なら喋太郎botがオススメです。

環境

Windows 10
python 3.7 for windows / VOICEROID+ 東北きりたん EX / SeikaCenter

用意

  1. 証明書インストール
    Windowsでdiscord.pyを使うと証明書エラーが出る場合があるので
    こちらの記事を参考にDiscordの証明書をあらかじめインストールします

  2. Botの登録
    Pythonで簡単なDiscord Botの作り方を参考にBotを作成して動作テストします

  3. seikasayの配置
    SeikaCenterに付属のseikasay.exeを動作テスト後、botと同じ場所にコピーします

botからSeicaCenterの呼出し、発話

botのメッセージ処理部分で以下のように発話させます。
元のきりたん音声では小さいので -volume 2.0 (最大値)にしています

import subprocess

async def on_message(message):
    # メッセージ送信者がBotだった場合は無視する
    if message.author.bot:
        return
    # メッセージ送信元チャンネルが特定のチャンネルidだった場合
    # seikasayできりたんに喋らせる
    if message.channel.id == 581983733384621 :
        cmd = 'seikasay -cid 1700  -volume 2.0 -t '+ message.content
        returncode = subprocess.Popen(cmd)

おまけ:ショートカット作成

コマンドプロンプトから起動するのは使い勝手が悪いので
新しいショートカットを作成して「リンク先」に
cmd.exe /c python よみあげきりたん.py
のように記入して作成します。
ショートカットからフォントやサイズをいじっておくと使いやすいと思います。
imoge.png

6
4
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
4