

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

# 圧縮された DASH マニフェスト
<a name="compacted"></a>

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

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

**Example デフォルトの 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>
```

**Example 圧縮された 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 がマニフェストを圧縮する方法](#how-cpact-works)」を参照してください。

## がマニフェストを AWS Elemental MediaPackage 圧縮する方法
<a name="how-cpact-works"></a>

 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 つのビデオフレームレートが使用されているが、上記の倍増パターンのいずれかではない場合、そのセットを圧縮することはできません。
+ 適応セットの表現間に重複したレートがない場合、そのセットを圧縮することはできません。