Skip to content

Commit

Permalink
feat(client-mediatailor): The AWS Elemental MediaTailor SDK for Chann…
Browse files Browse the repository at this point in the history
…el Assembly has added support for EXT-X-CUE-OUT and EXT-X-CUE-IN tags to specify ad breaks in HLS outputs, including support for EXT-OATCLS, EXT-X-ASSET, and EXT-X-CUE-OUT-CONT accessory tags.
  • Loading branch information
awstools committed Jul 7, 2023
1 parent cf90da6 commit 13bec3b
Show file tree
Hide file tree
Showing 10 changed files with 217 additions and 14 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,9 @@ export interface CreateChannelCommandOutput extends CreateChannelResponse, __Met
* },
* HlsPlaylistSettings: { // HlsPlaylistSettings
* ManifestWindowSeconds: Number("int"),
* AdMarkupType: [ // adMarkupTypes
* "DATERANGE" || "SCTE35_ENHANCED",
* ],
* },
* ManifestName: "STRING_VALUE", // required
* SourceGroup: "STRING_VALUE", // required
Expand Down Expand Up @@ -92,6 +95,9 @@ export interface CreateChannelCommandOutput extends CreateChannelResponse, __Met
* // },
* // HlsPlaylistSettings: { // HlsPlaylistSettings
* // ManifestWindowSeconds: Number("int"),
* // AdMarkupType: [ // adMarkupTypes
* // "DATERANGE" || "SCTE35_ENHANCED",
* // ],
* // },
* // ManifestName: "STRING_VALUE", // required
* // PlaybackUrl: "STRING_VALUE", // required
Expand Down
12 changes: 12 additions & 0 deletions clients/client-mediatailor/src/commands/CreateProgramCommand.ts
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,12 @@ export interface CreateProgramCommandOutput extends CreateProgramResponse, __Met
* },
* ],
* },
* AdBreakMetadata: [ // AdBreakMetadataList
* { // KeyValuePair
* Key: "STRING_VALUE", // required
* Value: "STRING_VALUE", // required
* },
* ],
* },
* ],
* ChannelName: "STRING_VALUE", // required
Expand Down Expand Up @@ -123,6 +129,12 @@ export interface CreateProgramCommandOutput extends CreateProgramResponse, __Met
* // },
* // ],
* // },
* // AdBreakMetadata: [ // AdBreakMetadataList
* // { // KeyValuePair
* // Key: "STRING_VALUE", // required
* // Value: "STRING_VALUE", // required
* // },
* // ],
* // },
* // ],
* // Arn: "STRING_VALUE",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,9 @@ export interface DescribeChannelCommandOutput extends DescribeChannelResponse, _
* // },
* // HlsPlaylistSettings: { // HlsPlaylistSettings
* // ManifestWindowSeconds: Number("int"),
* // AdMarkupType: [ // adMarkupTypes
* // "DATERANGE" || "SCTE35_ENHANCED",
* // ],
* // },
* // ManifestName: "STRING_VALUE", // required
* // PlaybackUrl: "STRING_VALUE", // required
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,12 @@ export interface DescribeProgramCommandOutput extends DescribeProgramResponse, _
* // },
* // ],
* // },
* // AdBreakMetadata: [ // AdBreakMetadataList
* // { // KeyValuePair
* // Key: "STRING_VALUE", // required
* // Value: "STRING_VALUE", // required
* // },
* // ],
* // },
* // ],
* // Arn: "STRING_VALUE",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,9 @@ export interface ListChannelsCommandOutput extends ListChannelsResponse, __Metad
* // },
* // HlsPlaylistSettings: { // HlsPlaylistSettings
* // ManifestWindowSeconds: Number("int"),
* // AdMarkupType: [ // adMarkupTypes
* // "DATERANGE" || "SCTE35_ENHANCED",
* // ],
* // },
* // ManifestName: "STRING_VALUE", // required
* // PlaybackUrl: "STRING_VALUE", // required
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,9 @@ export interface UpdateChannelCommandOutput extends UpdateChannelResponse, __Met
* },
* HlsPlaylistSettings: { // HlsPlaylistSettings
* ManifestWindowSeconds: Number("int"),
* AdMarkupType: [ // adMarkupTypes
* "DATERANGE" || "SCTE35_ENHANCED",
* ],
* },
* ManifestName: "STRING_VALUE", // required
* SourceGroup: "STRING_VALUE", // required
Expand Down Expand Up @@ -87,6 +90,9 @@ export interface UpdateChannelCommandOutput extends UpdateChannelResponse, __Met
* // },
* // HlsPlaylistSettings: { // HlsPlaylistSettings
* // ManifestWindowSeconds: Number("int"),
* // AdMarkupType: [ // adMarkupTypes
* // "DATERANGE" || "SCTE35_ENHANCED",
* // ],
* // },
* // ManifestName: "STRING_VALUE", // required
* // PlaybackUrl: "STRING_VALUE", // required
Expand Down
12 changes: 12 additions & 0 deletions clients/client-mediatailor/src/commands/UpdateProgramCommand.ts
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,12 @@ export interface UpdateProgramCommandOutput extends UpdateProgramResponse, __Met
* },
* ],
* },
* AdBreakMetadata: [ // AdBreakMetadataList
* { // KeyValuePair
* Key: "STRING_VALUE", // required
* Value: "STRING_VALUE", // required
* },
* ],
* },
* ],
* ChannelName: "STRING_VALUE", // required
Expand Down Expand Up @@ -117,6 +123,12 @@ export interface UpdateProgramCommandOutput extends UpdateProgramResponse, __Met
* // },
* // ],
* // },
* // AdBreakMetadata: [ // AdBreakMetadataList
* // { // KeyValuePair
* // Key: "STRING_VALUE", // required
* // Value: "STRING_VALUE", // required
* // },
* // ],
* // },
* // ],
* // Arn: "STRING_VALUE",
Expand Down
40 changes: 40 additions & 0 deletions clients/client-mediatailor/src/models/models_0.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,22 @@ import { ExceptionOptionType as __ExceptionOptionType } from "@smithy/smithy-cli

import { MediaTailorServiceException as __BaseException } from "./MediaTailorServiceException";

/**
* @public
* <p>For <code>SCTE35_ENHANCED</code> output, defines a key and corresponding value. MediaTailor generates these pairs within the <code>EXT-X-ASSET</code>tag.</p>
*/
export interface KeyValuePair {
/**
* <p>For <code>SCTE35_ENHANCED</code> output, defines a key. MediaTailor takes this key, and its associated value, and generates the key/value pair within the <code>EXT-X-ASSET</code>tag. If you specify a key, you must also specify a corresponding value.</p>
*/
Key: string | undefined;

/**
* <p>For <code>SCTE35_ENHANCED</code> output, defines a vaue. MediaTailor; takes this value, and its associated key, and generates the key/value pair within the <code>EXT-X-ASSET</code>tag. If you specify a value, you must also specify a corresponding key.</p>
*/
Value: string | undefined;
}

/**
* @public
* @enum
Expand Down Expand Up @@ -152,6 +168,11 @@ export interface AdBreak {
* <p>See section 9.7.4 of the 2022 SCTE-35 specification for more information.</p>
*/
TimeSignalMessage?: TimeSignalMessage;

/**
* <p>Defines a list of key/value pairs that MediaTailor generates within the <code>EXT-X-ASSET</code>tag for <code>SCTE35_ENHANCED</code> output.</p>
*/
AdBreakMetadata?: KeyValuePair[];
}

/**
Expand Down Expand Up @@ -267,6 +288,20 @@ export interface DashPlaylistSettings {
SuggestedPresentationDelaySeconds?: number;
}

/**
* @public
* @enum
*/
export const AdMarkupType = {
DATERANGE: "DATERANGE",
SCTE35_ENHANCED: "SCTE35_ENHANCED",
} as const;

/**
* @public
*/
export type AdMarkupType = (typeof AdMarkupType)[keyof typeof AdMarkupType];

/**
* @public
* <p>HLS playlist configuration parameters.</p>
Expand All @@ -276,6 +311,11 @@ export interface HlsPlaylistSettings {
* <p>The total duration (in seconds) of each manifest. Minimum value: <code>30</code> seconds. Maximum value: <code>3600</code> seconds.</p>
*/
ManifestWindowSeconds?: number;

/**
* <p>Determines the type of SCTE 35 tags to use in ad markup. Specify <code>DATERANGE</code> to use <code>DATERANGE</code> tags (for live or VOD content). Specify <code>SCTE35_ENHANCED</code> to use <code>EXT-X-CUE-OUT</code> and <code>EXT-X-CUE-IN</code> tags (for VOD content only).</p>
*/
AdMarkupType?: (AdMarkupType | string)[];
}

/**
Expand Down
14 changes: 14 additions & 0 deletions clients/client-mediatailor/src/protocols/Aws_restJson1.ts
Original file line number Diff line number Diff line change
Expand Up @@ -123,6 +123,7 @@ import {
AccessConfiguration,
AdBreak,
AdMarkerPassthrough,
AdMarkupType,
Alert,
AvailMatchingCriteria,
AvailSuppression,
Expand All @@ -137,6 +138,7 @@ import {
HlsPlaylistSettings,
HttpConfiguration,
HttpPackageConfiguration,
KeyValuePair,
LivePreRollConfiguration,
LiveSource,
LogType,
Expand Down Expand Up @@ -3589,8 +3591,12 @@ const de_BadRequestExceptionRes = async (parsedOutput: any, context: __SerdeCont

// se_AdBreak omitted.

// se_AdBreakMetadataList omitted.

// se_AdMarkerPassthrough omitted.

// se_adMarkupTypes omitted.

// se_AvailMatchingCriteria omitted.

// se_AvailSuppression omitted.
Expand All @@ -3617,6 +3623,8 @@ const de_BadRequestExceptionRes = async (parsedOutput: any, context: __SerdeCont

// se_HttpPackageConfigurations omitted.

// se_KeyValuePair omitted.

// se_LivePreRollConfiguration omitted.

// se_LogTypes omitted.
Expand Down Expand Up @@ -3793,8 +3801,12 @@ const de___listOfVodSource = (output: any, context: __SerdeContext): VodSource[]

// de_AdBreak omitted.

// de_AdBreakMetadataList omitted.

// de_AdMarkerPassthrough omitted.

// de_adMarkupTypes omitted.

/**
* deserializeAws_restJson1Alert
*/
Expand Down Expand Up @@ -3855,6 +3867,8 @@ const de_Channel = (output: any, context: __SerdeContext): Channel => {

// de_HttpPackageConfigurations omitted.

// de_KeyValuePair omitted.

// de_LivePreRollConfiguration omitted.

/**
Expand Down
Loading

0 comments on commit 13bec3b

Please sign in to comment.