as

Settings
Sign out
Notifications
Alexa
Amazonアプリストア
AWS
ドキュメント
Support
Contact Us
My Cases
開発
設計と開発
公開
リファレンス
サポート

Vega向けReact NativeのW3C Media API

Vega向けReact NativeのW3C Media API

Vegaメディアプレーヤーは、W3C(World Wide Web Consortium)Media APIの機能を、Fire TVデバイス上のReact Nativeアプリで利用できるようにします。ウェブ開発で使い慣れた標準仕様である、<video>要素やHTMLMediaElementなどを使用できます。

Vegaメディアプレーヤーは、基本的なメディア再生用のHTMLMediaElement、アダプティブストリーミング用のMedia Source Extensions(MSE)、DRMコンテンツ保護用のEncrypted Media Extensions(EME)をサポートしています。メディアプレーヤースタックは、VegaデバイスのGStreamerフレームワーク上で動作し、ハードウェアアクセラレーションによるデコーディングとレンダリングを行います。

サポートされているその他のHTML5属性としてなじみのあるものに、次のような属性があります。

  • 標準的なプロパティ:currentTimedurationpausedvolume
  • 標準的なメソッド:play()pause()load()
  • 標準的なイベント:timeupdateendederrorloadedmetadata

ウェブからVegaへの移行

さらに具体的に説明するために、次のコード例では、コンポーネントでのビデオ再生のシンプルなシナリオを示しています。

// HTML5ウェブ
const video = document.querySelector("video");
video.src = "video.mp4";
video.play();

// Vega
const video = new VideoPlayer();
await video.initialize();
video.src = "video.mp4";
video.play();

形式の互換性

Vegaメディアプレーヤーは、以下のメディア形式とコーデックに対応しています。TVのハードウェア(ドルビーオーディオや4K再生など)に依存している場合があるため、再生時に適切なコーデックを選択できるように、再生を開始する前にアプリが出力デバイスのメディア機能を確認することが重要です

対応形式:

  • URLモード: MP4、MP3、MKV、FLV、OGG、FLAC
  • MSEモード: HLS(.m3u8)、DASH(.mpd)、SmoothStreaming

対応コーデック:

  • ビデオ: H.264、H.265、VP8、VP9、AV1
  • オーディオ: AAC、MP3、ドルビー(AC3、eAC3、AC4)、Opus、FLAC

DRMのサポート:

  • Widevine: HD/4Kの場合はL1(ハードウェア)、SDの場合はL3(ソフトウェア)
  • PlayReady: SL2000/3000(ハードウェア)、SL150(ソフトウェア)

プレーヤータイプの選択

重要な決定の1つは、コンテンツと要件に合った適切な再生方法を選択することです。

コンテンツタイプの決定

┌─────────────────────────────────────────────────────────────────┐
│                     コンテンツのタイプは?                       │
└───────────────────────────────┬─────────────────────────────────┘
                                │
                  ┌─────────────▼─────────────┐
                  │ シンプルなファイル(MP4、MP3)?  │
                  │ アダプティブストリーミングなし?    │
                  └─────────────┬─────────────┘
                                │ はい
                          ┌─────▼─────┐
                          │ URLモードを   │
                          │ 使用      │
                          │ (シンプル)  │
                          └───────────┘
                                │ いいえ
                    ┌───────────▼───────────┐
                    │ アダプティブストリーミング?   │
                    │ (HLS、DASH、ライブTV)  │
                    └───────────┬───────────┘
                                │ はい
                                ▼
                     「MSEプレーヤーの選択」を参照 

MSEプレーヤーの選択(必要な場合)

アダプティブストリーミングコンテンツの場合、適切なJavaScriptプレーヤーを選択する必要があります。ストリーミングタイプ(HLS、DASH、その両方)、DRM、ライブ配信コンテンツ、分析、オープンソースか商用かなどの要素を考慮してください。このガイドでは、Shaka Playerを使用してさまざまなコンテンツタイプとシナリオを処理します。ただし、特定の要件に基づいて、MSE互換の代替プレーヤー(HLS.js、Dash.js、商用プレーヤーなど)を選択することもできます。

サポート対象プレーヤーの一覧については、「サポート対象のライブラリとサービス」のVega互換メディアプレーヤーを参照してください。

必読:

高度なトピック:

参考資料:


Last updated: 2025年10月1日