Skip to content

Commit

Permalink
feat(client-medialive): AWS Elemental MediaLive adds three new featur…
Browse files Browse the repository at this point in the history
…es: MediaPackage v2 endpoint support for live stream delivery, KLV metadata passthrough in CMAF Ingest output groups, and Metadata Name Modifier in CMAF Ingest output groups for customizing metadata track names in output streams.
  • Loading branch information
awstools committed Dec 16, 2024
1 parent 0a3b2ac commit 7567d64
Show file tree
Hide file tree
Showing 14 changed files with 231 additions and 34 deletions.
12 changes: 12 additions & 0 deletions clients/client-medialive/src/commands/CreateChannelCommand.ts
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,8 @@ export interface CreateChannelCommandOutput extends CreateChannelResponse, __Met
* MediaPackageSettings: [ // __listOfMediaPackageOutputDestinationSettings
* { // MediaPackageOutputDestinationSettings
* ChannelId: "STRING_VALUE",
* ChannelGroup: "STRING_VALUE",
* ChannelName: "STRING_VALUE",
* },
* ],
* MultiplexSettings: { // MultiplexProgramChannelDestinationSettings
Expand Down Expand Up @@ -518,6 +520,10 @@ export interface CreateChannelCommandOutput extends CreateChannelResponse, __Met
* SegmentLength: Number("int"),
* SegmentLengthUnits: "MILLISECONDS" || "SECONDS",
* SendDelayMs: Number("int"),
* KlvBehavior: "NO_PASSTHROUGH" || "PASSTHROUGH",
* KlvNameModifier: "STRING_VALUE",
* NielsenId3NameModifier: "STRING_VALUE",
* Scte35NameModifier: "STRING_VALUE",
* },
* SrtGroupSettings: { // SrtGroupSettings
* InputLossAction: "DROP_PROGRAM" || "DROP_TS" || "EMIT_PROGRAM",
Expand Down Expand Up @@ -1230,6 +1236,8 @@ export interface CreateChannelCommandOutput extends CreateChannelResponse, __Met
* // MediaPackageSettings: [ // __listOfMediaPackageOutputDestinationSettings
* // { // MediaPackageOutputDestinationSettings
* // ChannelId: "STRING_VALUE",
* // ChannelGroup: "STRING_VALUE",
* // ChannelName: "STRING_VALUE",
* // },
* // ],
* // MultiplexSettings: { // MultiplexProgramChannelDestinationSettings
Expand Down Expand Up @@ -1707,6 +1715,10 @@ export interface CreateChannelCommandOutput extends CreateChannelResponse, __Met
* // SegmentLength: Number("int"),
* // SegmentLengthUnits: "MILLISECONDS" || "SECONDS",
* // SendDelayMs: Number("int"),
* // KlvBehavior: "NO_PASSTHROUGH" || "PASSTHROUGH",
* // KlvNameModifier: "STRING_VALUE",
* // NielsenId3NameModifier: "STRING_VALUE",
* // Scte35NameModifier: "STRING_VALUE",
* // },
* // SrtGroupSettings: { // SrtGroupSettings
* // InputLossAction: "DROP_PROGRAM" || "DROP_TS" || "EMIT_PROGRAM",
Expand Down
6 changes: 6 additions & 0 deletions clients/client-medialive/src/commands/DeleteChannelCommand.ts
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,8 @@ export interface DeleteChannelCommandOutput extends DeleteChannelResponse, __Met
* // MediaPackageSettings: [ // __listOfMediaPackageOutputDestinationSettings
* // { // MediaPackageOutputDestinationSettings
* // ChannelId: "STRING_VALUE",
* // ChannelGroup: "STRING_VALUE",
* // ChannelName: "STRING_VALUE",
* // },
* // ],
* // MultiplexSettings: { // MultiplexProgramChannelDestinationSettings
Expand Down Expand Up @@ -529,6 +531,10 @@ export interface DeleteChannelCommandOutput extends DeleteChannelResponse, __Met
* // SegmentLength: Number("int"),
* // SegmentLengthUnits: "MILLISECONDS" || "SECONDS",
* // SendDelayMs: Number("int"),
* // KlvBehavior: "NO_PASSTHROUGH" || "PASSTHROUGH",
* // KlvNameModifier: "STRING_VALUE",
* // NielsenId3NameModifier: "STRING_VALUE",
* // Scte35NameModifier: "STRING_VALUE",
* // },
* // SrtGroupSettings: { // SrtGroupSettings
* // InputLossAction: "DROP_PROGRAM" || "DROP_TS" || "EMIT_PROGRAM",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,8 @@ export interface DescribeChannelCommandOutput extends DescribeChannelResponse, _
* // MediaPackageSettings: [ // __listOfMediaPackageOutputDestinationSettings
* // { // MediaPackageOutputDestinationSettings
* // ChannelId: "STRING_VALUE",
* // ChannelGroup: "STRING_VALUE",
* // ChannelName: "STRING_VALUE",
* // },
* // ],
* // MultiplexSettings: { // MultiplexProgramChannelDestinationSettings
Expand Down Expand Up @@ -529,6 +531,10 @@ export interface DescribeChannelCommandOutput extends DescribeChannelResponse, _
* // SegmentLength: Number("int"),
* // SegmentLengthUnits: "MILLISECONDS" || "SECONDS",
* // SendDelayMs: Number("int"),
* // KlvBehavior: "NO_PASSTHROUGH" || "PASSTHROUGH",
* // KlvNameModifier: "STRING_VALUE",
* // NielsenId3NameModifier: "STRING_VALUE",
* // Scte35NameModifier: "STRING_VALUE",
* // },
* // SrtGroupSettings: { // SrtGroupSettings
* // InputLossAction: "DROP_PROGRAM" || "DROP_TS" || "EMIT_PROGRAM",
Expand Down
2 changes: 2 additions & 0 deletions clients/client-medialive/src/commands/ListChannelsCommand.ts
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,8 @@ export interface ListChannelsCommandOutput extends ListChannelsResponse, __Metad
* // MediaPackageSettings: [ // __listOfMediaPackageOutputDestinationSettings
* // { // MediaPackageOutputDestinationSettings
* // ChannelId: "STRING_VALUE",
* // ChannelGroup: "STRING_VALUE",
* // ChannelName: "STRING_VALUE",
* // },
* // ],
* // MultiplexSettings: { // MultiplexProgramChannelDestinationSettings
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,8 @@ export interface RestartChannelPipelinesCommandOutput extends RestartChannelPipe
* // MediaPackageSettings: [ // __listOfMediaPackageOutputDestinationSettings
* // { // MediaPackageOutputDestinationSettings
* // ChannelId: "STRING_VALUE",
* // ChannelGroup: "STRING_VALUE",
* // ChannelName: "STRING_VALUE",
* // },
* // ],
* // MultiplexSettings: { // MultiplexProgramChannelDestinationSettings
Expand Down Expand Up @@ -532,6 +534,10 @@ export interface RestartChannelPipelinesCommandOutput extends RestartChannelPipe
* // SegmentLength: Number("int"),
* // SegmentLengthUnits: "MILLISECONDS" || "SECONDS",
* // SendDelayMs: Number("int"),
* // KlvBehavior: "NO_PASSTHROUGH" || "PASSTHROUGH",
* // KlvNameModifier: "STRING_VALUE",
* // NielsenId3NameModifier: "STRING_VALUE",
* // Scte35NameModifier: "STRING_VALUE",
* // },
* // SrtGroupSettings: { // SrtGroupSettings
* // InputLossAction: "DROP_PROGRAM" || "DROP_TS" || "EMIT_PROGRAM",
Expand Down
6 changes: 6 additions & 0 deletions clients/client-medialive/src/commands/StartChannelCommand.ts
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,8 @@ export interface StartChannelCommandOutput extends StartChannelResponse, __Metad
* // MediaPackageSettings: [ // __listOfMediaPackageOutputDestinationSettings
* // { // MediaPackageOutputDestinationSettings
* // ChannelId: "STRING_VALUE",
* // ChannelGroup: "STRING_VALUE",
* // ChannelName: "STRING_VALUE",
* // },
* // ],
* // MultiplexSettings: { // MultiplexProgramChannelDestinationSettings
Expand Down Expand Up @@ -529,6 +531,10 @@ export interface StartChannelCommandOutput extends StartChannelResponse, __Metad
* // SegmentLength: Number("int"),
* // SegmentLengthUnits: "MILLISECONDS" || "SECONDS",
* // SendDelayMs: Number("int"),
* // KlvBehavior: "NO_PASSTHROUGH" || "PASSTHROUGH",
* // KlvNameModifier: "STRING_VALUE",
* // NielsenId3NameModifier: "STRING_VALUE",
* // Scte35NameModifier: "STRING_VALUE",
* // },
* // SrtGroupSettings: { // SrtGroupSettings
* // InputLossAction: "DROP_PROGRAM" || "DROP_TS" || "EMIT_PROGRAM",
Expand Down
6 changes: 6 additions & 0 deletions clients/client-medialive/src/commands/StopChannelCommand.ts
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,8 @@ export interface StopChannelCommandOutput extends StopChannelResponse, __Metadat
* // MediaPackageSettings: [ // __listOfMediaPackageOutputDestinationSettings
* // { // MediaPackageOutputDestinationSettings
* // ChannelId: "STRING_VALUE",
* // ChannelGroup: "STRING_VALUE",
* // ChannelName: "STRING_VALUE",
* // },
* // ],
* // MultiplexSettings: { // MultiplexProgramChannelDestinationSettings
Expand Down Expand Up @@ -529,6 +531,10 @@ export interface StopChannelCommandOutput extends StopChannelResponse, __Metadat
* // SegmentLength: Number("int"),
* // SegmentLengthUnits: "MILLISECONDS" || "SECONDS",
* // SendDelayMs: Number("int"),
* // KlvBehavior: "NO_PASSTHROUGH" || "PASSTHROUGH",
* // KlvNameModifier: "STRING_VALUE",
* // NielsenId3NameModifier: "STRING_VALUE",
* // Scte35NameModifier: "STRING_VALUE",
* // },
* // SrtGroupSettings: { // SrtGroupSettings
* // InputLossAction: "DROP_PROGRAM" || "DROP_TS" || "EMIT_PROGRAM",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,8 @@ export interface UpdateChannelClassCommandOutput extends UpdateChannelClassRespo
* MediaPackageSettings: [ // __listOfMediaPackageOutputDestinationSettings
* { // MediaPackageOutputDestinationSettings
* ChannelId: "STRING_VALUE",
* ChannelGroup: "STRING_VALUE",
* ChannelName: "STRING_VALUE",
* },
* ],
* MultiplexSettings: { // MultiplexProgramChannelDestinationSettings
Expand Down Expand Up @@ -83,6 +85,8 @@ export interface UpdateChannelClassCommandOutput extends UpdateChannelClassRespo
* // MediaPackageSettings: [ // __listOfMediaPackageOutputDestinationSettings
* // { // MediaPackageOutputDestinationSettings
* // ChannelId: "STRING_VALUE",
* // ChannelGroup: "STRING_VALUE",
* // ChannelName: "STRING_VALUE",
* // },
* // ],
* // MultiplexSettings: { // MultiplexProgramChannelDestinationSettings
Expand Down Expand Up @@ -560,6 +564,10 @@ export interface UpdateChannelClassCommandOutput extends UpdateChannelClassRespo
* // SegmentLength: Number("int"),
* // SegmentLengthUnits: "MILLISECONDS" || "SECONDS",
* // SendDelayMs: Number("int"),
* // KlvBehavior: "NO_PASSTHROUGH" || "PASSTHROUGH",
* // KlvNameModifier: "STRING_VALUE",
* // NielsenId3NameModifier: "STRING_VALUE",
* // Scte35NameModifier: "STRING_VALUE",
* // },
* // SrtGroupSettings: { // SrtGroupSettings
* // InputLossAction: "DROP_PROGRAM" || "DROP_TS" || "EMIT_PROGRAM",
Expand Down
12 changes: 12 additions & 0 deletions clients/client-medialive/src/commands/UpdateChannelCommand.ts
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,8 @@ export interface UpdateChannelCommandOutput extends UpdateChannelResponse, __Met
* MediaPackageSettings: [ // __listOfMediaPackageOutputDestinationSettings
* { // MediaPackageOutputDestinationSettings
* ChannelId: "STRING_VALUE",
* ChannelGroup: "STRING_VALUE",
* ChannelName: "STRING_VALUE",
* },
* ],
* MultiplexSettings: { // MultiplexProgramChannelDestinationSettings
Expand Down Expand Up @@ -518,6 +520,10 @@ export interface UpdateChannelCommandOutput extends UpdateChannelResponse, __Met
* SegmentLength: Number("int"),
* SegmentLengthUnits: "MILLISECONDS" || "SECONDS",
* SendDelayMs: Number("int"),
* KlvBehavior: "NO_PASSTHROUGH" || "PASSTHROUGH",
* KlvNameModifier: "STRING_VALUE",
* NielsenId3NameModifier: "STRING_VALUE",
* Scte35NameModifier: "STRING_VALUE",
* },
* SrtGroupSettings: { // SrtGroupSettings
* InputLossAction: "DROP_PROGRAM" || "DROP_TS" || "EMIT_PROGRAM",
Expand Down Expand Up @@ -1217,6 +1223,8 @@ export interface UpdateChannelCommandOutput extends UpdateChannelResponse, __Met
* // MediaPackageSettings: [ // __listOfMediaPackageOutputDestinationSettings
* // { // MediaPackageOutputDestinationSettings
* // ChannelId: "STRING_VALUE",
* // ChannelGroup: "STRING_VALUE",
* // ChannelName: "STRING_VALUE",
* // },
* // ],
* // MultiplexSettings: { // MultiplexProgramChannelDestinationSettings
Expand Down Expand Up @@ -1694,6 +1702,10 @@ export interface UpdateChannelCommandOutput extends UpdateChannelResponse, __Met
* // SegmentLength: Number("int"),
* // SegmentLengthUnits: "MILLISECONDS" || "SECONDS",
* // SendDelayMs: Number("int"),
* // KlvBehavior: "NO_PASSTHROUGH" || "PASSTHROUGH",
* // KlvNameModifier: "STRING_VALUE",
* // NielsenId3NameModifier: "STRING_VALUE",
* // Scte35NameModifier: "STRING_VALUE",
* // },
* // SrtGroupSettings: { // SrtGroupSettings
* // InputLossAction: "DROP_PROGRAM" || "DROP_TS" || "EMIT_PROGRAM",
Expand Down
12 changes: 12 additions & 0 deletions clients/client-medialive/src/models/models_0.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2752,6 +2752,18 @@ export interface MediaPackageOutputDestinationSettings {
* @public
*/
ChannelId?: string | undefined;

/**
* Name of the channel group in MediaPackageV2. Only use if you are sending CMAF Ingest output to a CMAF ingest endpoint on a MediaPackage channel that uses MediaPackage v2.
* @public
*/
ChannelGroup?: string | undefined;

/**
* Name of the channel in MediaPackageV2. Only use if you are sending CMAF Ingest output to a CMAF ingest endpoint on a MediaPackage channel that uses MediaPackage v2.
* @public
*/
ChannelName?: string | undefined;
}

/**
Expand Down
71 changes: 47 additions & 24 deletions clients/client-medialive/src/models/models_1.ts
Original file line number Diff line number Diff line change
Expand Up @@ -177,7 +177,7 @@ export interface Fmp4HlsSettings {
NielsenId3Behavior?: Fmp4NielsenId3Behavior | undefined;

/**
* When set to passthrough, timed metadata is passed through from input to output.
* Set to PASSTHROUGH to enable ID3 metadata insertion. To include metadata, you configure other parameters in the output group or individual outputs, or you add an ID3 action to the channel schedule.
* @public
*/
TimedMetadataBehavior?: Fmp4TimedMetadataBehavior | undefined;
Expand Down Expand Up @@ -343,7 +343,7 @@ export interface M3u8Settings {
Scte35Pid?: string | undefined;

/**
* When set to passthrough, timed metadata is passed through from input to output.
* Set to PASSTHROUGH to enable ID3 metadata insertion. To include metadata, you configure other parameters in the output group or individual outputs, or you add an ID3 action to the channel schedule.
* @public
*/
TimedMetadataBehavior?: M3u8TimedMetadataBehavior | undefined;
Expand Down Expand Up @@ -970,6 +970,20 @@ export interface ArchiveGroupSettings {
RolloverInterval?: number | undefined;
}

/**
* @public
* @enum
*/
export const CmafKLVBehavior = {
NO_PASSTHROUGH: "NO_PASSTHROUGH",
PASSTHROUGH: "PASSTHROUGH",
} as const;

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

/**
* @public
* @enum
Expand Down Expand Up @@ -1053,6 +1067,30 @@ export interface CmafIngestGroupSettings {
* @public
*/
SendDelayMs?: number | undefined;

/**
* If set to passthrough, passes any KLV data from the input source to this output.
* @public
*/
KlvBehavior?: CmafKLVBehavior | undefined;

/**
* Change the modifier that MediaLive automatically adds to the Streams() name that identifies a KLV track. The default is "klv", which means the default name will be Streams(klv.cmfm). Any string you enter here will replace the "klv" string.\nThe modifier can only contain: numbers, letters, plus (+), minus (-), underscore (_) and period (.) and has a maximum length of 100 characters.
* @public
*/
KlvNameModifier?: string | undefined;

/**
* Change the modifier that MediaLive automatically adds to the Streams() name that identifies a Nielsen ID3 track. The default is "nid3", which means the default name will be Streams(nid3.cmfm). Any string you enter here will replace the "nid3" string.\nThe modifier can only contain: numbers, letters, plus (+), minus (-), underscore (_) and period (.) and has a maximum length of 100 characters.
* @public
*/
NielsenId3NameModifier?: string | undefined;

/**
* Change the modifier that MediaLive automatically adds to the Streams() name for a SCTE 35 track. The default is "scte", which means the default name will be Streams(scte.cmfm). Any string you enter here will replace the "scte" string.\nThe modifier can only contain: numbers, letters, plus (+), minus (-), underscore (_) and period (.) and has a maximum length of 100 characters.
* @public
*/
Scte35NameModifier?: string | undefined;
}

/**
Expand Down Expand Up @@ -2842,30 +2880,30 @@ export interface RouteUpdateRequest {
}

/**
* Settings for the action to insert a user-defined ID3 tag in each HLS segment
* Settings for the action to insert ID3 metadata in every segment, in HLS output groups.
* @public
*/
export interface HlsId3SegmentTaggingScheduleActionSettings {
/**
* ID3 tag to insert into each segment. Supports special keyword identifiers to substitute in segment-related values.\nSupported keyword identifiers: https://docs.aws.amazon.com/medialive/latest/ug/variable-data-identifiers.html
* Complete this parameter if you want to specify only the metadata, not the entire frame. MediaLive will insert the metadata in a TXXX frame. Enter the value as plain text. You can include standard MediaLive variable data such as the current segment number.
* @public
*/
Tag?: string | undefined;

/**
* Base64 string formatted according to the ID3 specification: http://id3.org/id3v2.4.0-structure
* Complete this parameter if you want to specify the entire ID3 metadata. Enter a base64 string that contains one or more fully formed ID3 tags, according to the ID3 specification: http://id3.org/id3v2.4.0-structure
* @public
*/
Id3?: string | undefined;
}

/**
* Settings for the action to emit HLS metadata
* Settings for the action to insert ID3 metadata (as a one-time action) in HLS output groups.
* @public
*/
export interface HlsTimedMetadataScheduleActionSettings {
/**
* Base64 string formatted according to the ID3 specification: http://id3.org/id3v2.4.0-structure
* Enter a base64 string that contains one or more fully formed ID3 tags.See the ID3 specification: http://id3.org/id3v2.4.0-structure
* @public
*/
Id3: string | undefined;
Expand Down Expand Up @@ -3510,13 +3548,13 @@ export interface StaticImageOutputDeactivateScheduleActionSettings {
*/
export interface ScheduleActionSettings {
/**
* Action to insert HLS ID3 segment tagging
* Action to insert ID3 metadata in every segment, in HLS output groups
* @public
*/
HlsId3SegmentTaggingSettings?: HlsId3SegmentTaggingScheduleActionSettings | undefined;

/**
* Action to insert HLS metadata
* Action to insert ID3 metadata once, in HLS output groups
* @public
*/
HlsTimedMetadataSettings?: HlsTimedMetadataScheduleActionSettings | undefined;
Expand Down Expand Up @@ -7138,18 +7176,3 @@ export interface OutputLockingSettings {
*/
PipelineLockingSettings?: PipelineLockingSettings | undefined;
}

/**
* @public
* @enum
*/
export const GlobalConfigurationOutputTimingSource = {
INPUT_CLOCK: "INPUT_CLOCK",
SYSTEM_CLOCK: "SYSTEM_CLOCK",
} as const;

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

0 comments on commit 7567d64

Please sign in to comment.