UNPKG

aws-cdk-lib

Version:

Version 2 of the AWS Cloud Development Kit library

984 lines 91.9 kB
import * as cdk from "../../core/lib"; import * as constructs from "constructs"; import * as cfn_parse from "../../core/lib/helpers-internal"; import { ChannelGroupReference, ChannelPolicyReference, ChannelReference, IChannelGroupRef, IChannelPolicyRef, IChannelRef, IOriginEndpointPolicyRef, IOriginEndpointRef, OriginEndpointPolicyReference, OriginEndpointReference } from "../../interfaces/generated/aws-mediapackagev2-interfaces.generated"; /** * 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::MediaPackageV2::Channel * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channel.html */ export declare class CfnChannel extends cdk.CfnResource implements cdk.IInspectable, IChannelRef, cdk.ITaggableV2 { /** * The CloudFormation resource type name for this resource class. */ static readonly CFN_RESOURCE_TYPE_NAME: string; /** * Build a CfnChannel from CloudFormation properties * * 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; /** * Checks whether the given object is a CfnChannel */ static isCfnChannel(x: any): x is CfnChannel; static arnForChannel(resource: IChannelRef): string; /** * Tag Manager which manages the tags for this resource */ readonly cdkTagManager: cdk.TagManager; /** * The name of the channel group associated with the channel configuration. */ channelGroupName: string; /** * The name of the channel. */ channelName: string; /** * The description of the channel. */ description?: string; /** * The configuration for input switching based on the media quality confidence score (MQCS) as provided from AWS Elemental MediaLive. */ inputSwitchConfiguration?: CfnChannel.InputSwitchConfigurationProperty | cdk.IResolvable; /** * The input type will be an immutable field which will be used to define whether the channel will allow CMAF ingest or HLS ingest. */ inputType?: string; /** * The settings for what common media server data (CMSD) headers AWS Elemental MediaPackage includes in responses to the CDN. */ outputHeaderConfiguration?: cdk.IResolvable | CfnChannel.OutputHeaderConfigurationProperty; tags?: Array<cdk.CfnTag>; /** * Create a new `AWS::MediaPackageV2::Channel`. * * @param scope Scope in which this resource is defined * @param id Construct identifier for this resource (unique in its scope) * @param props Resource properties */ constructor(scope: constructs.Construct, id: string, props: CfnChannelProps); get channelRef(): ChannelReference; /** * The Amazon Resource Name (ARN) of the channel. * * @cloudformationAttribute Arn */ get attrArn(): string; /** * The timestamp of the creation of the channel. * * @cloudformationAttribute CreatedAt */ get attrCreatedAt(): string; /** * The ingest endpoints associated with the channel. * * @cloudformationAttribute IngestEndpoints */ get attrIngestEndpoints(): cdk.IResolvable; /** * The ingest domain URL where the source stream should be sent. * * @cloudformationAttribute IngestEndpointUrls */ get attrIngestEndpointUrls(): Array<string>; /** * The timestamp of the modification of the channel. * * @cloudformationAttribute ModifiedAt */ get attrModifiedAt(): string; protected get cfnProperties(): Record<string, any>; /** * Examines the CloudFormation resource and discloses attributes * * @param inspector tree inspector to collect and process attributes */ inspect(inspector: cdk.TreeInspector): void; protected renderProperties(props: Record<string, any>): Record<string, any>; } export declare namespace CfnChannel { /** * The configuration for input switching based on the media quality confidence score (MQCS) as provided from AWS Elemental MediaLive. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-channel-inputswitchconfiguration.html */ interface InputSwitchConfigurationProperty { /** * When true, AWS Elemental MediaPackage performs input switching based on the MQCS. * * Default is false. This setting is valid only when `InputType` is `CMAF` . * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-channel-inputswitchconfiguration.html#cfn-mediapackagev2-channel-inputswitchconfiguration-mqcsinputswitching */ readonly mqcsInputSwitching?: boolean | cdk.IResolvable; /** * For CMAF inputs, indicates which input MediaPackage should prefer when both inputs have equal MQCS scores. * * Select `1` to prefer the first ingest endpoint, or `2` to prefer the second ingest endpoint. If you don't specify a preferred input, MediaPackage uses its default switching behavior when MQCS scores are equal. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-channel-inputswitchconfiguration.html#cfn-mediapackagev2-channel-inputswitchconfiguration-preferredinput */ readonly preferredInput?: number; } /** * The settings for what common media server data (CMSD) headers AWS Elemental MediaPackage includes in responses to the CDN. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-channel-outputheaderconfiguration.html */ interface OutputHeaderConfigurationProperty { /** * When true, AWS Elemental MediaPackage includes the MQCS in responses to the CDN. * * This setting is valid only when `InputType` is `CMAF` . * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-channel-outputheaderconfiguration.html#cfn-mediapackagev2-channel-outputheaderconfiguration-publishmqcs */ readonly publishMqcs?: boolean | cdk.IResolvable; } /** * The input URL where the source stream should be sent. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-channel-ingestendpoint.html */ interface IngestEndpointProperty { /** * The identifier associated with the ingest endpoint of the channel. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-channel-ingestendpoint.html#cfn-mediapackagev2-channel-ingestendpoint-id */ readonly id?: string; /** * The URL associated with the ingest endpoint of the channel. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-channel-ingestendpoint.html#cfn-mediapackagev2-channel-ingestendpoint-url */ readonly url?: string; } } /** * Properties for defining a `CfnChannel` * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channel.html */ export interface CfnChannelProps { /** * The name of the channel group associated with the channel configuration. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channel.html#cfn-mediapackagev2-channel-channelgroupname */ readonly channelGroupName: string; /** * The name of the channel. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channel.html#cfn-mediapackagev2-channel-channelname */ readonly channelName: string; /** * The description of the channel. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channel.html#cfn-mediapackagev2-channel-description */ readonly description?: string; /** * The configuration for input switching based on the media quality confidence score (MQCS) as provided from AWS Elemental MediaLive. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channel.html#cfn-mediapackagev2-channel-inputswitchconfiguration */ readonly inputSwitchConfiguration?: CfnChannel.InputSwitchConfigurationProperty | cdk.IResolvable; /** * The input type will be an immutable field which will be used to define whether the channel will allow CMAF ingest or HLS ingest. * * If unprovided, it will default to HLS to preserve current behavior. * * The allowed values are: * * - `HLS` - The HLS streaming specification (which defines M3U8 manifests and TS segments). * - `CMAF` - The DASH-IF CMAF Ingest specification (which defines CMAF segments with optional DASH manifests). * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channel.html#cfn-mediapackagev2-channel-inputtype */ readonly inputType?: string; /** * The settings for what common media server data (CMSD) headers AWS Elemental MediaPackage includes in responses to the CDN. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channel.html#cfn-mediapackagev2-channel-outputheaderconfiguration */ readonly outputHeaderConfiguration?: cdk.IResolvable | CfnChannel.OutputHeaderConfigurationProperty; /** * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channel.html#cfn-mediapackagev2-channel-tags */ readonly tags?: Array<cdk.CfnTag>; } /** * Specifies the configuration for a MediaPackage V2 channel group. * * @cloudformationResource AWS::MediaPackageV2::ChannelGroup * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channelgroup.html */ export declare class CfnChannelGroup extends cdk.CfnResource implements cdk.IInspectable, IChannelGroupRef, cdk.ITaggableV2 { /** * The CloudFormation resource type name for this resource class. */ static readonly CFN_RESOURCE_TYPE_NAME: string; /** * Build a CfnChannelGroup from CloudFormation properties * * 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): CfnChannelGroup; /** * Checks whether the given object is a CfnChannelGroup */ static isCfnChannelGroup(x: any): x is CfnChannelGroup; static arnForChannelGroup(resource: IChannelGroupRef): string; /** * Tag Manager which manages the tags for this resource */ readonly cdkTagManager: cdk.TagManager; /** * The name of the channel group. */ channelGroupName: string; /** * The configuration for a MediaPackage V2 channel group. */ description?: string; /** * The tags associated with the channel group. */ tags?: Array<cdk.CfnTag>; /** * Create a new `AWS::MediaPackageV2::ChannelGroup`. * * @param scope Scope in which this resource is defined * @param id Construct identifier for this resource (unique in its scope) * @param props Resource properties */ constructor(scope: constructs.Construct, id: string, props: CfnChannelGroupProps); get channelGroupRef(): ChannelGroupReference; /** * The Amazon Resource Name (ARN) of the channel group. * * @cloudformationAttribute Arn */ get attrArn(): string; /** * The timestamp of the creation of the channel group. * * @cloudformationAttribute CreatedAt */ get attrCreatedAt(): string; /** * The egress domain of the channel group. * * @cloudformationAttribute EgressDomain */ get attrEgressDomain(): string; /** * The timestamp of the modification of the channel group. * * @cloudformationAttribute ModifiedAt */ get attrModifiedAt(): string; protected get cfnProperties(): Record<string, any>; /** * Examines the CloudFormation resource and discloses attributes * * @param inspector tree inspector to collect and process attributes */ inspect(inspector: cdk.TreeInspector): void; protected renderProperties(props: Record<string, any>): Record<string, any>; } /** * Properties for defining a `CfnChannelGroup` * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channelgroup.html */ export interface CfnChannelGroupProps { /** * The name of the channel group. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channelgroup.html#cfn-mediapackagev2-channelgroup-channelgroupname */ readonly channelGroupName: string; /** * The configuration for a MediaPackage V2 channel group. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channelgroup.html#cfn-mediapackagev2-channelgroup-description */ readonly description?: string; /** * The tags associated with the channel group. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channelgroup.html#cfn-mediapackagev2-channelgroup-tags */ readonly tags?: Array<cdk.CfnTag>; } /** * Specifies the configuration parameters of a MediaPackage V2 channel policy. * * @cloudformationResource AWS::MediaPackageV2::ChannelPolicy * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channelpolicy.html */ export declare class CfnChannelPolicy extends cdk.CfnResource implements cdk.IInspectable, IChannelPolicyRef { /** * The CloudFormation resource type name for this resource class. */ static readonly CFN_RESOURCE_TYPE_NAME: string; /** * Build a CfnChannelPolicy from CloudFormation properties * * 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): CfnChannelPolicy; /** * Checks whether the given object is a CfnChannelPolicy */ static isCfnChannelPolicy(x: any): x is CfnChannelPolicy; /** * The name of the channel group associated with the channel policy. */ channelGroupName: string; /** * The name of the channel associated with the channel policy. */ channelName: string; /** * The policy associated with the channel. */ policy: any | cdk.IResolvable; /** * Create a new `AWS::MediaPackageV2::ChannelPolicy`. * * @param scope Scope in which this resource is defined * @param id Construct identifier for this resource (unique in its scope) * @param props Resource properties */ constructor(scope: constructs.Construct, id: string, props: CfnChannelPolicyProps); get channelPolicyRef(): ChannelPolicyReference; protected get cfnProperties(): Record<string, any>; /** * Examines the CloudFormation resource and discloses attributes * * @param inspector tree inspector to collect and process attributes */ inspect(inspector: cdk.TreeInspector): void; protected renderProperties(props: Record<string, any>): Record<string, any>; } /** * Properties for defining a `CfnChannelPolicy` * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channelpolicy.html */ export interface CfnChannelPolicyProps { /** * The name of the channel group associated with the channel policy. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channelpolicy.html#cfn-mediapackagev2-channelpolicy-channelgroupname */ readonly channelGroupName: string; /** * The name of the channel associated with the channel policy. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channelpolicy.html#cfn-mediapackagev2-channelpolicy-channelname */ readonly channelName: string; /** * The policy associated with the channel. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channelpolicy.html#cfn-mediapackagev2-channelpolicy-policy */ readonly policy: any | cdk.IResolvable; } /** * Specifies the configuration parameters for a MediaPackage V2 origin endpoint. * * @cloudformationResource AWS::MediaPackageV2::OriginEndpoint * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-originendpoint.html */ export declare class CfnOriginEndpoint extends cdk.CfnResource implements cdk.IInspectable, IOriginEndpointRef, cdk.ITaggableV2 { /** * The CloudFormation resource type name for this resource class. */ static readonly CFN_RESOURCE_TYPE_NAME: string; /** * Build a CfnOriginEndpoint from CloudFormation properties * * 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; /** * Checks whether the given object is a CfnOriginEndpoint */ static isCfnOriginEndpoint(x: any): x is CfnOriginEndpoint; static arnForOriginEndpoint(resource: IOriginEndpointRef): string; /** * Tag Manager which manages the tags for this resource */ readonly cdkTagManager: cdk.TagManager; /** * The name of the channel group associated with the origin endpoint configuration. */ channelGroupName: string; /** * The channel name associated with the origin endpoint. */ channelName: string; /** * The container type associated with the origin endpoint configuration. */ containerType: string; /** * A DASH manifest configuration. */ dashManifests?: Array<CfnOriginEndpoint.DashManifestConfigurationProperty | cdk.IResolvable> | cdk.IResolvable; /** * The description associated with the origin endpoint. */ description?: string; /** * The failover settings for the endpoint. */ forceEndpointErrorConfiguration?: CfnOriginEndpoint.ForceEndpointErrorConfigurationProperty | cdk.IResolvable; /** * The HLS manifests associated with the origin endpoint configuration. */ hlsManifests?: Array<CfnOriginEndpoint.HlsManifestConfigurationProperty | cdk.IResolvable> | cdk.IResolvable; /** * The low-latency HLS (LL-HLS) manifests associated with the origin endpoint. */ lowLatencyHlsManifests?: Array<cdk.IResolvable | CfnOriginEndpoint.LowLatencyHlsManifestConfigurationProperty> | cdk.IResolvable; /** * A list of Microsoft Smooth Streaming (MSS) manifest configurations associated with the origin endpoint. */ mssManifests?: Array<cdk.IResolvable | CfnOriginEndpoint.MssManifestConfigurationProperty> | cdk.IResolvable; /** * The name of the origin endpoint associated with the origin endpoint configuration. */ originEndpointName: string; /** * The segment associated with the origin endpoint. */ segment?: cdk.IResolvable | CfnOriginEndpoint.SegmentProperty; /** * The size of the window (in seconds) to specify a window of the live stream that's available for on-demand viewing. */ startoverWindowSeconds?: number; /** * The tags associated with the origin endpoint. */ tags?: Array<cdk.CfnTag>; /** * Create a new `AWS::MediaPackageV2::OriginEndpoint`. * * @param scope Scope in which this resource is defined * @param id Construct identifier for this resource (unique in its scope) * @param props Resource properties */ constructor(scope: constructs.Construct, id: string, props: CfnOriginEndpointProps); get originEndpointRef(): OriginEndpointReference; /** * The Amazon Resource Name (ARN) of the origin endpoint. * * @cloudformationAttribute Arn */ get attrArn(): string; /** * The timestamp of the creation of the origin endpoint. * * @cloudformationAttribute CreatedAt */ get attrCreatedAt(): string; /** * The egress domain URL for stream delivery from MediaPackage. * * @cloudformationAttribute DashManifestUrls */ get attrDashManifestUrls(): Array<string>; /** * The egress domain URL for stream delivery from MediaPackage. * * @cloudformationAttribute HlsManifestUrls */ get attrHlsManifestUrls(): Array<string>; /** * The egress domain URL for stream delivery from MediaPackage. * * @cloudformationAttribute LowLatencyHlsManifestUrls */ get attrLowLatencyHlsManifestUrls(): Array<string>; /** * The timestamp of the modification of the origin endpoint. * * @cloudformationAttribute ModifiedAt */ get attrModifiedAt(): string; /** * @cloudformationAttribute MssManifestUrls */ get attrMssManifestUrls(): Array<string>; protected get cfnProperties(): Record<string, any>; /** * Examines the CloudFormation resource and discloses attributes * * @param inspector tree inspector to collect and process attributes */ inspect(inspector: cdk.TreeInspector): void; protected renderProperties(props: Record<string, any>): Record<string, any>; } export declare namespace CfnOriginEndpoint { /** * Specify a low-latency HTTP live streaming (LL-HLS) manifest configuration. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-lowlatencyhlsmanifestconfiguration.html */ interface LowLatencyHlsManifestConfigurationProperty { /** * The name of the child manifest associated with the low-latency HLS (LL-HLS) manifest configuration of the origin endpoint. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-lowlatencyhlsmanifestconfiguration.html#cfn-mediapackagev2-originendpoint-lowlatencyhlsmanifestconfiguration-childmanifestname */ readonly childManifestName?: string; /** * Filter configuration includes settings for manifest filtering, start and end times, and time delay that apply to all of your egress requests for this manifest. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-lowlatencyhlsmanifestconfiguration.html#cfn-mediapackagev2-originendpoint-lowlatencyhlsmanifestconfiguration-filterconfiguration */ readonly filterConfiguration?: CfnOriginEndpoint.FilterConfigurationProperty | cdk.IResolvable; /** * A short string that's appended to the endpoint URL. * * The manifest name creates a unique path to this endpoint. If you don't enter a value, MediaPackage uses the default manifest name, `index` . MediaPackage automatically inserts the format extension, such as `.m3u8` . You can't use the same manifest name if you use HLS manifest and low-latency HLS manifest. The `manifestName` on the `HLSManifest` object overrides the `manifestName` you provided on the `originEndpoint` object. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-lowlatencyhlsmanifestconfiguration.html#cfn-mediapackagev2-originendpoint-lowlatencyhlsmanifestconfiguration-manifestname */ readonly manifestName: string; /** * The total duration (in seconds) of the manifest's content. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-lowlatencyhlsmanifestconfiguration.html#cfn-mediapackagev2-originendpoint-lowlatencyhlsmanifestconfiguration-manifestwindowseconds */ readonly manifestWindowSeconds?: number; /** * Inserts `EXT-X-PROGRAM-DATE-TIME` tags in the output manifest at the interval that you specify. * * If you don't enter an interval, `EXT-X-PROGRAM-DATE-TIME` tags aren't included in the manifest. The tags sync the stream to the wall clock so that viewers can seek to a specific time in the playback timeline on the player. * * Irrespective of this parameter, if any `ID3Timed` metadata is in the HLS input, MediaPackage passes through that metadata to the HLS output. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-lowlatencyhlsmanifestconfiguration.html#cfn-mediapackagev2-originendpoint-lowlatencyhlsmanifestconfiguration-programdatetimeintervalseconds */ readonly programDateTimeIntervalSeconds?: number; /** * The SCTE-35 HLS configuration associated with the low-latency HLS (LL-HLS) manifest configuration of the origin endpoint. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-lowlatencyhlsmanifestconfiguration.html#cfn-mediapackagev2-originendpoint-lowlatencyhlsmanifestconfiguration-sctehls */ readonly scteHls?: cdk.IResolvable | CfnOriginEndpoint.ScteHlsProperty; /** * To insert an EXT-X-START tag in your HLS playlist, specify a StartTag configuration object with a valid TimeOffset. * * When you do, you can also optionally specify whether to include a PRECISE value in the EXT-X-START tag. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-lowlatencyhlsmanifestconfiguration.html#cfn-mediapackagev2-originendpoint-lowlatencyhlsmanifestconfiguration-starttag */ readonly startTag?: cdk.IResolvable | CfnOriginEndpoint.StartTagProperty; /** * The URL of the low-latency HLS (LL-HLS) manifest configuration of the origin endpoint. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-lowlatencyhlsmanifestconfiguration.html#cfn-mediapackagev2-originendpoint-lowlatencyhlsmanifestconfiguration-url */ readonly url?: string; /** * When enabled, MediaPackage URL-encodes the query string for API requests for LL-HLS child manifests to comply with AWS Signature Version 4 (SigV4) signature signing protocol. * * For more information, see [AWS Signature Version 4 for API requests](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_sigv.html) in *AWS Identity and Access Management User Guide* . * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-lowlatencyhlsmanifestconfiguration.html#cfn-mediapackagev2-originendpoint-lowlatencyhlsmanifestconfiguration-urlencodechildmanifest */ readonly urlEncodeChildManifest?: boolean | cdk.IResolvable; } /** * The SCTE-35 HLS configuration associated with the origin endpoint. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-sctehls.html */ interface ScteHlsProperty { /** * The SCTE-35 HLS ad-marker configuration. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-sctehls.html#cfn-mediapackagev2-originendpoint-sctehls-admarkerhls */ readonly adMarkerHls?: string; } /** * Filter configuration includes settings for manifest filtering, start and end times, and time delay that apply to all of your egress requests for this manifest. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-filterconfiguration.html */ interface FilterConfigurationProperty { /** * Optionally specify the clip start time for all of your manifest egress requests. * * When you include clip start time, note that you cannot use clip start time query parameters for this manifest's endpoint URL. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-filterconfiguration.html#cfn-mediapackagev2-originendpoint-filterconfiguration-clipstarttime */ readonly clipStartTime?: string; /** * <p>Optionally specify one or more DRM settings for all of your manifest egress requests. * * When you include a DRM setting, note that you cannot use an identical DRM setting query parameter for this manifest's endpoint URL.</p> * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-filterconfiguration.html#cfn-mediapackagev2-originendpoint-filterconfiguration-drmsettings */ readonly drmSettings?: string; /** * Optionally specify the end time for all of your manifest egress requests. * * When you include end time, note that you cannot use end time query parameters for this manifest's endpoint URL. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-filterconfiguration.html#cfn-mediapackagev2-originendpoint-filterconfiguration-end */ readonly end?: string; /** * Optionally specify one or more manifest filters for all of your manifest egress requests. * * When you include a manifest filter, note that you cannot use an identical manifest filter query parameter for this manifest's endpoint URL. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-filterconfiguration.html#cfn-mediapackagev2-originendpoint-filterconfiguration-manifestfilter */ readonly manifestFilter?: string; /** * Optionally specify the start time for all of your manifest egress requests. * * When you include start time, note that you cannot use start time query parameters for this manifest's endpoint URL. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-filterconfiguration.html#cfn-mediapackagev2-originendpoint-filterconfiguration-start */ readonly start?: string; /** * Optionally specify the time delay for all of your manifest egress requests. * * Enter a value that is smaller than your endpoint's startover window. When you include time delay, note that you cannot use time delay query parameters for this manifest's endpoint URL. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-filterconfiguration.html#cfn-mediapackagev2-originendpoint-filterconfiguration-timedelayseconds */ readonly timeDelaySeconds?: number; } /** * To insert an EXT-X-START tag in your HLS playlist, specify a StartTag configuration object with a valid TimeOffset. * * When you do, you can also optionally specify whether to include a PRECISE value in the EXT-X-START tag. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-starttag.html */ interface StartTagProperty { /** * Specify the value for PRECISE within your EXT-X-START tag. * * Leave blank, or choose false, to use the default value NO. Choose yes to use the value YES. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-starttag.html#cfn-mediapackagev2-originendpoint-starttag-precise */ readonly precise?: boolean | cdk.IResolvable; /** * Specify the value for TIME-OFFSET within your EXT-X-START tag. * * Enter a signed floating point value which, if positive, must be less than the configured manifest duration minus three times the configured segment target duration. If negative, the absolute value must be larger than three times the configured segment target duration, and the absolute value must be smaller than the configured manifest duration. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-starttag.html#cfn-mediapackagev2-originendpoint-starttag-timeoffset */ readonly timeOffset: number; } /** * The HLS manifest configuration associated with the origin endpoint. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-hlsmanifestconfiguration.html */ interface HlsManifestConfigurationProperty { /** * The name of the child manifest associated with the HLS manifest configuration. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-hlsmanifestconfiguration.html#cfn-mediapackagev2-originendpoint-hlsmanifestconfiguration-childmanifestname */ readonly childManifestName?: string; /** * Filter configuration includes settings for manifest filtering, start and end times, and time delay that apply to all of your egress requests for this manifest. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-hlsmanifestconfiguration.html#cfn-mediapackagev2-originendpoint-hlsmanifestconfiguration-filterconfiguration */ readonly filterConfiguration?: CfnOriginEndpoint.FilterConfigurationProperty | cdk.IResolvable; /** * The name of the manifest associated with the HLS manifest configuration. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-hlsmanifestconfiguration.html#cfn-mediapackagev2-originendpoint-hlsmanifestconfiguration-manifestname */ readonly manifestName: string; /** * The duration of the manifest window, in seconds, for the HLS manifest configuration. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-hlsmanifestconfiguration.html#cfn-mediapackagev2-originendpoint-hlsmanifestconfiguration-manifestwindowseconds */ readonly manifestWindowSeconds?: number; /** * The `EXT-X-PROGRAM-DATE-TIME` interval, in seconds, associated with the HLS manifest configuration. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-hlsmanifestconfiguration.html#cfn-mediapackagev2-originendpoint-hlsmanifestconfiguration-programdatetimeintervalseconds */ readonly programDateTimeIntervalSeconds?: number; /** * THE SCTE-35 HLS configuration associated with the HLS manifest configuration. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-hlsmanifestconfiguration.html#cfn-mediapackagev2-originendpoint-hlsmanifestconfiguration-sctehls */ readonly scteHls?: cdk.IResolvable | CfnOriginEndpoint.ScteHlsProperty; /** * To insert an EXT-X-START tag in your HLS playlist, specify a StartTag configuration object with a valid TimeOffset. * * When you do, you can also optionally specify whether to include a PRECISE value in the EXT-X-START tag. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-hlsmanifestconfiguration.html#cfn-mediapackagev2-originendpoint-hlsmanifestconfiguration-starttag */ readonly startTag?: cdk.IResolvable | CfnOriginEndpoint.StartTagProperty; /** * The URL of the HLS manifest configuration. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-hlsmanifestconfiguration.html#cfn-mediapackagev2-originendpoint-hlsmanifestconfiguration-url */ readonly url?: string; /** * When enabled, MediaPackage URL-encodes the query string for API requests for HLS child manifests to comply with AWS Signature Version 4 (SigV4) signature signing protocol. * * For more information, see [AWS Signature Version 4 for API requests](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_sigv.html) in *AWS Identity and Access Management User Guide* . * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-hlsmanifestconfiguration.html#cfn-mediapackagev2-originendpoint-hlsmanifestconfiguration-urlencodechildmanifest */ readonly urlEncodeChildManifest?: boolean | cdk.IResolvable; } /** * The segment configuration, including the segment name, duration, and other configuration values. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-segment.html */ interface SegmentProperty { /** * Whether to use encryption for the segment. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-segment.html#cfn-mediapackagev2-originendpoint-segment-encryption */ readonly encryption?: CfnOriginEndpoint.EncryptionProperty | cdk.IResolvable; /** * Whether the segment includes I-frame-only streams. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-segment.html#cfn-mediapackagev2-originendpoint-segment-includeiframeonlystreams */ readonly includeIframeOnlyStreams?: boolean | cdk.IResolvable; /** * The SCTE-35 configuration associated with the segment. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-segment.html#cfn-mediapackagev2-originendpoint-segment-scte */ readonly scte?: cdk.IResolvable | CfnOriginEndpoint.ScteProperty; /** * The duration of the segment, in seconds. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-segment.html#cfn-mediapackagev2-originendpoint-segment-segmentdurationseconds */ readonly segmentDurationSeconds?: number; /** * The name of the segment associated with the origin endpoint. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-segment.html#cfn-mediapackagev2-originendpoint-segment-segmentname */ readonly segmentName?: string; /** * Whether the segment includes DVB subtitles. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-segment.html#cfn-mediapackagev2-originendpoint-segment-tsincludedvbsubtitles */ readonly tsIncludeDvbSubtitles?: boolean | cdk.IResolvable; /** * Whether the segment is an audio rendition group. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-segment.html#cfn-mediapackagev2-originendpoint-segment-tsuseaudiorenditiongroup */ readonly tsUseAudioRenditionGroup?: boolean | cdk.IResolvable; } /** * The SCTE-35 configuration associated with the origin endpoint. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-scte.html */ interface ScteProperty { /** * The filter associated with the SCTE-35 configuration. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-scte.html#cfn-mediapackagev2-originendpoint-scte-sctefilter */ readonly scteFilter?: Array<string>; /** * Controls whether SCTE-35 messages are included in segment files. * * - None – SCTE-35 messages are not included in segments (default) * - All – SCTE-35 messages are embedded in segment data * * For DASH manifests, when set to `All` , an `InbandEventStream` tag signals that SCTE messages are present in segments. This setting works independently of manifest ad markers. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-scte.html#cfn-mediapackagev2-originendpoint-scte-scteinsegments */ readonly scteInSegments?: string; } /** * The parameters for encrypting content. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-encryption.html */ interface EncryptionProperty { /** * Excludes SEIG and SGPD boxes from segment metadata in CMAF containers. * * When set to `true` , MediaPackage omits these DRM metadata boxes from CMAF segments, which can improve compatibility with certain devices and players that don't support these boxes. * * Important considerations: * * - This setting only affects CMAF container formats * - Key rotation can still be handled through media playlist signaling * - PSSH and TENC boxes remain unaffected * - Default behavior is preserved when this setting is disabled * * Valid values: `true` | `false` * * Default: `false` * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-encryption.html#cfn-mediapackagev2-originendpoint-encryption-cmafexcludesegmentdrmmetadata */ readonly cmafExcludeSegmentDrmMetadata?: boolean | cdk.IResolvable; /** * A 128-bit, 16-byte hex value represented by a 32-character string, used in conjunction with the key for encrypting content. * * If you don't specify a value, then MediaPackage creates the constant initialization vector (IV). * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-encryption.html#cfn-mediapackagev2-originendpoint-encryption-constantinitializationvector */ readonly constantInitializationVector?: string; /** * The encryption method to use. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-encryption.html#cfn-mediapackagev2-originendpoint-encryption-encryptionmethod */ readonly encryptionMethod: CfnOriginEndpoint.EncryptionMethodProperty | cdk.IResolvable; /** * The interval, in seconds, to rotate encryption keys for the origin endpoint. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-encryption.html#cfn-mediapackagev2-originendpoint-encryption-keyrotationintervalseconds */ readonly keyRotationIntervalSeconds?: number; /** * The SPEKE key provider to use for encryption. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-encryption.html#cfn-mediapackagev2-originendpoint-encryption-spekekeyprovider */ readonly spekeKeyProvider: cdk.IResolvable | CfnOriginEndpoint.SpekeKeyProviderProperty; } /** * The parameters for the SPEKE key provider. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-spekekeyprovider.html */ interface SpekeKeyProviderProperty { /** * <p>The 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.</p> * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-spekekeyprovider.html#cfn-mediapackagev2-originendpoint-spekekeyprovider-certificatearn */ readonly certificateArn?: string; /** * The DRM solution provider you're using to protect your content during distribution. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-spekekeyprovider.html#cfn-mediapackagev2-originendpoint-spekekeyprovider-drmsystems */ readonly drmSystems: Array<string>; /** * The encryption contract configuration associated with the SPEKE key provider. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-spekekeyprovider.html#cfn-mediapackagev2-originendpoint-spekekeyprovider-encryptioncontractconfiguration */ readonly encryptionContractConfiguration: CfnOriginEndpoint.EncryptionContractConfigurationProperty | cdk.IResolvable; /** * The unique identifier for the content. * * The service sends this identifier to the key server to identify the current endpoint. How unique you make this identifier depends on how fine-grained you want access controls to be. The service does not permit you to use the same ID for two simultaneous encryption processes. The resource ID is also known as the content ID. * * The following example shows a resource ID: `MovieNight20171126093045` * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpoint-spekekeyprovider.html#cfn-mediapackagev2-originendpoint-spekekeyprovider-resourceid */ readonly resourceId: string; /** * The ARN for the IAM role granted by the key provider that provides access to the key provider API. * * This role must have a trust policy that allows MediaPackage to assume the role, and it must have a sufficient permissions policy to allow access to the specific key retrieval URL. Get this from your DRM solution provider. * * Valid format: `arn:aws:iam::{accountID}:role/{name}` . The following example shows a role ARN: `arn:aws:iam::444455556666:role/SpekeAccess` * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/