Amazon CloudFront
開発者ガイド (API バージョン 2016-09-29)

CloudFront によるオンデマンドビデオ配信

ビデオをオンデマンドでストリーミングするには、まず、Amazon S3 を使用して元の形式でコンテンツを保存し、AWS Elemental MediaConvert などのトランスコーダーを使用してビデオをストリーミング形式に変換します。その後、トランスコードされたビデオを S3 バケットに保存し、CloudFront を使用してそのビデオをビューワーに配信します。Microsoft Smooth Streaming を使用する場合は、「オンデマンド Microsoft Smooth Streaming の設定」を参照してください。

このソリューションを作成するには、以下の手順を実行します。

  • ステップ 1: コンテンツを Amazon S3 バケットにアップロードします。S3 での作業の詳細については、Amazon Simple Storage Service 開発者ガイド を参照してください。

  • ステップ 2: MediaConvert を使用して、ビューワーが使用するプレーヤーに必要な形式にビデオを変換します。また、アダプティブビットレートストリーミング用に解像度とビットレートが異なるアセットを作成し、ビューワーが使用可能な帯域幅に応じて表示品質を調整することもできます。MediaConvert はトランスコードしたビデオを S3 バケットに出力します。

  • ステップ 3: CloudFront ディストリビューションを使用して、変換されたコンテンツを配信します。これにより、ビューワーはそのコンテンツを任意のデバイスでいつでも好きなときに視聴できるようになります。

ヒント

AWS クラウドサービスによるビデオオンデマンドワークフローを実装するときのベストプラクティスの詳細については、「AWS でのビデオオンデマンド」を参照してください。

また、AWS CloudFormation テンプレートを使用してビデオオンデマンド AWS ソリューションを関連するすべてのコンポーネントと共にデプロイする方法を検討することもできます。テンプレートの使用手順については、「ビデオオンデマンドの自動デプロイ」を参照してください。

オンデマンド Microsoft Smooth Streaming の設定

CloudFront を使用すると、Microsoft Smooth Streaming 形式に変換したファイルでオンデマンドビデオを配信できます。スムーズストリーミングコンテンツをオンデマンドで配信するには、2 種類の方法があります。

  • ディストリビューションのオリジンとして、Microsoft Smooth Streaming 形式に変換したファイルをストリーミングできる Microsoft IIS ウェブサーバーを指定します。

  • CloudFront ディストリビューションでスムーズストリーミングを有効にします。スムーズストリーミングはキャッシュ動作のプロパティです。つまり、1 つのディストリビューションで、他のコンテンツに加えてスムーズストリーミングメディアファイルも配信できます。

重要

Microsoft IIS を実行しているウェブサーバーがオリジンである場合は、CloudFront ディストリビューションの作成時にスムーズストリーミングを有効にしないでください。スムーズストリーミングを有効にしている場合、CloudFront は Microsoft IIS サーバーをオリジンとして使用することはできません。

オリジンサーバーに対して Smooth Streaming を有効にした場合 (つまり、Microsoft IIS サーバーがない場合) は、以下の点に注意してください。

  • 他のコンテンツがキャッシュ動作の [Path Pattern (パスパターン)] の値と一致している場合、同じキャッシュ動作を使用してそのコンテンツも配信できます。

  • CloudFront は、スムーズストリーミングメディアファイルで Amazon S3 バケットまたはカスタムオリジンを使用できます。ただし、サーバーがスムーズストリーミング用に設定されている場合、CloudFront は Microsoft IIS サーバーをオリジンとして使用することはできません。

  • スムーズストリーミング形式のメディアファイルを無効にすることはできません。有効期限が切れる前にファイルを更新する場合は、ファイルの名前を変更する必要があります。詳細については、「CloudFront が配信するコンテンツの追加、削除、または置き換え」を参照してください。

スムーズストリーミングクライアントについては、Microsoft ウェブサイトの「Smooth Streaming Primer」を参照してください。

CloudFront を使用して、Smooth Streaming 形式でファイルをストリーミングできる Microsoft IIS ウェブサーバーを使用しないで、Microsoft Smooth Streaming 形式でエンコードされたメディアファイルをストリーミングするには、以下の手順を実行します。

  1. スムーズストリーミングでフラグメント化された MP4 形式にメディアファイルを変換します。

  2. 以下のいずれかを行います。

    • CloudFront コンソールを使用している場合: ウェブディストリビューションを作成するときに、デフォルトのキャッシュ動作でスムーズストリーミングを有効にします。既存の CloudFront ウェブディストリビューションのデフォルトのキャッシュ動作/カスタムキャッシュ動作で、スムーズストリーミングを有効にすることもできます。

    • CloudFront API を使用している場合: デフォルトのキャッシュ動作またはカスタムキャッシュ動作の DistributionConfig 複合型に SmoothStreaming 要素を追加します。

  3. Smooth Streaming プレゼンテーションのファイルをオリジンにアップロードします。

  4. clientaccesspolicy.xml または crossdomainpolicy.xml ファイルを作成し、それをディストリビューションのルートのアクセスできる場所に追加します (例: http://d111111abcdef8.cloudfront.net/clientaccesspolicy.xml)。次に、ポリシーの例を示します。

    <?xml version="1.0" encoding="utf-8"?> <access-policy> <cross-domain-access> <policy> <allow-from http-request-headers="*"> <domain uri="*"/> </allow-from> <grant-to> <resource path="/" include-subpaths="true"/> </grant-to> </policy> </cross-domain-access> </access-policy>

    詳細については、Microsoft Developer Network ウェブサイトの「Making a Service Available Across Domain Boundaries」を参照してください。

  5. アプリケーションでリンクする場合は、次の形式でクライアントマニフェストを指定します。

    http://d111111abcdef8.cloudfront.net/video/presentation.ism/Manifest