aws-cdk-lib
Version:
Version 2 of the AWS Cloud Development Kit library
984 lines • 114 kB
TypeScript
import * as constructs from 'constructs';
import * as cdk from '../../core';
import * as cfn_parse from '../../core/lib/helpers-internal';
/**
* Properties for defining a `CfnAsset`
*
* @struct
* @stability external
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-asset.html
*/
export interface CfnAssetProps {
/**
* Unique identifier that you assign to the asset.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-asset.html#cfn-mediapackage-asset-id
*/
readonly id: string;
/**
* The ID of the packaging group associated with this asset.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-asset.html#cfn-mediapackage-asset-packaginggroupid
*/
readonly packagingGroupId: string;
/**
* The ARN for the source content in Amazon S3.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-asset.html#cfn-mediapackage-asset-sourcearn
*/
readonly sourceArn: string;
/**
* 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::{accountID}:role/{name}
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-asset.html#cfn-mediapackage-asset-sourcerolearn
*/
readonly sourceRoleArn: string;
/**
* List of playback endpoints that are available for this asset.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-asset.html#cfn-mediapackage-asset-egressendpoints
*/
readonly egressEndpoints?: Array<CfnAsset.EgressEndpointProperty | cdk.IResolvable> | cdk.IResolvable;
/**
* Unique identifier for this asset, as it's configured in the key provider service.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-asset.html#cfn-mediapackage-asset-resourceid
*/
readonly resourceId?: string;
/**
* The tags to assign to the asset.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-asset.html#cfn-mediapackage-asset-tags
*/
readonly tags?: cdk.CfnTag[];
}
/**
* A CloudFormation `AWS::MediaPackage::Asset`
*
* 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 .
*
* @cloudformationResource AWS::MediaPackage::Asset
* @stability external
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-asset.html
*/
export declare class CfnAsset extends cdk.CfnResource implements cdk.IInspectable {
/**
* The CloudFormation resource type name for this resource class.
*/
static readonly CFN_RESOURCE_TYPE_NAME = "AWS::MediaPackage::Asset";
/**
* A factory method that creates a new instance of this class from an object
* containing the CloudFormation properties of this resource.
* Used in the @aws-cdk/cloudformation-include module.
*
* @internal
*/
static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnAsset;
/**
* The Amazon Resource Name (ARN) for the asset. You can get this from the response to any request to the asset.
* @cloudformationAttribute Arn
*/
readonly attrArn: string;
/**
* The time that the asset was initially submitted for ingest.
* @cloudformationAttribute CreatedAt
*/
readonly attrCreatedAt: string;
/**
* Unique identifier that you assign to the asset.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-asset.html#cfn-mediapackage-asset-id
*/
id: string;
/**
* The ID of the packaging group associated with this asset.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-asset.html#cfn-mediapackage-asset-packaginggroupid
*/
packagingGroupId: string;
/**
* The ARN for the source content in Amazon S3.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-asset.html#cfn-mediapackage-asset-sourcearn
*/
sourceArn: string;
/**
* 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::{accountID}:role/{name}
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-asset.html#cfn-mediapackage-asset-sourcerolearn
*/
sourceRoleArn: string;
/**
* List of playback endpoints that are available for this asset.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-asset.html#cfn-mediapackage-asset-egressendpoints
*/
egressEndpoints: Array<CfnAsset.EgressEndpointProperty | cdk.IResolvable> | cdk.IResolvable | undefined;
/**
* Unique identifier for this asset, as it's configured in the key provider service.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-asset.html#cfn-mediapackage-asset-resourceid
*/
resourceId: string | undefined;
/**
* The tags to assign to the asset.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-asset.html#cfn-mediapackage-asset-tags
*/
readonly tags: cdk.TagManager;
/**
* Create a new `AWS::MediaPackage::Asset`.
*
* @param scope - scope in which this resource is defined
* @param id - scoped id of the resource
* @param props - resource properties
*/
constructor(scope: constructs.Construct, id: string, props: CfnAssetProps);
/**
* Examines the CloudFormation resource and discloses attributes.
*
* @param inspector - tree inspector to collect and process attributes
*
*/
inspect(inspector: cdk.TreeInspector): void;
protected get cfnProperties(): {
[key: string]: any;
};
protected renderProperties(props: {
[key: string]: any;
}): {
[key: string]: any;
};
}
export declare namespace CfnAsset {
/**
* The playback endpoint for a packaging configuration on an asset.
*
* @struct
* @stability external
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-asset-egressendpoint.html
*/
interface EgressEndpointProperty {
/**
* The ID of a packaging configuration that's applied to this asset.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-asset-egressendpoint.html#cfn-mediapackage-asset-egressendpoint-packagingconfigurationid
*/
readonly packagingConfigurationId: string;
/**
* The URL that's used to request content from this endpoint.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-asset-egressendpoint.html#cfn-mediapackage-asset-egressendpoint-url
*/
readonly url: string;
}
}
/**
* Properties for defining a `CfnChannel`
*
* @struct
* @stability external
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-channel.html
*/
export interface CfnChannelProps {
/**
* Unique identifier that you assign to the channel.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-channel.html#cfn-mediapackage-channel-id
*/
readonly id: string;
/**
* Any descriptive information that you want to add to the channel for future identification purposes.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-channel.html#cfn-mediapackage-channel-description
*/
readonly description?: string;
/**
* Configures egress access logs.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-channel.html#cfn-mediapackage-channel-egressaccesslogs
*/
readonly egressAccessLogs?: CfnChannel.LogConfigurationProperty | cdk.IResolvable;
/**
* `AWS::MediaPackage::Channel.HlsIngest`
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-channel.html#cfn-mediapackage-channel-hlsingest
*/
readonly hlsIngest?: CfnChannel.HlsIngestProperty | cdk.IResolvable;
/**
* Configures ingress access logs.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-channel.html#cfn-mediapackage-channel-ingressaccesslogs
*/
readonly ingressAccessLogs?: CfnChannel.LogConfigurationProperty | cdk.IResolvable;
/**
* The tags to assign to the channel.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-channel.html#cfn-mediapackage-channel-tags
*/
readonly tags?: cdk.CfnTag[];
}
/**
* A CloudFormation `AWS::MediaPackage::Channel`
*
* 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.
*
* @cloudformationResource AWS::MediaPackage::Channel
* @stability external
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-channel.html
*/
export declare class CfnChannel extends cdk.CfnResource implements cdk.IInspectable {
/**
* The CloudFormation resource type name for this resource class.
*/
static readonly CFN_RESOURCE_TYPE_NAME = "AWS::MediaPackage::Channel";
/**
* A factory method that creates a new instance of this class from an object
* containing the CloudFormation properties of this resource.
* Used in the @aws-cdk/cloudformation-include module.
*
* @internal
*/
static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnChannel;
/**
* The channel's unique system-generated resource name, based on the AWS record.
* @cloudformationAttribute Arn
*/
readonly attrArn: string;
/**
* Unique identifier that you assign to the channel.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-channel.html#cfn-mediapackage-channel-id
*/
id: string;
/**
* Any descriptive information that you want to add to the channel for future identification purposes.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-channel.html#cfn-mediapackage-channel-description
*/
description: string | undefined;
/**
* Configures egress access logs.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-channel.html#cfn-mediapackage-channel-egressaccesslogs
*/
egressAccessLogs: CfnChannel.LogConfigurationProperty | cdk.IResolvable | undefined;
/**
* `AWS::MediaPackage::Channel.HlsIngest`
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-channel.html#cfn-mediapackage-channel-hlsingest
*/
hlsIngest: CfnChannel.HlsIngestProperty | cdk.IResolvable | undefined;
/**
* Configures ingress access logs.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-channel.html#cfn-mediapackage-channel-ingressaccesslogs
*/
ingressAccessLogs: CfnChannel.LogConfigurationProperty | cdk.IResolvable | undefined;
/**
* The tags to assign to the channel.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-channel.html#cfn-mediapackage-channel-tags
*/
readonly tags: cdk.TagManager;
/**
* Create a new `AWS::MediaPackage::Channel`.
*
* @param scope - scope in which this resource is defined
* @param id - scoped id of the resource
* @param props - resource properties
*/
constructor(scope: constructs.Construct, id: string, props: CfnChannelProps);
/**
* Examines the CloudFormation resource and discloses attributes.
*
* @param inspector - tree inspector to collect and process attributes
*
*/
inspect(inspector: cdk.TreeInspector): void;
protected get cfnProperties(): {
[key: string]: any;
};
protected renderProperties(props: {
[key: string]: any;
}): {
[key: string]: any;
};
}
export declare namespace CfnChannel {
/**
*
*
* @struct
* @stability external
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-channel-hlsingest.html
*/
interface HlsIngestProperty {
/**
* `CfnChannel.HlsIngestProperty.ingestEndpoints`
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-channel-hlsingest.html#cfn-mediapackage-channel-hlsingest-ingestendpoints
*/
readonly ingestEndpoints?: Array<CfnChannel.IngestEndpointProperty | cdk.IResolvable> | cdk.IResolvable;
}
}
export declare namespace CfnChannel {
/**
*
*
* @struct
* @stability external
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-channel-ingestendpoint.html
*/
interface IngestEndpointProperty {
/**
* `CfnChannel.IngestEndpointProperty.Id`
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-channel-ingestendpoint.html#cfn-mediapackage-channel-ingestendpoint-id
*/
readonly id: string;
/**
* `CfnChannel.IngestEndpointProperty.Password`
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-channel-ingestendpoint.html#cfn-mediapackage-channel-ingestendpoint-password
*/
readonly password: string;
/**
* `CfnChannel.IngestEndpointProperty.Url`
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-channel-ingestendpoint.html#cfn-mediapackage-channel-ingestendpoint-url
*/
readonly url: string;
/**
* `CfnChannel.IngestEndpointProperty.Username`
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-channel-ingestendpoint.html#cfn-mediapackage-channel-ingestendpoint-username
*/
readonly username: string;
}
}
export declare namespace CfnChannel {
/**
* The access log configuration parameters for your channel.
*
* @struct
* @stability external
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-channel-logconfiguration.html
*/
interface LogConfigurationProperty {
/**
* Sets a custom Amazon CloudWatch log group name.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-channel-logconfiguration.html#cfn-mediapackage-channel-logconfiguration-loggroupname
*/
readonly logGroupName?: string;
}
}
/**
* Properties for defining a `CfnOriginEndpoint`
*
* @struct
* @stability external
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html
*/
export interface CfnOriginEndpointProps {
/**
* The ID of the channel associated with this endpoint.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-channelid
*/
readonly channelId: string;
/**
* The manifest ID is required and must be unique within the OriginEndpoint. The ID can't be changed after the endpoint is created.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-id
*/
readonly id: string;
/**
* Parameters for CDN authorization.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-authorization
*/
readonly authorization?: CfnOriginEndpoint.AuthorizationProperty | cdk.IResolvable;
/**
* Parameters for Common Media Application Format (CMAF) packaging.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-cmafpackage
*/
readonly cmafPackage?: CfnOriginEndpoint.CmafPackageProperty | cdk.IResolvable;
/**
* Parameters for DASH packaging.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-dashpackage
*/
readonly dashPackage?: CfnOriginEndpoint.DashPackageProperty | cdk.IResolvable;
/**
* Any descriptive information that you want to add to the endpoint for future identification purposes.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-description
*/
readonly description?: string;
/**
* Parameters for Apple HLS packaging.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-hlspackage
*/
readonly hlsPackage?: CfnOriginEndpoint.HlsPackageProperty | cdk.IResolvable;
/**
* A short string that's appended to the end of the endpoint URL to create a unique path to this endpoint.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-manifestname
*/
readonly manifestName?: string;
/**
* Parameters for Microsoft Smooth Streaming packaging.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-msspackage
*/
readonly mssPackage?: CfnOriginEndpoint.MssPackageProperty | cdk.IResolvable;
/**
* 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) .
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-origination
*/
readonly origination?: string;
/**
* 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.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-startoverwindowseconds
*/
readonly startoverWindowSeconds?: number;
/**
* The tags to assign to the endpoint.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-tags
*/
readonly tags?: cdk.CfnTag[];
/**
* 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.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-timedelayseconds
*/
readonly timeDelaySeconds?: number;
/**
* The IP addresses that can access this endpoint.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-whitelist
*/
readonly whitelist?: string[];
}
/**
* A CloudFormation `AWS::MediaPackage::OriginEndpoint`
*
* 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.
*
* @cloudformationResource AWS::MediaPackage::OriginEndpoint
* @stability external
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html
*/
export declare class CfnOriginEndpoint extends cdk.CfnResource implements cdk.IInspectable {
/**
* The CloudFormation resource type name for this resource class.
*/
static readonly CFN_RESOURCE_TYPE_NAME = "AWS::MediaPackage::OriginEndpoint";
/**
* A factory method that creates a new instance of this class from an object
* containing the CloudFormation properties of this resource.
* Used in the @aws-cdk/cloudformation-include module.
*
* @internal
*/
static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnOriginEndpoint;
/**
* The endpoint's unique system-generated resource name, based on the AWS record.
* @cloudformationAttribute Arn
*/
readonly attrArn: string;
/**
* URL for the key provider’s key retrieval API endpoint. Must start with https://.
* @cloudformationAttribute Url
*/
readonly attrUrl: string;
/**
* The ID of the channel associated with this endpoint.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-channelid
*/
channelId: string;
/**
* The manifest ID is required and must be unique within the OriginEndpoint. The ID can't be changed after the endpoint is created.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-id
*/
id: string;
/**
* Parameters for CDN authorization.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-authorization
*/
authorization: CfnOriginEndpoint.AuthorizationProperty | cdk.IResolvable | undefined;
/**
* Parameters for Common Media Application Format (CMAF) packaging.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-cmafpackage
*/
cmafPackage: CfnOriginEndpoint.CmafPackageProperty | cdk.IResolvable | undefined;
/**
* Parameters for DASH packaging.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-dashpackage
*/
dashPackage: CfnOriginEndpoint.DashPackageProperty | cdk.IResolvable | undefined;
/**
* Any descriptive information that you want to add to the endpoint for future identification purposes.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-description
*/
description: string | undefined;
/**
* Parameters for Apple HLS packaging.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-hlspackage
*/
hlsPackage: CfnOriginEndpoint.HlsPackageProperty | cdk.IResolvable | undefined;
/**
* A short string that's appended to the end of the endpoint URL to create a unique path to this endpoint.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-manifestname
*/
manifestName: string | undefined;
/**
* Parameters for Microsoft Smooth Streaming packaging.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-msspackage
*/
mssPackage: CfnOriginEndpoint.MssPackageProperty | cdk.IResolvable | undefined;
/**
* 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) .
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-origination
*/
origination: string | undefined;
/**
* 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.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-startoverwindowseconds
*/
startoverWindowSeconds: number | undefined;
/**
* The tags to assign to the endpoint.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-tags
*/
readonly tags: cdk.TagManager;
/**
* 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.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-timedelayseconds
*/
timeDelaySeconds: number | undefined;
/**
* The IP addresses that can access this endpoint.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html#cfn-mediapackage-originendpoint-whitelist
*/
whitelist: string[] | undefined;
/**
* Create a new `AWS::MediaPackage::OriginEndpoint`.
*
* @param scope - scope in which this resource is defined
* @param id - scoped id of the resource
* @param props - resource properties
*/
constructor(scope: constructs.Construct, id: string, props: CfnOriginEndpointProps);
/**
* Examines the CloudFormation resource and discloses attributes.
*
* @param inspector - tree inspector to collect and process attributes
*
*/
inspect(inspector: cdk.TreeInspector): void;
protected get cfnProperties(): {
[key: string]: any;
};
protected renderProperties(props: {
[key: string]: any;
}): {
[key: string]: any;
};
}
export declare namespace CfnOriginEndpoint {
/**
* Parameters for enabling CDN authorization on the endpoint.
*
* @struct
* @stability external
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-authorization.html
*/
interface AuthorizationProperty {
/**
* 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.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-authorization.html#cfn-mediapackage-originendpoint-authorization-cdnidentifiersecret
*/
readonly cdnIdentifierSecret: string;
/**
* The Amazon Resource Name (ARN) for the IAM role that allows AWS Elemental MediaPackage to communicate with AWS Secrets Manager .
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-authorization.html#cfn-mediapackage-originendpoint-authorization-secretsrolearn
*/
readonly secretsRoleArn: string;
}
}
export declare namespace CfnOriginEndpoint {
/**
* Holds encryption information so that access to the content can be controlled by a DRM solution.
*
* @struct
* @stability external
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-cmafencryption.html
*/
interface CmafEncryptionProperty {
/**
* 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).
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-cmafencryption.html#cfn-mediapackage-originendpoint-cmafencryption-constantinitializationvector
*/
readonly constantInitializationVector?: string;
/**
* `CfnOriginEndpoint.CmafEncryptionProperty.EncryptionMethod`
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-cmafencryption.html#cfn-mediapackage-originendpoint-cmafencryption-encryptionmethod
*/
readonly encryptionMethod?: string;
/**
* 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.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-cmafencryption.html#cfn-mediapackage-originendpoint-cmafencryption-keyrotationintervalseconds
*/
readonly keyRotationIntervalSeconds?: number;
/**
* Parameters for the SPEKE key provider.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-cmafencryption.html#cfn-mediapackage-originendpoint-cmafencryption-spekekeyprovider
*/
readonly spekeKeyProvider: CfnOriginEndpoint.SpekeKeyProviderProperty | cdk.IResolvable;
}
}
export declare namespace CfnOriginEndpoint {
/**
* Parameters for Common Media Application Format (CMAF) packaging.
*
* @struct
* @stability external
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-cmafpackage.html
*/
interface CmafPackageProperty {
/**
* Parameters for encrypting content.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-cmafpackage.html#cfn-mediapackage-originendpoint-cmafpackage-encryption
*/
readonly encryption?: CfnOriginEndpoint.CmafEncryptionProperty | cdk.IResolvable;
/**
* A list of HLS manifest configurations that are available from this endpoint.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-cmafpackage.html#cfn-mediapackage-originendpoint-cmafpackage-hlsmanifests
*/
readonly hlsManifests?: Array<CfnOriginEndpoint.HlsManifestProperty | cdk.IResolvable> | cdk.IResolvable;
/**
* Duration (in seconds) of each segment. Actual segments are rounded to the nearest multiple of the source segment duration.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-cmafpackage.html#cfn-mediapackage-originendpoint-cmafpackage-segmentdurationseconds
*/
readonly segmentDurationSeconds?: number;
/**
* An optional custom string that is prepended to the name of each segment. If not specified, the segment prefix defaults to the ChannelId.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-cmafpackage.html#cfn-mediapackage-originendpoint-cmafpackage-segmentprefix
*/
readonly segmentPrefix?: string;
/**
* Limitations for outputs from the endpoint, based on the video bitrate.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-cmafpackage.html#cfn-mediapackage-originendpoint-cmafpackage-streamselection
*/
readonly streamSelection?: CfnOriginEndpoint.StreamSelectionProperty | cdk.IResolvable;
}
}
export declare namespace CfnOriginEndpoint {
/**
* Holds encryption information so that access to the content can be controlled by a DRM solution.
*
* @struct
* @stability external
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-dashencryption.html
*/
interface DashEncryptionProperty {
/**
* 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.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-dashencryption.html#cfn-mediapackage-originendpoint-dashencryption-keyrotationintervalseconds
*/
readonly keyRotationIntervalSeconds?: number;
/**
* Parameters for the SPEKE key provider.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-dashencryption.html#cfn-mediapackage-originendpoint-dashencryption-spekekeyprovider
*/
readonly spekeKeyProvider: CfnOriginEndpoint.SpekeKeyProviderProperty | cdk.IResolvable;
}
}
export declare namespace CfnOriginEndpoint {
/**
* Parameters for DASH packaging.
*
* @struct
* @stability external
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-dashpackage.html
*/
interface DashPackageProperty {
/**
* 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` .
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-dashpackage.html#cfn-mediapackage-originendpoint-dashpackage-adtriggers
*/
readonly adTriggers?: string[];
/**
* 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) .
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-dashpackage.html#cfn-mediapackage-originendpoint-dashpackage-adsondeliveryrestrictions
*/
readonly adsOnDeliveryRestrictions?: string;
/**
* Parameters for encrypting content.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-dashpackage.html#cfn-mediapackage-originendpoint-dashpackage-encryption
*/
readonly encryption?: CfnOriginEndpoint.DashEncryptionProperty | cdk.IResolvable;
/**
* 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.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-dashpackage.html#cfn-mediapackage-originendpoint-dashpackage-includeiframeonlystream
*/
readonly includeIframeOnlyStream?: boolean | cdk.IResolvable;
/**
* 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.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-dashpackage.html#cfn-mediapackage-originendpoint-dashpackage-manifestlayout
*/
readonly manifestLayout?: string;
/**
* Time window (in seconds) contained in each manifest.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-dashpackage.html#cfn-mediapackage-originendpoint-dashpackage-manifestwindowseconds
*/
readonly manifestWindowSeconds?: number;
/**
* Minimum amount of content (measured in seconds) that a player must keep available in the buffer.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-dashpackage.html#cfn-mediapackage-originendpoint-dashpackage-minbuffertimeseconds
*/
readonly minBufferTimeSeconds?: number;
/**
* Minimum amount of time (in seconds) that the player should wait before requesting updates to the manifest.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-dashpackage.html#cfn-mediapackage-originendpoint-dashpackage-minupdateperiodseconds
*/
readonly minUpdatePeriodSeconds?: number;
/**
* 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.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-dashpackage.html#cfn-mediapackage-originendpoint-dashpackage-periodtriggers
*/
readonly periodTriggers?: string[];
/**
* 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.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-dashpackage.html#cfn-mediapackage-originendpoint-dashpackage-profile
*/
readonly profile?: string;
/**
* Duration (in seconds) of each fragment. Actual fragments are rounded to the nearest multiple of the source fragment duration.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-dashpackage.html#cfn-mediapackage-originendpoint-dashpackage-segmentdurationseconds
*/
readonly segmentDurationSeconds?: number;
/**
* 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` .
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-dashpackage.html#cfn-mediapackage-originendpoint-dashpackage-segmenttemplateformat
*/
readonly segmentTemplateFormat?: string;
/**
* Limitations for outputs from the endpoint, based on the video bitrate.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-dashpackage.html#cfn-mediapackage-originendpoint-dashpackage-streamselection
*/
readonly streamSelection?: CfnOriginEndpoint.StreamSelectionProperty | cdk.IResolvable;
/**
* Amount of time (in seconds) that the player should be from the live point at the end of the manifest.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-dashpackage.html#cfn-mediapackage-originendpoint-dashpackage-suggestedpresentationdelayseconds
*/
readonly suggestedPresentationDelaySeconds?: number;
/**
* Determines the type of UTC timing included in the DASH Media Presentation Description (MPD).
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-dashpackage.html#cfn-mediapackage-originendpoint-dashpackage-utctiming
*/
readonly utcTiming?: string;
/**
* Specifies the value attribute of the UTC timing field when utcTiming is set to HTTP-ISO or HTTP-HEAD.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-dashpackage.html#cfn-mediapackage-originendpoint-dashpackage-utctiminguri
*/
readonly utcTimingUri?: string;
}
}
export declare namespace CfnOriginEndpoint {
/**
* 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` .
*
* @struct
* @stability external
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-encryptioncontractconfiguration.html
*/
interface EncryptionContractConfigurationProperty {
}
}
export declare namespace CfnOriginEndpoint {
/**
* Holds encryption information so that access to the content can be controlled by a DRM solution.
*
* @struct
* @stability external
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-hlsencryption.html
*/
interface HlsEncryptionProperty {
/**
* A 128-bit, 16-byte hex value represented by a 32-character string, used with the key for encrypting blocks.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-hlsencryption.html#cfn-mediapackage-originendpoint-hlsencryption-constantinitializationvector
*/
readonly constantInitializationVector?: string;
/**
* HLS encryption type.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-hlsencryption.html#cfn-mediapackage-originendpoint-hlsencryption-encryptionmethod
*/
readonly encryptionMethod?: string;
/**
* 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.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-hlsencryption.html#cfn-mediapackage-originendpoint-hlsencryption-keyrotationintervalseconds
*/
readonly keyRotationIntervalSeconds?: number;
/**
* Repeat the `EXT-X-KEY` directive for every media segment. This might result in an increase in client requests to the DRM server.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-hlsencryption.html#cfn-mediapackage-originendpoint-hlsencryption-repeatextxkey
*/
readonly repeatExtXKey?: boolean | cdk.IResolvable;
/**
* Parameters for the SPEKE key provider.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-hlsencryption.html#cfn-mediapackage-originendpoint-hlsencryption-spekekeyprovider
*/
readonly spekeKeyProvider: CfnOriginEndpoint.SpekeKeyProviderProperty | cdk.IResolvable;
}
}
export declare namespace CfnOriginEndpoint {
/**
* An HTTP Live Streaming (HLS) manifest configuration on a CMAF endpoint.
*
* @struct
* @stability external
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackage-originendpoint-hlsmanifest.html
*/
interface HlsManifestProperty {
/**
* 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.
*
* @link http://docs.aws.amazon.