

This is the new *CloudFormation Template Reference Guide*. Please update your bookmarks and links. For help getting started with CloudFormation, see the [AWS CloudFormation User Guide](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html).

# AWS::MediaPackage::PackagingConfiguration
<a name="aws-resource-mediapackage-packagingconfiguration"></a>

Creates a packaging configuration in a packaging group.

The packaging configuration represents a single delivery point for an asset. It determines the format and setting for the egressing content. Specify only one package format per configuration, such as `HlsPackage`.

## Syntax
<a name="aws-resource-mediapackage-packagingconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-mediapackage-packagingconfiguration-syntax.json"></a>

```
{
  "Type" : "AWS::MediaPackage::PackagingConfiguration",
  "Properties" : {
      "[CmafPackage](#cfn-mediapackage-packagingconfiguration-cmafpackage)" : CmafPackage,
      "[DashPackage](#cfn-mediapackage-packagingconfiguration-dashpackage)" : DashPackage,
      "[HlsPackage](#cfn-mediapackage-packagingconfiguration-hlspackage)" : HlsPackage,
      "[Id](#cfn-mediapackage-packagingconfiguration-id)" : String,
      "[MssPackage](#cfn-mediapackage-packagingconfiguration-msspackage)" : MssPackage,
      "[PackagingGroupId](#cfn-mediapackage-packagingconfiguration-packaginggroupid)" : String,
      "[Tags](#cfn-mediapackage-packagingconfiguration-tags)" : [ Tag, ... ]
    }
}
```

### YAML
<a name="aws-resource-mediapackage-packagingconfiguration-syntax.yaml"></a>

```
Type: AWS::MediaPackage::PackagingConfiguration
Properties:
  [CmafPackage](#cfn-mediapackage-packagingconfiguration-cmafpackage): 
    CmafPackage
  [DashPackage](#cfn-mediapackage-packagingconfiguration-dashpackage): 
    DashPackage
  [HlsPackage](#cfn-mediapackage-packagingconfiguration-hlspackage): 
    HlsPackage
  [Id](#cfn-mediapackage-packagingconfiguration-id): String
  [MssPackage](#cfn-mediapackage-packagingconfiguration-msspackage): 
    MssPackage
  [PackagingGroupId](#cfn-mediapackage-packagingconfiguration-packaginggroupid): String
  [Tags](#cfn-mediapackage-packagingconfiguration-tags): 
    - Tag
```

## Properties
<a name="aws-resource-mediapackage-packagingconfiguration-properties"></a>

`CmafPackage`  <a name="cfn-mediapackage-packagingconfiguration-cmafpackage"></a>
Parameters for CMAF packaging.  
*Required*: No  
*Type*: [CmafPackage](aws-properties-mediapackage-packagingconfiguration-cmafpackage.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`DashPackage`  <a name="cfn-mediapackage-packagingconfiguration-dashpackage"></a>
Parameters for DASH-ISO packaging.  
*Required*: No  
*Type*: [DashPackage](aws-properties-mediapackage-packagingconfiguration-dashpackage.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`HlsPackage`  <a name="cfn-mediapackage-packagingconfiguration-hlspackage"></a>
Parameters for Apple HLS packaging.  
*Required*: No  
*Type*: [HlsPackage](aws-properties-mediapackage-packagingconfiguration-hlspackage.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Id`  <a name="cfn-mediapackage-packagingconfiguration-id"></a>
Unique identifier that you assign to the packaging configuration.  
*Required*: Yes  
*Type*: String  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`MssPackage`  <a name="cfn-mediapackage-packagingconfiguration-msspackage"></a>
Parameters for Microsoft Smooth Streaming packaging.  
*Required*: No  
*Type*: [MssPackage](aws-properties-mediapackage-packagingconfiguration-msspackage.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`PackagingGroupId`  <a name="cfn-mediapackage-packagingconfiguration-packaginggroupid"></a>
The ID of the packaging group associated with this packaging configuration.  
*Required*: Yes  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Tags`  <a name="cfn-mediapackage-packagingconfiguration-tags"></a>
The tags to assign to the packaging configuration.  
*Required*: No  
*Type*: Array of [Tag](aws-properties-mediapackage-packagingconfiguration-tag.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

## Return values
<a name="aws-resource-mediapackage-packagingconfiguration-return-values"></a>

### Ref
<a name="aws-resource-mediapackage-packagingconfiguration-return-values-ref"></a>

When you pass the logical ID of this resource to the intrinsic `Ref` function, `Ref` returns the name of the packaging configuration.

For example: `{ "Ref": "myPackagingConfiguration" }`

For more information about using the `Ref` function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html).

### Fn::GetAtt
<a name="aws-resource-mediapackage-packagingconfiguration-return-values-fn--getatt"></a>

The `Fn::GetAtt` intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.

For more information about using the `Fn::GetAtt` intrinsic function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html).

#### 
<a name="aws-resource-mediapackage-packagingconfiguration-return-values-fn--getatt-fn--getatt"></a>

`Arn`  <a name="Arn-fn::getatt"></a>
The Amazon Resource Name (ARN) for the packaging configuration. You can get this from the response to any request to the packaging configuration.

# AWS::MediaPackage::PackagingConfiguration CmafEncryption
<a name="aws-properties-mediapackage-packagingconfiguration-cmafencryption"></a>

Holds encryption information so that access to the content can be controlled by a DRM solution.

## Syntax
<a name="aws-properties-mediapackage-packagingconfiguration-cmafencryption-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-mediapackage-packagingconfiguration-cmafencryption-syntax.json"></a>

```
{
  "[SpekeKeyProvider](#cfn-mediapackage-packagingconfiguration-cmafencryption-spekekeyprovider)" : SpekeKeyProvider
}
```

### YAML
<a name="aws-properties-mediapackage-packagingconfiguration-cmafencryption-syntax.yaml"></a>

```
  [SpekeKeyProvider](#cfn-mediapackage-packagingconfiguration-cmafencryption-spekekeyprovider): 
    SpekeKeyProvider
```

## Properties
<a name="aws-properties-mediapackage-packagingconfiguration-cmafencryption-properties"></a>

`SpekeKeyProvider`  <a name="cfn-mediapackage-packagingconfiguration-cmafencryption-spekekeyprovider"></a>
Parameters for the SPEKE key provider.  
*Required*: Yes  
*Type*: [SpekeKeyProvider](aws-properties-mediapackage-packagingconfiguration-spekekeyprovider.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::MediaPackage::PackagingConfiguration CmafPackage
<a name="aws-properties-mediapackage-packagingconfiguration-cmafpackage"></a>

Parameters for a packaging configuration that uses Common Media Application Format (CMAF) packaging.

## Syntax
<a name="aws-properties-mediapackage-packagingconfiguration-cmafpackage-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-mediapackage-packagingconfiguration-cmafpackage-syntax.json"></a>

```
{
  "[Encryption](#cfn-mediapackage-packagingconfiguration-cmafpackage-encryption)" : CmafEncryption,
  "[HlsManifests](#cfn-mediapackage-packagingconfiguration-cmafpackage-hlsmanifests)" : [ HlsManifest, ... ],
  "[IncludeEncoderConfigurationInSegments](#cfn-mediapackage-packagingconfiguration-cmafpackage-includeencoderconfigurationinsegments)" : Boolean,
  "[SegmentDurationSeconds](#cfn-mediapackage-packagingconfiguration-cmafpackage-segmentdurationseconds)" : Integer
}
```

### YAML
<a name="aws-properties-mediapackage-packagingconfiguration-cmafpackage-syntax.yaml"></a>

```
  [Encryption](#cfn-mediapackage-packagingconfiguration-cmafpackage-encryption): 
    CmafEncryption
  [HlsManifests](#cfn-mediapackage-packagingconfiguration-cmafpackage-hlsmanifests): 
    - HlsManifest
  [IncludeEncoderConfigurationInSegments](#cfn-mediapackage-packagingconfiguration-cmafpackage-includeencoderconfigurationinsegments): Boolean
  [SegmentDurationSeconds](#cfn-mediapackage-packagingconfiguration-cmafpackage-segmentdurationseconds): Integer
```

## Properties
<a name="aws-properties-mediapackage-packagingconfiguration-cmafpackage-properties"></a>

`Encryption`  <a name="cfn-mediapackage-packagingconfiguration-cmafpackage-encryption"></a>
Parameters for encrypting content.  
*Required*: No  
*Type*: [CmafEncryption](aws-properties-mediapackage-packagingconfiguration-cmafencryption.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`HlsManifests`  <a name="cfn-mediapackage-packagingconfiguration-cmafpackage-hlsmanifests"></a>
A list of HLS manifest configurations that are available from this endpoint.  
*Required*: Yes  
*Type*: Array of [HlsManifest](aws-properties-mediapackage-packagingconfiguration-hlsmanifest.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`IncludeEncoderConfigurationInSegments`  <a name="cfn-mediapackage-packagingconfiguration-cmafpackage-includeencoderconfigurationinsegments"></a>
When includeEncoderConfigurationInSegments is set to true, AWS Elemental MediaPackage places your encoder's Sequence Parameter Set (SPS), Picture Parameter Set (PPS), and Video Parameter Set (VPS) metadata in every video segment instead of in the init fragment. This lets you use different SPS/PPS/VPS settings for your assets during content playback.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SegmentDurationSeconds`  <a name="cfn-mediapackage-packagingconfiguration-cmafpackage-segmentdurationseconds"></a>
Duration (in seconds) of each segment. Actual segments are rounded to the nearest multiple of the source fragment duration.   
*Required*: No  
*Type*: Integer  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::MediaPackage::PackagingConfiguration DashEncryption
<a name="aws-properties-mediapackage-packagingconfiguration-dashencryption"></a>

Holds encryption information so that access to the content can be controlled by a DRM solution.

## Syntax
<a name="aws-properties-mediapackage-packagingconfiguration-dashencryption-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-mediapackage-packagingconfiguration-dashencryption-syntax.json"></a>

```
{
  "[SpekeKeyProvider](#cfn-mediapackage-packagingconfiguration-dashencryption-spekekeyprovider)" : SpekeKeyProvider
}
```

### YAML
<a name="aws-properties-mediapackage-packagingconfiguration-dashencryption-syntax.yaml"></a>

```
  [SpekeKeyProvider](#cfn-mediapackage-packagingconfiguration-dashencryption-spekekeyprovider): 
    SpekeKeyProvider
```

## Properties
<a name="aws-properties-mediapackage-packagingconfiguration-dashencryption-properties"></a>

`SpekeKeyProvider`  <a name="cfn-mediapackage-packagingconfiguration-dashencryption-spekekeyprovider"></a>
Parameters for the SPEKE key provider.  
*Required*: Yes  
*Type*: [SpekeKeyProvider](aws-properties-mediapackage-packagingconfiguration-spekekeyprovider.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::MediaPackage::PackagingConfiguration DashManifest
<a name="aws-properties-mediapackage-packagingconfiguration-dashmanifest"></a>

Parameters for a DASH manifest.

## Syntax
<a name="aws-properties-mediapackage-packagingconfiguration-dashmanifest-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-mediapackage-packagingconfiguration-dashmanifest-syntax.json"></a>

```
{
  "[ManifestLayout](#cfn-mediapackage-packagingconfiguration-dashmanifest-manifestlayout)" : String,
  "[ManifestName](#cfn-mediapackage-packagingconfiguration-dashmanifest-manifestname)" : String,
  "[MinBufferTimeSeconds](#cfn-mediapackage-packagingconfiguration-dashmanifest-minbuffertimeseconds)" : Integer,
  "[Profile](#cfn-mediapackage-packagingconfiguration-dashmanifest-profile)" : String,
  "[ScteMarkersSource](#cfn-mediapackage-packagingconfiguration-dashmanifest-sctemarkerssource)" : String,
  "[StreamSelection](#cfn-mediapackage-packagingconfiguration-dashmanifest-streamselection)" : StreamSelection
}
```

### YAML
<a name="aws-properties-mediapackage-packagingconfiguration-dashmanifest-syntax.yaml"></a>

```
  [ManifestLayout](#cfn-mediapackage-packagingconfiguration-dashmanifest-manifestlayout): String
  [ManifestName](#cfn-mediapackage-packagingconfiguration-dashmanifest-manifestname): String
  [MinBufferTimeSeconds](#cfn-mediapackage-packagingconfiguration-dashmanifest-minbuffertimeseconds): Integer
  [Profile](#cfn-mediapackage-packagingconfiguration-dashmanifest-profile): String
  [ScteMarkersSource](#cfn-mediapackage-packagingconfiguration-dashmanifest-sctemarkerssource): String
  [StreamSelection](#cfn-mediapackage-packagingconfiguration-dashmanifest-streamselection): 
    StreamSelection
```

## Properties
<a name="aws-properties-mediapackage-packagingconfiguration-dashmanifest-properties"></a>

`ManifestLayout`  <a name="cfn-mediapackage-packagingconfiguration-dashmanifest-manifestlayout"></a>
Determines the position of some tags in the Media Presentation Description (MPD). When set to `FULL`, elements like `SegmentTemplate` and `ContentProtection` are included in each `Representation`. When set to `COMPACT`, duplicate elements are combined and presented at the AdaptationSet level.  
*Required*: No  
*Type*: String  
*Allowed values*: `FULL | COMPACT`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ManifestName`  <a name="cfn-mediapackage-packagingconfiguration-dashmanifest-manifestname"></a>
A short string that's appended to the end of the endpoint URL to create a unique path to this packaging configuration.  
*Required*: No  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`MinBufferTimeSeconds`  <a name="cfn-mediapackage-packagingconfiguration-dashmanifest-minbuffertimeseconds"></a>
Minimum amount of content (measured in seconds) that a player must keep available in the buffer.  
*Required*: No  
*Type*: Integer  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Profile`  <a name="cfn-mediapackage-packagingconfiguration-dashmanifest-profile"></a>
The DASH profile type. When set to `HBBTV_1_5`, the content is compliant with HbbTV 1.5.  
*Required*: No  
*Type*: String  
*Allowed values*: `NONE | HBBTV_1_5`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ScteMarkersSource`  <a name="cfn-mediapackage-packagingconfiguration-dashmanifest-sctemarkerssource"></a>
The source of scte markers used.  
Value description:  
+ `SEGMENTS` - The scte markers are sourced from the segments of the ingested content.
+ `MANIFEST` - the scte markers are sourced from the manifest of the ingested content. The MANIFEST value is compatible with source HLS playlists using the SCTE-35 Enhanced syntax (`EXT-OATCLS-SCTE35` tags). SCTE-35 Elemental and SCTE-35 Daterange syntaxes are not supported with this option.
*Required*: No  
*Type*: String  
*Allowed values*: `SEGMENTS | MANIFEST`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`StreamSelection`  <a name="cfn-mediapackage-packagingconfiguration-dashmanifest-streamselection"></a>
Limitations for outputs from the endpoint, based on the video bitrate.  
*Required*: No  
*Type*: [StreamSelection](aws-properties-mediapackage-packagingconfiguration-streamselection.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::MediaPackage::PackagingConfiguration DashPackage
<a name="aws-properties-mediapackage-packagingconfiguration-dashpackage"></a>

Parameters for a packaging configuration that uses Dynamic Adaptive Streaming over HTTP (DASH) packaging.

## Syntax
<a name="aws-properties-mediapackage-packagingconfiguration-dashpackage-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-mediapackage-packagingconfiguration-dashpackage-syntax.json"></a>

```
{
  "[DashManifests](#cfn-mediapackage-packagingconfiguration-dashpackage-dashmanifests)" : [ DashManifest, ... ],
  "[Encryption](#cfn-mediapackage-packagingconfiguration-dashpackage-encryption)" : DashEncryption,
  "[IncludeEncoderConfigurationInSegments](#cfn-mediapackage-packagingconfiguration-dashpackage-includeencoderconfigurationinsegments)" : Boolean,
  "[IncludeIframeOnlyStream](#cfn-mediapackage-packagingconfiguration-dashpackage-includeiframeonlystream)" : Boolean,
  "[PeriodTriggers](#cfn-mediapackage-packagingconfiguration-dashpackage-periodtriggers)" : [ String, ... ],
  "[SegmentDurationSeconds](#cfn-mediapackage-packagingconfiguration-dashpackage-segmentdurationseconds)" : Integer,
  "[SegmentTemplateFormat](#cfn-mediapackage-packagingconfiguration-dashpackage-segmenttemplateformat)" : String
}
```

### YAML
<a name="aws-properties-mediapackage-packagingconfiguration-dashpackage-syntax.yaml"></a>

```
  [DashManifests](#cfn-mediapackage-packagingconfiguration-dashpackage-dashmanifests): 
    - DashManifest
  [Encryption](#cfn-mediapackage-packagingconfiguration-dashpackage-encryption): 
    DashEncryption
  [IncludeEncoderConfigurationInSegments](#cfn-mediapackage-packagingconfiguration-dashpackage-includeencoderconfigurationinsegments): Boolean
  [IncludeIframeOnlyStream](#cfn-mediapackage-packagingconfiguration-dashpackage-includeiframeonlystream): Boolean
  [PeriodTriggers](#cfn-mediapackage-packagingconfiguration-dashpackage-periodtriggers): 
    - String
  [SegmentDurationSeconds](#cfn-mediapackage-packagingconfiguration-dashpackage-segmentdurationseconds): Integer
  [SegmentTemplateFormat](#cfn-mediapackage-packagingconfiguration-dashpackage-segmenttemplateformat): String
```

## Properties
<a name="aws-properties-mediapackage-packagingconfiguration-dashpackage-properties"></a>

`DashManifests`  <a name="cfn-mediapackage-packagingconfiguration-dashpackage-dashmanifests"></a>
A list of DASH manifest configurations that are available from this endpoint.  
*Required*: Yes  
*Type*: Array of [DashManifest](aws-properties-mediapackage-packagingconfiguration-dashmanifest.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Encryption`  <a name="cfn-mediapackage-packagingconfiguration-dashpackage-encryption"></a>
Parameters for encrypting content.  
*Required*: No  
*Type*: [DashEncryption](aws-properties-mediapackage-packagingconfiguration-dashencryption.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`IncludeEncoderConfigurationInSegments`  <a name="cfn-mediapackage-packagingconfiguration-dashpackage-includeencoderconfigurationinsegments"></a>
When includeEncoderConfigurationInSegments is set to true, AWS Elemental MediaPackage places your encoder's Sequence Parameter Set (SPS), Picture Parameter Set (PPS), and Video Parameter Set (VPS) metadata in every video segment instead of in the init fragment. This lets you use different SPS/PPS/VPS settings for your assets during content playback.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`IncludeIframeOnlyStream`  <a name="cfn-mediapackage-packagingconfiguration-dashpackage-includeiframeonlystream"></a>
This applies only to stream sets with a single video track. When true, the stream set includes an additional I-frame trick-play only stream, along with the other tracks. If false, this extra stream is not included.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`PeriodTriggers`  <a name="cfn-mediapackage-packagingconfiguration-dashpackage-periodtriggers"></a>
Controls whether AWS Elemental MediaPackage produces single-period or multi-period DASH manifests. For more information about periods, see [Multi-period DASH in AWS Elemental MediaPackage](https://docs.aws.amazon.com/mediapackage/latest/ug/multi-period.html).  
Valid values:  
+ `ADS` - AWS Elemental MediaPackage will produce multi-period DASH manifests. Periods are created based on the SCTE-35 ad markers present in the input manifest.
+ *No value* - AWS Elemental MediaPackage will produce single-period DASH manifests. This is the default setting.
*Required*: No  
*Type*: Array of String  
*Allowed values*: `ADS`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SegmentDurationSeconds`  <a name="cfn-mediapackage-packagingconfiguration-dashpackage-segmentdurationseconds"></a>
Duration (in seconds) of each fragment. Actual fragments are rounded to the nearest multiple of the source segment duration.   
*Required*: No  
*Type*: Integer  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SegmentTemplateFormat`  <a name="cfn-mediapackage-packagingconfiguration-dashpackage-segmenttemplateformat"></a>
Determines the type of SegmentTemplate included in the Media Presentation Description (MPD). When set to `NUMBER_WITH_TIMELINE`, a full timeline is presented in each SegmentTemplate, with \$1Number\$1 media URLs. When set to `TIME_WITH_TIMELINE`, a full timeline is presented in each SegmentTemplate, with \$1Time\$1 media URLs. When set to `NUMBER_WITH_DURATION`, only a duration is included in each SegmentTemplate, with \$1Number\$1 media URLs.  
*Required*: No  
*Type*: String  
*Allowed values*: `NUMBER_WITH_TIMELINE | TIME_WITH_TIMELINE | NUMBER_WITH_DURATION`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::MediaPackage::PackagingConfiguration EncryptionContractConfiguration
<a name="aws-properties-mediapackage-packagingconfiguration-encryptioncontractconfiguration"></a>

Use `encryptionContractConfiguration` to configure one or more content encryption keys for your endpoints that use SPEKE Version 2.0. The encryption contract defines the content keys used to encrypt the audio and video tracks in your stream. To configure the encryption contract, specify which audio and video encryption presets to use. For more information about these presets, see [SPEKE Version 2.0 Presets](https://docs.aws.amazon.com/mediapackage/latest/ug/drm-content-speke-v2-presets.html).

Note the following considerations when using `encryptionContractConfiguration`:
+ You can use `encryptionContractConfiguration` for DASH endpoints that use SPEKE Version 2.0. SPEKE Version 2.0 relies on the CPIX Version 2.3 specification.
+ You cannot combine an `UNENCRYPTED` preset with `UNENCRYPTED` or `SHARED` presets across `presetSpeke20Audio` and `presetSpeke20Video`.
+ When you use a `SHARED` preset, you must use it for both `presetSpeke20Audio` and `presetSpeke20Video`.

## Syntax
<a name="aws-properties-mediapackage-packagingconfiguration-encryptioncontractconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-mediapackage-packagingconfiguration-encryptioncontractconfiguration-syntax.json"></a>

```
{
  "[PresetSpeke20Audio](#cfn-mediapackage-packagingconfiguration-encryptioncontractconfiguration-presetspeke20audio)" : String,
  "[PresetSpeke20Video](#cfn-mediapackage-packagingconfiguration-encryptioncontractconfiguration-presetspeke20video)" : String
}
```

### YAML
<a name="aws-properties-mediapackage-packagingconfiguration-encryptioncontractconfiguration-syntax.yaml"></a>

```
  [PresetSpeke20Audio](#cfn-mediapackage-packagingconfiguration-encryptioncontractconfiguration-presetspeke20audio): String
  [PresetSpeke20Video](#cfn-mediapackage-packagingconfiguration-encryptioncontractconfiguration-presetspeke20video): String
```

## Properties
<a name="aws-properties-mediapackage-packagingconfiguration-encryptioncontractconfiguration-properties"></a>

`PresetSpeke20Audio`  <a name="cfn-mediapackage-packagingconfiguration-encryptioncontractconfiguration-presetspeke20audio"></a>
A collection of audio encryption presets.  
Value description:  
+ `PRESET-AUDIO-1` - Use one content key to encrypt all of the audio tracks in your stream.
+ `PRESET-AUDIO-2` - Use one content key to encrypt all of the stereo audio tracks and one content key to encrypt all of the multichannel audio tracks.
+ `PRESET-AUDIO-3` - Use one content key to encrypt all of the stereo audio tracks, one content key to encrypt all of the multichannel audio tracks with 3 to 6 channels, and one content key to encrypt all of the multichannel audio tracks with more than 6 channels.
+ `SHARED` - Use the same content key for all of the audio and video tracks in your stream.
+ `UNENCRYPTED` - Don't encrypt any of the audio tracks in your stream.
*Required*: Yes  
*Type*: String  
*Allowed values*: `PRESET-AUDIO-1 | PRESET-AUDIO-2 | PRESET-AUDIO-3 | SHARED | UNENCRYPTED`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`PresetSpeke20Video`  <a name="cfn-mediapackage-packagingconfiguration-encryptioncontractconfiguration-presetspeke20video"></a>
A collection of video encryption presets.  
Value description:   
+ `PRESET-VIDEO-1` - Use one content key to encrypt all of the video tracks in your stream.
+ `PRESET-VIDEO-2` - Use one content key to encrypt all of the SD video tracks and one content key for all HD and higher resolutions video tracks.
+ `PRESET-VIDEO-3` - Use one content key to encrypt all of the SD video tracks, one content key for HD video tracks and one content key for all UHD video tracks.
+ `PRESET-VIDEO-4` - Use one content key to encrypt all of the SD video tracks, one content key for HD video tracks, one content key for all UHD1 video tracks and one content key for all UHD2 video tracks.
+ `PRESET-VIDEO-5` - Use one content key to encrypt all of the SD video tracks, one content key for HD1 video tracks, one content key for HD2 video tracks, one content key for all UHD1 video tracks and one content key for all UHD2 video tracks.
+ `PRESET-VIDEO-6` - Use one content key to encrypt all of the SD video tracks, one content key for HD1 video tracks, one content key for HD2 video tracks and one content key for all UHD video tracks.
+ `PRESET-VIDEO-7` - Use one content key to encrypt all of the SD\$1HD1 video tracks, one content key for HD2 video tracks and one content key for all UHD video tracks.
+ `PRESET-VIDEO-8` - Use one content key to encrypt all of the SD\$1HD1 video tracks, one content key for HD2 video tracks, one content key for all UHD1 video tracks and one content key for all UHD2 video tracks.
+ `SHARED` - Use the same content key for all of the video and audio tracks in your stream.
+ `UNENCRYPTED` - Don't encrypt any of the video tracks in your stream.
*Required*: Yes  
*Type*: String  
*Allowed values*: `PRESET-VIDEO-1 | PRESET-VIDEO-2 | PRESET-VIDEO-3 | PRESET-VIDEO-4 | PRESET-VIDEO-5 | PRESET-VIDEO-6 | PRESET-VIDEO-7 | PRESET-VIDEO-8 | SHARED | UNENCRYPTED`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::MediaPackage::PackagingConfiguration HlsEncryption
<a name="aws-properties-mediapackage-packagingconfiguration-hlsencryption"></a>

Holds encryption information so that access to the content can be controlled by a DRM solution.

## Syntax
<a name="aws-properties-mediapackage-packagingconfiguration-hlsencryption-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-mediapackage-packagingconfiguration-hlsencryption-syntax.json"></a>

```
{
  "[ConstantInitializationVector](#cfn-mediapackage-packagingconfiguration-hlsencryption-constantinitializationvector)" : String,
  "[EncryptionMethod](#cfn-mediapackage-packagingconfiguration-hlsencryption-encryptionmethod)" : String,
  "[SpekeKeyProvider](#cfn-mediapackage-packagingconfiguration-hlsencryption-spekekeyprovider)" : SpekeKeyProvider
}
```

### YAML
<a name="aws-properties-mediapackage-packagingconfiguration-hlsencryption-syntax.yaml"></a>

```
  [ConstantInitializationVector](#cfn-mediapackage-packagingconfiguration-hlsencryption-constantinitializationvector): String
  [EncryptionMethod](#cfn-mediapackage-packagingconfiguration-hlsencryption-encryptionmethod): String
  [SpekeKeyProvider](#cfn-mediapackage-packagingconfiguration-hlsencryption-spekekeyprovider): 
    SpekeKeyProvider
```

## Properties
<a name="aws-properties-mediapackage-packagingconfiguration-hlsencryption-properties"></a>

`ConstantInitializationVector`  <a name="cfn-mediapackage-packagingconfiguration-hlsencryption-constantinitializationvector"></a>
A 128-bit, 16-byte hex value represented by a 32-character string, used with the key for encrypting blocks. If you don't specify a constant initialization vector (IV), AWS Elemental MediaPackage periodically rotates the IV.  
*Required*: No  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`EncryptionMethod`  <a name="cfn-mediapackage-packagingconfiguration-hlsencryption-encryptionmethod"></a>
HLS encryption type.  
*Required*: No  
*Type*: String  
*Allowed values*: `AES_128 | SAMPLE_AES`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SpekeKeyProvider`  <a name="cfn-mediapackage-packagingconfiguration-hlsencryption-spekekeyprovider"></a>
Parameters for the SPEKE key provider.  
*Required*: Yes  
*Type*: [SpekeKeyProvider](aws-properties-mediapackage-packagingconfiguration-spekekeyprovider.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::MediaPackage::PackagingConfiguration HlsManifest
<a name="aws-properties-mediapackage-packagingconfiguration-hlsmanifest"></a>

Parameters for an HLS manifest.

## Syntax
<a name="aws-properties-mediapackage-packagingconfiguration-hlsmanifest-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-mediapackage-packagingconfiguration-hlsmanifest-syntax.json"></a>

```
{
  "[AdMarkers](#cfn-mediapackage-packagingconfiguration-hlsmanifest-admarkers)" : String,
  "[IncludeIframeOnlyStream](#cfn-mediapackage-packagingconfiguration-hlsmanifest-includeiframeonlystream)" : Boolean,
  "[ManifestName](#cfn-mediapackage-packagingconfiguration-hlsmanifest-manifestname)" : String,
  "[ProgramDateTimeIntervalSeconds](#cfn-mediapackage-packagingconfiguration-hlsmanifest-programdatetimeintervalseconds)" : Integer,
  "[RepeatExtXKey](#cfn-mediapackage-packagingconfiguration-hlsmanifest-repeatextxkey)" : Boolean,
  "[StreamSelection](#cfn-mediapackage-packagingconfiguration-hlsmanifest-streamselection)" : StreamSelection
}
```

### YAML
<a name="aws-properties-mediapackage-packagingconfiguration-hlsmanifest-syntax.yaml"></a>

```
  [AdMarkers](#cfn-mediapackage-packagingconfiguration-hlsmanifest-admarkers): String
  [IncludeIframeOnlyStream](#cfn-mediapackage-packagingconfiguration-hlsmanifest-includeiframeonlystream): Boolean
  [ManifestName](#cfn-mediapackage-packagingconfiguration-hlsmanifest-manifestname): String
  [ProgramDateTimeIntervalSeconds](#cfn-mediapackage-packagingconfiguration-hlsmanifest-programdatetimeintervalseconds): Integer
  [RepeatExtXKey](#cfn-mediapackage-packagingconfiguration-hlsmanifest-repeatextxkey): Boolean
  [StreamSelection](#cfn-mediapackage-packagingconfiguration-hlsmanifest-streamselection): 
    StreamSelection
```

## Properties
<a name="aws-properties-mediapackage-packagingconfiguration-hlsmanifest-properties"></a>

`AdMarkers`  <a name="cfn-mediapackage-packagingconfiguration-hlsmanifest-admarkers"></a>
This setting controls ad markers in the packaged content.  
Valid values:  
+ `NONE` - Omits all SCTE-35 ad markers from the output.
+ `PASSTHROUGH` - Creates a copy in the output of the SCTE-35 ad markers (comments) taken directly from the input manifest.
+ `SCTE35_ENHANCED` - Generates ad markers and blackout tags in the output based on the SCTE-35 messages from the input manifest.
*Required*: No  
*Type*: String  
*Allowed values*: `NONE | SCTE35_ENHANCED | PASSTHROUGH`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`IncludeIframeOnlyStream`  <a name="cfn-mediapackage-packagingconfiguration-hlsmanifest-includeiframeonlystream"></a>
Applies to stream sets with a single video track only. When enabled, the output includes an additional I-frame only stream, along with the other tracks.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ManifestName`  <a name="cfn-mediapackage-packagingconfiguration-hlsmanifest-manifestname"></a>
A short string that's appended to the end of the endpoint URL to create a unique path to this packaging configuration.  
*Required*: No  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ProgramDateTimeIntervalSeconds`  <a name="cfn-mediapackage-packagingconfiguration-hlsmanifest-programdatetimeintervalseconds"></a>
Inserts `EXT-X-PROGRAM-DATE-TIME` tags in the output manifest at the interval that you specify.  
Irrespective of this parameter, if any ID3Timed metadata is in the HLS input, it is passed through to the HLS output.  
Omit this attribute or enter `0` to indicate that the `EXT-X-PROGRAM-DATE-TIME` tags are not included in the manifest.  
*Required*: No  
*Type*: Integer  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RepeatExtXKey`  <a name="cfn-mediapackage-packagingconfiguration-hlsmanifest-repeatextxkey"></a>
Repeat the `EXT-X-KEY` directive for every media segment. This might result in an increase in client requests to the DRM server.   
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`StreamSelection`  <a name="cfn-mediapackage-packagingconfiguration-hlsmanifest-streamselection"></a>
Video bitrate limitations for outputs from this packaging configuration.  
*Required*: No  
*Type*: [StreamSelection](aws-properties-mediapackage-packagingconfiguration-streamselection.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::MediaPackage::PackagingConfiguration HlsPackage
<a name="aws-properties-mediapackage-packagingconfiguration-hlspackage"></a>

Parameters for a packaging configuration that uses HTTP Live Streaming (HLS) packaging.

## Syntax
<a name="aws-properties-mediapackage-packagingconfiguration-hlspackage-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-mediapackage-packagingconfiguration-hlspackage-syntax.json"></a>

```
{
  "[Encryption](#cfn-mediapackage-packagingconfiguration-hlspackage-encryption)" : HlsEncryption,
  "[HlsManifests](#cfn-mediapackage-packagingconfiguration-hlspackage-hlsmanifests)" : [ HlsManifest, ... ],
  "[IncludeDvbSubtitles](#cfn-mediapackage-packagingconfiguration-hlspackage-includedvbsubtitles)" : Boolean,
  "[SegmentDurationSeconds](#cfn-mediapackage-packagingconfiguration-hlspackage-segmentdurationseconds)" : Integer,
  "[UseAudioRenditionGroup](#cfn-mediapackage-packagingconfiguration-hlspackage-useaudiorenditiongroup)" : Boolean
}
```

### YAML
<a name="aws-properties-mediapackage-packagingconfiguration-hlspackage-syntax.yaml"></a>

```
  [Encryption](#cfn-mediapackage-packagingconfiguration-hlspackage-encryption): 
    HlsEncryption
  [HlsManifests](#cfn-mediapackage-packagingconfiguration-hlspackage-hlsmanifests): 
    - HlsManifest
  [IncludeDvbSubtitles](#cfn-mediapackage-packagingconfiguration-hlspackage-includedvbsubtitles): Boolean
  [SegmentDurationSeconds](#cfn-mediapackage-packagingconfiguration-hlspackage-segmentdurationseconds): Integer
  [UseAudioRenditionGroup](#cfn-mediapackage-packagingconfiguration-hlspackage-useaudiorenditiongroup): Boolean
```

## Properties
<a name="aws-properties-mediapackage-packagingconfiguration-hlspackage-properties"></a>

`Encryption`  <a name="cfn-mediapackage-packagingconfiguration-hlspackage-encryption"></a>
Parameters for encrypting content.  
*Required*: No  
*Type*: [HlsEncryption](aws-properties-mediapackage-packagingconfiguration-hlsencryption.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`HlsManifests`  <a name="cfn-mediapackage-packagingconfiguration-hlspackage-hlsmanifests"></a>
A list of HLS manifest configurations that are available from this endpoint.  
*Required*: Yes  
*Type*: Array of [HlsManifest](aws-properties-mediapackage-packagingconfiguration-hlsmanifest.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`IncludeDvbSubtitles`  <a name="cfn-mediapackage-packagingconfiguration-hlspackage-includedvbsubtitles"></a>
When enabled, MediaPackage passes through digital video broadcasting (DVB) subtitles into the output.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SegmentDurationSeconds`  <a name="cfn-mediapackage-packagingconfiguration-hlspackage-segmentdurationseconds"></a>
Duration (in seconds) of each fragment. Actual fragments are rounded to the nearest multiple of the source fragment duration.   
*Required*: No  
*Type*: Integer  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`UseAudioRenditionGroup`  <a name="cfn-mediapackage-packagingconfiguration-hlspackage-useaudiorenditiongroup"></a>
When true, AWS Elemental MediaPackage bundles all audio tracks in a rendition group. All other tracks in the stream can be used with any audio rendition from the group.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::MediaPackage::PackagingConfiguration MssEncryption
<a name="aws-properties-mediapackage-packagingconfiguration-mssencryption"></a>

Holds encryption information so that access to the content can be controlled by a DRM solution.

## Syntax
<a name="aws-properties-mediapackage-packagingconfiguration-mssencryption-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-mediapackage-packagingconfiguration-mssencryption-syntax.json"></a>

```
{
  "[SpekeKeyProvider](#cfn-mediapackage-packagingconfiguration-mssencryption-spekekeyprovider)" : SpekeKeyProvider
}
```

### YAML
<a name="aws-properties-mediapackage-packagingconfiguration-mssencryption-syntax.yaml"></a>

```
  [SpekeKeyProvider](#cfn-mediapackage-packagingconfiguration-mssencryption-spekekeyprovider): 
    SpekeKeyProvider
```

## Properties
<a name="aws-properties-mediapackage-packagingconfiguration-mssencryption-properties"></a>

`SpekeKeyProvider`  <a name="cfn-mediapackage-packagingconfiguration-mssencryption-spekekeyprovider"></a>
Parameters for the SPEKE key provider.  
*Required*: Yes  
*Type*: [SpekeKeyProvider](aws-properties-mediapackage-packagingconfiguration-spekekeyprovider.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::MediaPackage::PackagingConfiguration MssManifest
<a name="aws-properties-mediapackage-packagingconfiguration-mssmanifest"></a>

Parameters for a Microsoft Smooth manifest.

## Syntax
<a name="aws-properties-mediapackage-packagingconfiguration-mssmanifest-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-mediapackage-packagingconfiguration-mssmanifest-syntax.json"></a>

```
{
  "[ManifestName](#cfn-mediapackage-packagingconfiguration-mssmanifest-manifestname)" : String,
  "[StreamSelection](#cfn-mediapackage-packagingconfiguration-mssmanifest-streamselection)" : StreamSelection
}
```

### YAML
<a name="aws-properties-mediapackage-packagingconfiguration-mssmanifest-syntax.yaml"></a>

```
  [ManifestName](#cfn-mediapackage-packagingconfiguration-mssmanifest-manifestname): String
  [StreamSelection](#cfn-mediapackage-packagingconfiguration-mssmanifest-streamselection): 
    StreamSelection
```

## Properties
<a name="aws-properties-mediapackage-packagingconfiguration-mssmanifest-properties"></a>

`ManifestName`  <a name="cfn-mediapackage-packagingconfiguration-mssmanifest-manifestname"></a>
A short string that's appended to the end of the endpoint URL to create a unique path to this packaging configuration.  
*Required*: No  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`StreamSelection`  <a name="cfn-mediapackage-packagingconfiguration-mssmanifest-streamselection"></a>
Video bitrate limitations for outputs from this packaging configuration.  
*Required*: No  
*Type*: [StreamSelection](aws-properties-mediapackage-packagingconfiguration-streamselection.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::MediaPackage::PackagingConfiguration MssPackage
<a name="aws-properties-mediapackage-packagingconfiguration-msspackage"></a>

Parameters for a packaging configuration that uses Microsoft Smooth Streaming (MSS) packaging.

## Syntax
<a name="aws-properties-mediapackage-packagingconfiguration-msspackage-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-mediapackage-packagingconfiguration-msspackage-syntax.json"></a>

```
{
  "[Encryption](#cfn-mediapackage-packagingconfiguration-msspackage-encryption)" : MssEncryption,
  "[MssManifests](#cfn-mediapackage-packagingconfiguration-msspackage-mssmanifests)" : [ MssManifest, ... ],
  "[SegmentDurationSeconds](#cfn-mediapackage-packagingconfiguration-msspackage-segmentdurationseconds)" : Integer
}
```

### YAML
<a name="aws-properties-mediapackage-packagingconfiguration-msspackage-syntax.yaml"></a>

```
  [Encryption](#cfn-mediapackage-packagingconfiguration-msspackage-encryption): 
    MssEncryption
  [MssManifests](#cfn-mediapackage-packagingconfiguration-msspackage-mssmanifests): 
    - MssManifest
  [SegmentDurationSeconds](#cfn-mediapackage-packagingconfiguration-msspackage-segmentdurationseconds): Integer
```

## Properties
<a name="aws-properties-mediapackage-packagingconfiguration-msspackage-properties"></a>

`Encryption`  <a name="cfn-mediapackage-packagingconfiguration-msspackage-encryption"></a>
Parameters for encrypting content.  
*Required*: No  
*Type*: [MssEncryption](aws-properties-mediapackage-packagingconfiguration-mssencryption.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`MssManifests`  <a name="cfn-mediapackage-packagingconfiguration-msspackage-mssmanifests"></a>
A list of Microsoft Smooth manifest configurations that are available from this endpoint.  
*Required*: Yes  
*Type*: Array of [MssManifest](aws-properties-mediapackage-packagingconfiguration-mssmanifest.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SegmentDurationSeconds`  <a name="cfn-mediapackage-packagingconfiguration-msspackage-segmentdurationseconds"></a>
Duration (in seconds) of each fragment. Actual fragments are rounded to the nearest multiple of the source fragment duration.  
*Required*: No  
*Type*: Integer  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::MediaPackage::PackagingConfiguration SpekeKeyProvider
<a name="aws-properties-mediapackage-packagingconfiguration-spekekeyprovider"></a>

A configuration for accessing an external Secure Packager and Encoder Key Exchange (SPEKE) service that provides encryption keys.

## Syntax
<a name="aws-properties-mediapackage-packagingconfiguration-spekekeyprovider-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-mediapackage-packagingconfiguration-spekekeyprovider-syntax.json"></a>

```
{
  "[EncryptionContractConfiguration](#cfn-mediapackage-packagingconfiguration-spekekeyprovider-encryptioncontractconfiguration)" : EncryptionContractConfiguration,
  "[RoleArn](#cfn-mediapackage-packagingconfiguration-spekekeyprovider-rolearn)" : String,
  "[SystemIds](#cfn-mediapackage-packagingconfiguration-spekekeyprovider-systemids)" : [ String, ... ],
  "[Url](#cfn-mediapackage-packagingconfiguration-spekekeyprovider-url)" : String
}
```

### YAML
<a name="aws-properties-mediapackage-packagingconfiguration-spekekeyprovider-syntax.yaml"></a>

```
  [EncryptionContractConfiguration](#cfn-mediapackage-packagingconfiguration-spekekeyprovider-encryptioncontractconfiguration): 
    EncryptionContractConfiguration
  [RoleArn](#cfn-mediapackage-packagingconfiguration-spekekeyprovider-rolearn): String
  [SystemIds](#cfn-mediapackage-packagingconfiguration-spekekeyprovider-systemids): 
    - String
  [Url](#cfn-mediapackage-packagingconfiguration-spekekeyprovider-url): String
```

## Properties
<a name="aws-properties-mediapackage-packagingconfiguration-spekekeyprovider-properties"></a>

`EncryptionContractConfiguration`  <a name="cfn-mediapackage-packagingconfiguration-spekekeyprovider-encryptioncontractconfiguration"></a>
Use `encryptionContractConfiguration` to configure one or more content encryption keys for your endpoints that use SPEKE Version 2.0. The encryption contract defines which content keys are used to encrypt the audio and video tracks in your stream. To configure the encryption contract, specify which audio and video encryption presets to use.  
*Required*: No  
*Type*: [EncryptionContractConfiguration](aws-properties-mediapackage-packagingconfiguration-encryptioncontractconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RoleArn`  <a name="cfn-mediapackage-packagingconfiguration-spekekeyprovider-rolearn"></a>
The ARN for the IAM role that's granted by the key provider to provide access to the key provider API. Valid format: arn:aws:iam::\$1accountID\$1:role/\$1name\$1   
*Required*: Yes  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SystemIds`  <a name="cfn-mediapackage-packagingconfiguration-spekekeyprovider-systemids"></a>
List of unique identifiers for the DRM systems to use, as defined in the CPIX specification.  
*Required*: Yes  
*Type*: Array of String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Url`  <a name="cfn-mediapackage-packagingconfiguration-spekekeyprovider-url"></a>
URL for the key provider's key retrieval API endpoint. Must start with https://.  
*Required*: Yes  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::MediaPackage::PackagingConfiguration StreamSelection
<a name="aws-properties-mediapackage-packagingconfiguration-streamselection"></a>

Limitations for outputs from the endpoint, based on the video bitrate.

## Syntax
<a name="aws-properties-mediapackage-packagingconfiguration-streamselection-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-mediapackage-packagingconfiguration-streamselection-syntax.json"></a>

```
{
  "[MaxVideoBitsPerSecond](#cfn-mediapackage-packagingconfiguration-streamselection-maxvideobitspersecond)" : Integer,
  "[MinVideoBitsPerSecond](#cfn-mediapackage-packagingconfiguration-streamselection-minvideobitspersecond)" : Integer,
  "[StreamOrder](#cfn-mediapackage-packagingconfiguration-streamselection-streamorder)" : String
}
```

### YAML
<a name="aws-properties-mediapackage-packagingconfiguration-streamselection-syntax.yaml"></a>

```
  [MaxVideoBitsPerSecond](#cfn-mediapackage-packagingconfiguration-streamselection-maxvideobitspersecond): Integer
  [MinVideoBitsPerSecond](#cfn-mediapackage-packagingconfiguration-streamselection-minvideobitspersecond): Integer
  [StreamOrder](#cfn-mediapackage-packagingconfiguration-streamselection-streamorder): String
```

## Properties
<a name="aws-properties-mediapackage-packagingconfiguration-streamselection-properties"></a>

`MaxVideoBitsPerSecond`  <a name="cfn-mediapackage-packagingconfiguration-streamselection-maxvideobitspersecond"></a>
The upper limit of the bitrates that this endpoint serves. If the video track exceeds this threshold, then AWS Elemental MediaPackage excludes it from output. If you don't specify a value, it defaults to 2147483647 bits per second.  
*Required*: No  
*Type*: Integer  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`MinVideoBitsPerSecond`  <a name="cfn-mediapackage-packagingconfiguration-streamselection-minvideobitspersecond"></a>
The lower limit of the bitrates that this endpoint serves. If the video track is below this threshold, then AWS Elemental MediaPackage excludes it from output. If you don't specify a value, it defaults to 0 bits per second.  
*Required*: No  
*Type*: Integer  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`StreamOrder`  <a name="cfn-mediapackage-packagingconfiguration-streamselection-streamorder"></a>
Order in which the different video bitrates are presented to the player.  
Valid values: `ORIGINAL`, `VIDEO_BITRATE_ASCENDING`, `VIDEO_BITRATE_DESCENDING`.  
*Required*: No  
*Type*: String  
*Allowed values*: `ORIGINAL | VIDEO_BITRATE_ASCENDING | VIDEO_BITRATE_DESCENDING`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::MediaPackage::PackagingConfiguration Tag
<a name="aws-properties-mediapackage-packagingconfiguration-tag"></a>

<a name="aws-properties-mediapackage-packagingconfiguration-tag-description"></a>The `Tag` property type specifies Property description not available. for an [AWS::MediaPackage::PackagingConfiguration](aws-resource-mediapackage-packagingconfiguration.md).

## Syntax
<a name="aws-properties-mediapackage-packagingconfiguration-tag-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-mediapackage-packagingconfiguration-tag-syntax.json"></a>

```
{
  "[Key](#cfn-mediapackage-packagingconfiguration-tag-key)" : String,
  "[Value](#cfn-mediapackage-packagingconfiguration-tag-value)" : String
}
```

### YAML
<a name="aws-properties-mediapackage-packagingconfiguration-tag-syntax.yaml"></a>

```
  [Key](#cfn-mediapackage-packagingconfiguration-tag-key): String
  [Value](#cfn-mediapackage-packagingconfiguration-tag-value): String
```

## Properties
<a name="aws-properties-mediapackage-packagingconfiguration-tag-properties"></a>

`Key`  <a name="cfn-mediapackage-packagingconfiguration-tag-key"></a>
Property description not available.  
*Required*: Yes  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Value`  <a name="cfn-mediapackage-packagingconfiguration-tag-value"></a>
Property description not available.  
*Required*: Yes  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)