めちゃくちゃ久しぶりですね。
2か月ぶりくらいの更新。
今回は配信VJについてです。初歩的なものぐらいしかかけないしわたしも習得したのは最近なので拙いですが・・・
(もう既にやってる人からしたら常識的な記事です)
これからの時代ですが配信イベントにおいて遠隔からVJすることがたまに求められることになる可能性があります。
まず前提としてなぜ配信VJが遠隔で実現できるか?みたいなお話です。
結論からいいますが、答えは「配信というのは音を任意に遅らせることができるから」です。
なのでDJから動画をVJがリアルタイム受信+VJプレイ→オペレーター・配信サイト、という形で配信でも音に合わせたプレイが楽しめます。
なのでDJが現場だけどVJが遠隔、とかはほぼ実現不可だと思っててください。
逆はいけます。
ちなみに参考にさせていただいた資料がこちらです。VRizeのテクニカル回。配信のやり方が詳しく説明されてます。
配信のやり方についてはこちらで習得できるかと思いますがVJ目線から一応整理してみます。
とりあえず知っておいてほしい用語
RTMP。以下のサイトを参照してください。
ぶっちゃけると私もこの説明見てもわかりません。
一言でいうとrtmp://xxx.xxx.xxx.xxx:xxxx/ というURLとそれに対応したソフトを使うことで互いのPCに動画をリアルタイムで送信できるらしいです。
で、そのRTMPを再生できるソフトにこのブログで以前紹介した「VLC Player」と最近いろんな配信でおなじみの「OBS Studio」があります。あとは高度な配信してる人だとUnityでVJ画像受け取って3Dでクラブを作ったりしてる人たちもいます。すごい
でそのVLC PlayerやOBSは以前も紹介した通りNDIというものが使えます。つまりResolumeやGrandVJにリアルタイムで像が送れます。
VLC-NDIの設定の仕方は以下の記事を参照してください。
で、像の受け取り方ですね。
像を受け取る場合にはポート開放とIPアドレス固定、といったネットワークでの準備が必要です。
ポート開放というのはようは自分のPCにほかの人が配信などできるように道を開けてあげる行為です。
代表的なポート開放が必要な例としてゲームのminecraftがあります。
minecraftで誰かがサーバーを立てればそこで対戦などができる、ということらしいです。
なのでポート開放の手順については「minecraft ポート開放 (ルーターのメーカー)」と検索すると結構出ます。
↓詳しく書いてあるサイト
ざっくり手順をまとめると・・・
1.説明書等参考にしてルーターの設定変更ができるURLにアクセス
2.ポート転送設定。変換対象ポートは1935(後ほど紹介するrtmp relayerの初期設定)を推奨。
で、次が重要なのですがこのポート開放、設定しただけではほかの人が像を送っても受け取れるわけではないです。
ようは、そのポート開放が必要なソフトやゲームが起動している状態じゃないとほかの人が入ってこれません。
で、このrmtp://の受信時に道を開けるソフトなのですが「rtmp relayer」を使います。
起動してほぼ初期設定でStart押すだけです。
大事なのはStart押さないと動画の送受信ができないことですね。
検証サイトでポート開放できないとか言われて焦った・・・
Startを押したら以下のようなサイトでポート開放のテストをしましょう。
ここまでが下準備です。
DJ→VJ→オペレーターの基本的な形で配信VJをする場合だと以下のパターンが考えられます。(DJ&VJ→オペレーター側で合成もありますがこっちのほうが手軽)
1.DJの動画(カメラ映像)とVJの動画をただ単に合成
2.DJの動画をVJソフトに取り込んでエフェクトやスイッチングする
1.DJの動画とVJの動画をただ単に合成
VLCビデオソースで像を拾ってOBS上で合成してやればOKです。
右クリック→「VLCビデオソース」→「+」→「PathまたはURLを追加」でいけます。
URLはポート番号いじってなければ
rmtp://localhost/live1/(ストリームキー)
のかたちになります。ストリームキーは番号付けるなり演者の名前にするなり分かりやすくするといいでしょう。
VJソフトからの像の拾い方ですがテレビ等の画面に投影してOBSで画面キャプチャが分かりやすく負荷も軽い気はします。(一番安く済むのがダミープラグ)
使い方は後日説明します。
ResolumeやGrandVJであればNDIを使って飛ばすのもありです。
ResolumeであればOutPut→Network streaming(NDI)から出してOBSのNDI Sourceから拾えばOKです。
そのまま重ねるとうまく重ならないので工夫が必要になります。
重ね方ですがDJがグリーンバック使ってるならDJの映像とVJの映像を重ねたうえでDJの映像にカラーキーでフィルタ入れましょう。(グリーンバックの種類によっては「クロマキー」のほうが抜ける場合もあります)
もしうまく緑が抜けない場合は「類似性」を調整したり「色キーの種類」→カスタム色など試してみてください。
DJが部屋等を映した画像に対しVJを薄くして重ねるときはVJ画面のほうにフィルタをかけ透明度を調整します。
同じく「フィルタ」に「色補正」→「不透明度」があるのでそちらで調整しましょう。
2.DJの動画をVJソフトに取り込んでエフェクトやスイッチングする
ResolumeやGrandVJ等でDJの映像を取り込むとDJがグリーンバック使ってるときなんかはDJを消したり増やしたりあとはDJを線にしたり虹色に光らせたりできます。
形としては
VLCで動画と音声を受け取り→NDIでResolumeやGrandVJ等からOBSに動画を飛ばす→OBSでVLCビデオソースで音声を、キャプチャかNDIでVJソフトを取り込み合成、といった感じです。
音声はVLC→オーディオインターフェース等→OBS、もしくはデスクトップ音声を拾うか、もしくはOBSのVLCビデオソース等で拾うといいかな?と思います。
↑デスクトップ音声で拾うパターン。雑音乗ることがあるので注意してください。
VLCビデオソースで拾う場合は受け取ったソースを最小化するなり透明度を上げるなりしてうまく音声を取り込んでください。
うまく組めれば
フェーダーを下げるだけでDJが消せる!楽しい!
って感じですね。
ちなみにグリーンバックの映像をDJが送ってきたときはChromakeyというエフェクトで抜くことができます。
遅延の調整
先ほども述べたとおりOBSには音声を遅らせる機能がついています。
特に後者の方法だとなんか音にあってない気がする…ということもあるのでそのときにはプロパティで調整しましょう。
厄介なことにモニタリングの時点では音は遅れませんが配信を見る側では調整された状態になります。
録画機能などでチェックしてみるといいでしょう。
音声ミキサーの歯車マーク→オーディオの詳細プロパティのなかにあります。
「同期オフセット」を調整していい感じに映像と音声のタイミングを合わせましょう。
ちなみにDJへの配信指示にはDiscordがいいと思います。
(なぜかというとゲームのために無遅延を目指しているので)
画面配信もできるのでそれでDJの画面を飛ばしてもらえればクラブでVJしてるみたいな画面を見て次の映像を選ぶ的な流れでVJができます。
まとめると、
・ポート開放すればOBSとVLCで他の人の像が受け取れる
・VLCはNDIに対応してるのでVJソフトに取り込めます。DJも消せる
ってことです。
ってことで配信のやり方でした。
#それたい ことそれでも配信がしたい!
とか #オタドア ことOTAKU_DOORSを不定期に開催してDJやってるので見てみてください。(ダイレクトマーケティング)
よろしくお願いします。