

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 Elemental MediaPackage
<a name="AWS_MediaPackage"></a>

**Resource types**
+ [AWS::MediaPackage::Asset](aws-resource-mediapackage-asset.md)
+ [AWS::MediaPackage::Channel](aws-resource-mediapackage-channel.md)
+ [AWS::MediaPackage::OriginEndpoint](aws-resource-mediapackage-originendpoint.md)
+ [AWS::MediaPackage::PackagingConfiguration](aws-resource-mediapackage-packagingconfiguration.md)
+ [AWS::MediaPackage::PackagingGroup](aws-resource-mediapackage-packaginggroup.md)

# AWS::MediaPackage::Asset
<a name="aws-resource-mediapackage-asset"></a>

Creates an asset to ingest VOD content.

After it's created, the asset starts ingesting content and generates playback URLs for the packaging configurations associated with it. When ingest is complete, downstream devices use the appropriate URL to request VOD content from AWS Elemental MediaPackage.

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

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

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

```
{
  "Type" : "AWS::MediaPackage::Asset",
  "Properties" : {
      "[EgressEndpoints](#cfn-mediapackage-asset-egressendpoints)" : [ EgressEndpoint, ... ],
      "[Id](#cfn-mediapackage-asset-id)" : String,
      "[PackagingGroupId](#cfn-mediapackage-asset-packaginggroupid)" : String,
      "[ResourceId](#cfn-mediapackage-asset-resourceid)" : String,
      "[SourceArn](#cfn-mediapackage-asset-sourcearn)" : String,
      "[SourceRoleArn](#cfn-mediapackage-asset-sourcerolearn)" : String,
      "[Tags](#cfn-mediapackage-asset-tags)" : [ Tag, ... ]
    }
}
```

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

```
Type: AWS::MediaPackage::Asset
Properties:
  [EgressEndpoints](#cfn-mediapackage-asset-egressendpoints): 
    - EgressEndpoint
  [Id](#cfn-mediapackage-asset-id): String
  [PackagingGroupId](#cfn-mediapackage-asset-packaginggroupid): String
  [ResourceId](#cfn-mediapackage-asset-resourceid): String
  [SourceArn](#cfn-mediapackage-asset-sourcearn): String
  [SourceRoleArn](#cfn-mediapackage-asset-sourcerolearn): String
  [Tags](#cfn-mediapackage-asset-tags): 
    - Tag
```

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

`EgressEndpoints`  <a name="cfn-mediapackage-asset-egressendpoints"></a>
List of playback endpoints that are available for this asset.  
*Required*: No  
*Type*: Array of [EgressEndpoint](aws-properties-mediapackage-asset-egressendpoint.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-asset-id"></a>
Unique identifier that you assign to the asset.  
*Required*: Yes  
*Type*: String  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`PackagingGroupId`  <a name="cfn-mediapackage-asset-packaginggroupid"></a>
The ID of the packaging group associated with this asset.  
*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)

`ResourceId`  <a name="cfn-mediapackage-asset-resourceid"></a>
Unique identifier for this asset, as it's configured in the key provider service.  
*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)

`SourceArn`  <a name="cfn-mediapackage-asset-sourcearn"></a>
The ARN for the source content in Amazon S3.  
*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)

`SourceRoleArn`  <a name="cfn-mediapackage-asset-sourcerolearn"></a>
The ARN for the IAM role that provides AWS Elemental MediaPackage access to the Amazon S3 bucket where the source content is stored. 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)

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

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

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

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

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

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-asset-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-asset-return-values-fn--getatt-fn--getatt"></a>

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

`CreatedAt`  <a name="CreatedAt-fn::getatt"></a>
The date and time that the asset was initially submitted for ingest.

# AWS::MediaPackage::Asset EgressEndpoint
<a name="aws-properties-mediapackage-asset-egressendpoint"></a>

The playback endpoint for a packaging configuration on an asset.

## Syntax
<a name="aws-properties-mediapackage-asset-egressendpoint-syntax"></a>

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

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

```
{
  "[PackagingConfigurationId](#cfn-mediapackage-asset-egressendpoint-packagingconfigurationid)" : String,
  "[Url](#cfn-mediapackage-asset-egressendpoint-url)" : String
}
```

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

```
  [PackagingConfigurationId](#cfn-mediapackage-asset-egressendpoint-packagingconfigurationid): String
  [Url](#cfn-mediapackage-asset-egressendpoint-url): String
```

## Properties
<a name="aws-properties-mediapackage-asset-egressendpoint-properties"></a>

`PackagingConfigurationId`  <a name="cfn-mediapackage-asset-egressendpoint-packagingconfigurationid"></a>
The ID of a packaging configuration that's applied to this asset.  
*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)

`Url`  <a name="cfn-mediapackage-asset-egressendpoint-url"></a>
The URL that's used to request content from this endpoint.  
*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::Asset Tag
<a name="aws-properties-mediapackage-asset-tag"></a>

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

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

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

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

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

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

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

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

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

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

# AWS::MediaPackage::Channel
<a name="aws-resource-mediapackage-channel"></a>

Creates a channel to receive content.

After it's created, a channel provides static input URLs. These URLs remain the same throughout the lifetime of the channel, regardless of any failures or upgrades that might occur. Use these URLs to configure the outputs of your upstream encoder.

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

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

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

```
{
  "Type" : "AWS::MediaPackage::Channel",
  "Properties" : {
      "[Description](#cfn-mediapackage-channel-description)" : String,
      "[EgressAccessLogs](#cfn-mediapackage-channel-egressaccesslogs)" : LogConfiguration,
      "[HlsIngest](#cfn-mediapackage-channel-hlsingest)" : HlsIngest,
      "[Id](#cfn-mediapackage-channel-id)" : String,
      "[IngressAccessLogs](#cfn-mediapackage-channel-ingressaccesslogs)" : LogConfiguration,
      "[Tags](#cfn-mediapackage-channel-tags)" : [ Tag, ... ]
    }
}
```

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

```
Type: AWS::MediaPackage::Channel
Properties:
  [Description](#cfn-mediapackage-channel-description): String
  [EgressAccessLogs](#cfn-mediapackage-channel-egressaccesslogs): 
    LogConfiguration
  [HlsIngest](#cfn-mediapackage-channel-hlsingest): 
    HlsIngest
  [Id](#cfn-mediapackage-channel-id): String
  [IngressAccessLogs](#cfn-mediapackage-channel-ingressaccesslogs): 
    LogConfiguration
  [Tags](#cfn-mediapackage-channel-tags): 
    - Tag
```

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

`Description`  <a name="cfn-mediapackage-channel-description"></a>
Any descriptive information that you want to add to the channel for future identification purposes.  
*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)

`EgressAccessLogs`  <a name="cfn-mediapackage-channel-egressaccesslogs"></a>
Configures egress access logs.  
*Required*: No  
*Type*: [LogConfiguration](aws-properties-mediapackage-channel-logconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`HlsIngest`  <a name="cfn-mediapackage-channel-hlsingest"></a>
The input URL where the source stream should be sent.  
*Required*: No  
*Type*: [HlsIngest](aws-properties-mediapackage-channel-hlsingest.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-channel-id"></a>
Unique identifier that you assign to the channel.   
*Required*: Yes  
*Type*: String  
*Pattern*: `\A[0-9a-zA-Z-_]+\Z`  
*Minimum*: `1`  
*Maximum*: `256`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`IngressAccessLogs`  <a name="cfn-mediapackage-channel-ingressaccesslogs"></a>
Configures ingress access logs.  
*Required*: No  
*Type*: [LogConfiguration](aws-properties-mediapackage-channel-logconfiguration.md)  
*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-channel-tags"></a>
The tags to assign to the channel.  
*Required*: No  
*Type*: Array of [Tag](aws-properties-mediapackage-channel-tag.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

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

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

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

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

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-channel-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-channel-return-values-fn--getatt-fn--getatt"></a>

`Arn`  <a name="Arn-fn::getatt"></a>
The channel's unique system-generated resource name, based on the AWS record.

# AWS::MediaPackage::Channel HlsIngest
<a name="aws-properties-mediapackage-channel-hlsingest"></a>

HLS ingest configuration.

## Syntax
<a name="aws-properties-mediapackage-channel-hlsingest-syntax"></a>

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

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

```
{
  "[ingestEndpoints](#cfn-mediapackage-channel-hlsingest-ingestendpoints)" : [ IngestEndpoint, ... ]
}
```

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

```
  [ingestEndpoints](#cfn-mediapackage-channel-hlsingest-ingestendpoints): 
    - IngestEndpoint
```

## Properties
<a name="aws-properties-mediapackage-channel-hlsingest-properties"></a>

`ingestEndpoints`  <a name="cfn-mediapackage-channel-hlsingest-ingestendpoints"></a>
The input URL where the source stream should be sent.  
*Required*: No  
*Type*: Array of [IngestEndpoint](aws-properties-mediapackage-channel-ingestendpoint.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::Channel IngestEndpoint
<a name="aws-properties-mediapackage-channel-ingestendpoint"></a>

An endpoint for ingesting source content for a channel.

## Syntax
<a name="aws-properties-mediapackage-channel-ingestendpoint-syntax"></a>

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

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

```
{
  "[Id](#cfn-mediapackage-channel-ingestendpoint-id)" : String,
  "[Password](#cfn-mediapackage-channel-ingestendpoint-password)" : String,
  "[Url](#cfn-mediapackage-channel-ingestendpoint-url)" : String,
  "[Username](#cfn-mediapackage-channel-ingestendpoint-username)" : String
}
```

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

```
  [Id](#cfn-mediapackage-channel-ingestendpoint-id): String
  [Password](#cfn-mediapackage-channel-ingestendpoint-password): String
  [Url](#cfn-mediapackage-channel-ingestendpoint-url): String
  [Username](#cfn-mediapackage-channel-ingestendpoint-username): String
```

## Properties
<a name="aws-properties-mediapackage-channel-ingestendpoint-properties"></a>

`Id`  <a name="cfn-mediapackage-channel-ingestendpoint-id"></a>
The endpoint identifier.  
*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)

`Password`  <a name="cfn-mediapackage-channel-ingestendpoint-password"></a>
The system-generated password for WebDAV input authentication.  
*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)

`Url`  <a name="cfn-mediapackage-channel-ingestendpoint-url"></a>
The input URL where the source stream should be sent.  
*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)

`Username`  <a name="cfn-mediapackage-channel-ingestendpoint-username"></a>
The system-generated username for WebDAV input authentication.  
*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)

# AWS::MediaPackage::Channel LogConfiguration
<a name="aws-properties-mediapackage-channel-logconfiguration"></a>

The access log configuration parameters for your channel.

## Syntax
<a name="aws-properties-mediapackage-channel-logconfiguration-syntax"></a>

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

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

```
{
  "[LogGroupName](#cfn-mediapackage-channel-logconfiguration-loggroupname)" : String
}
```

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

```
  [LogGroupName](#cfn-mediapackage-channel-logconfiguration-loggroupname): String
```

## Properties
<a name="aws-properties-mediapackage-channel-logconfiguration-properties"></a>

`LogGroupName`  <a name="cfn-mediapackage-channel-logconfiguration-loggroupname"></a>
Sets a custom Amazon CloudWatch log group name.  
*Required*: No  
*Type*: String  
*Pattern*: `\A^(\/aws\/MediaPackage\/)[a-zA-Z0-9_-]+\Z`  
*Minimum*: `1`  
*Maximum*: `256`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

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

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

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

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

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

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

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

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

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

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

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

# AWS::MediaPackage::OriginEndpoint
<a name="aws-resource-mediapackage-originendpoint"></a>

Create an endpoint on an AWS Elemental MediaPackage channel.

An endpoint represents a single delivery point of a channel, and defines content output handling through various components, such as packaging protocols, DRM and encryption integration, and more.

After it's created, an endpoint provides a fixed public URL. This URL remains the same throughout the lifetime of the endpoint, regardless of any failures or upgrades that might occur. Integrate the URL with a downstream CDN (such as Amazon CloudFront) or playback device.

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

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

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

```
{
  "Type" : "AWS::MediaPackage::OriginEndpoint",
  "Properties" : {
      "[Authorization](#cfn-mediapackage-originendpoint-authorization)" : Authorization,
      "[ChannelId](#cfn-mediapackage-originendpoint-channelid)" : String,
      "[CmafPackage](#cfn-mediapackage-originendpoint-cmafpackage)" : CmafPackage,
      "[DashPackage](#cfn-mediapackage-originendpoint-dashpackage)" : DashPackage,
      "[Description](#cfn-mediapackage-originendpoint-description)" : String,
      "[HlsPackage](#cfn-mediapackage-originendpoint-hlspackage)" : HlsPackage,
      "[Id](#cfn-mediapackage-originendpoint-id)" : String,
      "[ManifestName](#cfn-mediapackage-originendpoint-manifestname)" : String,
      "[MssPackage](#cfn-mediapackage-originendpoint-msspackage)" : MssPackage,
      "[Origination](#cfn-mediapackage-originendpoint-origination)" : String,
      "[StartoverWindowSeconds](#cfn-mediapackage-originendpoint-startoverwindowseconds)" : Integer,
      "[Tags](#cfn-mediapackage-originendpoint-tags)" : [ Tag, ... ],
      "[TimeDelaySeconds](#cfn-mediapackage-originendpoint-timedelayseconds)" : Integer,
      "[Whitelist](#cfn-mediapackage-originendpoint-whitelist)" : [ String, ... ]
    }
}
```

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

```
Type: AWS::MediaPackage::OriginEndpoint
Properties:
  [Authorization](#cfn-mediapackage-originendpoint-authorization): 
    Authorization
  [ChannelId](#cfn-mediapackage-originendpoint-channelid): String
  [CmafPackage](#cfn-mediapackage-originendpoint-cmafpackage): 
    CmafPackage
  [DashPackage](#cfn-mediapackage-originendpoint-dashpackage): 
    DashPackage
  [Description](#cfn-mediapackage-originendpoint-description): String
  [HlsPackage](#cfn-mediapackage-originendpoint-hlspackage): 
    HlsPackage
  [Id](#cfn-mediapackage-originendpoint-id): String
  [ManifestName](#cfn-mediapackage-originendpoint-manifestname): String
  [MssPackage](#cfn-mediapackage-originendpoint-msspackage): 
    MssPackage
  [Origination](#cfn-mediapackage-originendpoint-origination): String
  [StartoverWindowSeconds](#cfn-mediapackage-originendpoint-startoverwindowseconds): Integer
  [Tags](#cfn-mediapackage-originendpoint-tags): 
    - Tag
  [TimeDelaySeconds](#cfn-mediapackage-originendpoint-timedelayseconds): Integer
  [Whitelist](#cfn-mediapackage-originendpoint-whitelist): 
    - String
```

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

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

`ChannelId`  <a name="cfn-mediapackage-originendpoint-channelid"></a>
The ID of the channel associated with this endpoint.  
*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)

`CmafPackage`  <a name="cfn-mediapackage-originendpoint-cmafpackage"></a>
Parameters for Common Media Application Format (CMAF) packaging.  
*Required*: No  
*Type*: [CmafPackage](aws-properties-mediapackage-originendpoint-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-originendpoint-dashpackage"></a>
Parameters for DASH packaging.  
*Required*: No  
*Type*: [DashPackage](aws-properties-mediapackage-originendpoint-dashpackage.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Description`  <a name="cfn-mediapackage-originendpoint-description"></a>
Any descriptive information that you want to add to the endpoint for future identification purposes.  
*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)

`HlsPackage`  <a name="cfn-mediapackage-originendpoint-hlspackage"></a>
Parameters for Apple HLS packaging.  
*Required*: No  
*Type*: [HlsPackage](aws-properties-mediapackage-originendpoint-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-originendpoint-id"></a>
The manifest ID is required and must be unique within the OriginEndpoint. The ID can't be changed after the endpoint is created.  
*Required*: Yes  
*Type*: String  
*Pattern*: `\A[0-9a-zA-Z-_]+\Z`  
*Minimum*: `1`  
*Maximum*: `256`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`ManifestName`  <a name="cfn-mediapackage-originendpoint-manifestname"></a>
A short string that's appended to the end of the endpoint URL to create a unique path to this endpoint.  
*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)

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

`Origination`  <a name="cfn-mediapackage-originendpoint-origination"></a>
Controls video origination from this endpoint.  
Valid values:  
+ `ALLOW` - enables this endpoint to serve content to requesting devices.
+ `DENY` - prevents this endpoint from serving content. Denying origination is helpful for harvesting live-to-VOD assets. For more information about harvesting and origination, see [Live-to-VOD Requirements](https://docs.aws.amazon.com/mediapackage/latest/ug/ltov-reqmts.html).
*Required*: No  
*Type*: String  
*Allowed values*: `ALLOW | DENY`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`StartoverWindowSeconds`  <a name="cfn-mediapackage-originendpoint-startoverwindowseconds"></a>
Maximum duration (seconds) of content to retain for startover playback. Omit this attribute or enter `0` to indicate that startover playback is disabled for this endpoint.  
*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)

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

`TimeDelaySeconds`  <a name="cfn-mediapackage-originendpoint-timedelayseconds"></a>
Minimum duration (seconds) of delay to enforce on the playback of live content. Omit this attribute or enter `0` to indicate that there is no time delay in effect for this endpoint.  
*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)

`Whitelist`  <a name="cfn-mediapackage-originendpoint-whitelist"></a>
The IP addresses that can access this endpoint.  
*Required*: No  
*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)

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

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

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

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

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-originendpoint-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-originendpoint-return-values-fn--getatt-fn--getatt"></a>

`Arn`  <a name="Arn-fn::getatt"></a>
The endpoint's unique system-generated resource name, based on the AWS record.

`Url`  <a name="Url-fn::getatt"></a>
URL for the key provider’s key retrieval API endpoint. Must start with https://.

# AWS::MediaPackage::OriginEndpoint Authorization
<a name="aws-properties-mediapackage-originendpoint-authorization"></a>

Parameters for enabling CDN authorization on the endpoint.

## Syntax
<a name="aws-properties-mediapackage-originendpoint-authorization-syntax"></a>

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

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

```
{
  "[CdnIdentifierSecret](#cfn-mediapackage-originendpoint-authorization-cdnidentifiersecret)" : String,
  "[SecretsRoleArn](#cfn-mediapackage-originendpoint-authorization-secretsrolearn)" : String
}
```

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

```
  [CdnIdentifierSecret](#cfn-mediapackage-originendpoint-authorization-cdnidentifiersecret): String
  [SecretsRoleArn](#cfn-mediapackage-originendpoint-authorization-secretsrolearn): String
```

## Properties
<a name="aws-properties-mediapackage-originendpoint-authorization-properties"></a>

`CdnIdentifierSecret`  <a name="cfn-mediapackage-originendpoint-authorization-cdnidentifiersecret"></a>
The Amazon Resource Name (ARN) for the secret in AWS Secrets Manager that your Content Delivery Network (CDN) uses for authorization to access your endpoint.  
*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)

`SecretsRoleArn`  <a name="cfn-mediapackage-originendpoint-authorization-secretsrolearn"></a>
The Amazon Resource Name (ARN) for the IAM role that allows AWS Elemental MediaPackage to communicate with AWS Secrets Manager.  
*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::OriginEndpoint CmafEncryption
<a name="aws-properties-mediapackage-originendpoint-cmafencryption"></a>

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

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

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

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

```
{
  "[ConstantInitializationVector](#cfn-mediapackage-originendpoint-cmafencryption-constantinitializationvector)" : String,
  "[EncryptionMethod](#cfn-mediapackage-originendpoint-cmafencryption-encryptionmethod)" : String,
  "[KeyRotationIntervalSeconds](#cfn-mediapackage-originendpoint-cmafencryption-keyrotationintervalseconds)" : Integer,
  "[SpekeKeyProvider](#cfn-mediapackage-originendpoint-cmafencryption-spekekeyprovider)" : SpekeKeyProvider
}
```

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

```
  [ConstantInitializationVector](#cfn-mediapackage-originendpoint-cmafencryption-constantinitializationvector): String
  [EncryptionMethod](#cfn-mediapackage-originendpoint-cmafencryption-encryptionmethod): String
  [KeyRotationIntervalSeconds](#cfn-mediapackage-originendpoint-cmafencryption-keyrotationintervalseconds): Integer
  [SpekeKeyProvider](#cfn-mediapackage-originendpoint-cmafencryption-spekekeyprovider): 
    SpekeKeyProvider
```

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

`ConstantInitializationVector`  <a name="cfn-mediapackage-originendpoint-cmafencryption-constantinitializationvector"></a>
An optional 128-bit, 16-byte hex value represented by a 32-character string, used in conjunction with the key for encrypting blocks. If you don't specify a value, then AWS Elemental MediaPackage creates the constant initialization vector (IV).   
*Required*: No  
*Type*: String  
*Pattern*: `\A[0-9a-fA-F]+\Z`  
*Minimum*: `32`  
*Maximum*: `32`  
*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-originendpoint-cmafencryption-encryptionmethod"></a>
The encryption method to use.  
*Required*: No  
*Type*: String  
*Allowed values*: `SAMPLE_AES | AES_CTR`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`KeyRotationIntervalSeconds`  <a name="cfn-mediapackage-originendpoint-cmafencryption-keyrotationintervalseconds"></a>
Number of seconds before AWS Elemental MediaPackage rotates to a new key. By default, rotation is set to 60 seconds. Set to `0` to disable key rotation.  
*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)

`SpekeKeyProvider`  <a name="cfn-mediapackage-originendpoint-cmafencryption-spekekeyprovider"></a>
Parameters for the SPEKE key provider.  
*Required*: Yes  
*Type*: [SpekeKeyProvider](aws-properties-mediapackage-originendpoint-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::OriginEndpoint CmafPackage
<a name="aws-properties-mediapackage-originendpoint-cmafpackage"></a>

Parameters for Common Media Application Format (CMAF) packaging.

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

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

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

```
{
  "[Encryption](#cfn-mediapackage-originendpoint-cmafpackage-encryption)" : CmafEncryption,
  "[HlsManifests](#cfn-mediapackage-originendpoint-cmafpackage-hlsmanifests)" : [ HlsManifest, ... ],
  "[SegmentDurationSeconds](#cfn-mediapackage-originendpoint-cmafpackage-segmentdurationseconds)" : Integer,
  "[SegmentPrefix](#cfn-mediapackage-originendpoint-cmafpackage-segmentprefix)" : String,
  "[StreamSelection](#cfn-mediapackage-originendpoint-cmafpackage-streamselection)" : StreamSelection
}
```

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

```
  [Encryption](#cfn-mediapackage-originendpoint-cmafpackage-encryption): 
    CmafEncryption
  [HlsManifests](#cfn-mediapackage-originendpoint-cmafpackage-hlsmanifests): 
    - HlsManifest
  [SegmentDurationSeconds](#cfn-mediapackage-originendpoint-cmafpackage-segmentdurationseconds): Integer
  [SegmentPrefix](#cfn-mediapackage-originendpoint-cmafpackage-segmentprefix): String
  [StreamSelection](#cfn-mediapackage-originendpoint-cmafpackage-streamselection): 
    StreamSelection
```

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

`Encryption`  <a name="cfn-mediapackage-originendpoint-cmafpackage-encryption"></a>
Parameters for encrypting content.  
*Required*: No  
*Type*: [CmafEncryption](aws-properties-mediapackage-originendpoint-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-originendpoint-cmafpackage-hlsmanifests"></a>
A list of HLS manifest configurations that are available from this endpoint.  
*Required*: No  
*Type*: Array of [HlsManifest](aws-properties-mediapackage-originendpoint-hlsmanifest.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-originendpoint-cmafpackage-segmentdurationseconds"></a>
Duration (in seconds) of each segment. Actual segments 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)

`SegmentPrefix`  <a name="cfn-mediapackage-originendpoint-cmafpackage-segmentprefix"></a>
An optional custom string that is prepended to the name of each segment. If not specified, the segment prefix defaults to the ChannelId.  
*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-originendpoint-cmafpackage-streamselection"></a>
Limitations for outputs from the endpoint, based on the video bitrate.  
*Required*: No  
*Type*: [StreamSelection](aws-properties-mediapackage-originendpoint-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::OriginEndpoint DashEncryption
<a name="aws-properties-mediapackage-originendpoint-dashencryption"></a>

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

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

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

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

```
{
  "[KeyRotationIntervalSeconds](#cfn-mediapackage-originendpoint-dashencryption-keyrotationintervalseconds)" : Integer,
  "[SpekeKeyProvider](#cfn-mediapackage-originendpoint-dashencryption-spekekeyprovider)" : SpekeKeyProvider
}
```

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

```
  [KeyRotationIntervalSeconds](#cfn-mediapackage-originendpoint-dashencryption-keyrotationintervalseconds): Integer
  [SpekeKeyProvider](#cfn-mediapackage-originendpoint-dashencryption-spekekeyprovider): 
    SpekeKeyProvider
```

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

`KeyRotationIntervalSeconds`  <a name="cfn-mediapackage-originendpoint-dashencryption-keyrotationintervalseconds"></a>
Number of seconds before AWS Elemental MediaPackage rotates to a new key. By default, rotation is set to 60 seconds. Set to `0` to disable key rotation.  
*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)

`SpekeKeyProvider`  <a name="cfn-mediapackage-originendpoint-dashencryption-spekekeyprovider"></a>
Parameters for the SPEKE key provider.  
*Required*: Yes  
*Type*: [SpekeKeyProvider](aws-properties-mediapackage-originendpoint-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::OriginEndpoint DashPackage
<a name="aws-properties-mediapackage-originendpoint-dashpackage"></a>

Parameters for DASH packaging.

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

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

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

```
{
  "[AdsOnDeliveryRestrictions](#cfn-mediapackage-originendpoint-dashpackage-adsondeliveryrestrictions)" : String,
  "[AdTriggers](#cfn-mediapackage-originendpoint-dashpackage-adtriggers)" : [ String, ... ],
  "[Encryption](#cfn-mediapackage-originendpoint-dashpackage-encryption)" : DashEncryption,
  "[IncludeIframeOnlyStream](#cfn-mediapackage-originendpoint-dashpackage-includeiframeonlystream)" : Boolean,
  "[ManifestLayout](#cfn-mediapackage-originendpoint-dashpackage-manifestlayout)" : String,
  "[ManifestWindowSeconds](#cfn-mediapackage-originendpoint-dashpackage-manifestwindowseconds)" : Integer,
  "[MinBufferTimeSeconds](#cfn-mediapackage-originendpoint-dashpackage-minbuffertimeseconds)" : Integer,
  "[MinUpdatePeriodSeconds](#cfn-mediapackage-originendpoint-dashpackage-minupdateperiodseconds)" : Integer,
  "[PeriodTriggers](#cfn-mediapackage-originendpoint-dashpackage-periodtriggers)" : [ String, ... ],
  "[Profile](#cfn-mediapackage-originendpoint-dashpackage-profile)" : String,
  "[SegmentDurationSeconds](#cfn-mediapackage-originendpoint-dashpackage-segmentdurationseconds)" : Integer,
  "[SegmentTemplateFormat](#cfn-mediapackage-originendpoint-dashpackage-segmenttemplateformat)" : String,
  "[StreamSelection](#cfn-mediapackage-originendpoint-dashpackage-streamselection)" : StreamSelection,
  "[SuggestedPresentationDelaySeconds](#cfn-mediapackage-originendpoint-dashpackage-suggestedpresentationdelayseconds)" : Integer,
  "[UtcTiming](#cfn-mediapackage-originendpoint-dashpackage-utctiming)" : String,
  "[UtcTimingUri](#cfn-mediapackage-originendpoint-dashpackage-utctiminguri)" : String
}
```

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

```
  [AdsOnDeliveryRestrictions](#cfn-mediapackage-originendpoint-dashpackage-adsondeliveryrestrictions): String
  [AdTriggers](#cfn-mediapackage-originendpoint-dashpackage-adtriggers): 
    - String
  [Encryption](#cfn-mediapackage-originendpoint-dashpackage-encryption): 
    DashEncryption
  [IncludeIframeOnlyStream](#cfn-mediapackage-originendpoint-dashpackage-includeiframeonlystream): Boolean
  [ManifestLayout](#cfn-mediapackage-originendpoint-dashpackage-manifestlayout): String
  [ManifestWindowSeconds](#cfn-mediapackage-originendpoint-dashpackage-manifestwindowseconds): Integer
  [MinBufferTimeSeconds](#cfn-mediapackage-originendpoint-dashpackage-minbuffertimeseconds): Integer
  [MinUpdatePeriodSeconds](#cfn-mediapackage-originendpoint-dashpackage-minupdateperiodseconds): Integer
  [PeriodTriggers](#cfn-mediapackage-originendpoint-dashpackage-periodtriggers): 
    - String
  [Profile](#cfn-mediapackage-originendpoint-dashpackage-profile): String
  [SegmentDurationSeconds](#cfn-mediapackage-originendpoint-dashpackage-segmentdurationseconds): Integer
  [SegmentTemplateFormat](#cfn-mediapackage-originendpoint-dashpackage-segmenttemplateformat): String
  [StreamSelection](#cfn-mediapackage-originendpoint-dashpackage-streamselection): 
    StreamSelection
  [SuggestedPresentationDelaySeconds](#cfn-mediapackage-originendpoint-dashpackage-suggestedpresentationdelayseconds): Integer
  [UtcTiming](#cfn-mediapackage-originendpoint-dashpackage-utctiming): String
  [UtcTimingUri](#cfn-mediapackage-originendpoint-dashpackage-utctiminguri): String
```

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

`AdsOnDeliveryRestrictions`  <a name="cfn-mediapackage-originendpoint-dashpackage-adsondeliveryrestrictions"></a>
The flags on SCTE-35 segmentation descriptors that have to be present for AWS Elemental MediaPackage to insert ad markers in the output manifest. For information about SCTE-35 in AWS Elemental MediaPackage, see [SCTE-35 Message Options in AWS Elemental MediaPackage](https://docs.aws.amazon.com/mediapackage/latest/ug/scte.html).  
*Required*: No  
*Type*: String  
*Allowed values*: `NONE | RESTRICTED | UNRESTRICTED | BOTH`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`AdTriggers`  <a name="cfn-mediapackage-originendpoint-dashpackage-adtriggers"></a>
Specifies the SCTE-35 message types that AWS Elemental MediaPackage treats as ad markers in the output manifest.  
Valid values:  
+  `BREAK` 
+  `DISTRIBUTOR_ADVERTISEMENT` 
+ `DISTRIBUTOR_OVERLAY_PLACEMENT_OPPORTUNITY`.
+ `DISTRIBUTOR_PLACEMENT_OPPORTUNITY`.
+ `PROVIDER_ADVERTISEMENT`.
+ `PROVIDER_OVERLAY_PLACEMENT_OPPORTUNITY`.
+ `PROVIDER_PLACEMENT_OPPORTUNITY`.
+ `SPLICE_INSERT`.
*Required*: No  
*Type*: Array of String  
*Allowed values*: `SPLICE_INSERT | BREAK | PROVIDER_ADVERTISEMENT | DISTRIBUTOR_ADVERTISEMENT | PROVIDER_PLACEMENT_OPPORTUNITY | DISTRIBUTOR_PLACEMENT_OPPORTUNITY | PROVIDER_OVERLAY_PLACEMENT_OPPORTUNITY | DISTRIBUTOR_OVERLAY_PLACEMENT_OPPORTUNITY`  
*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-originendpoint-dashpackage-encryption"></a>
Parameters for encrypting content.  
*Required*: No  
*Type*: [DashEncryption](aws-properties-mediapackage-originendpoint-dashencryption.md)  
*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-originendpoint-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)

`ManifestLayout`  <a name="cfn-mediapackage-originendpoint-dashpackage-manifestlayout"></a>
Determines the position of some tags in the manifest.   
Valid values:  
+ `FULL` - Elements like `SegmentTemplate` and `ContentProtection` are included in each `Representation`.
+ `COMPACT` - Duplicate elements are combined and presented at the `AdaptationSet` level.
*Required*: No  
*Type*: String  
*Allowed values*: `FULL | COMPACT | DRM_TOP_LEVEL_COMPACT`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ManifestWindowSeconds`  <a name="cfn-mediapackage-originendpoint-dashpackage-manifestwindowseconds"></a>
Time window (in seconds) contained in each 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)

`MinBufferTimeSeconds`  <a name="cfn-mediapackage-originendpoint-dashpackage-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)

`MinUpdatePeriodSeconds`  <a name="cfn-mediapackage-originendpoint-dashpackage-minupdateperiodseconds"></a>
Minimum amount of time (in seconds) that the player should wait before requesting updates to 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)

`PeriodTriggers`  <a name="cfn-mediapackage-originendpoint-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)

`Profile`  <a name="cfn-mediapackage-originendpoint-dashpackage-profile"></a>
The DASH profile for the output.  
Valid values:  
+ `NONE` - The output doesn't use a DASH profile.
+ `HBBTV_1_5` - The output is compliant with HbbTV v1.5.
+ `DVB_DASH_2014` - The output is compliant with DVB-DASH 2014.
*Required*: No  
*Type*: String  
*Allowed values*: `NONE | HBBTV_1_5 | HYBRIDCAST | DVB_DASH_2014`  
*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-originendpoint-dashpackage-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)

`SegmentTemplateFormat`  <a name="cfn-mediapackage-originendpoint-dashpackage-segmenttemplateformat"></a>
Determines the type of variable used in the `media` URL of the `SegmentTemplate` tag in the manifest. Also specifies if segment timeline information is included in `SegmentTimeline` or `SegmentTemplate`.  
Valid values:  
+ `NUMBER_WITH_TIMELINE` - The `$Number$` variable is used in the `media` URL. The value of this variable is the sequential number of the segment. A full `SegmentTimeline` object is presented in each `SegmentTemplate`.
+ `NUMBER_WITH_DURATION` - The `$Number$` variable is used in the `media` URL and a `duration` attribute is added to the segment template. The `SegmentTimeline` object is removed from the representation.
+ `TIME_WITH_TIMELINE` - The `$Time$` variable is used in the `media` URL. The value of this variable is the timestamp of when the segment starts. A full `SegmentTimeline` object is presented in each `SegmentTemplate`.
*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)

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

`SuggestedPresentationDelaySeconds`  <a name="cfn-mediapackage-originendpoint-dashpackage-suggestedpresentationdelayseconds"></a>
Amount of time (in seconds) that the player should be from the live point at the end of 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)

`UtcTiming`  <a name="cfn-mediapackage-originendpoint-dashpackage-utctiming"></a>
Determines the type of UTC timing included in the DASH Media Presentation Description (MPD).  
*Required*: No  
*Type*: String  
*Allowed values*: `HTTP-XSDATE | HTTP-ISO | HTTP-HEAD | NONE`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`UtcTimingUri`  <a name="cfn-mediapackage-originendpoint-dashpackage-utctiminguri"></a>
Specifies the value attribute of the UTC timing field when utcTiming is set to HTTP-ISO or HTTP-HEAD.  
*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)

# AWS::MediaPackage::OriginEndpoint EncryptionContractConfiguration
<a name="aws-properties-mediapackage-originendpoint-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-originendpoint-encryptioncontractconfiguration-syntax"></a>

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

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

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

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

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

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

`PresetSpeke20Audio`  <a name="cfn-mediapackage-originendpoint-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-originendpoint-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::OriginEndpoint HlsEncryption
<a name="aws-properties-mediapackage-originendpoint-hlsencryption"></a>

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

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

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

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

```
{
  "[ConstantInitializationVector](#cfn-mediapackage-originendpoint-hlsencryption-constantinitializationvector)" : String,
  "[EncryptionMethod](#cfn-mediapackage-originendpoint-hlsencryption-encryptionmethod)" : String,
  "[KeyRotationIntervalSeconds](#cfn-mediapackage-originendpoint-hlsencryption-keyrotationintervalseconds)" : Integer,
  "[RepeatExtXKey](#cfn-mediapackage-originendpoint-hlsencryption-repeatextxkey)" : Boolean,
  "[SpekeKeyProvider](#cfn-mediapackage-originendpoint-hlsencryption-spekekeyprovider)" : SpekeKeyProvider
}
```

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

```
  [ConstantInitializationVector](#cfn-mediapackage-originendpoint-hlsencryption-constantinitializationvector): String
  [EncryptionMethod](#cfn-mediapackage-originendpoint-hlsencryption-encryptionmethod): String
  [KeyRotationIntervalSeconds](#cfn-mediapackage-originendpoint-hlsencryption-keyrotationintervalseconds): Integer
  [RepeatExtXKey](#cfn-mediapackage-originendpoint-hlsencryption-repeatextxkey): Boolean
  [SpekeKeyProvider](#cfn-mediapackage-originendpoint-hlsencryption-spekekeyprovider): 
    SpekeKeyProvider
```

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

`ConstantInitializationVector`  <a name="cfn-mediapackage-originendpoint-hlsencryption-constantinitializationvector"></a>
A 128-bit, 16-byte hex value represented by a 32-character string, used with the key for encrypting blocks.  
*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-originendpoint-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)

`KeyRotationIntervalSeconds`  <a name="cfn-mediapackage-originendpoint-hlsencryption-keyrotationintervalseconds"></a>
Number of seconds before AWS Elemental MediaPackage rotates to a new key. By default, rotation is set to 60 seconds. Set to `0` to disable key rotation.  
*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-originendpoint-hlsencryption-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)

`SpekeKeyProvider`  <a name="cfn-mediapackage-originendpoint-hlsencryption-spekekeyprovider"></a>
Parameters for the SPEKE key provider.  
*Required*: Yes  
*Type*: [SpekeKeyProvider](aws-properties-mediapackage-originendpoint-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::OriginEndpoint HlsManifest
<a name="aws-properties-mediapackage-originendpoint-hlsmanifest"></a>

An HTTP Live Streaming (HLS) manifest configuration on a CMAF endpoint.

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

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

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

```
{
  "[AdMarkers](#cfn-mediapackage-originendpoint-hlsmanifest-admarkers)" : String,
  "[AdsOnDeliveryRestrictions](#cfn-mediapackage-originendpoint-hlsmanifest-adsondeliveryrestrictions)" : String,
  "[AdTriggers](#cfn-mediapackage-originendpoint-hlsmanifest-adtriggers)" : [ String, ... ],
  "[Id](#cfn-mediapackage-originendpoint-hlsmanifest-id)" : String,
  "[IncludeIframeOnlyStream](#cfn-mediapackage-originendpoint-hlsmanifest-includeiframeonlystream)" : Boolean,
  "[ManifestName](#cfn-mediapackage-originendpoint-hlsmanifest-manifestname)" : String,
  "[PlaylistType](#cfn-mediapackage-originendpoint-hlsmanifest-playlisttype)" : String,
  "[PlaylistWindowSeconds](#cfn-mediapackage-originendpoint-hlsmanifest-playlistwindowseconds)" : Integer,
  "[ProgramDateTimeIntervalSeconds](#cfn-mediapackage-originendpoint-hlsmanifest-programdatetimeintervalseconds)" : Integer,
  "[Url](#cfn-mediapackage-originendpoint-hlsmanifest-url)" : String
}
```

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

```
  [AdMarkers](#cfn-mediapackage-originendpoint-hlsmanifest-admarkers): String
  [AdsOnDeliveryRestrictions](#cfn-mediapackage-originendpoint-hlsmanifest-adsondeliveryrestrictions): String
  [AdTriggers](#cfn-mediapackage-originendpoint-hlsmanifest-adtriggers): 
    - String
  [Id](#cfn-mediapackage-originendpoint-hlsmanifest-id): String
  [IncludeIframeOnlyStream](#cfn-mediapackage-originendpoint-hlsmanifest-includeiframeonlystream): Boolean
  [ManifestName](#cfn-mediapackage-originendpoint-hlsmanifest-manifestname): String
  [PlaylistType](#cfn-mediapackage-originendpoint-hlsmanifest-playlisttype): String
  [PlaylistWindowSeconds](#cfn-mediapackage-originendpoint-hlsmanifest-playlistwindowseconds): Integer
  [ProgramDateTimeIntervalSeconds](#cfn-mediapackage-originendpoint-hlsmanifest-programdatetimeintervalseconds): Integer
  [Url](#cfn-mediapackage-originendpoint-hlsmanifest-url): String
```

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

`AdMarkers`  <a name="cfn-mediapackage-originendpoint-hlsmanifest-admarkers"></a>
Controls how ad markers are included in the packaged endpoint.  
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 | DATERANGE`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`AdsOnDeliveryRestrictions`  <a name="cfn-mediapackage-originendpoint-hlsmanifest-adsondeliveryrestrictions"></a>
The flags on SCTE-35 segmentation descriptors that have to be present for AWS Elemental MediaPackage to insert ad markers in the output manifest. For information about SCTE-35 in AWS Elemental MediaPackage, see [SCTE-35 Message Options in AWS Elemental MediaPackage](https://docs.aws.amazon.com/mediapackage/latest/ug/scte.html).   
*Required*: No  
*Type*: String  
*Allowed values*: `NONE | RESTRICTED | UNRESTRICTED | BOTH`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`AdTriggers`  <a name="cfn-mediapackage-originendpoint-hlsmanifest-adtriggers"></a>
Specifies the SCTE-35 message types that AWS Elemental MediaPackage treats as ad markers in the output manifest.  
Valid values:  
+  `BREAK` 
+  `DISTRIBUTOR_ADVERTISEMENT` 
+  `DISTRIBUTOR_OVERLAY_PLACEMENT_OPPORTUNITY` 
+  `DISTRIBUTOR_PLACEMENT_OPPORTUNITY` 
+  `PROVIDER_ADVERTISEMENT` 
+  `PROVIDER_OVERLAY_PLACEMENT_OPPORTUNITY` 
+  `PROVIDER_PLACEMENT_OPPORTUNITY` 
+  `SPLICE_INSERT` 
*Required*: No  
*Type*: Array of String  
*Allowed values*: `SPLICE_INSERT | BREAK | PROVIDER_ADVERTISEMENT | DISTRIBUTOR_ADVERTISEMENT | PROVIDER_PLACEMENT_OPPORTUNITY | DISTRIBUTOR_PLACEMENT_OPPORTUNITY | PROVIDER_OVERLAY_PLACEMENT_OPPORTUNITY | DISTRIBUTOR_OVERLAY_PLACEMENT_OPPORTUNITY`  
*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-originendpoint-hlsmanifest-id"></a>
The manifest ID is required and must be unique within the OriginEndpoint. The ID can't be changed after the endpoint is created.  
*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)

`IncludeIframeOnlyStream`  <a name="cfn-mediapackage-originendpoint-hlsmanifest-includeiframeonlystream"></a>
Applies to stream sets with a single video track only. When true, the stream set includes an additional I-frame 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)

`ManifestName`  <a name="cfn-mediapackage-originendpoint-hlsmanifest-manifestname"></a>
A short string that's appended to the end of the endpoint URL to create a unique path to this endpoint. The manifestName on the HLSManifest object overrides the manifestName that you provided on the originEndpoint object.  
*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)

`PlaylistType`  <a name="cfn-mediapackage-originendpoint-hlsmanifest-playlisttype"></a>
When specified as either `event` or `vod`, a corresponding `EXT-X-PLAYLIST-TYPE` entry is included in the media playlist. Indicates if the playlist is live-to-VOD content.   
*Required*: No  
*Type*: String  
*Allowed values*: `NONE | EVENT | VOD`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`PlaylistWindowSeconds`  <a name="cfn-mediapackage-originendpoint-hlsmanifest-playlistwindowseconds"></a>
Time window (in seconds) contained in each parent 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)

`ProgramDateTimeIntervalSeconds`  <a name="cfn-mediapackage-originendpoint-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)

`Url`  <a name="cfn-mediapackage-originendpoint-hlsmanifest-url"></a>
The URL that's used to request this manifest from this endpoint.  
*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)

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

Parameters for Apple HLS packaging.

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

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

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

```
{
  "[AdMarkers](#cfn-mediapackage-originendpoint-hlspackage-admarkers)" : String,
  "[AdsOnDeliveryRestrictions](#cfn-mediapackage-originendpoint-hlspackage-adsondeliveryrestrictions)" : String,
  "[AdTriggers](#cfn-mediapackage-originendpoint-hlspackage-adtriggers)" : [ String, ... ],
  "[Encryption](#cfn-mediapackage-originendpoint-hlspackage-encryption)" : HlsEncryption,
  "[IncludeDvbSubtitles](#cfn-mediapackage-originendpoint-hlspackage-includedvbsubtitles)" : Boolean,
  "[IncludeIframeOnlyStream](#cfn-mediapackage-originendpoint-hlspackage-includeiframeonlystream)" : Boolean,
  "[PlaylistType](#cfn-mediapackage-originendpoint-hlspackage-playlisttype)" : String,
  "[PlaylistWindowSeconds](#cfn-mediapackage-originendpoint-hlspackage-playlistwindowseconds)" : Integer,
  "[ProgramDateTimeIntervalSeconds](#cfn-mediapackage-originendpoint-hlspackage-programdatetimeintervalseconds)" : Integer,
  "[SegmentDurationSeconds](#cfn-mediapackage-originendpoint-hlspackage-segmentdurationseconds)" : Integer,
  "[StreamSelection](#cfn-mediapackage-originendpoint-hlspackage-streamselection)" : StreamSelection,
  "[UseAudioRenditionGroup](#cfn-mediapackage-originendpoint-hlspackage-useaudiorenditiongroup)" : Boolean
}
```

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

```
  [AdMarkers](#cfn-mediapackage-originendpoint-hlspackage-admarkers): String
  [AdsOnDeliveryRestrictions](#cfn-mediapackage-originendpoint-hlspackage-adsondeliveryrestrictions): String
  [AdTriggers](#cfn-mediapackage-originendpoint-hlspackage-adtriggers): 
    - String
  [Encryption](#cfn-mediapackage-originendpoint-hlspackage-encryption): 
    HlsEncryption
  [IncludeDvbSubtitles](#cfn-mediapackage-originendpoint-hlspackage-includedvbsubtitles): Boolean
  [IncludeIframeOnlyStream](#cfn-mediapackage-originendpoint-hlspackage-includeiframeonlystream): Boolean
  [PlaylistType](#cfn-mediapackage-originendpoint-hlspackage-playlisttype): String
  [PlaylistWindowSeconds](#cfn-mediapackage-originendpoint-hlspackage-playlistwindowseconds): Integer
  [ProgramDateTimeIntervalSeconds](#cfn-mediapackage-originendpoint-hlspackage-programdatetimeintervalseconds): Integer
  [SegmentDurationSeconds](#cfn-mediapackage-originendpoint-hlspackage-segmentdurationseconds): Integer
  [StreamSelection](#cfn-mediapackage-originendpoint-hlspackage-streamselection): 
    StreamSelection
  [UseAudioRenditionGroup](#cfn-mediapackage-originendpoint-hlspackage-useaudiorenditiongroup): Boolean
```

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

`AdMarkers`  <a name="cfn-mediapackage-originendpoint-hlspackage-admarkers"></a>
Controls how ad markers are included in the packaged endpoint.  
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 | DATERANGE`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`AdsOnDeliveryRestrictions`  <a name="cfn-mediapackage-originendpoint-hlspackage-adsondeliveryrestrictions"></a>
The flags on SCTE-35 segmentation descriptors that have to be present for AWS Elemental MediaPackage to insert ad markers in the output manifest. For information about SCTE-35 in AWS Elemental MediaPackage, see [SCTE-35 Message Options in AWS Elemental MediaPackage](https://docs.aws.amazon.com/mediapackage/latest/ug/scte.html).  
*Required*: No  
*Type*: String  
*Allowed values*: `NONE | RESTRICTED | UNRESTRICTED | BOTH`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`AdTriggers`  <a name="cfn-mediapackage-originendpoint-hlspackage-adtriggers"></a>
Specifies the SCTE-35 message types that AWS Elemental MediaPackage treats as ad markers in the output manifest.  
Valid values:  
+  `BREAK` 
+  `DISTRIBUTOR_ADVERTISEMENT` 
+  `DISTRIBUTOR_OVERLAY_PLACEMENT_OPPORTUNITY` 
+  `DISTRIBUTOR_PLACEMENT_OPPORTUNITY` 
+  `PROVIDER_ADVERTISEMENT` 
+  `PROVIDER_OVERLAY_PLACEMENT_OPPORTUNITY` 
+  `PROVIDER_PLACEMENT_OPPORTUNITY` 
+  `SPLICE_INSERT` 
*Required*: No  
*Type*: Array of String  
*Allowed values*: `SPLICE_INSERT | BREAK | PROVIDER_ADVERTISEMENT | DISTRIBUTOR_ADVERTISEMENT | PROVIDER_PLACEMENT_OPPORTUNITY | DISTRIBUTOR_PLACEMENT_OPPORTUNITY | PROVIDER_OVERLAY_PLACEMENT_OPPORTUNITY | DISTRIBUTOR_OVERLAY_PLACEMENT_OPPORTUNITY`  
*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-originendpoint-hlspackage-encryption"></a>
Parameters for encrypting content.  
*Required*: No  
*Type*: [HlsEncryption](aws-properties-mediapackage-originendpoint-hlsencryption.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-originendpoint-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)

`IncludeIframeOnlyStream`  <a name="cfn-mediapackage-originendpoint-hlspackage-includeiframeonlystream"></a>
Only applies to stream sets with a single video track. When true, the stream set includes an additional I-frame 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)

`PlaylistType`  <a name="cfn-mediapackage-originendpoint-hlspackage-playlisttype"></a>
When specified as either `event` or `vod`, a corresponding `EXT-X-PLAYLIST-TYPE` entry is included in the media playlist. Indicates if the playlist is live-to-VOD content.   
*Required*: No  
*Type*: String  
*Allowed values*: `NONE | EVENT | VOD`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`PlaylistWindowSeconds`  <a name="cfn-mediapackage-originendpoint-hlspackage-playlistwindowseconds"></a>
Time window (in seconds) contained in each parent 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)

`ProgramDateTimeIntervalSeconds`  <a name="cfn-mediapackage-originendpoint-hlspackage-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)

`SegmentDurationSeconds`  <a name="cfn-mediapackage-originendpoint-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)

`StreamSelection`  <a name="cfn-mediapackage-originendpoint-hlspackage-streamselection"></a>
Limitations for outputs from the endpoint, based on the video bitrate.  
*Required*: No  
*Type*: [StreamSelection](aws-properties-mediapackage-originendpoint-streamselection.md)  
*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-originendpoint-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::OriginEndpoint MssEncryption
<a name="aws-properties-mediapackage-originendpoint-mssencryption"></a>

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

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

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

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

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

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

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

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

`SpekeKeyProvider`  <a name="cfn-mediapackage-originendpoint-mssencryption-spekekeyprovider"></a>
Parameters for the SPEKE key provider.  
*Required*: Yes  
*Type*: [SpekeKeyProvider](aws-properties-mediapackage-originendpoint-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::OriginEndpoint MssPackage
<a name="aws-properties-mediapackage-originendpoint-msspackage"></a>

Parameters for Microsoft Smooth Streaming packaging.

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

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

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

```
{
  "[Encryption](#cfn-mediapackage-originendpoint-msspackage-encryption)" : MssEncryption,
  "[ManifestWindowSeconds](#cfn-mediapackage-originendpoint-msspackage-manifestwindowseconds)" : Integer,
  "[SegmentDurationSeconds](#cfn-mediapackage-originendpoint-msspackage-segmentdurationseconds)" : Integer,
  "[StreamSelection](#cfn-mediapackage-originendpoint-msspackage-streamselection)" : StreamSelection
}
```

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

```
  [Encryption](#cfn-mediapackage-originendpoint-msspackage-encryption): 
    MssEncryption
  [ManifestWindowSeconds](#cfn-mediapackage-originendpoint-msspackage-manifestwindowseconds): Integer
  [SegmentDurationSeconds](#cfn-mediapackage-originendpoint-msspackage-segmentdurationseconds): Integer
  [StreamSelection](#cfn-mediapackage-originendpoint-msspackage-streamselection): 
    StreamSelection
```

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

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

`ManifestWindowSeconds`  <a name="cfn-mediapackage-originendpoint-msspackage-manifestwindowseconds"></a>
Time window (in seconds) contained in each 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)

`SegmentDurationSeconds`  <a name="cfn-mediapackage-originendpoint-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)

`StreamSelection`  <a name="cfn-mediapackage-originendpoint-msspackage-streamselection"></a>
Limitations for outputs from the endpoint, based on the video bitrate.  
*Required*: No  
*Type*: [StreamSelection](aws-properties-mediapackage-originendpoint-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::OriginEndpoint SpekeKeyProvider
<a name="aws-properties-mediapackage-originendpoint-spekekeyprovider"></a>

Key provider settings for DRM.

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

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

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

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

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

```
  [CertificateArn](#cfn-mediapackage-originendpoint-spekekeyprovider-certificatearn): String
  [EncryptionContractConfiguration](#cfn-mediapackage-originendpoint-spekekeyprovider-encryptioncontractconfiguration): 
    EncryptionContractConfiguration
  [ResourceId](#cfn-mediapackage-originendpoint-spekekeyprovider-resourceid): String
  [RoleArn](#cfn-mediapackage-originendpoint-spekekeyprovider-rolearn): String
  [SystemIds](#cfn-mediapackage-originendpoint-spekekeyprovider-systemids): 
    - String
  [Url](#cfn-mediapackage-originendpoint-spekekeyprovider-url): String
```

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

`CertificateArn`  <a name="cfn-mediapackage-originendpoint-spekekeyprovider-certificatearn"></a>
The Amazon Resource Name (ARN) for the certificate that you imported to AWS Certificate Manager to add content key encryption to this endpoint. For this feature to work, your DRM key provider must support content key encryption.  
*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)

`EncryptionContractConfiguration`  <a name="cfn-mediapackage-originendpoint-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-originendpoint-encryptioncontractconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ResourceId`  <a name="cfn-mediapackage-originendpoint-spekekeyprovider-resourceid"></a>
Unique identifier for this endpoint, as it is configured in the key provider service.  
*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)

`RoleArn`  <a name="cfn-mediapackage-originendpoint-spekekeyprovider-rolearn"></a>
The ARN for the IAM role that's granted by the key provider to provide access to the key provider API. This role must have a trust policy that allows AWS Elemental MediaPackage to assume the role, and it must have a sufficient permissions policy to allow access to the specific key retrieval URL. 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-originendpoint-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-originendpoint-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::OriginEndpoint StreamSelection
<a name="aws-properties-mediapackage-originendpoint-streamselection"></a>

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

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

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

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

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

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

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

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

`MaxVideoBitsPerSecond`  <a name="cfn-mediapackage-originendpoint-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-originendpoint-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-originendpoint-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::OriginEndpoint Tag
<a name="aws-properties-mediapackage-originendpoint-tag"></a>

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

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

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

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

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

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

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

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

`Key`  <a name="cfn-mediapackage-originendpoint-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-originendpoint-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)

# 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)

# AWS::MediaPackage::PackagingGroup
<a name="aws-resource-mediapackage-packaginggroup"></a>

Creates a packaging group.

The packaging group holds one or more packaging configurations. When you create an asset, you specify the packaging group associated with the asset. The asset has playback endpoints for each packaging configuration within the group.

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

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

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

```
{
  "Type" : "AWS::MediaPackage::PackagingGroup",
  "Properties" : {
      "[Authorization](#cfn-mediapackage-packaginggroup-authorization)" : Authorization,
      "[EgressAccessLogs](#cfn-mediapackage-packaginggroup-egressaccesslogs)" : LogConfiguration,
      "[Id](#cfn-mediapackage-packaginggroup-id)" : String,
      "[Tags](#cfn-mediapackage-packaginggroup-tags)" : [ Tag, ... ]
    }
}
```

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

```
Type: AWS::MediaPackage::PackagingGroup
Properties:
  [Authorization](#cfn-mediapackage-packaginggroup-authorization): 
    Authorization
  [EgressAccessLogs](#cfn-mediapackage-packaginggroup-egressaccesslogs): 
    LogConfiguration
  [Id](#cfn-mediapackage-packaginggroup-id): String
  [Tags](#cfn-mediapackage-packaginggroup-tags): 
    - Tag
```

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

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

`EgressAccessLogs`  <a name="cfn-mediapackage-packaginggroup-egressaccesslogs"></a>
The configuration parameters for egress access logging.  
*Required*: No  
*Type*: [LogConfiguration](aws-properties-mediapackage-packaginggroup-logconfiguration.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-packaginggroup-id"></a>
Unique identifier that you assign to the packaging group.  
*Required*: Yes  
*Type*: String  
*Pattern*: `\A[0-9a-zA-Z-_]+\Z`  
*Minimum*: `1`  
*Maximum*: `256`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

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

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

### Ref
<a name="aws-resource-mediapackage-packaginggroup-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 group.

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

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-packaginggroup-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-packaginggroup-return-values-fn--getatt-fn--getatt"></a>

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

`DomainName`  <a name="DomainName-fn::getatt"></a>
The URL for the assets in the PackagingGroup.

# AWS::MediaPackage::PackagingGroup Authorization
<a name="aws-properties-mediapackage-packaginggroup-authorization"></a>

Parameters for enabling CDN authorization.

## Syntax
<a name="aws-properties-mediapackage-packaginggroup-authorization-syntax"></a>

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

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

```
{
  "[CdnIdentifierSecret](#cfn-mediapackage-packaginggroup-authorization-cdnidentifiersecret)" : String,
  "[SecretsRoleArn](#cfn-mediapackage-packaginggroup-authorization-secretsrolearn)" : String
}
```

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

```
  [CdnIdentifierSecret](#cfn-mediapackage-packaginggroup-authorization-cdnidentifiersecret): String
  [SecretsRoleArn](#cfn-mediapackage-packaginggroup-authorization-secretsrolearn): String
```

## Properties
<a name="aws-properties-mediapackage-packaginggroup-authorization-properties"></a>

`CdnIdentifierSecret`  <a name="cfn-mediapackage-packaginggroup-authorization-cdnidentifiersecret"></a>
The Amazon Resource Name (ARN) for the secret in AWS Secrets Manager that is used for CDN authorization.  
*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)

`SecretsRoleArn`  <a name="cfn-mediapackage-packaginggroup-authorization-secretsrolearn"></a>
The Amazon Resource Name (ARN) for the IAM role that allows AWS Elemental MediaPackage to communicate with AWS Secrets Manager.  
*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::PackagingGroup LogConfiguration
<a name="aws-properties-mediapackage-packaginggroup-logconfiguration"></a>

Sets a custom Amazon CloudWatch log group name for egress logs. If a log group name isn't specified, the default name is used: /aws/MediaPackage/EgressAccessLogs.

## Syntax
<a name="aws-properties-mediapackage-packaginggroup-logconfiguration-syntax"></a>

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

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

```
{
  "[LogGroupName](#cfn-mediapackage-packaginggroup-logconfiguration-loggroupname)" : String
}
```

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

```
  [LogGroupName](#cfn-mediapackage-packaginggroup-logconfiguration-loggroupname): String
```

## Properties
<a name="aws-properties-mediapackage-packaginggroup-logconfiguration-properties"></a>

`LogGroupName`  <a name="cfn-mediapackage-packaginggroup-logconfiguration-loggroupname"></a>
Sets a custom Amazon CloudWatch log group name for egress logs. If a log group name isn't specified, the default name is used: /aws/MediaPackage/EgressAccessLogs.  
*Required*: No  
*Type*: String  
*Pattern*: `\A\/aws\/MediaPackage\/[0-9a-zA-Z-_\/\.#]+\Z`  
*Minimum*: `1`  
*Maximum*: `512`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

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

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

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

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

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

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

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

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

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

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

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