圧縮された DASH マニフェスト - AWS Elemental MediaPackage

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

圧縮された DASH マニフェスト

DASH マニフェストを圧縮して低電力デバイスでの VOD とライブの両方のパフォーマンスと処理を向上させる機能を AWS Elemental MediaPackage で利用できます。

MediaPackage で提供されるデフォルトの DASH マニフェストには、各表現 (トラック) に関する重複データが含まれています。一部のプレーヤーでは、このすべてのデータを含むマニフェストの処理は困難で時間がかかります。MediaPackage では、この負荷の一部を減らすため、Representation オブジェクトから AdaptationSet オブジェクトに一部の属性を移動することで、マニフェストを圧縮できます。この方法では、マニフェストで各表現に対して属性を定義するのではなく、高いレベルで 1 回のみ定義します。これにより、表現が適応セットからこれらの属性を継承します。

例 デフォルトの DASH マニフェスト

次の例では、SegmentTemplate オブジェクトとそのすべての要素が各 Representation. にリストされています。マニフェストの適用セットごとに、この同じレイアウトがあります。

<AdaptationSet mimeType="video/mp4" segmentAlignment="true" subsegmentAlignment="true" startWithSAP="1" subsegmentStartsWithSAP="1" bitstreamSwitching="true"> <Representation id="1" width="640" height="360" frameRate="30/1" bandwidth="749952" codecs="avc1.640029"> <SegmentTemplate timescale="30000" media="index_video_1_0_$Number$.mp4?m=1543947824" initialization="index_video_1_0_init.mp4?m=1543947824" startNumber="1"> <SegmentTimeline> <S t="62000" d="60000" r="9"/> </SegmentTimeline> </SegmentTemplate> </Representation> <Representation id="2" width="854" height="480" frameRate="30/1" bandwidth="1000000" codecs="avc1.640029"> <SegmentTemplate timescale="30000" media="index_video_3_0_$Number$.mp4?m=1543947824" initialization="index_video_3_0_init.mp4?m=1543947824" startNumber="1"> <SegmentTimeline> <S t="62000" d="60000" r="9"/> </SegmentTimeline> </SegmentTemplate> </Representation> <Representation id="3" width="1280" height="720" frameRate="30/1" bandwidth="2499968" codecs="avc1.640029"> <SegmentTemplate timescale="30000" media="index_video_5_0_$Number$.mp4?m=1543947824" initialization="index_video_5_0_init.mp4?m=1543947824" startNumber="1"> <SegmentTimeline> <S t="62000" d="60000" r="9"/> </SegmentTimeline> </SegmentTemplate> </Representation> </AdaptationSet>
例 圧縮された DASH マニフェスト

この例では、SegmentTemplate オブジェクトとそのすべての要素が 1 つに折りたたまれ、AdaptationSet に移動されます。この再生デバイスは、この適応セットの各表現で、この同じテンプレートが使用されることを理解します。

<AdaptationSet mimeType="video/mp4" segmentAlignment="true" subsegmentAlignment="true" startWithSAP="1" subsegmentStartsWithSAP="1" bitstreamSwitching="true"> <SegmentTemplate timescale="30000" media="index_video_$RepresentationID$_0_$Number$.mp4?m=1543947824" initialization="index_video_$RepresentationID$_0_init.mp4?m=1543947824" startNumber="1"> <SegmentTimeline> <S t="62000" d="60000" r="9"/> </SegmentTimeline> </SegmentTemplate> <Representation id="1" width="640" height="360" frameRate="30/1" bandwidth="749952" codecs="avc1.640029"/> <Representation id="2" width="854" height="480" frameRate="30/1" bandwidth="1000000" codecs="avc1.640029"/> <Representation id="3" width="1280" height="720" frameRate="30/1" bandwidth="2499968" codecs="avc1.640029"/> </AdaptationSet>

DASH マニフェストの圧縮の詳細については、「AWS Elemental MediaPackage がマニフェストを圧縮する方法」を参照してください。

AWS Elemental MediaPackage でマニフェストを圧縮する方法

AWS Elemental MediaPackage コンソールから DASH マニフェストを圧縮するには、DASH エンドポイントの [マニフェストのレイアウト] で、[コンパクト] を選択します。適切なタイミングで利用可能なトラックを用意するために、MediaPackage はソースコンテンツのフレームレートとオーディオサンプリングレートを確認し、マニフェストが圧縮可能であるかどうか判断します。

注記

キャプショントラックでは常に同じレートが使用されるため、MediaPackage は必ずキャプションを含めて適応セットを圧縮します。

MediaPackage は以下のアクションを実行します。

  • このレートが適応セットのすべての表現で同じである場合、MediaPackage はすべての SegmentTemplate オブジェクトを 1 つに折りたたみ、これを AdaptationSet レベルに移動します。これにより、テンプレート内の情報がマニフェスト全体で繰り返されることはなくなります。表現間での同じテンプレートの使用を再生デバイスに許可するため、MediaPackage は、media および initialization リクエストの URL に $RepresentationID$ 変数を追加します。再生デバイスでは、この変数を、現在リクエスト中の表現の ID に置き換えます。ContentProtection 要素が存在する場合、MediaPackage はその要素も適応セットに移動します。

  • 表現間でレートが異なる場合、MediaPackage は、最も頻繁に使用されているレートで SegmentTemplate を圧縮し、AdaptationSet に移動します。レートが異なる表現では、セグメントテンプレートが維持されます。表現のレートは、適応セットのレートを上書きします。

  • 動画適応セットで明確に 2 つのフレームレートが使用されている場合、MediaPackage は以下のように圧縮します。

    • 24 と 48 が使用されている場合、圧縮されたテンプレートではフレームレートに 48 が使用され、タイムベースに 48000 が使用されます。

    • 25 と 50 が使用されている場合、圧縮されたテンプレートではフレームレートに 50 が使用され、タイムベースに 50000 が使用されます。

    • 29.97 と 59.94 が使用されている場合、圧縮されたテンプレートではフレームレートに 59.95 が使用され、タイムベースに 60000 が使用されます。

    • 30 と 60 が使用されている場合、圧縮されたテンプレートではフレームレートに 60 が使用され、タイムベースに 60000 が使用されます。

    2 つのビデオフレームレートが使用されているが、上記の倍増パターンのいずれかではない場合、そのセットを圧縮することはできません。

  • 適応セットの表現間に重複したレートがない場合、そのセットを圧縮することはできません。