以前、YouTube-VJというURLを打つとYouTubeをフルスクリーンアプリで再生してくれるツールについて紹介しました。

また、この記事で紹介しているWeb-VJや簡易VJアプリもGoogle Chromeを最大化して使う系のツールです。
今回の記事は焼き直しになるんですが画面キャプチャについての記事です。
ざっくりいうと下の記事と書いてあることは全く一緒です。
なんでこの記事を書くかというと・・・
フルスクリーンアプリのキャプチャについては非常にイメージしにくい仕様が存在しているため。です。
OBSでのキャプチャとResolumeに送る方法の復習
YouTube-VJを例にOBSでのキャプチャとResolume連携を復習しておきましょう。
まず、OBSにSpout関連のツールを入れておきます。
1.まずYouTube-VJでProjection Windowを出し、プロジェクターに写っている方にドラッグアンドドロップ。F11で最大化します。
2.OBS Studioを開き、「ソース」から「ウィンドウキャプチャ」を選び、

[chrome.exe]:YouTube-VJ Projection Window を追加。

サイズが違う場合は右クリック→「変換」→「画面に合わせる」で大きさを調整しておきます。

3.この状態でOBSからSpoutをOnにすれば、Resolumeで拾えるようになるはずです。


Sourceから「OBS_Spout」を入れたいところに入れてください。

これで連携完了です。
完
といいたいところでまあこれでResolume出力しても問題はないんですが、ちょっとだけ仕様についてお話しときます。
Windowsのフルスクリーンアプリの構造って?
基本的にはフルスクリーンアプリがなんらか表示されている状態で別のアプリをフルスクリーン投影するとあとにフルスクリーンになったアプリが優先的に前にくるようになっています。また、フルスクリーン投影しているアプリが複数ある場合、「タスクバーで最後にクリックしたアプリがフルスクリーンになる」という仕様があるみたいです。
つまるところ「一番最前に投影したいアプリを一番最後にフルスクリーンにする」ことが重要になります。
例えばResolume→YouTube-VJの順に起動すると、YouTube-VJが上にきてしまいResolumeの画面が下になってしまいます。

そのため、YouTube-VJをフルスクリーンにしてからResolumeをフルスクリーンにする、という手順を踏まなければなりません。
間違えてしまうと
起こりうることとして、「VirtualDJで素材Aを投影しResolumeに送っているつもりが実際にプロジェクターに写っているのはYouTube-VJの方だった」的なことが起こりえます。
YouTube-VJが落ちた場合は?
YouTube-VJやほかのプロジェクションウィンドウをなにかの拍子に落としてしまったり、YouTube-VJのみを再起動させたいときもあるかと思います。
そういうときは一瞬だけウィンドウが表示されてカッコ悪いですが、YouTube-VJを再度手早くフルスクリーンにしてからタスクバーのResolumeの「Display」をサッとクリックしましょう。

特にフルスクリーンアプリを複数起動している場合は、操作を間違って思わぬアプリが最前に来てしまうことがあります。
プレイ中は定期的にスクリーンやモニターを確認しましょう。ミキサーにサブモニターを繋いでおくのも有用な方法です。
ブラウザ同士のフルスクリーン仕様について
ブラウザ同士のフルスクリーンの競合ですが、Chrome+Edgeを使って同じ画面にフルスクリーン出力すると後ろに出力している方は暗転します。
例えばGoogle ChromeでWebVJ、EdgeでYouTube-VJをやり一画面にフルスクリーン投影すると前にない方はOBSで拾っても真っ黒になってしまいます。
なので、他のソフトを重ねたりエフェクトかけたい場合は
・手持ちの動画投影システムをブラウザ以外(Virtual DJやrekordbox video)でつくる
・YouTube投影をP in PかYouTube to Spout等でつくる
・タスクバーで切り替えてからOBSでも切り替える
・ダミーディスプレイアダプタを使う(後述)
のどれかが推奨されます。
ダミーディスプレイアダプタを使う
YouTube-VJなどについてですがダミーディスプレイアダプタを使う手法もあります。
ダミーディスプレイアダプタはブログの他の記事でお伝えしましたがこういうtype-cやminiDPの端子に刺さる小さいUSBメモリのような形をした機器で、


「PCにディスプレイがもう一台あると誤認識させる」という機能を持っています。
(Type-c型のUSBハブにHDMIポートが付いてるならHDMI型を選択するのもありです。)
わかりやすい使い方としてはZOOMでパワーポイント等でプレゼンしたり、仮想出力した画面をリモートデスクトップで使ったりというところです。
つまるところフルスクリーンアプリをプロジェクターに出力してるものの他にもう一つ扱えるのが強い点です。

つまり、
①YouTube VJをダミーディスプレイアダプタ(2)にフルスクリーン投影する
②OBSで拾ってSpoutなどにする
③resolumeやvirtual DJなどに飛ばす
という方法にすれば、間違ってYouTube VJを間違って上にすることも少なくなるかと思います。
また、Web-VJやRekordboxVideoを投影するのもありです。
フルスクリーンアプリを2つ以上投影したいという場合に
2→WebVJ
3→YouTube-VJ+Resolume
みたいな運用もギリギリいけます。
余談ですがダミーディスプレイアダプタはほとんどが4k解像度出力に対応しているので、
P in Pをなるべく大きくしてダミーディスプレイアダプタに出力→OBSで拾う
とP in Pからのキャプチャーも画質が上がります。
Windowsでキャプチャ運用する人はP in P法派のひとでも持っておくと重宝するかもしれません。
注意点
Windowsではメインディスプレイを含めて4つまでしか画面投影ができません。
つまり
①ノートPCの画面
②ダミーディスプレイアダプタ
③プロジェクター
に投影してしまうとあと1つまでしか増やせません。
サブディスプレイや2系統めの映像を出すと一杯になってしまいます。
その場合は、YouTube投影をP in Pにしたり、各種フルスクリーン化しているものをウィンドウ化したりと工夫が必要と思います。
ちなみにですが、Macbookの場合だと入っているCPUによって接続できる台数が決まっています。
M1やM2のチップだと、基本的にはノートPCのほかに1台までで、メインディスプレイとプロジェクターのみにしか接続できないのでダミーディスプレイは使えません。
ということで現時点でのYouTube-VJとResolumeを連携する方法についてでした。