ごーぐる部-「ゼロ(円)から始めるVJ生活」

初級者でWindowsなアニソンVJが自分なりにいろいろ書いた備忘録。Resolume/RekordboxLyric/OBSVJ等の記事が多めだと思います。

Sound 2 Light+Touch Designerを使ってResolumeでAutoBPM(+OSC応用)

VDMXとかも最近いじってて思うのが、Resolumeにもマイクから自動でBPM検知するやつほしくね?ってことです。

 

これがあればBPM同期した絵が自動で出てくるのでお酒が飲めるし自分がつぶれてもResolumeくんが頑張ってくれる!よりBPMに即した表現ができ、頭のリソースを別の表現に割いたり、省力化してVJできるようになります。

 

でもResolumeにはAutoBPMがない・・・

 

ので他のソフトからBPM検知して送ってみては・・・?みたいな話になります。

 

iPhoneアプリであるbeat detectを使った方法はSzkさんのブログのほうにありますのでこちらを参照してください。(こちらはAbletonLinkといまた別の規格を使っています)

 

szkhaven.com

 

用語説明

 新しい用語がひとつ。

 

・OSC(Open Sound Control)

次世代のMIDI的な規格の一です。

MIDIがどちらかというとコントローラー⇔各種ソフトみたいな通信を行うのに対し、OSCはソフトからソフトへ比較的直接信号のやり取りをしたい、みたいなスタンスで作られてる感じがします。

 

このブログを見てる人にいうなれば、「NDIのMIDIコン版」みたいなイメージがわかりやすいかと。

 

通信ですが、IPアドレスポートを指定して行います。

 

 

f:id:ino2408m:20210530094720j:plain


Resolumeを例に上げると、フェーダーに「composition/layers/1/video/opacity」みたいなコードのようなもの(OSCアドレス)が当てられていて、同じポート内でこのアドレスに対して命令を送るとResolumeに反映されるわけです。

 

f:id:ino2408m:20210530094559j:plain

 

何ができるか、というとほかのソフトからほかのソフトに命令をダイレクトに送れます。

 

そして以下の特徴があります。

 

MIDIよりダイレクトに制御可能(ONにしておけばマッピングがいらない)

・値をほかのソフトに返すことも可能

・LAN内ならほかのPCやiPadアプリから信号を送れる

 

詳しくは以下のサイトを見てください。

reg.s63.xrea.com

 

 使用するソフト

 

・Sound2Light

 

音声入力を解析し、OSC信号に変換してくれるソフト。

 

f:id:ino2408m:20210530100801j:plain

BPMだけじゃなく音の各成分をOSC信号に変換できるのが強みです。

 

音響反応でいろいろやりたい人もResolumeのデフォルトの音響反応より高機能で帯域をマウスで簡易に選択できるため有効なツールだと思います。

 

github.com

 

・TouchDesigner

f:id:ino2408m:20210530101712p:plain

以前こちらのブログで仮想MIDIコンの作り方について紹介しました。

 

↓基本的な信号変換などについてはこちらの記事も読んでみてください。

ino2408m-pinv.hatenadiary.jp

 

非商用に限り無料です。

 

derivative.ca

 

何に使うか、というとOSCのメッセージを変換するのに使います。

 

本来は嚙ませなくてもいけるのでは・・・?なんですが、

 

・現時点でSound2LightにはBPM Targetに任意のOSCアドレスを入れられないバグがあり、現時点で修正されていない

BPMがおかしくなったときにMIDIコンで即座に切り離すことができない

 

といった理由でTouch Designerを通すことになります。

 

もちろん詳しい人であればTouchDesignerだけでBPM検知をしてResolumeに送ることができるにはできるのですが、今回の方法の方が導入しやすかったり、いろんなパラメータをプレイ中でも変えやすいと思います

 

下準備

1.IPアドレスを確認

 

OSCの下りで言った通り、IPアドレスが通信に必要なので最初にIPアドレスを調べます。

 

Windowsマーク右クリック→ファイル名指定して実行→cmd→ipconfigという人によってはおなじみの手順です。

f:id:ino2408m:20210530103923j:plain

f:id:ino2408m:20210530104613j:plain

f:id:ino2408m:20210530104959j:plain

このうち下の方の「IPv4アドレス」を控えておきます。

 

また、ファイアウォール等によって通信がうまく行えないこともあるので、必要に応じて設定しておきます。

 

2.Sound2Light、Resolumeの設定

 

デフォルトのポートはSound2Lightで「8000」、Resolumeで「7000」なのでそのままで大丈夫かと思います。(Sound2LightからResolumeに直接OSC送りたい場合などはへ統一してください。)

 

Sound2LightのSettingsよりOSC IP Adressにさきほど調べたIPアドレスを入れます。

 

Portは変更しなくてもいいですがほかのソフトと競合する場合は変更してください。

 

その下のInputから入力を選びます。USBマイクやオーディオインターフェース等使いたい入力を選んでください。

 

f:id:ino2408m:20210530112406j:plain

 

Resolume側ですが「Avenue→Preferences」の「OSC」から「OSC Input/OSC Output」をONにします。

f:id:ino2408m:20210530113346j:plain


とりあえずこれでこの2ソフトについては設定OKです。

 

 

Touch Designerを組む

Touch DesignerでOSCアドレスとポートを変換します。

 

Touch Dedignerですが初期設定だと画面アクティブじゃない状態では処理を行わないようになってるので、「Preference」より「Stop Playing when Minimized」を✕にします。(これをしないとTouchDesignerがアクティブじゃないときに機能が使えません)

 

f:id:ino2408m:20210530121725j:plain

 

1.右クリックからAdd Operaror。CHOPの中から「OSC In」を選んでオペレーターを追加します。

「Network Port」にSound 2 Lightのポート(設定変更してなければ8000)を入れます。

うまくつながれば下図のようにオペレーターが入力を拾ってくれます。

f:id:ino2408m:20210530114903j:plain

 

 

2.CHOPより「Select」を追加し、「OSC In」と繋げます。

Channel NamesとRename fromに「s2l/out/bpm」(右の黒三角から選択可)、Rename toにResolumeのBPM制御アドレスである「composition/tempocontroller/tempo」を入れます。(ほかのソフトの場合でもそのソフトのBPM制御アドレス入れれば制御できます)

f:id:ino2408m:20210530115229j:plain

 

ちなみにこのBPM制御アドレスはResolumeでいうとここにあります。

 

f:id:ino2408m:20210530120320j:plain

 

3.次に「OSC Out」を繋ぎ、今度はResolumeが受け取るポート(デフォルトで7000)を指定します。Numeric Formatは「Int」で。

 

f:id:ino2408m:20210530121402j:plain

 

これでResolumeにSound2LightからBPMが送られていればひとまずはOKです。

 

f:id:ino2408m:20210530122422j:plain

 

BPM連動ON/OFFを切り替えられるようにする

 

ですが、この状態だとBPMがおかしい状態になったとき切り離すことができません。(Trapとかのジャンルだと四つ打ちじゃないのでそのときにBPMおかしくなったりすることはある)(BPM大幅に変わったときにはBPM検知が10秒くらいは遅れる)

 

そういうときのために、MIDIコンなどによって切り離す機能をつけます。

ただ、TDにMIDIコンで入力入れてそれをResolumeに入れてる場合、「MIDIコンが2台のソフトで取り合いになりどちらかのソフトで動作しなくなる」問題が起こりえます。

 

BPMSyncのためだけにMIDIコン一台を入れるのもなんかなあ・・・という人もいるのでここはいろいろ工夫必要な点です。

 

TouchDesignerでMIDIコン変換していれば特に問題なくいけるのですがこの点に関しては一応代替策はあるのであとでフォロー入れます。

 

LaunchPad等複数ソフト扱えるMIDIコンを普段使ってればそこのボタンに配置するのもありです。

 

この辺は運用によっても変わってくるので、そのスイッチングの部分だけ先に。

 

クリックできるボタンを押すとON/OFFが切り替えられるようなシステムについて。

 

分かりやすいように、MIDIコン等の入力を模したスイッチを置いときます。

 

Add Operator」から「COMP」→「Button」でButtonを追加します。このままでもいいんですが、いろんな入力が代わりにつけられるように押したときだけONになるモードにします。(「Button Type」「Momentary」に)

 

f:id:ino2408m:20210530131440j:plain

 

ここにさきほどと同様「Select」をつなぎます。Channel Namesの横から入力をひとつだけ選択してください。

 

f:id:ino2408m:20210530131802j:plain

 

その次にLogicを繋ぎます。これは入力が変化したときに対し1/0の値をスイッチ的に入れるCHOPです。

「Channel to OP」をToggleにすると、入力が0からほかの値になるたびに1⇔0を行き来する感じになります。

f:id:ino2408m:20210530132143j:plain

 

さきほど作ったOSC Outをクリックし、Activeのところの+マークをクリック。

値に1が入ってる状態にします。

f:id:ino2408m:20210530133216j:plain

次にLogic1の右下のキラキラマークみたいなやつを押してアクティブ状態にし、

先ほどの「oscout1」の「active」のところにドラッグアンドドロップし、「Export CHOP」

f:id:ino2408m:20210530133946j:plain


で値を反映させます。

f:id:ino2408m:20210530133526j:plain

f:id:ino2408m:20210530133047j:plain

f:id:ino2408m:20210530133651j:plain

 

すると以下のような感じになります。

f:id:ino2408m:20210530134340j:plain

 

これでButtonの右下のキラキラマーク押せばボタンが使えるようになります。

 

ここまでで「ボタンをクリックすればBPMSynモード/Tapモードが切り替わる感じのシステム」が完成しました。

 

MIDIコンが独立している場合、もしくはTDで仮想MIDIコンを作っている場合はこのボタンの代わりに「MIDI In」CHOPでボタンをアサインすればOKです。

 

f:id:ino2408m:20210530134712j:plain

 

Resolumeに直接MIDIコンをアサインしてる場合

 

プレイ中にTouch Dedignerの画面を開くのもなかなか手間なので、Resolumeの画面を閉じずに操作したい場合は「Resolumeの使わないかつところに」からTouchDesignerにOSCで命令送るのがいいかな・・・という所感です。

 

BPMの「-」ボタンから命令おくる例で。(本当はAbletonLINKのボタンにアサインしたかったのですが対応してませんでしたorz)

 

f:id:ino2408m:20210530135925j:plain

 

1.Resolumeから割り当てたいボタンのアドレスを調べ、OSC OutPutをOnにします。

f:id:ino2408m:20210530135639j:plain

 

 

2.次にPreferenceからOSCのOutputアドレスを設定し控えます。

f:id:ino2408m:20210530140205j:plain

 

3.Touch Designerに戻り、先ほど作ったButtonの代わりにOSC Inを繋ぎ、ResolumeのOutputのポートを入れます。

 

f:id:ino2408m:20210530140942j:plain

 

これを入力として使えば、ResolumeのTempo「-」ボタンを押すたびにBPMAutoのOn/Offが切り替えできます。

 

この-ボタンをMIDIコンにアサインすればMIDIコンでも動作します。

 

人によってはDashboardや空クリップのパラメーターにアサインするのもありかもしれません。

 

実際のプレイでの使い方

Sound2Light、TouchDesigner、Resolumeを立ち上げればOKです。

 

BPMRangeについては、Autoよりは手動のほうが急な変化なくていいかと。

 

下の一時停止ボタンは押すと最後のBPMで固定されてしまうので基本的には押さないようにしてください。

 

f:id:ino2408m:20210530141615j:plain

 

あと、BPMは合うもののesyncはされないので、必要に応じて自分で行ってください。

 

精度ですが、音楽ジャンルが決まっててドラムが4つ打ちになってるイベントに関しては実用度高いです。アニソンやアニリミ等でもBPMゆっくり変化するパーティやDJさんの番手ではかなりいい感じに使えるかと。

 

逆に4つ打ちじゃない曲や急なBPM変化にはやや弱かったりします。頑張ってBPM検知しようとするものの迷子になることもなくはないので、BPMに関しては目視確認しつつたまにTapで補っていきましょう。

 

 

ということでSound 2 Light+Touch Designerを使ってBPM検知する方法でした。

 

 

あと、難しい・・・ってひとのために

今回のTDのプロジェクトファイル的なのを置いときます。

他の環境でうまく動作するかは分かりませんがとりあえず使ってみたいという方はぜひ。

 

・マウスボタンで動作するもの「s2l to resolume click.toe

・Resolumeの「-」ボタンで動作するもの「s2l to resolume osc.toe

 

ポートを確認しつつ使ってみてください。

 

 

www.dropbox.com

 

RekordboxLyricとOBSを併用する(画質低でも高解像度)

OBSと書いてありますが現場向けの記事になります。

以下の記事の補足として書いたものです。

 

ino2408m-pinv.hatenadiary.jp

 

↓過去記事の動画ですが画質の違いがわかるかと思います。

www.youtube.com

 

RekordboxLyricなのですが、2021年5月時点で

画質「低」にした場合

 

Spoutで高解像度画像を出力し、そのSpoutを拾い、ビデオと合成してから低解像度で出力するというちょっと不思議な仕様になっています。

 

また、画質「高」にした場合、マシンに負担をかける、マシンスペックが必要となることもあります。

(Rekordbox6になってやや負荷は改善した感はあります)

 

また、現時点でRekordboxLyric関連の機能にはショートカットを設定できず、プレイ中の制御がしにくい難点があります。

 

フレームレートは落ちますが、画質低設定、フリーソフト同士の組み合わせでもそれなりにいい感じに乗せられる方法があるにはあるので紹介します。

 

RekordboxLyric+OBSの利点

・画質低でもリリックが高解像度で出力される

・色が白に固定される

・透明度の変更が可能

・リリック消したいときにホットキーで簡便に操作できる

・オーディオヴィジュアライザーソフトなどほかのソースを乗せられる

 

欠点

・デッキ変更ごとにホットキー操作が必要になる

・OBSでMIDIコンを使うことができない

・設営がやや煩雑になる

・色の変更がしにくい

 

必要なもの

・ダミープラグ

f:id:ino2408m:20210522131932j:plain

ゲーミングPC用で端子があればMiniDP型がおすすめです。投影する端子と別のものでPCに対応してるものを選んでください。

 

www.amazon.co.jp

 

必要なソフト

・OBS Studio 

 

obsproject.com

 

・OBS Spout2 Plugin

 

github.com

 

 ・Rekordbox(Video/Lyric)

 

 まずはじめに

 

RekordboxLyricですが、公式ではSpout対応していないものの各デッキのLyricのモーションがSpoutもしくはSyphonとして飛んでいます。

 

Spoutについては過去記事を参照ですが、ようはRekordbox上でLyricをONにするとその時点でいろんなソフト(VDMXなどのResolumeなどのVJソフトや)で拾える状態になります。入切もできません。

 

 

ino2408m-pinv.hatenadiary.jp

 

そしてこのSpoutですがプラグインを入れることによりOBS Studioで拾えます。

 

なので、OBS上で回りくどく合成してフルスクリーンプロジェクターで出力しようというお話です。

 

図解すると以下のような感じになります。

 

 

f:id:ino2408m:20210522152326j:plain

 

 

 

Rekordbox側での設定

 

Rekordbox側から歌詞を他ソフトに飛ばすための設定は特にいりません。

 

f:id:ino2408m:20210522135508j:plain

LyricをONにした時点でSpoutで反転歌詞が飛んでいます。

f:id:ino2408m:20210522135351j:plainダミープラグを指し、画面を拡張モードにしたのちRekordboxから画面出力します。(Rekordboxからの投影がやや面倒になるので本出力のHDMIなどは抜いておくことをおすすめします)

 

f:id:ino2408m:20210522140333j:plain

 

つぎにLyricを両デッキとも「無効」にし、ダミープラグをダミープラグ画面にVideoのみフルスクリーンで出力します。(Lyricパネルは閉じないこと)

f:id:ino2408m:20210522135719j:plain

 

以下のような状態になればOKです。

f:id:ino2408m:20210522140807j:plain

 

OBS Studio側での設定

 

OBS Studio立ち上げる前に本出力用のHDMI挿しておきましょう。

 

 投影用のシーンを作りショートカットを設定していきます。

 

 1.Video用のシーンを追加する。

ダミープラグ挿さった状態だと画面キャプチャでその画面をダイレクトに拾えます。

 

f:id:ino2408m:20210522143124j:plain

 

2.Lyric用のシーンを追加する。

 

Lyricは上述のSpout Pluginを入れれば追加のところにSpout2Captureがでてきてるのでそれで拾えます。

 

f:id:ino2408m:20210522143532j:plain

デッキごとにSourceを作成することになります。

 

Spout Sendersより「Deck1_LS-Unity」を選択します。(この状態では黒文字白背景、上下反転ですがのちほど変換します)

 

f:id:ino2408m:20210522143947j:plain

わかりやすいようにDeck1等と名前変えておきましょう。

 

f:id:ino2408m:20210522144238j:plain

 

まずこれを上下反転します。

上下反転はソースを右クリックし、変換→垂直反転でいけます。

f:id:ino2408m:20210522144405j:plain

 

次に白黒反転と透過です。白黒反転は、フィルタから色補正を追加し、コントラストを左端に振ると行えます。

 

f:id:ino2408m:20210522144608j:plain

透過は、フィルタ「カラーキー」を追加し、「色キーの種類」をカスタム色、キーの色を黒にすると行えます。

 

不透明度もここで変更できるので必要に応じて設定してください。

f:id:ino2408m:20210522145036j:plain

 

同じようにしてDeck2もつくります。

 

f:id:ino2408m:20210522145911j:plain

 

Deck1とDeck2を作ったらグループ化しておくといいでしょう。

f:id:ino2408m:20210522150037j:plain

次にホットキーを使ってDeck1のみ表示、Deck2のみ表示、どちらも表示/非表示を切り替えられるようにします。

 

Rekordboxとホットキーがかぶらないようにだけは注意してください。

 

f:id:ino2408m:20210522150341j:plain

↑設定例です。

 

投影ですが右クリック→全画面プロジェクターで投影したい画面選択すれば出せます。

f:id:ino2408m:20210522150546j:plain

 

実際のプレイ時はなかなかOBS開けないので、ウィンドウプロジェクターを出しておくと便利です。

 

f:id:ino2408m:20210522150738j:plain

ウィンドウプロジェクターを常に真上にする設定は、設定画面にあります。

 

f:id:ino2408m:20210522150910j:plain

 

これでRekordboxVideoとOBSを併用し、Lyricを高解像度で合成したり入切をショートカットで行うための設定ができました。

 

もちろんOBSを普通に配信のように運用すれば配信のときの利用法としても有効です。

 

RekordboxLyricの画質の粗さが気になるんだけど・・・な人やキーボードショートカットで制御したい人、オーディオビジュアライザ等別のソースも載せたい人はぜひこの方法を試してみて下さい。

 

 

RekordBoxVideo+Lyricの基礎的な使用法(+α)

RekordBoxVideo、ネット上にもあんまりTipsがないので一応私の方でも基礎記事落としておきます。

 

f:id:ino2408m:20210522153531j:plain

 

まずはじめに

 

いきなりこういうことを言うのもあれなんですが、RekordboxVideoに関しては結構人を選ぶソフトな側面があります。要約すると以下のような特性があります。

 

長所

DVJ(DJしながらVJ)ができる

・UIが非常にわかりやすい(初見の人でも使いやすい)

・ライブラリーからの検索が使える。

・キューなどが複雑になったときの管理が他のソフトより楽。

RekordboxLyricが使える。

・imageやテキストが使いやすい。

 

短所

・プラッター(お皿)に関してはPioneer純正コントローラーしか使えない

MIDIマッピングが融通効かない

2デッキまで拡張機能やエフェクトも少ない

・他のソフトに映像を飛ばしたり他のソフトから映像拾ったりができない(Spout等がない)※無理やりやる方法はある(MacのみSyphonの送信は可能)

・機能の割にPCの必要スペックが高く動作も重い

・対応動画形式が他のVJソフトより限定されている

 

こういう人が使うのにおすすめです

・動画の変換形式が統一されておりその形式がRekordboxVideoに対応している

・DVJをやる機会が多い

・動画を流すタイプのVJの機会が多くクラブやRemixにあまり当たらない

RekordboxLyricを使いたい(ただしその特性上他のソフトと組み合わせて使うのが実はおすすめ)

・DJをやるためのPCがゲーミングノート等でありグラフィック性能が高い

・レコボユーザーだが明日VJやることになった

 

レコボリリック使えるようになるのは強いですが買い切りがいい、リリック使わない、VJだけやりたいなら正直VirtualDJ等ほかのソフトのほうがおすすめです

 

 ↓VJソフトの選び方はこちら

ino2408m-pinv.hatenadiary.jp

 

 

DVJ(DJしながらVJ)をする、他の機能目的でCreative以上のプランを契約しているなら選択肢に入るかなという感じです。複数端末で使えるようになるという点、サブスクで使える、あと初期設定がほぼいらないのは非常に強いですが、VJだけの用途としてRekordboxVideoを使うというのはできなくもないですがあまりおすすめはしません。

 

 

1.料金体系、契約、アクティベーション

料金体系ですが以前は買い切りでしたが今はサブスクしかありません。

Rekordbox5用のプランに契約してる人は継続できますが5用のプランの受付は終了してるので2021年現在Lyricだけのプランに加入したりレコボビデオを買い切ったりはできません。

f:id:ino2408m:20210312145552j:plain

この右のCreativeプランに加入することになります

 

 

登録とアクティベーション

まずPionnerDJのアカウントをとり、公式サイトからログイン。プランというところから各種プランを購入できます。

 

rekordbox.com

 

 

f:id:ino2408m:20210520100457j:plain

 

f:id:ino2408m:20210520100758j:plain

解約したいひとは下の詳細はこちらってところから行います。

 

次にRekordboxを開き、自分のアカウントにログインします。

ログインできたら、右上の「MY PAGE」→「PLAN」→「このコンピューターをアクティベートする」でアクティベートできます。

f:id:ino2408m:20210520101354j:plain

 

(余談)アクティベートしなくてもリリックの体験機能は使えます。その際、歌詞の途中が★★★で表示されるのでその場合はアクティベーションがうまく行っていません。

 

2.やっといたほうがいい初期設定(グラボ設定・Spout関連)

 

やらなくてもいいといえばいいんですがやっといたほうがいい初期設定。難しいよ!ってひと、グラボがPCについてない人は飛ばしてもOK。

 

グラフィックボードSpout関連です。

 

RekordboxVideoってSpout対応してないんじゃ・・・

 

実はLyricの描画過程でSpoutを投げて自分で拾うみたいな挙動をするので、特にLyricを使う人はこの設定しといたほうが安定します。

 

SpoutとRekordboxのグラフィックプロセッサを統一します。デスクトップで右クリックして「NVIDIAコントロールパネル」を開き、

 

f:id:ino2408m:20210506010113j:plain

その中の「3D設定の管理」→「プログラム設定」を確認します。

 

カスタマイズするプログラムを選択する」からRekordboxを選び、「このプログラム用の優先グラフィックプロセッサを選択する」の項目が「グローバル設定を使用する」または「高パフォーマンスプロセッサ」になっていることを確認してください。

(図はVirtualDJですがRekordboxを選択して設定してください)

f:id:ino2408m:20210506023012j:plain

 

 

GPUついてないPCの場合「統合型グラフィック」に各ソフト設定してください。2ソフト間で違う描画処理にならないようにしてもらえればOKです)

 

次にSpoutの設定です。

 

Spoutのフォルダより「SPOUTSETTINGS」→「SpoutSettings.exe」を開きます。

 

f:id:ino2408m:20210506023709j:plain

 

ゲーミングPC等であればOptimus global processorを「High performance」(ようはGPUでの処理)、そうでなければ「Integrated」(統合グラフィック)に設定。

 

上のAutoshareにチェック入ってれば外してください。

 

これをやっておくとLyricをOnにしたとき「Cannot create DirectX/OpenGL interopというメッセージが表示されなくなります。

 

Lyricを使おうとしたけど真っ暗なんですが・・・な人もこの設定をしてあげてください。

 

 

 3.基本的な使い方とトランジション(切り替え)

注意ですが動画を1回でも再生するとライブラリに入ってしまうので、ライブラリ全体から曲を検索して使ってるDJさんは現時点の全ライブラリをプレイリスト等にバックアップするなどしておくといいかと思います。

 

使い方についてですがまあRekordboxなのでそんなにUIは難しくないです。

 

レコボを起動し、環境設定からビデオ→ビデオ機能を有効にする、で有効化できます。

 

スペックに合わせて画質も調整してください。

 

f:id:ino2408m:20210522034655j:plain

 

画質については、

高にすると結構スペック必要なのと低だと解像度高いプロジェクターでは目立つため、中がいいかな?というのが個人的な所見です。

 

この状態でVideoパネルを出すとRekordboxVideoが使えます。

 

f:id:ino2408m:20210522050426j:plain

 

モニターへの投影の設定。

 

ようはサブディスプレイ等つないでおらずHDMI等でモニターやプロジェクターについないでるだけであれば拡張モードにしたうえで右上の矢印押すだけで投影できます。

 

f:id:ino2408m:20210522050236j:plain

もし投影されている画面が違う!という場合はフルスクリーン投影されてる画面でダブルクリックするとウィンドウになるので、そのウィンドウを投影したい画面に持っていきまたウィンドウをダブルクリックすると目的の画面に投影できます。

 

f:id:ino2408m:20210522050823j:plain

 

 

使い方ですがEverythingエクスプローラから各デッキやプレイリストに投げてDJプレイ同様に再生すれば動画が乗ります。実に簡単。DDJ-200とかWegoとかならコントローラーもほとんど設定されているので今すぐDJやDVJできちゃいます。

 

f:id:ino2408m:20210522034512j:plain

 

また、今流してる音源に対し動画だけ変更したいような場合は、各動画が表示されている左右のウィンドウに対し動画をドラッグ&ドロップすればできます。

 

f:id:ino2408m:20210522035819j:plain

音源を変えず動画だけ変更できるので、DJプレイ中に動画だけ変えたいときはこちらにドラッグ&ドロップです。

 

人によっては動画を事前に編集してくるスタイルではなく、もともと持っている音源に動画を載せたいというスタイルの人もいるかと思います。

 

そういう人はLinkという機能を使うことになります。

 

ここでひとつ重要な点。Linkは、音源と動画が両方ライブラリにないとできません

 

つまり、動画をライブラリに登録したのち、曲を各デッキ、動画をウィンドウに下記のようにドラッグ&ドロップすればLinkできるようになります。

 

f:id:ino2408m:20210522040736j:plain

 

持ってる音源に合わせて動画を充てたい場合はこの方法になります。

 

2つの動画は下のクロスフェーダーまたは縦フェーダーの割合に応じて混ざります。

AV SYNCをOnにすると音のクロスフェーダーと動画のクロスフェーダーが連動します。ここは運用に合わせて変更してください。

 

f:id:ino2408m:20210522041233j:plain

 

デフォルトでは縦フェーダーに合わせて動画の不透明度が変更になりますが、縦フェーダーに合わせて動画の不透明度が変更する機能のOn/Offについては設定に「チャンネルフェーダー」の項目があるのでそこから設定してください。

f:id:ino2408m:20210522041556j:plain

 

 切り替え方、およびフェーダーが中間にあるときの挙動は右下「TRANSITION FX」で設定できます。

その右のボタンでもトランジションのしかたは変更できます。

f:id:ino2408m:20210522042251j:plain

 

トランジション5つまでお気に入りに設定できます。

 

お気に入りも環境設定から設定でき、ここで設定しておくとAV SYNCの隣のFAVORITEから呼び出せるので大変便利です。

f:id:ino2408m:20210522043435j:plain

お気に入りに登録したものはMIDIコン等でも呼び出せます。

 

4.エフェクト関連

エフェクト関連ですが、独特な操作体系となってます。

TouchFXと呼ばれるところが映像エフェクトなんですが、音のエフェクトと映像のエフェクトをリンクできたり、動画のXY軸を操作してかかり具合を調整できるのが面白いところです。

 

f:id:ino2408m:20210522044834j:plain

 

X、Y方向のエフェクトを指定し、矢印の出現した画像上の一点をクリックしたりドラッグするとエフェクトがかかっていく仕様です。

 

エフェクトの強さはXで右、Yで上が強くなります。

 

f:id:ino2408m:20210522051216j:plain

 

HOLDを押すとマウスを離してもエフェクトがONになります。

エフェクトをかけっぱなしにしたいときにはHOLD押しておきましょう。

 

右上の「AVSYNC」を入れると動画エフェクトに連動して音声にも変化がかかります。

 

エフェクト多用するDJさんであれば音と動画のエフェクトを連動させて面白いことができるかもしれません。

 

音声エフェクトと動画エフェクトの組み合わせも設定画面から変更できます。

 

f:id:ino2408m:20210522051707j:plain

 

5.SlideShow

スライドショーについては、予め「フォト」ライブラリーでリストを作成しておいてそれをSLIDE SHOWというところにドラッグ&ドロップすることで使えます。

 

f:id:ino2408m:20210522053042j:plain

 

このスライドショーの挙動ですが、

デッキ1に読み込み→デッキ2に次の画像を読み込み→数秒で自動で切り替えを繰り返す・・・みたいな挙動を自動でやるシステムなので動画再生と同時に使うことはできません。(ようは汎用動画と重ねて動きを出したり、はできない)

 

動画再生モードに戻したいときはかならず停止させてください。

 

あと、切り替え方は動画の方で使っていたそれまでのTransition FXに依存します。

 

スライドショーの順番がランダムか順番か、および切り替えの秒数は設定画面から決められます。

 

f:id:ino2408m:20210522053606j:plain

 

6.Text/Image/Camera

 

Textを使ってDJ名入れたりImageでロゴ入れたり、あとWebカメラ等でDJを映したりの機能も一通りついています。

 

Textや画像使って酒を煽ったりそれを飲んでるDJをリアルタイムで映したりできるよ

 

こちらはスライドショーとは異なり、動画を再生しながらでも使えます。

 

f:id:ino2408m:20210522055032j:plain

 

共通項目です。

ANIMATION→設定画面で設定したアニメーションの速さが調整できます。(TEXTとIMAGEのみ)アニメーション自体も回転とスライドのみです。

OPACITY→不透明度、ようは文字やロゴの濃さです。

SIZE→大きさです。振り切るとフルスクリーンサイズに。

 

ANIMATIONのパターンですが設定画面から設定できます。スクロール回転から選べます。

 

f:id:ino2408m:20210522102952j:plain

 

右の四角いところにプレビューが表示されるかと思いきやここはただの位置調整です

f:id:ino2408m:20210522055532j:plain

プレビューは中央に表示されますが右のONボタンを押さないと投影画面には反映されません。

 

f:id:ino2408m:20210522060018j:plain

TEXT→テキストを直接ボックスに打ち込んで使います。

FONTでフォントや色を調整できます。

 

f:id:ino2408m:20210522060457j:plain

SAVEを押すとメッセージがワンクリックで出せるようになります。

f:id:ino2408m:20210522060324j:plain

 

IMAGEはOPENで各種ファイル開けます。GIFも使えますがアニメーションはしません。

f:id:ino2408m:20210522060700j:plain

Cameraはプルダウンから接続されたカメラを選べます。

f:id:ino2408m:20210522060802j:plain

Cameraはもちろんカメラにも使えますが、仮想カメラを通じていろんな入力を持ってくるためにも使えます。(擬似的に1デッキ増やしたい、って場合にも助かる場面は多いです)詳しくは後述。

 

7.汎用素材ランダム再生

 

動画Linkするの忘れてしまった!などのときにとりあえず曲再生すると適当にフォルダから動画再生してくれる機能もついてます。

 

あらかじめ動画をフォルダにまとめておき、設定画面の下の方から設定します。

 

f:id:ino2408m:20210522112716j:plain

 ランダム再生したいもしくは選んで再生したいフォルダをここで設定しておきましょう。

 

なお、「楽曲ロード時に指定フォルダのビデオを選択して表示」にするとビデオがLinkされてない曲を読み込んだときに以下の画面が出ます。その場でファイルを選べるので雰囲気にあった汎用素材を選べますが、煩わしいという人や曲を頻繁に選びかえるプレイをするタイプのDJさんはランダム等に設定しておいたほうがいいかもしれません。

 

f:id:ino2408m:20210522112935j:plain

 

DVJでなくVJで使うパターンなら、エマージェンシーループを入れたBPM120の楽曲データを入れておくと、困ったとき汎用に飛べるので非常に便利です。

 

(多くのVJ素材はBPM120で作られているので離席時でもだいたいリンクしてくれる)

 

choroyama.exblog.jp

8.Lyric

 

Lyricについては過去記事を参照してもらえれば。Rekordbox6以降でRekordboxVideoを契約すると自動的についてくることになります。目玉機能ではありますが現時点で非常に癖が強い仕様です。

 

 

ino2408m-pinv.hatenadiary.jp

 

 

こちらでも軽く書きます。

 

 設定画面からLyric機能をONにし、ABCと書かれたパネルを押すとLyricの機能が使えます。

 

f:id:ino2408m:20210522104759j:plain

 

Lyricの注意点ですが、

・歌詞が取得できるのは3000曲まで

・歌詞はプチリリより取得する。ようはインターネットがない環境では取得できない

・色とモーション(パターン)は自分で設定できるが初期設定では自動的に色が反映される

歌詞を取得してから曲を読み込む、か2回読み込むかしないと反映されない(新Verで改善済ですが事前取得しとくといいのは確かです)

・Lyric関係の機能はショートカットに設定することができない(マウス操作が必須)

 

ことです。要約すると、

 

レコボリリックを使ったプレイをする場合はセットリストを組んできて事前に歌詞取得とフォント/色の調整をしておく

 

ことが推奨されます。

 

ちなみにもっと言うと自己責任にはなりますがプチリリで同期歌詞を作っておくと取得できるようになります。

 

petitlyrics.com

プチリリで同期歌詞を作成するとき、作成した同期歌詞はSpotify側にも返されるので、誤字等にはくれぐれも気をつけてください。

 

 

基本的な使い方。

 

まず、歌詞の取得関連。

 

楽曲解析時、歌詞データを取得する」にチェックをいれれば読み込んだときに歌詞を取得してくれますが、そうでない場合は右クリックして「歌詞の取得」で取得できます。

 

取得したものについてはその下の「歌詞を削除」で消せます。(取得した歌詞が3000曲を越したときなど)

 

複数選択して取得することも可能です。

f:id:ino2408m:20210522114137j:plain

単曲選択で歌詞取得すると細かくアーティスト、タイトル、長さ等を設定する画面が出ます。

f:id:ino2408m:20210522114407j:plain

ようはこの3つの情報をもとに歌詞を取得しています。

 

うまく取得できないときは

・音源の「長さ」を少し変えてみる

・カバーものの場合アーティスト名をカバー元のに変えてみる(アレンジやテンポが違う場合歌詞の乗るタイミングがおかしくなることもあり要確認)

・グループ名の表記ゆれを直してみる

・タイトルに(-ver等)あればそこを削ってみる

 

を試してみるといいかもしれません。

 

ちなみに、

 

プチリリ自体Spotifyと連携できる仕様上、Spotifyから読み込んで編集してる人が多いのでSpotifyの登録情報(長さ・アーティスト名表示)と近づけるとうまくいくことあります。

 

歌詞登録のパターンはプチリリから取得できるパターンにより3種類あります。曲名の左につくアイコンで判別できます。

 

f:id:ino2408m:20210522120412j:plain

同期なし(ABC)→歌詞の表示タイミングが設定されておらず、全体歌詞カードのようなモーションしか使えない。

行同期(ABCL)→行のみ同期。モーションの使える数は減るが十分実用可。

文字同期(ABCW)→文字単位で同期。使えるモーションが最も多い。

 

使えるモーションがそれぞれ違うのと、同期なし歌詞は全体が表示されたりタイミングが合わなくなる点に注意してください。

 

リリックの見え方は各デッキの上のABCパネルで設定を開いて行います。

 

表示→LyricのON/OFFを切り替えます(ちなみに無効にしても非表示になるだけでSpout/Syphonは飛び続けます

 

f:id:ino2408m:20210522111923j:plain

カラー→背景色と文字色を決定します。

f:id:ino2408m:20210522112406j:plain

細かく色を調整したい人は色の調整から行えます(文字色のみ変更可能)

 

f:id:ino2408m:20210522113634j:plain

 文字色についてはここでalpha(不透明度)も設定できるので、歌詞が濃すぎる場合はここで設定しましょう。

 

 

モーションを押すとモーション選択画面が開きます。

セットリスト決まっている場合などは予め決めておくといいかと思います。

表示タイミングに違和感あるときはその下の同期補正に値を入れて調整してください。

f:id:ino2408m:20210522121008j:plain

モーションの中にはReflectingなど背景色と文字色がときに反転するものもあります。注意。

 

公式推奨の使い方はRekordboxVideo上で合成ですが、正直個人的にはこの方法は推奨しません

 

理由は5つ。

 

1:Lyricの不透明度を変更できないので歌詞がベタ塗りになる

2:入り切りにショートカットを割り当てることができない。

3:画質にすると解像度の悪さが目立つ。にすると負荷が大きすぎる。

4:歌詞の色が自動で振り分けられる

5:歌詞を表示する過程で他のソフトで取り出せる形式でデータが飛んでいる(Spout/Syphon

 

要約するともっと高解像度にできるのに内部での処理により画質が著しく低下する、という現象が2021年現在起きてます。

 

 以下に改めて合成の方法を書いてみました。

 

 

 

ino2408m-pinv.hatenadiary.jp

 

 

 Resolume等を持ってるともっといろんなことができます。

ino2408m-pinv.hatenadiary.jp

 

 

 

WindowsユーザーはSpoutMacbookユーザーはSyphonを通じて各デッキをVJソフトやOBSに飛ばして使うのが結果画質を高にするより負荷も下がり制御もしやすくなるのではないでしょうか。

 

 9.MIDIマッピングについて

 

今更ですがMIDIマッピングについてです。DDJ-200やWegoシリーズでやるならほぼ初期設定は終わってるので必要に応じてPad等をマッピングするくらいで終わります。

 

RekordboxのMIDIマッピングとキーボードマッピングは別々のところにあります。

MIDIコンにマッピングしたいときは右上の「MIDI」からいけます。

 

ADDで必要な機能を足していき、LEARNを押してからアサインしたいキーを押していく感じです。

Rekordboxの場合、一つのMIDI信号にふたつの動作をアサインすることができないので、Padなどが他の機能にアサインされている場合DELETE等であらかじめ消す必要がある点は注意する必要があります。

 

 

f:id:ino2408m:20210522123042j:plain

特にDDJ-200等はすべてのボタンになんらかの機能がデフォルトでマッピングされているので信号を消さなくてはなりません。

 

「DECK」「PAD」等から必要ない機能を「DELETE」してから進めましょう。

 

ちなみに、上記で設定したお気に入りトランジションなんかもアサインできます。

f:id:ino2408m:20210522123415j:plain

 

 繰り返しますがプラッター(お皿)のマッピングは純正のコントローラーしかできません。DJ2GO2などのコントローラーのお皿はどうやってもアサインできないので、Rekordbox用のコントローラーを買うかフェーダーだけで制御するか、になります。

 

キーボードマッピングの方は設定画面にあり、こちらは日本語仕様になっています。

 

f:id:ino2408m:20210522123855j:plain

+ボタンをクリックし、割り当てたいキーを選択すれば完了です。

 

10. 対応形式について

対応形式についてですが、正直成約がかなり厳しいです。

 

f:id:ino2408m:20210522141322j:plain

(↑公式マニュアルより)

 

VJサイトから拾ってきた動画もそのまま読めるとは限りません。(.movに非対応のため)

 

コーデックについてもAV01やH.265など最近のものには対応していないので、もし動画読み込んで音声だけ再生されるようなときは注意してください。

 

推奨は.mp4、コーデックh.264になります。必要に応じて手持ちの動画を変換して使ってください。

 

余談:Syphon/Spout/NDIについて

 

公式ではSyphon Outには対応してます。

 

Spoutについては、公式非対応ですがLyricを投影するときの副次的な産物として各デッキの絵が白黒反転、上下反転でSpoutが飛んでいます。この入力を拾うことで各VJソフトとの連携が可能です。

 

絵そのものをほかVJソフトに飛ばしたいのであればOBS StudioかNDI Scan Convertorを使えば曲がりなりにも可能です。

 

 

ino2408m-pinv.hatenadiary.jp

 

 

Spout/NDIを受け取る方ですが絶対できないと思いきや実は仮想カメラ経由で拾う方法が存在します。

 

詳しくは以下記事で。

 

 

ino2408m-pinv.hatenadiary.jp

 

ようはNDIであればNDI Webcam Inputを、SpoutであればSpoutCamを使えば飛ばせるには飛ばせるのと、Rekordboxの場合カメラで1デッキを専有することがないので、結構機能を拡張できる可能性があります。

 

わたしの環境で検証したところ、NDI Webcam Inputは拾いますがOBS Virtual Cameraはソースとして表示されるものの拾いませんでした。(これはVirtualDJも同様)

 

SpoutについてもSpoutCamSpout to NDI+NDI Webcam Inputで遠回りですが拾うことができます。

 

 

 

ということでRekordBoxVideo&Lyricについてあらためて書いてみました。Lyricに関しては応用的な記事も過去に書いているのでそちらも参考にしてください。

 

ino2408m-pinv.hatenadiary.jp

明日からできるResolume講座#10 エフェクト「Crop」を使ってステップシーケンサーをつくる

以前、ステップシーケンサーを作る方法を紹介しました。

 

 

ino2408m-pinv.hatenadiary.jp

 

 

Resolumeのステップシーケンサーを作る方法としてAutoPilotを使う方法が主流ではありますが、

 

・動作が重い

BPM連動が怪しい・・・(ちらついたりする)

 

などの問題もあります。

 

運用によってはAutoPilotのステップシーケンサーの方が合うという方もいるのですが

今回の方法の方が動作が軽かったりメリットも大きいです。

 

方法ですが、いきなりぶっ飛んでるというかタイトルにある通り「Crop」を使います。

 

CropとEnvelopeを使うとそれっぽいことができます。

 

長所

・AutoPilotを使うより動作が軽い

・ちらつきやBPM非同期感が少ない

・Resyncで1拍目に戻る

・Layerを節約できる

 

短所

・設定がめんどくさい

・Autopilotが発動中かどうかを視覚的に判断しづらい

・原画+AutoPilot みたいな構成が作りづらい

・StepSequencerを発動しても1-4拍目のOppacityが元の薄さになってしまう

 

なんでCrop?

 

Cropはその名の通り「切り抜き」のエフェクトです。

f:id:ino2408m:20210515143746j:plain

f:id:ino2408m:20210515143826j:plain

↑本来はこういう風に切り取りを行ってその外を透明または黒にするエフェクトです。

 

このエフェクトのポイントは、「切り抜いた外をアルファチャンネル化できること」にあります。

 

つまり、Layer4のフェーダーが全上げでも下のレイヤーを映すことがワンエフェクトでできます。(ほかにSolidColor黒+Automaskも考えましたが2エフェクト使うのでこっちの方が手軽です)

 

そしてCropですが全範囲を切り抜いて無を作れます。これらの性質を組み合わせ、

 

1拍目(Layer1):Layer2、3、4が全範囲切り抜かれた状態

2拍目(Layer2):Layer1、3、4が全範囲切り抜かれた状態

3拍目(Layer3):Layer1、2、4が全範囲切り抜かれた状態

4拍目(Layer4):Layer1、2、3が全範囲切り抜かれた状態

 

をEnvelopeで作るという暴挙逆転の発想でStepSequencer的なものをつくろう、というのが仕組みです。

 

 このエフェクトはStepSequencerを使わないときに隠し、使うときにOnにする感じですね。

 

 下準備

 

1.StepSequencer用にレイヤーを4つ用意します。

f:id:ino2408m:20210516083521j:plain

 

 2.各レイヤーに対してCropのエフェクトを入れ、以下のように設定します。

 

f:id:ino2408m:20210516084145j:plain

 

Cropのパラメーター

f:id:ino2408m:20210516084418j:plain

 

1.Rightの左にある歯車からBPM Sync」「Envelope」をON。

f:id:ino2408m:20210516084907j:plain

2.Envelope右下のPマークより、Digitalを選択。

f:id:ino2408m:20210516085128j:plain

3.Envelopeのカーソルを下げて一拍目のみ表示。

f:id:ino2408m:20210516085324j:plain

f:id:ino2408m:20210516085416j:plain

※Cropは指定した範囲の「外」を切り取るエフェクトなので、1拍目は全範囲の外を切り取る=すべて残す、2~4拍目はゼロ範囲の外を切り取る=すべて切り取る、になります。なのでEnvelopeでは上がってるところが表示、下がってるところが非表示になります。

 

一番下の「Invert」「Black BG」はデフォルトでOFFなのでそのままで。

 

これで「Layer1が1拍目だけ出るエフェクト」ができました。

 

Layer1で作ったエフェクトはPresetかなんかに登録しておくとスムーズです。

 

f:id:ino2408m:20210516090113j:plain

 

同じようにして、「Layer2が2拍目だけ出るエフェクト」、「Layer3が3拍目だけ出るエフェクト」、「Layer4が4拍目だけ出るエフェクト」を作ります。

 

さきほど作ったPresetをLayer2ー4にそれぞれ入れ、envelopeのみ変えましょう

 

f:id:ino2408m:20210516091014j:plain

 

f:id:ino2408m:20210516091302j:plain

f:id:ino2408m:20210516091447j:plain

f:id:ino2408m:20210516091721j:plain



これで4LayerともCropエフェクトがかかっているときにLayer1→Layer2→Layer3→Layer4のステップシーケンサー的な挙動になります。

 

普段から使うわけではないので、各レイヤーのOppacityを0にしておくかBボタンで隠しておきましょう。

f:id:ino2408m:20210516092212j:plain

 

この隠した状態でCompositionをSaveします。

 

 

MIDIマッピング

 

このBボタンをMIDIコンかキーボードにアサインするのですが結構罠があります。

 

まず、Layer1をクリックし、「Edit MIDI」(キーボードならEdit Keyboard)でアサインします。

 

f:id:ino2408m:20210516093228j:plain

 

f:id:ino2408m:20210516094053j:plain

 

LayerエフェクトのCropのBボタンをアサインするのですがデフォルトだとAbsolute(押してる間だけBになる)ので必ず「Button」「Toggle」にしてください。

f:id:ino2408m:20210516094259j:plain

↑悪い例(Absolute)。押してる間だけBボタン押され離すと解除されるので挙動が変になります。

 

f:id:ino2408m:20210516094548j:plain

↑良い例(Button、Toggle)。押すたびにBボタンのON/OFFが切り替わる。

 

これをLayer1-4に設定していくのですが、Layer2に行く前に必ずMIDI設定画面を抜けてからLayer2をクリックして選択し、またEdit MIDIで画面を開いてください。

 

というのは、MIDI設定画面上で他レイヤー選択しようとするとレイヤーの選択そのものにMIDIアサインするような挙動になるからです。

 

f:id:ino2408m:20210516095200j:plain

 

同様にしてLayer2-4のBボタンにLayer1でBに振ったボタンをMIDIアサインできれば設定完了です。

 

ボタンを押すとステップシーケンサーが発動しもう一回押すとフェーダーの割合に応じて混ざるようになります。

 

うまく動作しないようなときは各レイヤーの「B」の挙動やEnvelopeの形状を確かめてみてください。

 

ステップシーケンサー発動時の各レイヤーのOppacityは各レイヤーのOppacityに依存します。

 

StepSequencer発動時はOppacityを全開にしたい!という人はMIDIマッピングで工夫するなりしてみてください。

 

フェーダーやノブで制御したい人向け

 

前のAutoPilot構成の場合だとAutoPilotのレイヤーをフェーダーやノブに振っててその構成に慣れてる人も多いかもしれません。

 

その場合は、Bボタンを常にONにし、各レイヤーのOppacityを同時にノブやフェーダー、Dashboard等に振ると似たような使用感になるかと思います。

 

f:id:ino2408m:20210516104228j:plain

 

負荷検証

 

以前のVideoRouter+AutoPilotによるステップシーケンサーの負荷は私のPCでこのくらいです。

 

スペック

 

LegeionY530

CPU:Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz 2.21 GHz

メモリ:32GB

GPUNVIDIA GTX1050Ti

 

結果

 

StepSequencer非使用時

 

f:id:ino2408m:20210516103251j:plain

 

AutoPilotの場合

f:id:ino2408m:20210516102600j:plain

 

Cropの場合

f:id:ino2408m:20210516102550j:plain

 

Crop自体が比較的負荷の少ないエフェクトなので、AutoPilotを発動してもそんなに負荷を食わない感じですね。

 

軽さ的にもこの方法はかなりおすすめです。負荷を落として別の表現を入れたいけどどこを軽くすればいいか分からない、的な人にとって結構この変更はいい感じに効いてくるのではないでしょうか。

 

Preset配布

 

一応今使ってる人向けにプリセット、とこれからステップシーケンサーを導入する人向けにサンプルコンポジション作成しました。

 

プリセットの使い方

 

www.dropbox.com

 

 

※設定前に元のコンポジションはバックアップしといてください。

 

1.ドキュメント内「Resolume Avenue」または「Resolume Arena」フォルダ内「Presets」に同梱した「Presets」を上書きする。

 

f:id:ino2408m:20210516110138j:plain
2.Resolumeを起動するとEffectsのCrop内に「Step Sequencer Beat1」-「Step Sequencer Beat4」が出現します。それらをStepSequencerを発動させたいレイヤーにドラッグアンドドロップ。(Layer選択するところに直接投げ込んでもらってOKです)

f:id:ino2408m:20210516111219j:plain

3.デフォルトで「B」が押されてる状態になるので、上記の「MIDIマッピングの手順」を参考にMIDIマッピングしてください。

 

サンプルコンポジション

 

以前のサンプルコンポジションのStepSequencerの構成のみ変えたものになります。

 

 

 

www.dropbox.com

 

これを入れてこの記事のMIDI設定以降を行えば即使えるようになります。

 

 

 ↓ ちなみに以前のやつ

ino2408m-pinv.hatenadiary.jp

 

 

エフェクトの都合上、Layer5は残してあります。(実際Layer5をVideoRouter等で拾う構成の方がわかりやすいため)

 

完全なResolume/VJ初心者の場合、StepSequecerそのものの挙動はおそらく前のコンポジションの方がわかりやすいのでそちらを使ってみてそれより軽くしたい!という感じでこちらに乗り換える手順をお勧めします。

 

MIDI等の初期設定については上記の「MIDIマッピング」を参考にしてください。

 

(とりあえず今は実験段階であるのもあるので、不具合等あればTwitterなりブログのコメントなりで教えていただけると助かります。)

画面キャプチャをVJソフトに持っていく方法いろいろ VirtualDJ/OBS Studio /NDI Screen Capture→Resolume/Grand VJ

ResolumeやGrandVJには現時点で画面キャプチャのシステムがありません。

 

VDMXにはあるみたいです。(↓参考記事)

 

saikuro0526.hatenablog.com

 

例えば、Kaunaなどのオーディオスペクトラムソフトを貼りたい、とか、TwitterをキャプチャしてDJさんをいじりたい、とか、ブラウザの一部画面持ってきたい。とかVJ中に急にゲーム実況したくなったとかそういう需要はあるかと。最近だと3teneLuppetバ美肉しながらDJしたい。とか。やろうと思えばP in PしたYoutubeとかをVJソフトに持っていくとかも技術的にはできなくもないです。「技術的」には

 

画面キャプチャがなんとかできれば任意のソフトVJソフトに飛ばすことができます。でもWindowsじゃできないんじゃ・・・

 

ソフト単体ではできないですが一応いろんなソフトを介すことで行うことができます。方法もいろいろ。

 

おすすめはOBS Studio→Resolumeの組み合わせです。

 

1.OBS Studio(←おすすめ)

おすすめの理由

・設定すればウィンドウのサイズが自動で調整される

・ソフト内で画像加工してから各ソフトに飛ばせる

・ウィンドウプロジェクターが使える

・仮想カメラでもNDIでも飛ばせる

・キャプチャしたい複数のソフトを簡単に切り替えられる

 

負荷が今回紹介するほかのソフトよりやや大きいのと最初の設定項目はやや多いですが一回設定しとくと楽なのといろんなソフトに飛ばしやすいので個人的にはこの方法をおすすめします。

 

 

ソース→追加→ウィンドウキャプチャ、でキャプチャしたいソフトを指定します。

f:id:ino2408m:20210514025826j:plain

 うまくキャプチャできないときは「キャプチャ方法」をいろいろ変更してみてください。

カーソル映したくなければ「カーソルをキャプチャ」のチェックを外しておきましょう。

 

f:id:ino2408m:20210514030046j:plain

 キャプチャした領域をウィンドウの大きさに関わらずフルスクリーンにしたいときには右クリック→変換→画面に引き伸ばして置く、で最大化できます。

 

追記:画面に合わせて置く、のほうがアスペクト比おかしくならないのでおすすめです。キャプチャしたいソフトに合わせて選んでください。

f:id:ino2408m:20210514030341j:plain

ウィンドウの上下左右を切りたい場合は右クリック→フィルタ→クロップ/パッドで切れます。

f:id:ino2408m:20210514030607j:plain

例えば複数ソフトをOBS上で切り替えたいときはソフトごとにシーンを作っておくとよいかと思います。

 

必要に応じてウィンドウプロジェクターを出してモニタリングするとVJプレイ中も楽です。

 

設定より「プロジェクターを常に手前に表示させる」、で常に前にウィンドウプロジェクター出るのでこちらもお好みで。

f:id:ino2408m:20210514033201j:plain

f:id:ino2408m:20210514033309j:plain

 

 

ここから各種ソフトに飛ばす方法ですが仮想カメラ出力NDIを使います。

 

仮想カメラ出力するには右下の「仮想カメラ開始」を押せばOKです。

f:id:ino2408m:20210514031030j:plain

 

この方法でもいいですかGithubにある仮想カメラプラグインの方が安定している印象もあります。お好みで。

 

obsproject.com

 

NDIで飛ばしたい場合は以下のプラグインを使用します。

 

github.com

 

どちらのプラグインも入れてOBSを再起動すると「ツール」の中に入ります。

 

f:id:ino2408m:20210514031451j:plain

 

NDI Pluginの場合、Main Outputのチェックを入れれば完了です。Preview画面も出力できます。

f:id:ino2408m:20210514031622j:plain

プラグインのVirtualCamの場合はStartをこの画面で押します。

運用次第ではAutoStartにチェックを入れといてもいいかもしれません。

f:id:ino2408m:20210514031900j:plain

 

(2021/06/10追記)

 

OBS用の非公式Spout2プラグインがなんとOutにも対応しました。

OBS→VirtualDJについてはこの方法が一番いいかもしれません。

下記のScreenGrabみたいな調整もいらないので非常に楽に運用できるかと。

 

github.com

f:id:ino2408m:20210610145252j:plain

 

拾い方については当記事の下の方に書きましたのでそちらを参照してください。

 

※注意

仮想カメラでもNDIでもONにすると画面が出力されている状態になるため、ビットレートや解像度をいじることができません。ここの設定を変えたいときは各種プラグインや仮想カメラ出力をOFFにしてください。また、OBS Studioを配信にも使っている場合、配信時は特に使う理由がなければ仮想カメラ出力やNDIは負荷の面からOFFにすることをおすすめします。

 

f:id:ino2408m:20210514032351j:plain

 

2.Virtual DJのScreen Grab

実はVirtualDJには画面の一部をそのままキャプチャする機能がデフォルトであります。

 

プレイ中VirtualDJの画面を見てることが多い、とか、キャプチャをVirtualDJで扱ってる他の動画と同じような感じで扱いたい、という人はこの方法がいいかと思います。

 

Video Effectの中にScreen GrabというのがあるのでそれをONにするだけです。

 

f:id:ino2408m:20210513023334j:plain

 

ONにするとZone to copy to VirtualDJ video outputなるエリアができるので、そのエリアの中にキャプチャしたいソフトを入れます。

 

ただし注意があって、このZoneはVirtualDJのUIが下にないと移動できないということとアスペクト比が無理やり16:9に整えられてしまうという問題があります。

 

 

f:id:ino2408m:20210514011211j:plain

 

そのため、VirtualDJを最大化してZone to copy to VirtualDJ video outputを移動→キャプチャしたいソフトを調整、の手順の方がやりやすいかもしれません。

 

f:id:ino2408m:20210514011427j:plain

 

運用する際は4DeckのうちどこかをScreen Grab専用にするのがおすすめですが、もしマシンスペックやマッピングの関係で2デッキ運用な人や普段4Deck運用でたまにだけ使いたいがいれば適当なキーか余ったボタンに

 

 「video_fx 'Screen Grab'」「deck 〇 video_fx 'Screen Grab'」

 

アサインしておけばワンボタンで動画読み込みとScreen Grabを切り替えられます。

 

f:id:ino2408m:20210514012810j:plain

 

↓以下コピペ用(上からマスターデッキ、デッキ1、デッキ2、デッキ3、デッキ4用)

 

video_fx 'Screen Grab'

deck 1 video_fx 'Screen Grab'

deck 2 video_fx 'Screen Grab'

deck 3 video_fx 'Screen Grab'

deck 4 video_fx 'Screen Grab'

 

 

3.NDI Screen Capture

 

NDIを導入するとついてくるNDI Screen Captureを使ってもスクリーンキャプチャを各種ソフトに送れます。

 

↓以下のNDI Toolsに入っています。

 

ndi.tv

 

 インストールしてプログラムのところからいけます。

 

f:id:ino2408m:20210514024227j:plain

Screen Capture、Screen Capture HXがありますがPCにとって相性いい方で。

 

 Screen Captureのほうに限り範囲を指定できます。

 

起動すると設定画面がタスクバーに入るので、右クリック→Capture Settings→Configure Roiでキャプチャしたい範囲を設定できます。

 

 

f:id:ino2408m:20210514024830j:plainf:id:ino2408m:20210514025028j:plain

 

Configure Roiの上、「Region of Interest」にチェックを入れればこの指定範囲が、チェックを外せば全画面がNDIとして出力されます。(各種ソフトでの拾い方は下に記します)

 

 

拾い方

OBS Studio/NDI Screen Captureについては切り取った画がリアルタイムにNDIで飛んでいるので、そのままResolumeおよびGrandVJで拾えます。

 

 ・ResolumeであればSourcesの中の「Caputure Devices(仮想カメラ出力)」か「NDI Servers(NDI)」からクリップに登録すれば使えます。

 

f:id:ino2408m:20210514013552j:plain

 

・Grand VJでの場合、仮想カメラ出力であれば「Sources→Live Inputs」から拾います。

NDIであれば仮想カメラかSpoutに変換してあげる必要があります。

f:id:ino2408m:20210514015201j:plain

NDI→Spoutの変換はNDI to Spoutで、NDI→仮想カメラ出力の変換はNDI Webcam Inputで行うことが可能です。以下のサイトから入手できます。どちらもほぼ起動するだけで使えます。

 

↓NDI to Spout(Spout to NDIに同梱されてます。)

leadedge.github.io

 

 

↓NDI Webcam Input(NDI Toolsに同梱されてます)

ndi.tv

 

 

 

f:id:ino2408m:20210514015552j:plain

f:id:ino2408m:20210514015854j:plain

 

これらの詳しい使い方は過去記事を参照してください。

 

ino2408m-pinv.hatenadiary.jp

 

・VirtualDJ→Resolume/Grand VJについては以下記事を参照しSpout経由で拾ってください。

 

ino2408m-pinv.hatenadiary.jp

 

・OBS Studio→Virtual DJの組み合わせについてはOBS-SpoutプラグインがOutに対応したので、SpoutReceiverで拾えます。

 

f:id:ino2408m:20210514021317j:plain

アサインの仕方等はScreen Grabと同様です。

 

↓以下コピペ用(上からマスターデッキ、デッキ1、デッキ2、デッキ3、デッキ4用)

 

video_fx 'VDJSpoutReceiver64'

deck 1 video_fx 'VDJSpoutReceiver64'

deck 2 video_fx 'VDJSpoutReceiver64'

deck 3 video_fx 'VDJSpoutReceiver64'

deck 4 video_fx 'VDJSpoutReceiver64'

 

VirtualDJ2021の場合

 

video_fx 'VDJSpoutReceiver'

deck 1 video_fx 'VDJSpoutReceiver'

deck 2 video_fx 'VDJSpoutReceiver'

deck 3 video_fx 'VDJSpoutReceiver'

deck 4 video_fx 'VDJSpoutReceiver'

 

クリップとして扱うのでもちろんエフェクトかけたりほかの動画とミックスすることも可能です。ResolumeでいうところのTransformCropと組み合わせれば必要な場所のみ切り取ったり拡大縮小したりもできます。

 

 

運用によってどのソフトからキャプチャしてどのソフトで拾うかはお好みですが、実際画面キャプチャをVJソフトに持っていけるようになるとかなりVJプレイに幅が出ると思うので、ぜひやってみてください。

VirtualDJ→Resolume/GrandVJ/OBSの連携(Windows・64bit版)(2021)

前も書いたには書いたんですけど結構導入失敗してる人多いのともっとシンプルにしたいのでもう一度書くのと、実は64bit版の記事書いてなかったので備忘録として。

 

VirtualDJ→Resolumeの連携にはSpoutを使います。

 

Spoutについては以下の記事にざっくり書きました。

 

ino2408m-pinv.hatenadiary.jp

 

あと一応昔書いたSpoutでの連携関連。

 

 

ino2408m-pinv.hatenadiary.jp

 

 

ino2408m-pinv.hatenadiary.jp

 

 

Spoutの導入について。最近VirtualDJ 64bit版が主流になってきました。

 

結論から言うといろんなサイトで昔の情報を引っ張ってくると32bit版導入法は書いてあるのですが64bit版の導入法は書いてません。そしてSpoutを導入したときについてくるSpoutSender/Receiverや一部のサイトで紹介されている方法は32bit版用です。

 

例えば設定してみて以下のような画面が出た方は64bit版を導入してください。

 

 

f:id:ino2408m:20210513020403j:plain

 

VirtualDJにSpoutを導入する。

 

PCに入れるものは2つ。

・Spout(SpoutSettingsのみ使います)

 

leadedge.github.io

 

f:id:ino2408m:20210506020958j:plain

上記のところからSpoutをダウンロード。

(下のSpout to NDIもSpoutのトラブル時役立つことあるのでDLしとくのをおすすめしときます。)

 

・SpoutVDJ(githubにある方!!!!!)

近年、Spout本体にVirtualDJ用のPluginが付属しなくなったのと64bit版はこちらにしかないのでgithubにある方を使用します。

 

github.com

f:id:ino2408m:20210506020703j:plain

上記よりダウンロードしてください。

 

準備するソフトは以上です。

 

1.SpoutVDJをVirtualDJのプラグインのフォルダに入れる。

 

SpoutVDJ内のx64内に「SpoutReceiver.dll」「SpoutSender.dll」があるのでそれをコピーし、f:id:ino2408m:20210506021706j:plainf:id:ino2408m:20210506021838j:plain

 

マイドキュメント内「VirtualDJ」→「Plugins64」→「VideoEffect」

にペーストしてください。(「VirtualDJ」フォルダ内には「Plugins」フォルダがあることもあるので間違えないように!「Plugins『64』」です)

f:id:ino2408m:20210506022140j:plain

 

2.グラフィックカードの設定

 

VirtualDJと受け側のソフト(Resolume/GrandVJ)のグラフィックプロセッサを統一します。デスクトップで右クリックして「NVIDIAコントロールパネル」を開き、

 

f:id:ino2408m:20210506010113j:plain

その中の「3D設定の管理」→「プログラム設定」を確認します。

カスタマイズするプログラムを選択する」からVirtual DJを選び、「このプログラム用の優先グラフィックプロセッサを選択する」の項目が「グローバル設定を使用する」または「高パフォーマンスプロセッサ」になっていることを確認してください。

f:id:ino2408m:20210506023012j:plain

 

Resolume/GrandVJ/OBS等連携先ソフトについても同様に確認します。

 

GPUついてないPCの場合「統合型グラフィック」に各ソフト設定してください。2ソフト間で違う描画処理にならないようにしてもらえればOKです)

 

3.Spout Settings

 

Spoutのフォルダより「SPOUTSETTINGS」→「SpoutSettings.exe」を開きます。

 

f:id:ino2408m:20210506023709j:plain

 

ゲーミングPC等であればOptimus global processorを「High performance」(ようはGPUでの処理)、そうでなければ「Integrated」(統合グラフィック)に設定。

 

上のAutoshareにチェック入ってれば外してください。

 

4.VirtualDJでの設定

 

3まで設定したらVirtualDJを起動します。

うまく設定できてればビデオエフェクトに「VDJSpoutSender64」なるエフェクトができてるのでそれをONにします。

f:id:ino2408m:20210506024407j:plain

次に画面に対し最大化で投影したのち、右クリック→「最小化」します。

※「閉じる」を押さないこと!!!!!(閉じる押すと画面サイズが0で取り込まれます。)

 

f:id:ino2408m:20210506024649j:plain

 

ここまででVirtualDJ側での準備は完了です。

 

Resolumeで拾う

ResolumeではSoucesの一番下あたりに「VDJSpoutSender64 Deck master」が出現してるので、それを入れたいところにドラッグアンドドロップしてもらえれば使えます。

 

一部のエフェクトがアルファ(透明度情報)あると効かないので、個人的には「R」「G」「B」「A」「A」だけ下図のようにチェック外しておくといいかと思います。

 

f:id:ino2408m:20210506025228j:plain

 

GrandVJで拾う

GrandVJの場合、「Sources」→「GPU Live Inputs」→「Input Spout〇」にSpoutが拾えるところがあります。SpoutがInput Spout1-4に順番に振り分けられるので、その中のVirtualDJの入ってるところをBankかLayerに入れれば使用できます。

 

f:id:ino2408m:20210506030511j:plain

 

OBSで拾う

 

OBSで拾う場合、Spout to NDI+OBS NDI Pluginで拾うかSpout2 Pluginで拾う方法があります。

 

Spout to NDI

leadedge.github.io

 

OBS NDI Plugin

 

github.com

 

OBS Spout2 Plugin

 

github.com

 

OBS NDI PluginSpout2 PluginもOBSインストールされていればインストールするだけで完了です。

 

SourceにNDI Source、Spout2 Captureが出るのでそれをSouceとして追加すればOKです。

 

配信でVirtualDJから映像入れるのはもちろん、VirtualDJの機能を拡張するなどにも使えます。

 

f:id:ino2408m:20210513014339j:plain

 

 

 

ということで連携の方法をやや丁寧に書いてみました。64bit版でうまく連携できない人比較的最近VirtualDJ導入したという人、GrandVJと連携したい人は2021の現時点ではこの方法になるかと思います。

 

ぜひ試してみてください。

 

 

ゼロから始めるVJ講座 #3 SpoutとかNDIとか、その変換とか。(Spout to NDI/NDI to Spout)

このシリーズ久々ですね。

 

初心者向けの記事として書いてるシリーズですが、今回はテクスチャシェアリングについていきます。

 

Syphon、SpoutNDIとかいうものですね。

 

横文字!?わからん!!!!ってなるのは早いです。わたしも始めた頃ちんぷんかんぷんだったし今もちんぷんかんぷんです。

 

まず導入の話をします。

 

そもそもなんでアニクラのResolumeの人はVirtualDJ使うの?

 

f:id:ino2408m:20210502015325j:plain

 

VirtualDJはもともと「DJ用」のソフトなので、BPM解析、キュー(目印の管理)、波形の目視、あとは各種時間制御の機能が使えます。

 

あとDJ2GO2TouchなんかのDJコントローラーのアサインが最初からあって非常に楽!なのです。

 

f:id:ino2408m:20210502015417j:plain

 

numark.jp

 

つまりタイミング合わせ、ポン出しに関してVirtualDJは非常に強いわけです。

 

Resolumeでも波形は見えるけど細かくみたりできない・・・のとBPMまではさすがに解析してくれない…

 

あと以前も申し上げたとおり圧縮された規格(.mp4)なんかをResolumeで再生すると重めなのでResolume単体での運用が合わない場合もあるのです。

 

なのでMVやアニメ素材なんかを再生するにはVirtualDJが便利です。

 

ですが、VirtualDJだけで高度な表現をするには結構回り道しなくてはならない点もあります。

 

まず、複雑な挙動を指定するにはVDJScriptと呼ばれるコード打たなきゃならない・・・(高度なことするにはコード覚えなきゃ…w)ので結構めんどくさいです。

エフェクトも限定されてる・・・

カメラも一応使えるけどこれもちょっと設定はめんどくさく、複数カメラの制御となると結構煩雑になります。

 

一方Resolumeですが

 

MIDIコントローラーに動作をきっちりアサインすればレゾの画面見なくてもある程度制御できます

 

たくさんのレイヤーを一元的に管理できる、とか

高度なエフェクトが組めてパラメータも自由自在。エフェクトのかけ具合やタイミングも細かく制御できるので、映像を見やすいままエフェクトをかける手法もとれます。

 

だけど.mp4再生は重いし波形は見づらい・・・BPM Syncの仕様もあってMVなどの再生には向かない面もあります

 

つまるところ

 

VirtualDJ

○動画再生が得意!DJコントローラーへのアサインが楽!再生位置合わせが得意!BPM解析してくれるし波形も見える!

×エフェクトが少ない、カメラとか制御できない、複数素材重ねるのは限界がある

 

Resolume

○エフェクトが多い!汎用素材の管理がサムネイルでやりやすい!MIDIコンに柔軟なマッピングができる、複数素材重ねやすい

×特定の形式以外は非常に重い、波形が細かくは見えない

 

つまりこのソフトたちのいいところどりをすれば最強のVJソフトができてしまうわけです(ソフトのお金はかかります)(PCのスペックも必要)

 

 なのでどっちも使いたい!って人はソフト同士を連携させられる手段を用いて連携してます。

 

どうやって?

 

Spoutっていう規格があるんでそれを使います。

 

導入の仕方は下記です。

 

 

 

ino2408m-pinv.hatenadiary.jp

 

Spoutについて 

 

つまるところ、Spoutってなんやねん

 

私も詳しくは説明できないんですが、ざっくり言うと「描画処理を共有する技術」です。イメージとしては「ソフトAで絵を書いてるのでそれ使っていいよ~」みたいな感じです。

 

まずSpoutの成り立ちについて…

 

SpoutはMac専用のこの手の規格であるところのSyphonをなんとかWindowsでもやろう、という設計思想な気がします。

 

d.hatena.ne.jp

 

Spout自体はソフトだと勘違いされやすいですがシステムとか規格みたいなものだと思ってください。導入すれば特にソフトを立ち上げなくても動きます。

 

超大事な点をひとつだけ。

 

まず、ゲーミングPCにおける画面の描画ですが、一部はCPU(PCの頭脳、intel Core i7とか書かれてるやつ)で、一部はGPU(ゲームとか専用の画像/動画処理ハードウェア。グラボとか呼ばれてる。NVIDIAなんたら。GTX1050TiとかRTXなんとか、書かれてるやつ)で書かれてます。

 

こう1枚に見える画面は、ゲーミングノート等の場合、2つの描画システムによる組み合わせでできてます。

 

 

f:id:ino2408m:20210506005814j:plain


 上画面でいうとVRChat内はGPUで、その外のGoogle ChromeはCPUで描画処理されており、赤枠+緑枠の画面を表示してる感じです。

 

この表示の仕組みがあとで効いてきます。

 

 

先ほど言ったとおりですが、Syphon&Spoutは「描画処理を共有する技術」です。

 

なので、ソフトAからソフトBに動画をリアルタイムで渡す状況下で、吐き出すソフトAが統合グラフィック(CPUによる描画)、受け取るソフトBが単体グラフィック(GPUによる描画)の場合、像を渡すことができません

 

なので、起動時に各ソフトを統合グラフィックで出すか?単体グラフィックで出すか?

を気にしなければなりません。

 

設定画面はNVIDIAコントロールパネル等で見れます。

 

f:id:ino2408m:20210506010113j:plain

f:id:ino2408m:20210506010258j:plain


 

 

ここを統一すれば受け渡しが可能になる・・・はずです。

 

例えばVirtualDJ統合型グラフィックスResolume高パフォーマンスNVIDIAプロセッサになっている場合Spoutでの像の送受信ができません。

 

(VirtualDJとResolumeの連携についてはまた書きます。)

 

余談ですが、RekordboxLyric/VideoはこのSpoutを内部で回しているらしく、常に送受信を行っています。しかも切れません。なので重い

 

なので、RekordboxVideo/Lyricを使うときもResolume等使わない運用にせよSpoutの設定、および各ソフトが統合グラフィックで動いているか?単体グラフィックで動いているか?を気にしましょう。

 

ちなみに、前も説明したようにこういうSpoutを内部で回しているという不思議仕様のため、公式対応はしていませんがRekordboxLyricのSpoutをResolumeで拾って使う運用ができてしまうわけです。

 

ino2408m-pinv.hatenadiary.jp

 

現時点でSpoutに対応してる代表的なソフトが

・Virtual DJ

・Resolume

・GrandVJ

・Rekordbox(Lyricの各デッキ、送信のみ)

・Processing

・Touch Designer

・Unity

あたりです。(Spout対応してるソフトはほとんどSyphonにも対応してます)

 

UnityとかでなにかやるときもSpoutを通す感じになるかと。

 

cgworld.jp

NDIについて

 

NDIはこのブログを読んでる方だとVLC→ResolumeとかVLC⇔OBS⇔Resolumeで使っている方が多いかもです。

 

NDIはNetwork Device Interfaceの略です。

 

Networkとある通り、LANケーブル等をつないでファイアウォール等の許可設定をうまくやれば別PC間での像の送受信が可能です。

 

本来の目的が「2つ以上のPC間で像のリアルタイム送受信を行おう!」という感じで、例えば、1PCで動かしているときは実は「自分のPCから自分のPCに対してネットワーク経由で像を送ってる」状態です。

 

詳しくは以下の記事を。

 

 

panda-times.com

 

NDIに対応してるソフトは以下の通りです。

・Resolume

・GrandVJ

・VDMX

・TouchDesigner(有料のみ)

・OBS Studio

 

で、ここからが本題ですがソフトごとにSpout、NDIは対応/非対応があり、これらを対応した形式に変換しなくてはならない場面があります。

 

その変換方法について。

 

Spout⇔NDI

 

Spout⇔NDIの変換は実にシンプルで、「Spout to NDI」、「NDI to Spout」というSpoutのサイトに載っているソフトを使います。

 

leadedge.github.io

 

これらのソフトを起動するだけで、相互に変換可能です。

(右クリックでどの像を変換するかも選べます)

 

f:id:ino2408m:20210506011358j:plain

 

Spoutは前述のように動画の描画形式やPCの設定などによりうまく使えないこともあるのですが、Spout to NDIで変換するとどうにか使えることもあります。(負荷はやや重めになりますが代替策として持ってはおくと助かる場面が多い)

 

Webカム/仮想カメラ⇔NDI

WebカムからNDIの変換にはNDI Toolsに付属しているNDI Screen Captureを使います。

 

ndi.tv

 

起動するとタスクバーに入るので右クリックで設定できます。

Webカムを取り込んでNDIにしたい場合はWebcam Video Sourceから目的のカメラを選択してください。

これで仮想WebカムからNDIに変換できます。

 

f:id:ino2408m:20210506012825j:plain

 

逆にNDIを仮想カメラに出力したい場合はNDI Webcam Inputを使います。

 

f:id:ino2408m:20210506014755j:plain

こちらもタスクバーに入るので、右クリックで設定できます。

NDIのソースを選んでカメラ入力に変換できます。

 

カメラ入力にできるのでZOOMやDiscordはもちろん、RekordboxVideoにも像が飛ばせるわけです。

 

画面キャプチャ→NDI

NDI Toolsに付属しているNDI Screen Captureを使います。

 

基本的に起動するだけですべてのモニターを切り取ってくれます。

 

特定のソフトだけ切り取りたいときはOBS Studioを使います。

 

f:id:ino2408m:20210506013724j:plain

 

仮想カメラ出力、またはNDIプラグインを入れて吐き出せばOKです。Resolumeなどで拾えます。(ちなみにわたしの環境だと右下の仮想カメラ出力より下記ののプラグインの方が安定します)

 

github.com

 

obsproject.com

 

OBSからResolume等に像が飛ばせるので、Kaunaなどのオーディオスペクトラムソフトを切り取ったり、3teneやLuppetから像を飛ばしてバ美肉したりも方法的には同じです。

 

まとめ

 

図解をするとこんな感じです。

 

f:id:ino2408m:20210430225320j:plain

 

OBSは各ソフトのキャプチャーもできるので、結論から言うとすべてのソフトはほとんどのソフトと連携可能です。(SeratoVideoだけはカメラ使えないので代替手段が思いつきませんが・・・)

 

 

対応ソフトとしてはVJソフトはだいたいSpoutには対応していますが、OBSはVJソフトじゃないのでプラグイン入れないと対応してません。(一応Spout2対応のプラグインはありますが現状不安定です)

 

実は仮想カメラWebカメラ扱いなので、Spout/NDI以上に広くいろんなソフトで使うことができます。

今だとZOOMやDiscordなんかが流行ってきてますが、そちらで利用するには仮想Webカメラで出力することになります。

 

ということでSpout/NDIのざっくりとした説明と変換法でした。