弊社が所有するリアルタイム合成システム『RealityEngine』でNDIを利用することができます。
一部制限はありますがどのように活用ができるかとNDIがどのようなものかの簡単な説明をさせていただければと思います。
まず最初にNDIとはどのようなものなのか簡単に説明しますと、NewTek社が開発した映像と音声をネットワーク経由でやり取りするIP伝送方式の一種になります。
高品質の映像を低遅延で伝送することができ、NewTek社の発売するTriCasterシリーズを筆頭に様々な業務用映像機器にも採用されています。
イベントや放送のオペレーションでも用いられるようなメディアサーバーソフトウェアや配信ソフトウェアでも標準実装されていることも増えており、IP伝送方式としては業界内でも一定の地位と信頼を確立しています。
このNDIですが、RealityEngineのCGの描画に用いられるUnrealEngine向けのプラグインも提供されており、このプラグインを活用することでRealityEngineで表示するCG内にNDIで入力した映像を表示することが可能です。
RealityEngineでNDIを利用するにあたっては根本的にはRealityEngineのベースとなっているUnrealEngine内でNDIが動いているということになるので、RealityEngineで合成に用いるトラキングを伴う実写の映像ソースにはNDI経由のソースは原則使えないことだけ注意してください。
GC内の画面に表示する映像ソースとして用いるのが最も一般的な活用方法になります。
あらかじめUnrealEngine側でブループリントを仕込んでおけば複数のNDIソースの切り替えのコントロールも可能です。
実際にタイムコードを表示して遅延の具合なども見てみましたがRealityEngineからの出力で確認してみたところ実写とCGの合成処理に伴って発生する遅延からさらに目視で遅れていると感じるほどの遅延は見受けられず実際の使用にも許容できる様子でした。
NDIを用いることによって使い分けは必要に感じますが、ネットワーク経由で追加のライブメディアソースをCG側へ表示するリソースが増えるため結果的にXR撮影の演出により幅が出せそうですね。
検証を行っている段階で複数の機器を組み合わせて複数のNDIを取り扱うようなシステムを組もうとすると不意に接続を見失ってしまったりなどの事象も起きてしまうこともありました。
ここでは深く言及しませんが、実際に撮影や配信の現場で使う場合はその点へのトラブルシューティングができる知識やUnrealEngineでNDIソースの切り替えやNDIソースを再接続させるようなブループリントの工夫が必要そうです。
まだ発展途上とはいえ大変便利なプロトコルNDI、今回紹介したような他にも活用できる部分は多いのでうまく付き合っていきたいですね。