ラボの概要
ライブストリーミングイベントでは、ライブアクションとデバイス上に表示される画面との間のレイテンシーや時間の遅延が問題となることがあります。AWS Elemental MediaStore を使用することで、この問題を軽減できます。MediaStore は、オブジェクトストレージの前に後書き (write-behind) キャッシュを提供するメディアオリジンおよびストレージサービスですパフォーマンス、予測可能な低レイテンシー、および一貫性のために設計されています。
低レイテンシーが最大の懸念事項であり、ワークフローで AWS Elemental MediaPackage のジャストインタイムのパッケージングとデジタル権利管理 (DRM) の相互運用性が必要でない場合、例えば、ライブストリームが既に適切なフォーマットであり、必要な DRM が適用されている場合は、AWS Elemental MediaStore を使用できます。これは、ライブストリーミングメディア配信に必要なパフォーマンスと一貫性を提供するパススルービデオ発信と保存のサービスを提供します。さらにセキュリティおよび耐久性もそのサービスに備えられています。
ライブストリーミングのワークフロー
このラボでは、AWS Elemental MediaLive、AWS Elemental MediaStore、Amazon CloudFront を使用してライブストリーミング動画のワークフローを作成する方法を学習します。MediaLive はエンコードと圧縮を行い、このユースケースではパッケージングも行います。MediaLive は、MediaStore のコンテナをその送信先として使用して、アダプティブビットレート (ABR) のコンテンツを作成します。CloudFront がそのコンテナをオリジンとして使用して ABR ストリームを配信し、閲覧者がモバイルデバイスやデスクトップのブラウザでアクセスできるようにするポリシーを作成します。簡単にするために、Apple HLS (HTTP Live Streaming) というパッケージングプロトコルを 1 つだけ使用します。Apple HLS は、広く使用されているアダプティブビットレートストリーミング形式です。
注意: ライブ環境では、一般的に オンプレミスの投稿エンコーダーがメザニン品質のビデオを MediaLive にストリーミングすることになります。MediaLive は、MediaStore コンテナのエンドポイントをその送信先として使用して、複数のアダプティブビットレートのレンディションを作成します。CloudFront のディストリビューションは、その MediaStore コンテナをそのオリジンとして使用し、ストリーミングを行います。
これをラボ環境で再現する試みとして、ライブビデオストリームを提供してもらうのではなく、ライブストリームを模倣したビデオソースファイルをラボが提供し、MediaLive がエンコードできるようにしています。ラボのセットアップでは、AWS CloudFormation のテンプレートも使用して、必要な IAM ロールを自動的に作成します。
目標
本ラボを修了すると、次のことができるようになります。
- MediaStore コンテナを作成し、CloudFront のオリジンとして機能させる
- CloudFront ディストリビューションを作成する
- MediaLive をセットアップし、2 つのソース入力フィードを取り込む
- 組み込みテンプレートを使用して MediaLive チャネルを作成し、コンテンツをアダプティブビットレート出力にトランスコードする
- MediaLive を MediaStore エンドポイントに出力するように設定する
- コンテンツにアクセスできる MediaStore コンテナのポリシーを作成する
- ストリーミング動画を CloudFront の URL からプレーヤーで再生する
注意: 完全にデプロイするのに 20 分かかるため、CloudFront ディストリビューションはラボの開始時に作成してください。
技術知識の前提条件
このラボを完了するには、AWS マネジメントコンソールの基本操作に関する知識が必要です。