
おはこんばんにちわ🎵
今回はOBSのプラグインを使った、自動でシーンを切り替えるというものを紹介したいと思います。
これはOBSの標準機能である自動シーンスイッチャーと似ている機能だと思われがちですが、全然異なる機能になります。
このプラグインでできることがかなり広く設定するのにも難易度は高いですが、うまく使えれば自動でやってくれるというものになりますので、使ってみたくなったら使ってみてほしいと思います。
よかったら参考にしてみて下さい。
OBSでの全体的な設定のやり方についてはこちらの記事に記載されています。
ここでは画像認識を使った自動でシーンを切り替えるというものを紹介します。
OBSのプラグインの一つで初期では搭載していないものなのでダウンロードが必要になってきます。
また、記述がすべて英語なので理解するのにも時間がかかってしまいましたが、ここではできるだけ日本語ですべて説明できるように書いてみています。よかったら参考にしてくれるとうれしいです。
また、最後に星詠れい自身がDBDをメインにプレイしていることもあり、DBDのシーン自動切り替えの例も記事の最後に載せています。
もちろん参考にして頂いても大丈夫ですし、ここから独自にアレンジして頂いても大丈夫です。
その場合、このブログのことも紹介して頂けたらありがたいです。
皆様の配信のお役に立てますように。
Advanced Scene SwitcherはWarmUpTill氏が開発したプラグインとなります。
投稿時バージョンは1.23.1となります。
以下のGitHubからダウンロードができます。
Win11やWin10であれば、
「advanced-scene-switcher-windows-x64-installer.exe」
「advanced-scene-switcher-windows-x64.zip」
のいずれかをダウンロードしていきましょう。
こちらではプラグインの導入のやり方が書かれています。
installerの場合とzipの場合で異なるので、こちらの説明を見て行くといいと思います。
また、このプラグインは2019用 Visual C++ 再頒布可能パッケージのインストールが必須となっています。
下のサイトからWin11やWin10であればx64のものをダウンロードしていきましょう。
「Visual Studio 2015、2017、2019、および 2022」のところになります。
こちらのページでは、OBSのForumになります。
Wikiについてもここから飛んでいきますので、英語だけになってしまいますが内容を詳しく知りたいのであれば行ってみることをおすすめします。
General

英語 | 日本語訳 |
---|---|
Check conditions every | 毎回の条件チェック |
Advanced Scene Switcher is: ・Active ・Stop | アドバンスト・シーン・スイッチャーは : ・実行中 ・中止 |
On startup of OBS: ・Start the scene switcher if it was running ・Always start the scene switcher ・Do not start the scene switcher | OBSを起動した時: ・前回シーンスイッチャーが実行中だったとき、開始する ・常にシーンスイッチャーを開始する ・シーンスイッチャーを開始しない |
Automatically start the scene switcher when: ・Never ・Recording ・Streaming ・Recording or Streaming | 次の場合にシーンスイッチャーを自動的に有効にする: ・有効にしない ・録画開始時 ・配信開始時 ・録画または配信を開始時 |
Hotkeys can be defined in the OBS settings | ホットキーはOBSの設定で定義できます。 |
General behavior | 一般的な動作 |
Enable verbose logging | 詳細ログを有効にする |
Save window position and size | ウィンドウの位置とサイズを保存 |
Show system tray notifications | システムトレイ通知を表示 |
Disable UI hints | UIヒントを無効にする |
Display warning if plugins cannot be loaded | プラグインをロードできない場合の警告表示 |
Hide tabs which can be represented via macros | マクロで表現できるタブを隠す |
After performing actions skip performing actions for 0.00 seconds | アクション実行後、0.00秒間アクションをスキップする |
if no actions are performed for 0.00 seconds Don’t switch scene | 0.00秒間アクションが実行されなかった場合、シーンを切り替えない |
When changing transitions:Set transition oberrides | トランジション変更時:トランジションオーバーライドの設定 |
When changing transitions:Change active transition type | トランジション変更時:アクティブなトランジションタイプを変更する |
Switching methods priority (Highest priority is at the top) | 切り替え方法の優先順位(優先順位が高いものが上) |
Use thread priority Normal | スレッドの優先順位を使う 通常 |
Raising the priority above “Normal” is not recommended | 優先順位を “Normal “以上にすることは推奨されない |
Macro
Advanced Scene Switcher 1.23.1 の見た目は以下のようになっています。

①マクロリスト
②イベントセクション
(condition types)
③アクションセクション
(action types)
イベントセクションでは、
条件を設定するためのセクションになります。
セクション名 | どういう条件が設定できるか |
---|---|
Date and time | 指定の日時になったとき… |
Audio | 音量が指定したデシベルを上回ったとき… 音量が指定したデシベルを下回ったとき… |
Idle | 特定時間内にキーボードとマウスの操作がなかったとき… |
Scene | 指定したシーンを開いているとき… |
Source | 指定したソースを開いているとき… |
Video | 指定した画像に一致したとき… |
などという条件を組むことができます。

英語 | 日本語訳 | |
---|---|---|
☐ | Run macro in parallel to other macros | 他のマクロと並行してマクロを実行する |
☐ | Perform actions only on condition change | 条件変更時にのみアクションを実行する |
一定の時間変化が観察された場合にのみ条件をトリガーしたい場合は、ビデオ条件に期間修飾子を追加できます。

英語 | 日本語訳 |
---|---|
No duration modifier | 持続時間の修正なし |
For at least | 少なくとも|短くて〇〇秒 |
For exactly | 正確に|ちょうど〇〇秒 |
For at most | 多くとも|長くて〇〇秒 |
Within the last | 過去〇〇以内|直近〇〇秒以内 |
For at least
イベントセクションの条件を満たした時から〇〇秒経過したら、アクションセクションを実行する。
満たし続ける限りずっとアクションセクションを実行する。
英訳:「少なくとも X 時間の間」は、少なくとも X 時間の間 true であった場合にのみ true を返す条件になります。
For exactly
イベントセクションの条件を満たした時から丁度〇〇秒経過した時のみ、アクションセクションを実行する。
〇〇秒経過したのち、再びやり直す。
英訳:「正確に X 時間の間」と指定すると、基になる条件が (時間制約を無視して) 指定された時間にわたって true になった時点でのみ true を返す条件になります。
For at most
イベントセクションの条件を満たした時から〇〇秒経過するまでの間、アクションセッションを実行する。
その後はずっと満たさない状態となる。
英訳:「最大 X 時間の間」を指定すると、最大 X 時間の間のみ true が返され、その後は false が返されます。基礎となる条件 (期間修飾子を無視する) が false を返す場合、期間修飾子はリセットされます。
Within the last
イベントセクションを満たさなくても、最後の〇〇秒の間はアクションセッションを実行する。
その後は満たさない状態となる。
英訳:「最後の X 時間以内」では、基礎となる条件が false であっても、X 時間の間 true を返す条件になります。
イベントセクションで条件に合致した時にアクションされる内容を設定します。
もしくは、「イベントセッションで条件に合致してTrueを返された時にアクションセッションの設定したものが起動する」と考えていいと思います。
英語 | 日本語訳 |
---|---|
Switch scene | 設定したシーンに移動する |
Audio | 音量を変更、ミュートのON/OFFができる |
Madia | 指定したファイルを再生する |
Fillter | シーンにフィルタを掛けられる |
Wait | 待機時間を設ける |


英語 | 日本語訳 |
---|---|
exactly matches | 完全一致 ピクセル数まで一致するときにTrueを返す |
does not match | 一致しない 1つのピクセルでも一致しないときにTrueを返す |
has not changed | 変わらない ビデオソースに変更がないときにTrueを返す |
has changed | 変化した ビデオソースに変更があったときにTrueを返す |
has no output | 出力がない ビデオソースに出力がないor非表示のときにTrueを返す |
matches pattern | パターンにマッチする ビデオソースの類似性によってTrueを返す |
contains object | オブジェクトを含む ビデオソース内の特定のオブジェクトを検出するときにTrueを返す |
brightness | 明るさ |
contains text | テキストに含む 指定したテキストがビデオソース内で検出されたときにTrueを返す |
matches color | 色にマッチする |
マクロを新規追加して名前を入力する。
以下の2つの条件を満たすとアクションセクションを発生させる
・(論理演算子:If)現在のシーンが稼働中である。
・(論理演算子:And)Videoのマッチングパターンで画像認識をして、特定の画像にほぼぴったりになる。
・(論理演算子:Or)他の条件があれば、これで「いずれか」が条件を満たせばよいことになる。
切り替えたいシーンを設定して、イベントセクションで満たしたら自動でシーンを切り替えるようにする。
しきい値を調整していきながら、思い通りにうまくいくまで調整を繰り返していく。

英語 | 日本語訳 | |
---|---|---|
☐ | During transition check for transition target scene | トランジション中にトランジションターゲットシーンのチェック |
「If」としていきます。(画面ではAndとなっていますがIfとしてください)
この条件を満たしたら、アクションセクションを動かせるようになります。
ここでは「Scene」を選びます。
そして、特定のシーンを開いたときに条件を満たすようにします。
画像の概要として、
「Current scene is(現在のシーン)」が「配信シーン3:ゲームプレイ」のときに条件を満たす。
といった感じになります。
ここでは「And」にしていきます。
「And」にすることで、この条件も満たさないとアクションセクションを動かせません。
この条件を満たしたら、アクションセクションを動かせるようになります。
「+」を押してイベントセクションの選択項目を出すようにしていきます。

番号 | 選択内容 |
---|---|
① | And(画面ではIfとなっていますがAndとしてください) |
② | Video |
③ | Scene or Source |
④ | 参照元のシーンかソースを選択 |
⑤ | matches pattern |
「Browse」をクリックすると以下の画像が出るので、いずれかを選択していきます。
IMGファイルを選択していき、設定していきます。
英語 | 日本語訳 |
---|---|
Browse | ブラウズ |

英語 | 日本語訳 |
---|---|
Do you want to use an existing file or create a screenshot of the currently selected source | 既存のファイルを使用するか、現在選択されているソースのスクリーンショットを作成するか。 |
Use exist ing file | 既存のファイルを使用する |
Create screenshot | スクリーンショット作成 |

英語 | 日本語訳 | |
---|---|---|
Threshold | しきい値 | |
A higher threshold value means that the pattern needs to match the video source more closely | しきい値が高いほど、パターンがビデオソースにより近く一致する必要があることを意味する。 | |
☐ | Use alpha channel as mask for pattern | パターンのマスクとしてアルファチャンネルを使用する。 |
Use pattern matching mode Cross correlation | パターンマッチングモードの相互相関を使用する。 | |
☐ | Reduce CPU load by perforrming check only every 900 milliseconds | 900ミリ秒ごとのチェックのみ実行することでCPU負荷を軽減する。 |
☐ | Perform check only in area | エリア内でのみチェックを行う。 |
☐ | Reduce matching latency | マッチング待ち時間の短縮 |
Show match | マッチを表示 |

英語 | 日本語訳 |
---|---|
Squared difference | 2乗の差 |
Cross correlation | 相互相関 |
Correlation coefficient | 相関係数 |
初期設定では「0.80000」となっています。これを適切な数値に入力していきます。
入力した数値が適切かどうかは「Show match」を押した先の画面で確認することができます。
ピンク色の塗りつぶしが出てきたらそれが合致した(matchした)という意味になります。
大体「0.95000」から「0.99000」の間に収まればかなりの高い精度でほぼ合致したパターンのみ画像認識されるようになると思います。
Perform check only in area:エリア内でのみチェックを行う。
という項目がありますが、これにチェックを入れていきます。
英語 | 日本語訳 |
---|---|
perform check only in area | エリア内でのみチェックを行う。 |
Select area | 領域の選択 |
囲まれた枠の部分でマッチングパターンの画像認識を識別していきます。
範囲が狭くなるので、おそらくですが処理的に軽くなる可能性はあります。
映し出される映像が一定して固定されているのであれば、こちらでも設定していくのもいいでしょう。
「Show match」を押すとプレビュー画面が出てきます。
その画面ではマッチングパターンに一致したと画像認識が判断した時にだけ、反応が起きます。
反応時はピンク色で塗り潰される形になります。
これを見てちゃんと反応されているか、過剰に反応されていないかチェックをしていきましょう。

英語 | 日本語訳 | |
---|---|---|
Switch to scene 配信シーン2:雑談 using Current Trranstion with a duration of 1.00 seconds | 1.00秒の継続時間で、現在のトランジションを使用して配信シーン2:雑談に切り替える。 | |
☐ | Wait until transition to target scene is complete | ターゲットシーンへの移行が完了するまで待つ |

英語 | 日本語訳 |
---|---|
Current Scene | 現在のシーン |
Previous Scene | 前回のシーン |
Preview Scene | 予告のシーン |
「+」を押して最初に出てくる項目が「Switch scene」なので通常変更はしなくても大丈夫です。
そのあとに、「–select scene–」でアクション時に移動したい先のシーンを選択していきます。
画像例では「配信シーン2:雑談」に移動するといった感じになります。
「–select transition–」以降は選んでしまうと、今ある設定を更新してしまいます。
もしくは「Current Transition」を選びましょう。(現在のトランジション設定の意味)
そのあとの秒数を設定する部分も同じく数値を設定してしまうと、上書きしてずっとこの数値になってしまいます。
基本は入力なしで大丈夫でしょう。
もし、別途の設定が必要になった場合では入力をしていけば大丈夫です。
実際の画面を使い動作を試していきます。
画像認識を設定した場面でしっかり読み込まれると自動でアクションセクションで設定したシーン移動が勝手に起こるようになります。
これを実際に確認していきましょう。
もしここで、動かなかったりしたら原因を1つずつ探っていって解消に努めていきましょう。
ここでおそらく多いパターンとしては「しきい値」の調整がうまくいってないパターンだと思います。
多めに数値を下げていってうまく動作できるようになったら数値を調整していってみて下さい。
しきい値「0.99000」⇒「0.95000」⇒「0.90000」と調整しながらうまくいったら間の数値を埋めていくといった感じです。
DBDにおけるシーン自動切り替えの考え方
星詠れいの環境において
・OBSにおける基本(キャンバス)解像度:1920×1080
・DBDの画面の大きさ:1920×1080
必要なシーン
・「配信シーン2:雑談」
・「配信シーン3:ゲームプレイ」
・「配信シーン3A:リザルト」
・「ソースまとめ:DBD画面」(星詠れいは「ソースまとめ41:DBD画面&音声」)
必要なソース
・「画面_DBD」画面の大きさ:1920×1080
試合開始前のロード中に切り替える
※ロード中画面での下に表示されるバーに注目する
試合終了後のリザルト画面になったときに切り替える
※リザルト画面での左上に出る文字に注目する
キラー陣営:「無慈悲な殺人鬼」「冷酷な殺人鬼」「残忍な殺人鬼」「エンティティは飢えている・・・」
サバ陣営 :「脱出」「処刑された」
リザルト画面からロビーに戻る途中の画面で切り替える
※ロード画面での画面全体の映像に注目する
これは「配信シーン2:雑談」⇨「配信シーン3:ゲームプレイ」の時とほぼ一緒の画面になることが多い
なのでリザルト画面用のシーンを用意し、リザルト画面であることを条件に画像認識で切り替えることにしている
STEP.1に戻ってループする
以後はこの繰り返しになる
マクロの名前を入力します。
「マッチに移る」等とします。
論理演算「IF」
condition types:「Scene」
「Current scene is」「配信シーン2:雑談」
論理演算「AND」
condition types:「Video」
「Scene」「ソースまとめ41:DBD画面&音声」「matches pattern」指定で「マッチ開始バー.png」を選ぶ
Threshold:「0.99000」
エリア範囲を指定する(Perform check only in areaにチェック入れる)
X:500 Y:950
Width:900 Height:100 (※参考画像の方で範囲の一例があります)
マッチングパターンで使用する画像
ファイル名の一例:DBD_マッチ開始バー.png
※800×80サイズの画面になります。

action types:「Switch Scene」
移行先のシーンが「配信シーン3:ゲームプレイ」
「Current Transition」で「-」seconds
マクロ全体

マッチングパターンでのエリア指定範囲

ファイル名の一例:DBD_マッチ開始時_ハロウィン.png
※1920×1080サイズの画面になります。

マクロの名前を入力します。
「ロビーに戻る」等とします。
論理演算「IF」
condition types:「Scene」
「Current scene is」「配信シーン3A:リザルト画面」
論理演算「AND」
condition types:「Video」
「Scene」「ソースまとめ41:DBD画面&音声」「matches pattern」指定で「DBD_リザルト_エンティティは飢えている.png」を選ぶ
Threshold:「0.99000」
エリア範囲を指定する(Perform check only in areaにチェック入れる)
X:0 Y:100
Width:1000 Height:300 (※参考画像の方で範囲の一例があります)
マッチングパターンで使用する画像
ファイル名の一例:DBD_エンティティは飢えている.png
※900×200サイズの画面になります。

論理演算「OR」
condition types:「Video」
「Scene」「ソースまとめ41:DBD画面&音声」「matches pattern」指定で「DBD_リザルト_残忍な殺人鬼.png」を選ぶ
Threshold:「0.99000」
エリア範囲を指定する(Perform check only in areaにチェック入れる)
X:0 Y:100
Width:1000 Height:300 (※参考画像の方で範囲の一例があります)
マッチングパターンで使用する画像
ファイル名の一例:DBD_残忍な殺人鬼.png
※900×200サイズの画面になります。

論理演算「OR」
condition types:「Video」
「Scene」「ソースまとめ41:DBD画面&音声」「matches pattern」指定で「DBD_リザルト_冷酷な殺人鬼.png」を選ぶ
Threshold:「0.99000」
エリア範囲を指定する(Perform check only in areaにチェック入れる)
X:0 Y:100
Width:1000 Height:300 (※参考画像の方で範囲の一例があります)
マッチングパターンで使用する画像
ファイル名の一例:DBD_冷酷な殺人鬼.png
※900×200サイズの画面になります。

論理演算「OR」
condition types:「Video」
「Scene」「ソースまとめ41:DBD画面&音声」「matches pattern」指定で「DBD_リザルト_無慈悲な殺人鬼.png」を選ぶ
Threshold:「0.99000」
エリア範囲を指定する(Perform check only in areaにチェック入れる)
X:0 Y:100
Width:1000 Height:300 (※参考画像の方で範囲の一例があります)
マッチングパターンで使用する画像
ファイル名の一例:DBD_無慈悲な殺人鬼.png
※900×200サイズの画面になります。

action types:「Switch Scene」
移行先のシーンが「配信シーン3A:リザルト画面」
「Current Transition」で「-」seconds
マクロ全体

Videoの一部分のみ

マッチングパターンでのエリア指定範囲

※基本的にはキラーの時と一緒です。
画像を置き換えるのみになります。
マクロの名前を入力します。
「ロビーに戻る」等とします。
論理演算「IF」
condition types:「Scene」
「Current scene is」「配信シーン3A:リザルト画面」
論理演算「AND」
condition types:「Video」
「Scene」「ソースまとめ41:DBD画面&音声」「matches pattern」指定で「DBD_リザルト_処刑された.png」を選ぶ
Threshold:「0.99000」
エリア範囲を指定する(Perform check only in areaにチェック入れる)
X:0 Y:100
Width:1000 Height:300 (※参考画像の方で範囲の一例があります)
マッチングパターンで使用する画像
ファイル名の一例:DBD_処刑された.png
※900×200サイズの画面になります。

論理演算「OR」
condition types:「Video」
「Scene」「ソースまとめ41:DBD画面&音声」「matches pattern」指定で「DBD_リザルト_脱出.png」を選ぶ
Threshold:「0.99000」
エリア範囲を指定する(Perform check only in areaにチェック入れる)
X:0 Y:100
Width:1000 Height:300 (※参考画像の方で範囲の一例があります)
マッチングパターンで使用する画像
ファイル名の一例:DBD_脱出.png
※900×200サイズの画面になります。

action types:「Switch Scene」
移行先のシーンが「配信シーン3A:リザルト画面」
「Current Transition」で「-」seconds
マクロ全体

マッチングパターンでのエリア指定範囲

マクロの名前を入力します。
「ロビーに戻る」等とします。
論理演算「IF」
condition types:「Scene」
「Current scene is」「配信シーン3A:リザルト画面」
論理演算「AND」
condition types:「Video」
「Scene」「ソースまとめ41:DBD画面&音声」「matches pattern」指定で「DBD_マッチ終了時.png」を選ぶ
Threshold:「0.99000」
エリア範囲は指定しない
マッチングパターンで使用する画像
ファイル名の一例:DBD_マッチ終了時.png
※1920×1080サイズの画面になります。

action types:「Switch Scene」
移行先のシーンが「配信シーン2:雑談」
「Current Transition」で「-」seconds
マクロ全体

例えば、無慈悲な殺人鬼だった時にだけに、何かのビデオを流したり、メディアを表示させたりすることも可能じゃないかなと思います。
画像認識によって自動で再生されるようになるので便利になるんじゃないかとは思います。
この記事で参考になりましたら、ぜひとも星詠れいをフォローしてください!
色々書かれていますが、あくまでも一例ということで皆様のOBSの構築への一つの参考となっていただければと思います。
OBS 総合まとめ
OBSの基本設定
OBS 関連記事