Eclipsa 動画を統合

モバイル デバイスでのハイ ダイナミック レンジ(HDR)動画の配信には、さまざまなパネルで視覚的な一貫性が保たれないという大きな欠点があります。スタンダード ダイナミック レンジ(SDR)要素と HDR 要素が混在するフィードを閲覧する場合、レンダリング パイプラインはそれらのバランスを取るのに苦労します。その結果、ぎくしゃくした不自然なトランジションや、予測できない明るさの急上昇が発生します。

コンテンツ作成者にとって、この一貫性の欠如は芸術的な意図を損なうものです。プロ仕様のモニターで丁寧にグレーディングされた HDR 動画が、一般向けデバイスで視聴すると、ハイライトがクリップされたり、トーンが洗い流されたり、シャドウが潰れたりすることがあります。

Eclipsa video は、こうしたクロスデバイスのエコシステムにおける課題を解決するために設計された最新の HDR 動画規格です。SMPTE ST 2094-50 仕様に基づいて構築された Eclipsa video により、ディスプレイは物理的なハードウェア機能とリアルタイムの周囲光条件の両方に基づいて、コンテンツ マッピングを動的に調整できます。Jetpack Media3 ExoPlayer と標準の Camera2 キャプチャ パイプラインに組み込まれたゼロ構成の統合により、Eclipsa video は、モバイル エンジニアリング チームに、あらゆる画面で芸術的な意図を維持する次世代のハードウェア適応型動画ストリーミングを、コストをかけずに簡単に実装する方法を提供します。

SMPTE ST 2094-50 の技術的なアーキテクチャ

モバイル ディスプレイは、輝度ヘッドルーム(ディスプレイの参照ホワイト ポイントを超える明るさの量)が大きく異なります。ディスプレイのハードウェア制限が HDR 動画のマスタリング要件と一致しない場合、ハイライトがクリップされたり、くすんで見えたりします。画面の実際のヘッドルームと参照ホワイト ポイントは、周囲光センサーがパネルを周囲の環境に合わせて調整するにつれて動的に変化します。

SMPTE ST 2094-50 は、次の 2 つの主要な柱を通じて視覚的な一貫性を確保する 2 層のメタデータを導入することで、この問題を解決します。

参照ホワイト アンカー

これにより、SDR 要素のピーク輝度をディスプレイの参照ホワイト ポイントに直接マッピングする厳格なベースラインが確立されます。このアンカーを超える輝度値は、HDR ハイライト専用に厳密に予約されます。この予測可能なアンカー メカニズムにより、SDR レイヤと HDR レイヤが画面上で合成されるときに、互いに洗い流されることなく、意図した視覚的な関係を維持できます。

ヘッドルーム適応型ゲインカーブ(AGTM)

作成者は、静的なトーン マッピング カーブを強制する代わりに、ヘッドルームが制限されている場合にディスプレイ パイプラインがどのようにスケーリングするかを正確に指示するパラメータ メタデータを埋め込みます。この規格により、作成者は、ターゲット パネルでハイライトをソフトクリップするか、ハードクリップするか、中間トーンとシャドウを圧縮して明るい領域の細部を積極的に保持するかを、きめ細かく柔軟に選択できます。

プラットフォーム サポート

Eclipsa video の再生とキャプチャのプラットフォーム レベルのサポートは、Android 17(API レベル 37)で導入されました。

再生を実装する

標準的なアプリ開発の場合、Media3 ExoPlayer は Eclipsa video をすぐにサポートします。SMPTE 2094-50 メタデータが埋め込まれたファイルを解析すると、ExoPlayer はメタデータをシームレスに抽出して適用するため、カスタム プレーヤー構成は必要ありません。

  • 標準プレーヤーの初期化: プレーヤー サーフェスをインスタンス化するには、 Media3 ExoPlayer の概要をご覧ください。

  • トラックのオーバーライド: アプリが特定の HDR プロファイルをプログラムでクエリまたはロックする場合は、Media3 トラック選択 APIをご覧ください。

再生パイプラインを Jetpack Media3 にオフロードすることをおすすめします。ExoPlayer は、低レベルのコンテナ抽出をネイティブに処理します。これにより、Android 16(API レベル 36)以下の従来のレンダリング レイヤに存在する既知のプラットフォーム レベルのデコード アーティファクトを完全に回避できます。

動画キャプチャを実装する

デバイスから Eclipsa video を録画するには、互換性のあるダイナミック レンジ プロファイルを割り当てることで AGTM メタデータを生成するようにカメラ パイプラインを構成する必要があります。

CameraCharacteristics を使用してデバイスのサポートが検証されたら、DynamicRangeProfiles.HLG10_SMPTE_2094_50 プロファイルを使用してエンコーダ サーフェスにストリームをルーティングします。カメラ セッションでダイナミック レンジ プロファイルをクエリして構成する方法については、 HDR 動画キャプチャをご覧ください。

AGTM メタデータに明示的なコーデック構成は必要ありません。アクティブなダイナミック プロファイルに存在する場合、Android メディア フレームワークはメタデータを自動的に添付して渡します。

互換性とパフォーマンスに関する考慮事項

パフォーマンスをモニタリングするには、アクティブな Display オブジェクトを取得し、その overlayPropertiesLutProperties を確認して、ハードウェア アクセラレーション パスの可用性を特定します。

ハードウェア アクセラレーション機能を搭載していないデバイスの場合、ExoPlayer での Eclipsa video レンダリングのオプトアウトのサポートは開発中です。

参考情報