メディア トラック

メディア トラックは、Unreal Engine のメディア フレームワーク機能を使用して、シーケンサーによる動画や画像の再生を行うためのコントロールを提供します。

Choose your operating system:

Windows

macOS

Linux

シーケンサーで Media Track 、割り当てられた Media Source 、さらに Media Texture アセットを使用することで、メディア ソースの再生を制御できます。また、シーケンサーはメディア ソースの再生時に内部的なメディア プレーヤーを作成するため、ユーザーがメディア プレーヤー アセットを作成する必要がありません。

この操作ガイドでは、新しいレベル シーケンスを作成し、メディア トラックを割り当てて、レベル内での再生時に再生を行う EXR 画像シーケンスにポイントします。

UsingMediaHero.png

手順

この操作ガイドでは、新しい Blank ブループリント プロジェクト を使用します。また、メディア ソースで使用する一連の EXP または PNG 画像が必要です。使用する画像がない場合は、この操作ガイド用に準備したこちらの UE4 Logo 画像をダウンロードしてください。

  1. プロジェクトで コンテンツ ブラウザ を右クリックし、 [Media] [Img Media Source] を選択して名前を付けます。 MediaTrack_02.png

  2. Img Media Source アセットを開いて Sequence Path をサンプルの EXR 画像にポイントし、最初の画像を開きます。 MediaTrack_03.png

  3. コンテンツ ブラウザ で右クリックし、 [Media] から Media Texture アセットを作成します。 MediaTrack_04-1.png

    通常は Media Player アセットとそれに関連する Media Texture を作成します。 シーケンサー メディア トラック を使用する際は、オンデマンドの再生を処理する内部のメディア プレーヤーを、各メディア トラックが自動的に作成します。

  4. メイン ツールバーの [Cinematics (シネマティックス)] をクリックして [Add Level Sequence (レベル シーケンスを追加)] を選択し、名前と保存場所を指定します。 MediaTrack_06.png

  5. レベル シーケンスを開いて [Track] ボタンをクリックし、 [Media Track] オプションを選択します。 MediaTrack_07.png または、 Media Source アセットを コンテンツ ブラウザ から シーケンサー にドラッグし、 メディア トラック を作成することもできます。 MediaTrack_08-2.png

  6. メディア トラック [+ Media] ボタンをクリックし、 Img Media Source アセットを選択します。 MediaTrack_09.png

  7. メディアをフレーム 520 に設定し、エンド マーカーをシーケンスの最後に移動します。 MediaTrack_10.png

    現在、メディア セクションのサイズは、メディアの長さに合わせて自動で変更されません。このため、メディア セクションを手動で伸縮してセクションを設定します。将来のリリースでは、サイズが自動で変更されるように改善する予定です。

  8. メディアを右クリックして [Properties] [Media Texture] Media Player アセットに設定します。 MediaTrack_11-1.png メディア トラックを追加する際は、 [Properties] で、そのメディア トラックと関連付ける Media Texture を定義する必要があります。この Media Texture は再生しているビデオの出力を受け取ります。

    複数のセクションで同じ Media Texture を再使用することはできますが、同時に 2 つのセクションで同じ Media Texture への書き込みが行われないように注意する必要があります。

  9. レベル内でレベル シーケンスを選択して [Details (詳細)] パネルから [Auto Play] を有効化します。 MediaTrack_12.png

  10. [Mode (モード)] パネルの [Basic] から Plane をレベルにドラッグし、必要に応じてサイズの変更や回転を行います。

  11. レベル内で Media Texture アセットを コンテンツ ブラウザ から Plane にドラッグします。

    MediaTrack_13-1.png

    これにより Media Texture を使用する新しい Material が自動的に作成され、割り当てられます。

  12. エディタで [Play (プレイ)] ボタンをクリックして再生します。

最終結果

エディタで自動再生すると、レベル シーケンスで指定されている通りに再生が開始されます。ここでは自動再生に設定されています。また、シーケンサー エディタ内でメディアをスクラブすることもでき、これによってビデオの再生がスクラブされます。

追加情報

現時点では、画像シーケンス (特に EXR シーケンス) について、 Media Track の機能は Img Media Source オブジェクトに最適化されています。

MP4 動画やその他の動画形式もサポートしていますが、メディア トラックのレンダリングと同様に、あくまでも実験段階です。

メディアの再生を最適化する場合は、いくつかの設定を行う必要があります。

まず、 [Project Settings (プロジェクト設定)] > [Plugins (プラグイン)] > [IMG Media] でグローバルな設定を行います。 [Cache Size GB] は、アクティブな各メディア プレーヤーでキャッシュされるギガバイト数を示します。同時にアクティブにするメディア プレーヤー数、およびビデオ フレームのメモリ使用量に応じて、適切な数値を設定する必要があります。各ユーザーの状況により異なりますが、通常は適切な値として 0.5 または 1.0 を推奨します。

MediaTracks_ProjectSettings.png

[Cache Behind Percentage] は、現在の再生位置でフレームのキャッシュにバックグラウンドで使用されるキャッシュの割合を示します。リアルタイム再生では前方のみのフレームのキャッシュが必要なため、この値を 0 に設定してください。

次に、各メディア トラック セクションで、プリロードされるフレームの プリロール 時間を設定する必要があります。ここでも上の設定と同様に、再生するビデオ数やフレームの大きさ、お使いのマシンの処理能力など、多くの要因に基づいて適切な値が決まります。

一般的には、必要な時に確実に利用できるようにビデオ フレームが十分な余裕をもって事前にプレロールされることが望ましいですが、プレロールが早すぎると、ビデオ フレームをロード中の再生中のその他のセクションのパフォーマンスに影響を及ぼす可能性があることに注意してください。キャッシュ サイズおよびプレロールは、必要な時にすべてのフレームが利用可能であることを保証できると同時に、任意の時間のポイントで最小限必要な数のビデオ フレームがプレロールされるように設定することを推奨します。

Unreal Engine のドキュメントを改善するために協力をお願いします!どのような改善を望んでいるかご意見をお聞かせください。
調査に参加する
キャンセル