Skip to content

Latest commit

 

History

67 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SyncRoomChat読み上げちゃんV2

なにするもの?

YAMAHA SyncRoom のチャットを読み上げるツール。Windowsで指定したオーディオに音声を流します。SyncRoomV2に対応しました。

基本、チャット民がオーディオインターフェイスのループバック機能を使って、部屋の他者に気がついてもらう為のツールではあります。チャット入力も可能です。ですので、読み上げずに純正チャットの代わりも出来ます。

リアルタイム音声合成。基本は、Windowsについてくる HarukaとZiraです。 英文はVOICEVOXを入れてても、Ziraで読みます。 VOICEVOXのGithubはこちら

VOICEVOXを別途入れておけば、VOICEVOXの音声合成を使います。使わない設定もGUIから出来ます。スピーチ自体させない設定もメニューにあります。

自分がチャットに気がつくためだけなら、オーディオインターフェイスのループバック機能は要りません。SyncRoomの同部屋に、一人このツールを使える人が居ると、チャット民には便利です。

使い方

ここから最新版の SyncRoomChatToolV2_vX.X.X.X.zip ファイルを落してきて、適当なフォルダに解凍して、あとは実行するだけ。

インストーラーも付けてみました。install.zipの中身を解凍して、Setup.exeを実行します。.msiを叩いてもいけるはず。

Zipの中のファイルだけで動くはずですが、なんぞ.net 関連のファイルが要るかもです。バージョンアップの場合は、.exeファイルだけの配置でいいはずです。

管理者権限へ昇格するようにマニフェストを設定したつもりではありますが、そうじゃなかったら、管理者権限で動かした方がいいです。

お約束

VOICEVOXを使う場合は、VOICEVOX Engineは先に起動しておいてください。一応自動起動もしますが。

SyncRoomは先に起ち上げておいた方が吉。

部屋メンバーのアイコンは、スクリーンキャプチャーで取得しているので、SyncRoomに他のウィンドウを重ねると、アイコンの表示位置の別ウィンドウをキャプチャしてしまうので、重ねない方がいいです。

チャットウィンドウが開いた状態で実行してください。SyncRoomのウィンドウサイズを小さくすると、SyncRoomのチャットウィンドウがタブ表示になったりしますが、その場合チャットの文字が取得できません。

なお、ルーム一覧を見ているときも同様です。

チャットする側で出来る事

  • チャットの行頭に、/s(大小問わず。スペース有無無視)を入れると、読み上げるか否かをトグルスイッチします。
    • 初期値はオンです。
  • VOICEVOXをこのツールの使用者が導入している場合
    • チャットの行頭に、/0 のように数値を指定すると、チャットする側の人で VOICEVOX の音声を変更できます。インストールしている VOICEVOX のバージョンに依存します。
    • チャットの行頭に、/p0.4 のように /pと小数点第一位までの数値にて、チャットする側の人でスピード調整が出来ます。
      • あまり遅いのも速いのも意味がないので、0.4~1.8で制限はしています。必ず小数点込みで。標準スピードなら、/p1.0 です。
    • 選択出来る音声の詳細は、VOICEVOX のウェブサイトへ。

無人AIモード

部屋主が席を外しても、このツールを動かしているPC上でチャットに短く応答します。会話は Google Gemini を使い、作者(XiAce-Lite)の公開リポジトリ案内と雑談が主です。モデルは無料枠向けの軽量モデルgemini-3.1-flash-lite)です。重い Pro 系ではないので、速さ・コスト優先で、深い推論や長文は期待しない方がよいです。完全クラウド無人ではなく、SyncRoom と本ツールを起動したままである必要があります。

準備

  1. Google AI Studio で Gemini APIキーを発行する(無料枠なら、通常は課金設定なしで可)。
  2. 本ツールの設定画面に APIキーを貼り付けて保存する。
  3. SyncRoom のチャットが見える状態で本ツールを起動する。

コマンド(このツールを起ち上げている人専用)

チャットの行頭に書きます。起動者(自分の表示名)の投稿だけが有効です。他の人が /ai と書いてもモードは変わりません。

  • /ai … 無人モードの ON/OFF トグル
  • /ai on / /ai off … 明示的に入切

起動のたびに OFF から始まります(前回の状態は覚えません)。

ON/OFF に成功すると、チャットへ「無人モードを開始しました」「無人モードを終了しました」と自動投稿します。

APIキー未設定・Gemini 側の失敗ではモードに入らず、チャットには何も出さず、メッセージボックスで理由を出します。

応答する対象 / しない対象

無人 ON 中は、だいたい次のとおりです。

  • 応答する … 他人の通常チャット。雑談にも乗る。作者の公開リポジトリや本ツールの質問には、取得できたリポジトリ情報を優先して答える。
  • 応答しない/ で始まる行(/s /p などの読み上げコマンド自体は従来どおり有効。AIの会話対象ではないだけ)。http:// / https:// を含む投稿(リンク貼りに返事しない)。AI自身が送った文。
  • アプリの入力欄から自分が打った文には応答します(一人テスト用)。SyncRoom 本体チャットへ直打ちした自分の文は対象外です。

返答は短文・丁寧語です。分からないことは分からないと答えます。URL は返しません。

連投はキューして順に返します。

読み上げ

AIの返信も読み上げます(スピーチ設定がオンのとき)。VOICEVOX 利用時は StyleId=2 固定。この読み上げだけ、設定の切り捨て文字数は無視します。

入室挨拶

無人 ON 中に部屋メンバーが増えたとき、短い挨拶を自動投稿します。

口調のカスタム(任意)

Zip に Ai\ai_system.txt.exampleAi\ai_greeting.txt.example が入っています。exe と同じフォルダに次の名前で置くと、起動時にひな型から作成され、以降はその内容を使います。

  • ai_system.txt … 話し方・役割(システム指示)
  • ai_greeting.txt … 入室挨拶。{$NewUser} が入室者名に置き換わります

無くても内蔵の既定文で動きます。長文・URL・括弧などの制約はアプリ側で固定です。

GitHub の公開リポジトリ情報の取得に失敗しても、無人モード自体は開始できます(雑談は可。リポジトリ案内は弱くなります)。

便利かも?な機能

  • チャットに入力がある都度、ランダムなボイスから、その人に初期音声を設定します。(VOICEVOX利用の場合。ランダム割り当てなので被ります)
  • VOICEVOXを使っている場合、設定画面から音量を調整できるようにしました。標準の0.1倍~2倍までの範囲です。
  • URLリンクがチャットに張られたら、自動で開く機能があります。オフにも出来ます。
    • 連続して同じURLが貼られても、開き続けません。
  • チャット入力欄に何かしら数文字入力したら、その先頭に合致する過去の入力を候補に出します。
    • チャット入力で入れられるコマンド群(/s /p0.4 /p1.0 /p1.8 /ai)が初期値として入っているので、チャット入力欄に「/」入力でコマンドサンプルが出てきます。
    • 入力履歴を付けましたが、保存はしませんので起動の都度クリアされます。
  • 監視間隔調整可能。

その他

  • リンクが貼られた場合の固定音声は、ご自分でお作りください。ライセンス的に私が作ったWavは置くとまずいかなと思いまして。設定すればその声でしゃべります。つかWaveファイルなら何の音声でもいい。
  • このツールを使った事でなんぞ不利益や不具合が発生しても、責任取りません。取れません。

About

SyncRoomV2のチャットを読み上げたり、書き込んだりします。

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Sponsor this project

Used by

Contributors

Languages