Amazon Developer

as

Settings
Sign out
Notifications
Alexa
Amazonアプリストア
Ring
AWS
ドキュメント
Support
Contact Us
My Cases
開発
設計と開発
公開
リファレンス
サポート
メインコンテンツへスキップ
VegaグラフィックスAPIは、接続されたディスプレイの機能をアプリが照会できるようにする機能を提供します。照会の対象となる機能は、画面解像度、リフレッシュレート、色深度、色形式、HDRサポートなどです。APIはデバイスによるサポートも考慮し、デバイスの制限に応じて機能を返します。

はじめに

前提条件

Vegaアプリは、Vega SDKを通じてこのパッケージを使用できます。 Vega SDKのインストール方法については、Vega SDKのセットアップを参照してください。

セットアップ

Vegaグラフィックスターボモジュールは、kepler-graphics npmパッケージによって提供されます。package.jsonファイルのdependenciesセクションに、以下のライブラリ依存関係を追加します。

パーミッション

ディスプレイAPIは、get系メソッドとset系メソッドの両方で構成されています。DisplayManagerクラスを通じてset系メソッドを使用するアプリの場合、以下に示すように、アプリのmanifest.tomlファイルの [needs] セクションで、セキュリティ権限com.amazon.graphics.privilege.display.managerを指定する必要があります。
get系メソッドには、権限は必要ありません。 com.amazon.graphics.privilege.display.managerを含めると、以下の操作が可能になります。
  • 現在の画面解像度とリフレッシュレートを、サポートされているいずれかの値に変更する。
  • 色深度、色形式、HDRモード、ALLMなど、ほかのディスプレイプロパティを変更する。

使用方法

以下は、サポート対象のユースケースのリストです。
  • ディスプレイのホットプラグイベントをリッスンする。
  • ディスプレイのサポート対象画面解像度(幅×高さ)とリフレッシュレートを照会する。
  • ディスプレイのサポート対象HDRタイプ/伝達関数、最大HDCPレベル、画面密度(DPI)を照会する。
  • ディスプレイの現在アクティブな画面解像度、リフレッシュレート、色深度、色形式、HDRモード、低遅延モード(ALLM)を照会する。
  • ディスプレイプロパティの変更イベントをリッスンする。
以降のセクションでは、いくつかのユースケースのサンプルコードを示します。

必要なコンポーネントのインポート

VegaグラフィックスAPIを使用するには、@amazon-devices/kepler-graphicsから必要なコンポーネントをインポートします。 以下に示すように、インターフェイスとタイプをソースコードファイルのkepler-graphicsパッケージからインポートします。
上のインポートでは、使用する可能性があるすべてのコンポーネントが示されています。インポートするのは、アプリが使用するメソッドのコンポーネントだけで構いません。

ディスプレイの状態の確認

ディスプレイがデバイスに接続されているかどうかを確認するには、以下のメソッドを使用します。

ディスプレイのホットプラグイベント

ディスプレイパネルが接続または接続解除されたときに、コールバックイベントを取得します。IDisplayControllerListener.onAddDisplay()とIDisplayControllerListener.onRemoveDisplay()コールバックメソッドは、以下に示すようなイベントを提供します。

現在の画面解像度とリフレッシュレートの取得

Display.getCurrentConfig()メソッドは、現在アクティブな構成をIDisplayConfigオブジェクトとして返します。IDisplayConfigオブジェクトのメンバーは、画面解像度(幅×高さ)、画面密度、サポートされるリフレッシュレートなどの情報を提供します。

HDRサポートの確認

次のサンプルコードは、ディスプレイとデバイスがHDRをサポートしているかどうかを確認する方法を示しています。
注: サンプルコードで取得したサポート対象のHDRタイプは、現在のアクティブなディスプレイ構成(解像度)のみを表しています。Display.getAllSupportedConfigs()で取得されるほかのディスプレイ構成に、ほかのHDRタイプが含まれる場合があります。それらのHDRタイプを使用できるのは、DisplayManager.requestConfigChange()メソッドを使用して、現在のアクティブな構成を特定のHDRタイプ用のディスプレイ構成に変更した場合のみです。

ほかのディスプレイプロパティの照会

変更イベントのリッスン

次のコード例は、アプリがIDisplayListenerコールバックインターフェイスを使用して以下に対する変更をリッスンできることを示しています。
  • 表示プロパティ(画面解像度など)
  • リフレッシュレート、色深度/色空間
  • HDCPレベル
  • HDRモード
  • 低遅延モード

よくある質問(FAQ)

Q1:ディスプレイでサポートされているHDRタイプがIDisplayConfig.supportedHdrType配列に含まれていないのはなぜですか?

メソッドの実装では、サポートされているタイプを報告する際に、ディスプレイプロパティだけでなく、デバイスの機能も考慮されます。デバイスが「ドルビービジョン」などの特定のHDRタイプをサポートしていない場合、IDisplayConfig.supportedHdrTypeによって報告されるリストにはそのタイプが含まれません。

Q2:リスナーコールバックの登録を解除するにはどうすればよいですか?

Display.addDisplayListener()メソッドとDisplayController.addListener()メソッドは、ISubscriptionオブジェクトを返します。リスナーの登録を解除するオブジェクトを使用するには、unsubscribe()メソッドを呼び出します。以下のコード例を参照してください。

Q3:supportedHdrTypeが次のような複数の重複した値を返すのはなぜですか?

HDRタイプは、リフレッシュレートと関連しています。このシナリオでは、5つの異なるリフレッシュレートがあり、それぞれに対応するHDRタイプのサポート情報があります。たとえば、リフレッシュレートが60ミリヘルツ(mHz)の場合、HDRサポートタイプは1で、これはHdrType.NONEに相当します。

APIリファレンス

クラス

  • Display - プライマリディスプレイのプロパティを取得するクラス。
  • DisplayController - DisplayController固有の操作はこれによって実行されます。
  • DisplayManager - ディスプレイの構成/設定を変更するためのAPIが用意されています。

インターフェイス

列挙型

  • AisrState - 表示用のAI解像度復元の状態値を定義します。
  • BufferPixelFormat - データを保存するために使用されるメモリレイアウトとビットを指定します。
  • ColorDepth - ディスプレイで表示可能なすべての色深度を定義します。
  • ColorGamut - 色域タイプのリストを定義します。
  • ColorSpace - ディスプレイのさまざまな色空間タイプを定義します。
  • HdcpLevel - ディスプレイがサポートできるすべてのHDCPレベルを定義します。
  • HdrMode - ディスプレイのハイダイナミックレンジモードの値を定義します
  • HdrType - サポートされている基盤となるHDRテクノロジーのリストを定義します。
  • LlmState - ディスプレイがサポートできるすべての低遅延モード(LLM)状態を定義します。
  • TransferFunction - ディスプレイ伝達関数のリストを定義します。

最終更新日 2026年10月26日