Web、サーバ、ソフトウェア、バグ・脆弱性 などの情報を何人かで集まって書いていく IT/Web情報系ブログ

【たぬえさ2】TwitchでコマンドやチャンネルポイントからOBS上に音声・画像・動画を表示させる無料ソフト

投稿日:   最終更新日:2022/05/17  投稿者:nk.

以前、たぬえさというソフトを公開しました。
一部の方々から気に入っていただけたのですが、改善点が複数あったので今回改善版後継ソフトのTanuEsa2を公開します。

2022/02/23現在、OBSアップデート後にメディアの再生ができなくなっていました。これはOBS側のバグ(絶対パスでローカルファイルの読み込みができない)ですが、一応こちらでも部分的に対応しており、バージョン2.6以降では一部条件を除いて再生できるようになっています。メディアファイルは、たぬえさと同じドライブ(たぬえさがCドライブならばメディアもCドライブ、たぬえさがEならメディアもE)に置いてください。

“TanuEsa2” をダウンロード TanuEsa2.7.4.withWV2.zip – 1201 回のダウンロード – 2 MB

↓以前にWebView2のランタイムをインストールしたことがある人は、TanuEsa2本体のみのZIPをどうぞ。↓

“TanuEsa2 no WV2 installer” をダウンロード TanuEsa2.7.4.withoutWV2.zip – 317 回のダウンロード – 900 KB

目次

このソフトの特徴

Triggerfyreとほぼ同等の機能を提供しますが、以下の点で異なります。

登録不要

当ソフトはDiscordサーバーに参加しなくても利用できます。

ファイルアップロード必要なし

いちいちファイルをアップロードする必要がなく、サイズ制限や個数制限もありません。
好きなだけメディアを追加できます。サービス終了する心配もありませんが、ソフトウェアアップデートは手動になります。

OBSの画面上でプレビューが簡単

チャンネルポイントの引き換え等を行わずとも、このソフトからOBS上でプレビューできるので微調整が楽です。

チャンネルポイント報酬リストを自動取得

チャンネルポイント報酬の一覧を自動で取得できるので入力ミスの心配がありません。

ポイント引き換え時にTwitchのチャットで発言 (v. 2.5で追加)

ポイント引き換え時やチャットコマンド実行時にTwitchのチャットに自動で発言する機能があります。
例えばランダムで表示させた画像や動画の詳細をチャットに出すことができます。
また、引き換えた人の名前を取得して発言に反映させることもできます。
v. 2.7から、チャンネルポイント引き換えで自動VIP付与も可能になりました。

ポイント引き換え時にOBSの画面上にテキストを表示 (v. 2.5で追加)

ポイント引き換え時やチャットコマンド実行時にOBS上に文章を表示させることができます。
引き換えた人の名前を取得して文章に反映させることもできます。
文字色や大きさ、フォントの指定も可能です。詳細は後述。

ポイント引き換え時に実行ファイル呼び出し (v. 2.6で追加)

ポイント引き換え時に実行ファイルを呼び出すことができます。
チャンネルポイント引き換え回数などの自動集計ができます。

チャット発言者一覧保存(おまけ機能)

モニタリング時にTwitchのチャットで発言したユーザの一覧を保存できます。

チャットモニタリング中のサブスクした人の一覧を保存(おまけ機能)

v2.1から、モニタリング中のサブスクやレイドの一覧を保存できるようになりました。
ただし、TwitchAPIの仕様上、フォローした人は取得できません。

チャンネルポイント引き換え回数の保存(おまけ機能)

モニタリング中に誰が何を何回引き換えたかを保存できます。
人気の報酬が数字でわかります。

OBS websocketなしでOBSのシーンとトランジションの切り替え・リプレイバッファの保存 (v. 2.7で追加)

obs-websocketを導入しないでも、シーンの切り替えとトランジションの切り替え、リプレイバッファの保存ができるようになりました。
純正OBS限定の機能なので、Streamlabs desktop (旧slobs)やTwitch Studioでは利用できません。また、ソースの切り替え等の細かい処理はできません。

日本語対応

日本人が作者です。

TriggerfyreにあるけどTanuEsa2にない機能

いまのところ以下の機能を追加する予定はありません。

コマンドやチャンネルポイントの権限制限

特定の権限を持つ人のみしか再生できないようにすることはできません。
v. 2.7より可能になりました。

コンボモードなし

コマンドやチャンネルポイントが複数回引き換えられたときにのみ発動させるといった機能はありません。

ランダムで選出

複数のメディアからランダムで一つを選ぶ機能はなし。
v2.1で実装しました。

obs-websocketと連携してOBSのシーン等を操作

現時点ではobs-websocketを併用してOBS操作はできない。
今後、やる気が起きたときに仕様を確認してできそうなら追加する可能性あり。
SLOBS利用者が多いのですが、必要ライブラリがSLOBSに対応していないため、この機能はおそらく実装しません。

導入方法

保存と解凍

上記リンクから保存したのちに解凍すると、以下のファイルが出てきます。

  • MicrosoftEdgeWebview2Setup.exe
  • readme.txt
  • TanuEsa2.zp

ランタイム導入

過去にWebView2のランタイムをインストールしていない人は、同梱されているMicrosoftEdgeWebview2Setup.exeを実行して、WebView2ランタイムをインストールしてください。よくわからなければとりあえず実行してみてください。

.NET Framework 4.7.2が必要です。もしWindows Update等を一時停止しているなどで同ランタイムが未導入の場合、インストールしてください。

起動

ランタイムの導入が終わったら、TanuEsa2.zipを解凍し、TanuEsa2.exeを起動してください。

Twitch認証

初回起動時はTwitchアカウントと紐づけされていないため、認証を行う必要があります。
「設定」→「Twitchを認証する」から認証を行います。

「TwitchのID」に配信で使うTwitchのIDを入力して、「認証」ボタンを押してください。


ログイン後、自動でOAuthトークンが設定されるようになっていますが、一部のセキュリティソフトを使っていると自動で設定されない場合があります。
その場合は、「Twitch OAuth Token Generator」の「Your OAuth Token」に表示されている文字列を、画面下部の「OAuthトークン」にコピペして、「トークンを設定する」ボタンを押してください。

認証後は、メイン画面の左下が青文字になります。

チャンネルポイント報酬リスト取得

「設定」→「報酬リスト取得」から、Twitchで設定済みのチャンネルポイント報酬の一覧を自動で取得します。
Twitchアフィリエイト等に参加しておらず、チャンネルポイント機能が利用不能な人は飛ばしてください。

イベント設定

「設定」→「チャットイベント設定」から、イベントの設定画面に移ります。

メディアの追加

例として「test」というチャンネルポイント報酬があるとします。
「<追加テキストなし>」を右クリックし、「新規メディア」をクリックします。

「メディア」をクリックすると画面右側が有効化され、編集できるようになります。
「ファイル選択」ボタンから任意のメディアファイル(mpeg, wabmwebm, mp4, mp3, wav, ogg, jpg, jpeg, png, gif)を指定し、「この設定を保存」ボタンを押してください。押さないと反映されません。

「サイズと音量」の項目に関してですが、動画ファイルに対しては表示サイズのみが反映され、音量は反映されませんので注意してください。
v. 2.7より、サイズと音量が別項目になりました。
また、表示時間はミリ秒(千分の一秒)単位ですが、クールタイムは秒単位です。

2022/02/24現在、OBS27.2.1でたぬえさを利用していると同一ドライブ上のメディアしか再生できませんのでご注意ください。

チャットコマンドの追加

チャットコマンド(Twitchのチャットは「!」から始まる発言がコマンドとして認識される)をトリガーとする場合、「チャットコマンド」を右クリックして「チャットコマンド追加」を押してください。コマンド入力後は前述のようにメディアを追加してください。

視聴者にテキストの入力を要求

Twitchでは50個のチャンネルポイント報酬しか登録できないとありますが、視聴者にテキストの入力を要求することで1つの報酬から複数のトリガーを分岐させることができます。
たとえば先ほどの「test」に「たぬき」と文字を入力させたときの条件分岐を作成したい場合、「test」を右クリックして「新規追加テキスト」に「たぬき」と入力します。

すると、「<追加テキストなし>」のしたに「たぬき」が追加されました。

メディアの追加は、追加テキストなしのときと同様に行います。
コマンドに対しても同様に追加テキストを設定することができます。

抽選箱機能

v2.1から追加しました。
コマンドやチャンネルポイント引き換え時に、ランダムでメディアを抽選する機能です。
以下のように「抽選箱の名前」を設定すると、同じ抽選箱の名前を持つメディアの中からランダムでメディアが選ばれるようになります。
抽選箱の名前を設定しない、あるいは重みづけを0にすれば常にそのメディアは表示されます。

以下のように「抽選タグの名前」を設定すると、その抽選箱から選ばれる際に、同じタグを持つものはセットで選ばれるようになります。
この場合ですと、TAG1に設定されている2つは、こちらが選ばれた場合どちらも表示されることになります。

抽選の重みづけ

抽選の重みづけの値を大きくするほど、そのメディアは選ばれやすくなります。
タグが同じものは、すべてのメディアの重みづけの値が合計されます。
たとえば前述の画像ですと、TAG1の2つの重みづけの合計は200で、TAG2の重みづけは100なので、TAG1のほうが2倍選ばれやすくなっています。

抽選とクールタイムの優先順位

抽選が行われたあとに、そのメディアのクールタイムの判定が行われます。

抽選箱機能の設定例は長くなるので最下部に記載します。

ポイント引き換えでチャット発言 (v 2.5以降)

ポイント引き換えやチャットコマンド実行時にTwitchのチャット上に発言させることができます。
下の画像のように、「ファイル」を「チャット」に変更すると出てくる入力欄に自動で発言させたい内容を入力します。
この際、%name%と書いた部分は引き換えた人の名前に変換されます。
例えば「%name%さんが引き換えました」と設定しておけば、「猫好きさんが引き換えました」のようになります。
「サイズと音量」の項目は反映されません。

v. 2.7から、%id%がIDに変換されるようになりました。
これにより、以下のようなメディアを追加することで、自動でVIP付与が可能になります。(ただしv. 2.6以前から利用の方はTwitchの再認証が必要。)

ポイント引き換えでOBS上に文章表示 (v 2.5以降)

ポイント引き換えやチャットコマンド実行時にOBS上に文章を表示させることができます。
下の画像のように、「ファイル」を「テキスト」に変更すると出てくる入力欄に表示させたい内容を入力します。
この際、%name%と書いた部分は引き換えた人の名前に変換されます。
例えば「%name%さんが引き換えました」と設定しておけば、「猫好きさんが引き換えました」のようになります。
「サイズと音量」の項目は反映されません。

文字列の見た目の設定

色や大きさなどの文字列の見た目を変更できます。
入力欄の先頭に(設定項目:値)と記述します。複数を設定することもできます。
使える設定項目はCSS プロパティリファレンスの「JavaScript」の欄にあるものになります。

以下は設定例です。

文字の色を変更

(color:#0000FF)

文字の大きさを変更

(fontSize:20px)

文字のフォントを変更

(fontFamily:たぬゴ丸)

文字列を折り返さない

文字列が長い場合、勝手に折り返しされる(改行が挟まれる)場合がありますが、それをなくすこともできます。
(whiteSpace:nowrap)

ポイント引き換えで実行ファイル呼び出し (v 2.6以降)

実行ファイルを選択すると、ポイント引き換え時にその実行ファイルの呼び出しができます。
呼び出された実行ファイルには、コマンドライン引数で、名前、チャンネルポイントの名前、追加テキストの情報がこの順番で、Base64エンコードされた状態で渡されます。
名前とチャンネルポイント名は200文字、追加テキストは300文字で切られます。
Base64エンコードや文字数制限はセキュリティ対策です。

呼び出す実行ファイルの例

以下のコードは、呼び出されたときに誰が何を引き換えたかを記録する最も単純な例です。
ファイルの中身は上書きされていきます。

using System;
using System.Text;
using System.IO;

namespace ChannelPointReciever
{
    internal class Program
    {
        static void Main(string[] args)
        {
            using (StreamWriter sw = new StreamWriter("test.txt"))
            {
                int i = 0;
                while (i < args.Length)
                {
                    sw.WriteLine(Decode_Base64(args[i++]));
                }
            }

        }

        static string Decode_Base64(string str)
        {
            Encoding enc = Encoding.UTF8;
            return enc.GetString(Convert.FromBase64String(str));
        }
    }
}

引き換え回数を記録するだけのソフト

【チャンネルポイント記録くん】たぬえさ2で動作する、Twitchのチャンネルポイント報酬の引き換え回数を記録するだけのソフト

引き換え権限の設定

v. 2.7より、メディア再生の権限制限が可能になりました。

上の画像のように、何にもチェックを入れない場合は、今まで通り誰でもメディアの再生が可能です。
1つでもチェックを入れると、それに該当する人のみが再生可能になります。

OBSでの設定

ソースの追加で「ブラウザ」を選びます。

解凍したフォルダのなかにある「forOBS.html」をソースとして追加します。

実際に反映されるか、TanuEsa2からプレビューします。
チャットイベント設定画面から、適当な報酬の「<追加テキストなし>」を右クリし、「OBS上でプレビュー」を実行します。

以下のように表示されればOBSで連携できています。

複数のシーンでたぬえさを利用する場合

たぬえさを表示させているブラウザソースを右クリックし、「コピー」を選択します。

別のシーンで、ソース一覧の何もないところを右クリックし、「貼り付け (参照)」を選択します。

配信時

モニタリング開始

たぬえさ2のメニューから「モニタリング」→「開始」で、チャットログを取得するようにしてください。
v2.2.2より、認証済の場合は起動時に自動でモニタリングが開始されます。

チャットユーザ一覧を保存

おまけ機能として、モニタリング中にチャットで発言した人の一覧をテキストに保存できます。

アップデート方法

主に2箇所を更新します。

設定ファイルのコピー

旧バージョンの./settings/フォルダの中身を、新バージョンに移動します。

OBSの設定

ブラウザソースのローカルファイルの読込先を新バージョンに置き換え、「現在のページを再読み込み」を押します。

バージョンアップ情報

※不具合報告される方はTwitchのIDを併記していただければ問題解決時等に連絡させていただきます。

v. 2.7.4 (2022/05/17)

  • ループ設定のないGIF動画が読み込み時に頭から再生されるように修正。

v. 2.7.3 (2022/05/12)

  • チャットコマンド実行時にチャットイベントが実行されないバグを(おそらく)修正。JavaScriptはクソ。

v. 2.7.2 (2022/04/07)

  • まれに動画再生終了時に消えない問題を(おそらく)修正。

v. 2.7.1 (2022/04/05)

  • 報酬リスト一覧取得時にプログラムが異常終了する不具合を修正。

v. 2.7 (2022/03/14)

  • 「大きさ」と「音量」の項目の分離。
  • 純正OBS利用時限定で、obs-websocketなしでシーンとトランジションの切り替え、リプレイバッファの保存が可能に。
  • 一部テキストを指定した際にエラーが出る不具合を修正。
  • メディア表示のユーザ権限追加。
  • 一部チャットコマンドに対応させ、自動VIP付与を可能にした。(要Twitch再認証)

v. 2.6.1 (2022/02/24)

  • メディアが1回しか再生されないバグを修正。

v. 2.6 (2022/02/24)

  • チャットにディレイが有効でなかった点を修正。
  • OBS27.2.1のバグによってメディアが再生できなかった点に対応。(それでも仕様上、同一ドライブのファイルしか再生できない。)
  • 実行ファイル呼び出し機能を追加。

v. 2.5.1 (2022/01/14)

  • webmをwabmと間違えていたのを修正。

v. 2.5 (2022/01/09)

  • クールタイムの初期値を設定可能にした。
  • クールタイムを設定するとき、時・分・秒で指定できるダイアログを追加した。
  • ポイント引き換え/コマンド実行時にTwitchのチャットに発言する機能を追加した。
  • ポイント引き換え/コマンド実行時にOBS上にテキストを表示する機能を追加した。

v. 2.4 (2021/12/11)

  • チャットイベントの報酬も削除可能にした。
  • 一度Twitch認証済みの場合、再認証時にチャンネルIDが自動で入力されるようにした。

v. 2.3 (2021/09/26)

  • 接続に失敗した際、Twitch認証を再度行うことを促すダイアログを出すようにした。

v. 2.2.2 (2021/07/29)

  • 認証済みの場合、起動時に自動でモニタリング開始するようにした。
  • プログラム終了時等に、チャットユーザ一覧等の保存を忘れていないか確認するようにした。
  • ギフトされたサブスクは[gifted]とつくようにした。ただし、ランダムギフトの場合はtwitchの仕様上取得できない。
  • チャンネルポイント報酬の引き換え回数を保存できるようにした。
  • バージョン情報ダイアログを見れるようにした。

v. 2.1 (2021/06/22)

  • メディアが1つしか再生されないバグを修正した。
  • 抽選機能を追加した。

抽選箱機能の設定例

難しいという声が多かったので詳しい設定例を載せていきます。
随時少しずつ更新していきます。

- C#, Twitch

Comment

  1. Pちゃん より:

    はじまして。
    Triggerfyreからの乗り換え先を探していたところ、こちらのソフトにたどり着きました。
    どこに相談したらいいか分からなかったのでこちらに書かせて頂きます。

    圧縮ファイル同梱のランタイムをインストール後にたぬえさ2アプリを起動し、
    報酬リスト取得、WebSocketのポート番号の設定をOBS側にも行い、OBSのソースで「forOBS.html」を追加、
    チャットイベント設定のチャンネルポイント報酬から追加テキスト、新規メディアと選択して音声(WAV形式)と画像(gif形式)を追加、保存したのですが、
    配信をしていない状態で「OBS上でプレビュー」が動作せず、OBS上に何も表示されません。
    たぬえさ2アプリでの音声プレビューは可能です。

    配信中でないと確認出来ないのでしょうか?
    念の為、PCスペックも記載します。

    CPU:Intel(R) Core(TM) i9-10900K 3.70GHz
    メモリ:32.0 GB
    OS:Windows10

    • nk. より:

      ご利用ありがとうございます。
      返信が遅れましてすみません。

      配信中でなくても、OBS上でプレビューは可能なはずです。
      マシンスペックも十分かと思います。
      考えられる点として、以下をご確認ください。

      1. WebSocketの通信が上手く行えていない
      → 設定されているポート番号がすでにほかのアプリケーションで使われている可能性があります。
      ポート番号を変えてみてください。

      2. 表示設定
      → おそらく問題ないかとは思いますが、表示サイズが0になっていないか、表示時間が0になっていないか等をご確認ください。

      3. OBS上の設定
      → forOBS.htmlが表示されているか(選択したときに赤い枠が出るか)ご確認ください。ソースへの追加は、ローカルファイルを用いる点を除いて、triggerfyreと同様です。表示中のシーンにこのソースが含まれていない場合、画像や音声等は出力されません。

      4. 保存ボタン
      → プレビューを実施する前に、画像等の設定が保存されているかご確認ください。

      以上、お手数ですがご確認いただければと思います。

      • Pちゃん より:

        OBSWEBSocketを最新の物に更新したらプレビュー出来ました!
        ありがとうございます!

        • nk. より:

          OBSWEBSocketも関係してるんですね。
          ともあれ、うまく作動したようで安心しました。
          今後ともたぬえさをよろしくお願いいたします。

          • Pちゃん より:

            現在、たぬえさ2を使用して楽しくゲーム配信させていただいてます。
            設定もわかりやすいし、欲しかった機能もたくさん搭載されていて本当に助かっています!
            ありがとうございます!
            ただ、チャンネルポイント報酬をTwitchの配信マネージャーページなどで更新したあと、
            たぬえさ2の報酬リスト取得を選択するとTwitch側で更新する前の設定がたぬえさ2側ではそのまま残ったままになり、
            チャンネル報酬リストからは削除出来ない状態です。
            プログラムの知識が無いなりに調べたところ「twitchrewards.xml」にチャンネル報酬のリストやメディア設定などが保存されているところまではわかりました。
            このファイルを何らかのテキストエディターなどで開いて不要な箇所と思われる箇所を削除しても問題ないのでしょうか?
            もしくはこのxmlファイルを開かずに、たぬえさ2の報酬リストから不要になったチャンネルポイント報酬を削除する方法などがあれば教えて頂きたいです。
            よろしくお願いします。

          • nk. より:

            ご利用ありがとうございます。
            いまのところ、チャンネル報酬リストから削除できないのは仕様です。
            というのも、Twitch側で非表示にしているだけのものを復活させたりすることも多々あると思うので、残すようにしています。
            (非表示にしただけのものと、削除したものの区別がプログラムからは行えません)

            手動でtwitchrewards.xmlを編集することはもちろん可能です。
            ただ、その前にバックアップを取っておいて、いつでも戻せるようにしておいてください。
            このファイルはXMLという形式で書かれているので、XMLの編集に特化したツール(「XMLエディター」等で検索すると出てくると思います)を利用してもよいでしょう。

          • Pちゃん より:

            たぬえさ2を以前から使わせて頂いております。
            2022年2月のOBSの更新以降、たぬえさ2のチャンネルポイント引き換え連動機能とチャット欄のファイルへ保存が出来なくなっています。
            元々、たぬえさ2と同じドライブに音声や画像ファイルを置いていたので、念の為、2バイト文字を含まない場所Cドライブのルートフォルダに最新版たぬえさ2(TanuEsa2.6.1)を解凍し、同梱のhtmlをOBSに組み込んでOBS上でプレビューを押しても画像も音も出ない状態です。
            たぬえさ2内のメディアファイルの音声プレビューは機能します。
            また、チャットの書き込みはたぬえさ2には反映されますが配信終了後に名前をつけて保存を押しても無反応になってしましました。
            OBSWEBSocketのアンインストールとインストールを繰り返し、WebSocketのポート番号もデフォルトに戻して見ましたが改善なしです。
            完全にお手上げ状態なので、何か他に確認出来る操作などがあればご助言頂きたいです。
            よろしくお願いします。

            念の為、PCスペックも記載します。

            CPU:Intel(R) Core(TM) i9-10900K 3.70GHz
            メモリ:32.0 GB
            OS:Windows10

          • nk. より:

            ご利用ありがとうございます。

            念のため確認いたしましたが、こちらではその現象を再現できませんでした。
            症状から考えられるのは、WebView2プラグインが破損している可能性があります。
            同梱しているWebView2のインストーラーをもう一度実行してみてください。
            また、これでも改善しない場合、WebView2のユーザフォルダ内に破損が生じている可能性もあります。
            たぬえさ2のフォルダ内にある、Tanuesa2.exe.webview2というフォルダを削除して再度実行してみてください。

            PCを購入してから長い場合は、ほかのシステムファイルが損傷して、それが影響している可能性もわずかにあります。
            sfcコマンド等を用いて、システムファイルが正常かどうか確認してみてください。
            https://onoredekaiketsu.com/repair-windows-with-dism-and-sfc-scannow/

            もしこれらをすべて試してみても不具合が続く場合は、残念ながら私には原因がわかりません。
            お手数をおかけしますが、よろしくお願いいたします。

  2. haruno より:

    はじめまして。
    いつも配信で”たぬえさ2″を使用させていただいております。
    ありがとうございます。
    抽選機能について、動画を数種類登録(38種)しているのですが、引き換えた際にたまにメディアが再生されない場合があります。
    メディアファイルに破損等はみられず、OBSでプレビューした際にも再生されないということはありませんでした。
    原因おわかりになりますでしょうか?

    使用ソフトウェア:OBS 27.0.1/Win10.64bit
    使用メディア:全て10秒のMP4ファイル

    • nk. より:

      ご利用ありがとうございます。
      たまに再生されないということですが、該当する各メディアにクールタイムが設定されていないかご確認ください。
      (デフォルトでは連打荒らし防止のためにクールタイムが設定されるようにしてあります)

      また、TwitchやOBSとの連携の仕様上、ごくまれに接続が切断されることがあります。
      切断が検出されると再接続を行いますが、そのタイミングでの引き換えになると反映されないことがあります。

      • haruno より:

        nk.様
        ありがとうございます!
        該当各メディアにクールタイムが設定されていたままでした。
        その後、再生されないということはありませんでした。
        とても早くお返事いただきありがとうございました。
        引き続きよろしくお願いいたします。

        • nk. より:

          ちゃんと再生できてよかったです。
          設定を一つずつ入力するのが面倒な場合、
          左側に表示されているメディアを右クリック→コピーからの張り付け→ファイルを選びなおす→保存
          をすると楽かもしれません。(よくわからなければ見なかったことにしてください)

          今後とも、当ソフトをよろしくお願いいたします。

  3. のっぽ より:

    要望です。
    OBSの表示と併せて、ローカルのEXEファイルを引数付きで呼び出す機能をつけて欲しいです。

    背景は、以下の通りです。
    私はゲームの配信をしています。
    チャンネルポイントで「腕立て伏せ」や「腹筋」を交換してもらって、ゲームの合間にまとまった数を実行する、ということをしています。
    ゲームをしているため、Triggerfyreでポイントが交換されたことは気づけるものの、何を何回という集計が難しいのです。
    現状、「何を何回」については、自作のプログラムで集計した結果を画像にして配信画面に表示できるようにしました。しかし、ゲームをしている最中にそれを操作するのは困難で、自動化の方法がないか探していました。
    WebサービスからローカルのEXEを実行するなんてセキュリティの問題があるからできないだろうと思いつつ、自分で集計まで含めたWebサービスを作ることも難しく、だったらもともとローカルEXEのソフトがないかと探したところ、「たぬえさ2」を見つけてしまったのです。
    自分にはTwitchのチャンネルポイント交換を取得するプログラムを作成する実力がないのですが、「たぬえさ2」に上記要望機能が実装されれば全て上手くいくため、要望させていただく次第です。

    • nk. より:

      ご利用ありがとうございます。

      実行ファイル呼び出しは実装を検討したこともありましたが、セキュリティ的に不安だったのでそのままなかったことにしていました。
      需要があるようなので、次のバージョンアップで実装したいと思います。

      • のっぽ より:

        ご回答ありがとうございます。楽しみです。
        EXEファイルを呼び出せるとその先はなんでもできるため、危険ですが、無限の可能性が広がります。しかし、セキュリティの確保は確かに大切ですね。
        もし、やはり実装しない方が良さそうだというご判断になるのであれば、ログの常時ファイル出力機能をご検討ください。こちらでは、ログファイルを監視し、チャンネルポイントが交換されたログが出力された場合に任意の処理を行うプログラムを作成することで、希望を満たすことができると思います。

        • nk. より:

          > ログファイルを監視し
          たぬえさ2とOBSとの間ではWebSocketで通信を行っています。初期設定ではlocalhost:56542です。たぬえさ起動中、ローカルからなら制限なく接続できるので、ここから情報を取得するというのもありかもしれません。というかこれで割と楽に解決しそうな気がします。

          WSで通信されるのはメディア情報の配列をJSONであらわしたものです。
          配列の各要素のtargetFile要素に、表示するメディアのファイルパスが格納されていますので、これで条件分岐するとよいと思います。
          「OBS上でプレビュー」機能でもこの通信を行っていますので、実験もしやすいのではないでしょうか。
          現役の言語ならWebSocketもJSONもライブラリが存在していると思います。

          とはいえ、これだと「誰が引き換えたか」までは取得できません。そこまで必要なければこれで十分だと思います。
          セキュリティ的に懸念しているのは実はこのあたりで、引き換え者の名前やら追加テキストもつけて別実行ファイルを呼び出したいけどそういった任意のデータを流し込めるのってexploitがこえーよなー…という。
          なのでできれば実行ファイル呼び出しは実装せずに現状のままでありたいという気持ちはあります。
          ただ、お使いの言語がCとかで、WebSocketやらJSONやらなんてやってられっかよ!とかって場合はやっぱり実装しますのでコメントください(笑)

          • のっぽ より:

            解説ありがとうございます。
            今考えている用途では「誰が引き換えたか」は不要ですので、要件を満たせそうです。
            使っている言語はC#です。JSONは経験があるのですが、WebSocketは未経験ですので、いただいたヒントを元に、これから調べてみます。
            多少時間がかかると思いますので、要望は保留にしてください。
            仕事での強制か、趣味で作りたいものがなければ、なかなか勉強が捗りません。良い題材を与えてくださり、ありがとうございます。できた、できない、にかかわらず、結果は改めてご報告いたします。

          • nk. より:

            現行版でなんとかなりそうでよかったです。

            たぬえさもC#製なので、自分が使っているライブラリを紹介します。
            WS: WebSocketSharp-netstandard by sta v1.0.1 (NuGetから簡単にインストールできます。「WebSocketSharp」で調べると色々サンプルコードが日本語で出てきます。いろいろ調べましたがWSはこれが一番使い勝手よさそうです。)
            JSON: System.Runtime.Serialization.Json (Windows標準のやつです。)

            利用者の方にご負担をかける形になって申し訳ありませんが、よろしくお願いいたします。

          • のっぽ より:

            いただいた情報で希望通りに動くソフトを作ることができました。本当に感謝しています。自らの知識不足から、ろくに調べることもできずに安直な要望をしてしまい、大変失礼いたしました。要望は取り下げさせていただきます。ありがとうございました。

            以下、簡単ですが、結果をご報告いたします。
            「WebSocketSharp-netstandard by sta v1.0.1」の助言を見る前は、「System.Net.WebSockets」で作ってみていました。検索で見つけたサンプルのコードを使って作ってみて、動くには動いたのですが、コードが全く理解できず、どうしようかと悩んでいたところでした。「WebSocketSharp-netstandard by sta v1.0.1」を使うとコードが超シンプルになり、とても助かりましたので、このまま採用させていただきます。
            JSONについては、以前使ったことがあった「Newtonsoft.Json」を使いました。こちらは過去の自分が書いたコードを使いまわし、さほど難しくなく「targetFile」を取り出すことができました。
            あとは、「targetFile」をキーにして、以前から考えていたそれぞれのポイント報酬に対する処理を書いただけです。これで、パソコン内のEXEででやりたいことが大体なんでもできるという、素晴らしいチャンネル報酬システムができました。

            今回は、素晴らしいソフト「たぬえさ2」を公開してくださった上に、こちらの稚拙な要望に対して、有益な助言を頂戴しました。これにより、おそらく最短納期で要件を満たすことができました。本当にありがとうございました。

          • nk. より:

            無事完成されたようでよかったです。
            これからもたぬえさをよろしくお願いいたします。

  4. ばろ より:

    はじめまして。
    いつも配信で”たぬえさ2″を使用させていただいており、
    演出面で大いに貢献頂いております。

    すいません、1つご相談なのですが、もともとAAA(例)と登録していたイベントを
    名前を変えたくてtwitchのクリエイターダッシュボードより
    AABと変更しました。たぬえさ2でもイベントを以降し、
    無事にAABで動作するようになりましたが、
    イベントの取得を行ってもチャットイベント設定に
    AAAが残ったままとなってしまいます。
    (チャットイベント取得をした時の数とチャットイベント設定済の数に差異が出ている状態)
    もし解決方法等あれば教えて頂けないでしょうか。

    • nk. より:

      ご利用ありがとうございます。

      現時点では、イベント名の変更・削除には対応していません。
      (ツイッチ側で消したあとに復活させたときに設定が消えてるほうがだるいと思っていたので)
      ただ、設定を消す機能が予想以上に求められているようなので、次のバージョンアップで実装します。

      もし、XML編集ツール(テキストエディタでも可)をお持ちでしたら、./settings/twitchrewards.xmlを編集することで設定を直接いじることができますが、ミスしたときに備えてバックアップを作成していただいてからの編集をお勧めします。

  5. kc より:

    はじめまして。配信で大変便利に使わせていただいております。
    透過形式の動画が読み込めないかと思って、.webmファイルでファイルを用意したのですが、
    指定できるファイル形式が.wabmになっています。
    wabmというファイルがあるのかと思って確認したのですが、どうもないみたいですので、次のアップデートの時に対応してくださると幸いです。

    • nk. より:

      ご連絡いただきありがとうございます。
      修正版の2.5.1を公開しました。アホみたいな間違いをしていて本当に申し訳ないです。
      これで大丈夫かご確認いただけるとありがたいです。

      • kc より:

        確認しました。ちゃんと動きました。
        RGBAlphaのwebmにも対応しているみたいですので大切に使わせていただこうと思っています。

  6. ga より:

    はじめまして。
    Triggerfyreが安定して作動せずリスナーさんに教えてもらいここにたどり着きました。
    大変設定もわかりやすく音やテキストも出せるようで、これからたくさん使いたいと思っております。
    設定をしていたところメディアが更新されなくなり、音もならなくなり、再設定しようと思いそのメディアを消去しようと思ったのですが、メディア自体が消去できなくなりました。
    再起動しても同じでした。
    こちらに関しての対処法などありましたら教えていただけると幸いです。
    宜しくお願い致します。

    • nk. より:

      ご利用ありがとうございます。

      こちらでは再現できていない現象なのでなんとも言えないのですが、以下の4点をご確認ください。

      ・Windowsのバージョン(10で作成したものなので、それより古いと動作異常を起こす可能性があります。)
      ・メモリ容量(途中で音がならなくなったとのことなので、物理メモリが不足している可能性があります。メモリ残量に余裕があるかご確認ください。この可能性が一番高いと思います。)
      ・Windowsの再起動(標準ではWindows10の「終了」コマンドは、高速起動のために一部メモリを残したままであり、不具合が発生することが報告されています。OSの「再起動」を行ってみてください。この可能性が2番目に高いと思います。)
      ・登録メディア数(現状150個ぐらいまでは問題ないことを確認していますが、あまりに多いと不具合が発生するのかもしれません。)

      とりあえずですが、これらのご確認をお願いします。

      • ga より:

        返信ありがとうございます。
        再起動くらいしか当てはまらなかったのでPCを再起動したところ新規メディアが作れない、元ある名前のないメディアを消せない状態から新規メディアを作れる、名前のないメディアを一つだけ消せるという状態になりました。(名前のないメディアはバクが起きてから二つ存在していました)
        音と画像はこれで出せるようになりました。
        一つ気になる点としては名前のないメディアの一つが消せないまま残っていることですが稼働には影響ないので一応ご報告だけしときます。
        ありがとうございました!

        • nk. より:

          ご連絡ありがとうございます。

          うーん、結構謎現象ですね。
          メモリ不足以外で考えられるのは、システムファイルの破損等ですかね。
          結構購入から時間が経っているPCだと、停電等で落ちたときにシステムファイルが破損したりします。

          以下のサイトでシステムファイルの修復方法が載っていますので、一度ご確認ください。(sfcとdism)
          https://itojisan.xyz/settings/18571/

  7. 日下部 より:

    初めまして、よろしくお願いします。
    私が欲しいと思っていた機能があるソフトを見つけることができました。ただ私はTwitchでの配信ではありません。
    他の配信アプリで使用する方法はありませんか?

    • nk. より:

      ありがとうございます。
      対応している配信プラットフォーム(配信サイト)はTwitchのみです。YouTube等にはそもそもチャンネルポイント機能がないので使えません。
      配信ソフトは、ブラウザソースが使えるものには対応しています。
      いまのところ、OBS、SLOBS、TwitchStudioでは使えることを確認しています。

      • 阪下和矢 より:

        お早い返信ありがとうございます。
        Twitchの仕様がわかっておらずすみません。何度も失礼とは思いますが、申し訳ありません。私は配信中のコメントにて「アイテム送りました」の様な特定の言葉をトリガーにしてOBSにお礼のソースを表示させたいと思っています。最初のTwitchとの認証を別のコメント欄にできればと思ったのですがどのようにすれば可能でしょうか?

        • nk. より:

          自分の理解力不足で申し訳ないのですが、やりたいことは次のような流れで合ってますでしょうか。

          1. 誰かがチャットで「アイテム送りました」等と発言
          2. それに自動で対応して、配信画面上にイラスト等を表示

          もしこのような流れでしたら、当ソフトはTwitchの「チャンネルポイント報酬」もしくは「コマンド」にのみ対応しているので、残念ながらご要望にお応えすることはできません。

  8. 鈴本 より:

    はじめまして、こんばんわ。
    抽選箱について質問です。

    ■質問1
    ──────────────────────────
    【やりたいこと】
    ポイント引換時にランダムで
    ゴールド/シルバー/ブロンズ という
    レアリティ(重み)を持たせた「音声+画像」を表示する。

    画像は
    ゴールド/シルバー/ブロンズ の3種類

    音声は
    ゴールド:3種類
    シルバー:7種類
    ブロンズ:10種類

    とします。

    ブロンズの場合、
    絵柄が同じブロンズ画像であっても
    音声と紐づく、10種類のタグ付けをしたブロンズ画像を
    用意しなければいけないのでしょうか?

    ■質問2
    ──────────────────────────
    上記について、「抽選箱の名前」を変更すれば
    いけるのかな?と思ったのですが、

    抽選箱をA/B/Cとした場合に

    ① A/B/C どれかの箱をまず選ぶ
    ② 選んだ箱の中から一つを再生する

    とはならず、

    ① A/B/C それぞれの箱から1つずつ選ぶ(合計3)
    ② それらを同時に再生する

    となりました。「箱の名前」の有効な使い方がいまいちわからず・・・

    ■総括
    ・「音声+画像」のセットを管理しやすくする方法はございますか?
    ・もしくは、メディアを追加する際に「音声+画像」の2ファイルを選択できるようにできないでしょうか?

    • nk. より:

      ご利用ありがとうございます。

      質問1:
      そうですね、そのような場合は10種類のタグ付けしたブロンズ画像の用意が必要になります。
      メディアのコピペ機能を使うと楽だと思います。
      コピーしたいメディア(この場合はブロンズ画像)を右クリック→コピー
      新規メディア追加→そのメディアを右クリック→貼り付け→保存

      質問2:
      それぞれのレアリティに関して、例示するうえで、2種類ずつとしておき、各メディアに以下のような規則で名前をつけておくとします。
      I…画像(Image)
      S…音声(Sound)
      G…ゴールド
      S…シルバー
      B…ブロンズ
      例: G1-I(ゴールド1の画像)、S2-S(シルバー2の音声)

      そして、抽選箱では以下のように記述します。
      G1-IとG1-Sには「箱: ガチャ、タグ: G1、重みづけそれぞれ10」
      G2-IとG2-Sには「箱: ガチャ、タグ: G2、重みづけそれぞれ10」
      S1-IとS1-Sには「箱: ガチャ、タグ: S1、重みづけそれぞれ20」
      S2-IとS2-Sには「箱: ガチャ、タグ: S2、重みづけそれぞれ20」
      B1-IとB1-Sには「箱: ガチャ、タグ: B1、重みづけそれぞれ50」
      B2-IとB2-Sには「箱: ガチャ、タグ: B2、重みづけそれぞれ50」

      といった形で設定してください。
      example

      > 「音声+画像」のセットを管理しやすくする方法はございますか?
      動画ファイルにまとめて加工するのが一番手っ取り早いかと思います。

      > もしくは、メディアを追加する際に「音声+画像」の2ファイルを選択できるようにできないでしょうか?
      現在、そのような仕様変更は検討しておりません。

      • 鈴本 より:

        ご返答ありがとうございます。
        やはり一つずつ用意が必要なのですね。

        >>動画にする
        たしかに動画にしたほうが管理もしやすそうです。
        ありがとうございました。

  9. あるとりうす より:

    トリガーファイアがどうも不安定で作動がしなかったりするので代替えを探してたところ良いソフトが見つかったので、作成に感謝しております。

    初歩的な質問になってしまって申し訳ないんですが、チャンネルポイント使用からチャットへの連携は上手くいきました、ですが動画や画像ファイルと表示することができません。
    OBSとの連携の問題かと思うので、説明通りにソース→ブラウザ→ファイル指定しているんですが、何度試してもできません

    できない場合はどのような可能性が考えられるでしょうか?

    • nk. より:

      ご利用ありがとうございます。

      たぬえさの「OBS上でプレビュー」機能すら作動していない場合、以下のパターンが考えられます。

      1. たぬえさ→forOBS.htmlへの接続がうまくいっていない
      確認方法: forOBS.htmlをchromeなどのブラウザで開き、OBS上でプレビュー機能を用いて画像が表示されるか確かめる。
      表示されない場合、ブラウザでF12を押し、出てくるコンソール画面に以下のエラーメッセージが表示されていないか確かめる。

      一部の環境でなぜか特定の設定ファイルが出力されない問題が発生しており、原因が特定できていません。
      この場合、./assets/フォルダ内に、websocketport.jsという名前のテキストファイルを作成し、以下を記述して保存してください。
      var internalWebSocketPort = 56543;
      念のため、ファイルを添付しておきます
      ./assets/フォルダ内が以下のようになっているかご確認ください。

      もしほかのエラーが表示されている場合はまたご相談ください。

      2. OBSのバグ
      確認方法: 1において、たぬえさの「OBS上でプレビュー」を用いてちゃんと画像が表示されている場合、OBSのバグによって表示されていない可能性があります。
      このバグはOBS27.2.3においても修正されていません。
      表示させようとしているファイルが、たぬえさを置いているドライブと同じドライブにあるか(たぬえさをCドライブ上に保存している場合、表示させたいファイルも同じCドライブ上にあるか。たぬえさがDドライブならファイルもDに)を確認してください。
      もし同一ドライブ上にある場合、ファイル名やフォルダ名に特殊な文字(日本語を含む)がないか確認してください。こちらでは一応、一般的なファイル名(日本語も含め)で表示させられることは確認していますが、記号や日本語が含まれると環境によっては作動しない可能性があります。

      また、ほかの配信ソフトを試してみるというのも手です。
      非常にお手数をおかけして申し訳ないのですが、このソフトはSLOBSやTwitch Studioなどにも対応していますので、そちらで一度、OBS同様にforOBS.htmlを読み込ませ、表示されるのかご確認いただければと思います。もし表示された場合はOBS側のバグがほぼ確になるので、またそれで対応させていただきたいと思います。

  10. Pちゃん より:

    原因は不明ですが突然改善しました!
    OBS側のWEBSocketサーバー設定の【サーバーを有効にする】のチェックマークを外して、なおかつCドライブのルートフォルダにたぬえさ2とサウンドアラートの音声と画像、映像を設置して、以前からの設定を引き継がずに新規で一から作り始めたところプレビューも配信中の引き換えも出来ました!

    ご提案頂いたWebView2の再インストールや、ファイル破損の可能性があるフォルダの削除、システムファイルのチェックと修復を行いましたがプレビュー反応なし、チャット履歴も保存できず状態でした。

    現在、サウンドアラートは反応するようになりましたが、チャット履歴はHTMLに保存出来ないのはそのままです。
    報酬の引き換え一覧を保存や、全ての取得可能アクティビティの保存は機能しています。
    原因も改善した理由も謎ですが本アプリの使用目的であるサウンドアラートが問題なく使えるのでこのまま使います!

    本アプリを使用している知人たちは問題なく使えているので再現性が高いものではないため、私のPC環境の問題だった可能性もありますが、こういう事例もあっという事だけでもお伝えします。

    • nk. より:

      お手数をおかけしました。
      かなり謎現象ですね。もしかするとアンチウィルスソフトあたりが悪さしている可能性とかもあるかもしれません。
      ご報告いただきありがとうございました。

  11. skr より:

    初めまして。たぬえさ2いつも楽しく利用させていただいております。
    4/3のEdgeのアップデート以降、報酬リスト取得後にたぬえさ2が落ちてしまい、新規作成した報酬リストを取得できない事象に困っております。
    イベントリストにてApplicationエラーを確認したところ、
    C:\Program Files (x86)\Microsoft\EdgeWebView\Application\100.0.1185.29\EBWebView\x86\EmbeddedBrowserWebView.dll
    にて障害が発生しているとのログが出ていたため、一度Microsoft Edge WebView 2 Runtimeを再インストールしてみたのですが状況は改善せず、他に何か改善方法がないか、またこれは私の環境のみでの事象なのか確認したくご連絡させていただきました。
    お手数をおかけして申し訳ございません。よろしくお願い致します。

  12. しゃこ より:

    報酬リストを取得するとソフトが落ちてしまうようになってしまいました。
    先週くらいまでは問題なく使えてたのですが・・・
    チャンネルポイントの数は42個目でした
    Windowsアップデートしましたが特に解決しませんでした。
    他に試すべきことや必要な情報があれば教えていただきたいです。

    • nk. より:

      報酬リスト取得後にエラーが発生する件について、把握いたしました。
      こちらでも再現されましたので調査いたします。

  13. 要望です!

    アップデートがあった際にプログラムの方から自動的に確認してポップアップ表示したり、プログラムからダウンロードして更新してくれるようになるとかなり楽です!

    • nk. より:

      現在、メジャーアップデートを検討しているため、現行バージョンはバグ対応だけで機能アップデートはこれ以上しません。

  14. 追加で質問です。

    更新があったため更新して再度設定しているんですが、メディアを設定する際ビデオと画像はOBS上に表示されますが、音が流れません。

    ビデオと画像が表示されているのにも関わらず、音のみ反映されないので困っております。
    何か解決方法があれば教えてください。

  15. ジャンク より:

    こんばんは、【たぬえさ2】バージョン2.7.4を利用しているのですが、OBSシーン切り替えの使い方が良く分かりません。ファイル部分に「シーン名」を入れるのかと思ったのですが、それでは動きませんでした。
    何か特殊な方法があるのでしょうか。

    • nk. より:

      ありがとうございます。
      それであっています。
      もし動かない場合、ブラウザソースのプロパティ画面の一番下の「ページ権限」を「高度なアクセス」や「フルアクセス」にしてみてください。
      ただ、それでも動かない場合があるようですが、どういう状況で作動しないのか、よくわかっていません。
      現在開発中のたぬえさ3ではOBSWebSocketを使ってその機能を実装しなおしていますので、リリースまでしばらくお待ちください。

      • ジャンク より:

        ありがとうございます。
        やはり「フルアクセス」でも動きませんでした。でもそれ以外の機能は問題なく動いてます!
        次期バージョンを楽しみにしています。

  16. くらげ より:

    初めまして。
    最近こちらを教えて頂き導入致しました。

    ポイント引き換え時に音が鳴るようにだけ設定したいのですが、同じ音源でも鳴るものと鳴らないものがあります。
    設定などもメディアコピーで同じにしているのですがどうしても鳴らないものがあります。
    解決方法はございますか?
    少ないポイントで引き換えられるもの(1ポイント等)が鳴らないような気がします

    • nk. より:

      ご利用ありがとうございます。
      どのような設定にされているのか、スクリーンショット等で見せていただくことはできますか?
      こちらからメールを送らせていただきますので、そちらに添付して返信していただけますでしょうか。

Pちゃん へ返信する コメントをキャンセル

メールアドレスが公開されることはありません。

関連記事