Skip to content

Commit 9a07043

Browse files
author
awstools
committed
feat(client-medialive): AWS Elemental MediaLive adds a new feature, ID3 segment tagging, in CMAF Ingest output groups. It allows customers to insert ID3 tags into every output segment, controlled by a newly added channel schedule action Id3SegmentTagging.
1 parent 9e04902 commit 9a07043

14 files changed

+312
-44
lines changed

clients/client-medialive/src/commands/BatchUpdateScheduleCommand.ts

+21
Original file line numberDiff line numberDiff line change
@@ -178,6 +178,13 @@ export interface BatchUpdateScheduleCommandOutput extends BatchUpdateScheduleRes
178178
* "STRING_VALUE",
179179
* ],
180180
* },
181+
* Id3SegmentTaggingSettings: { // Id3SegmentTaggingScheduleActionSettings
182+
* Id3: "STRING_VALUE",
183+
* Tag: "STRING_VALUE",
184+
* },
185+
* TimedMetadataSettings: { // TimedMetadataScheduleActionSettings
186+
* Id3: "STRING_VALUE", // required
187+
* },
181188
* },
182189
* ScheduleActionStartSettings: { // ScheduleActionStartSettings
183190
* FixedModeScheduleActionStartSettings: { // FixedModeScheduleActionStartSettings
@@ -342,6 +349,13 @@ export interface BatchUpdateScheduleCommandOutput extends BatchUpdateScheduleRes
342349
* // "STRING_VALUE",
343350
* // ],
344351
* // },
352+
* // Id3SegmentTaggingSettings: { // Id3SegmentTaggingScheduleActionSettings
353+
* // Id3: "STRING_VALUE",
354+
* // Tag: "STRING_VALUE",
355+
* // },
356+
* // TimedMetadataSettings: { // TimedMetadataScheduleActionSettings
357+
* // Id3: "STRING_VALUE", // required
358+
* // },
345359
* // },
346360
* // ScheduleActionStartSettings: { // ScheduleActionStartSettings
347361
* // FixedModeScheduleActionStartSettings: { // FixedModeScheduleActionStartSettings
@@ -491,6 +505,13 @@ export interface BatchUpdateScheduleCommandOutput extends BatchUpdateScheduleRes
491505
* // Layer: Number("int"),
492506
* // OutputNames: "<__listOf__string>", // required
493507
* // },
508+
* // Id3SegmentTaggingSettings: {
509+
* // Id3: "STRING_VALUE",
510+
* // Tag: "STRING_VALUE",
511+
* // },
512+
* // TimedMetadataSettings: {
513+
* // Id3: "STRING_VALUE", // required
514+
* // },
494515
* // },
495516
* // ScheduleActionStartSettings: {
496517
* // FixedModeScheduleActionStartSettings: {

clients/client-medialive/src/commands/CreateChannelCommand.ts

+4
Original file line numberDiff line numberDiff line change
@@ -524,6 +524,8 @@ export interface CreateChannelCommandOutput extends CreateChannelResponse, __Met
524524
* KlvNameModifier: "STRING_VALUE",
525525
* NielsenId3NameModifier: "STRING_VALUE",
526526
* Scte35NameModifier: "STRING_VALUE",
527+
* Id3Behavior: "DISABLED" || "ENABLED",
528+
* Id3NameModifier: "STRING_VALUE",
527529
* },
528530
* SrtGroupSettings: { // SrtGroupSettings
529531
* InputLossAction: "DROP_PROGRAM" || "DROP_TS" || "EMIT_PROGRAM",
@@ -1723,6 +1725,8 @@ export interface CreateChannelCommandOutput extends CreateChannelResponse, __Met
17231725
* // KlvNameModifier: "STRING_VALUE",
17241726
* // NielsenId3NameModifier: "STRING_VALUE",
17251727
* // Scte35NameModifier: "STRING_VALUE",
1728+
* // Id3Behavior: "DISABLED" || "ENABLED",
1729+
* // Id3NameModifier: "STRING_VALUE",
17261730
* // },
17271731
* // SrtGroupSettings: { // SrtGroupSettings
17281732
* // InputLossAction: "DROP_PROGRAM" || "DROP_TS" || "EMIT_PROGRAM",

clients/client-medialive/src/commands/DeleteChannelCommand.ts

+2
Original file line numberDiff line numberDiff line change
@@ -535,6 +535,8 @@ export interface DeleteChannelCommandOutput extends DeleteChannelResponse, __Met
535535
* // KlvNameModifier: "STRING_VALUE",
536536
* // NielsenId3NameModifier: "STRING_VALUE",
537537
* // Scte35NameModifier: "STRING_VALUE",
538+
* // Id3Behavior: "DISABLED" || "ENABLED",
539+
* // Id3NameModifier: "STRING_VALUE",
538540
* // },
539541
* // SrtGroupSettings: { // SrtGroupSettings
540542
* // InputLossAction: "DROP_PROGRAM" || "DROP_TS" || "EMIT_PROGRAM",

clients/client-medialive/src/commands/DescribeChannelCommand.ts

+2
Original file line numberDiff line numberDiff line change
@@ -535,6 +535,8 @@ export interface DescribeChannelCommandOutput extends DescribeChannelResponse, _
535535
* // KlvNameModifier: "STRING_VALUE",
536536
* // NielsenId3NameModifier: "STRING_VALUE",
537537
* // Scte35NameModifier: "STRING_VALUE",
538+
* // Id3Behavior: "DISABLED" || "ENABLED",
539+
* // Id3NameModifier: "STRING_VALUE",
538540
* // },
539541
* // SrtGroupSettings: { // SrtGroupSettings
540542
* // InputLossAction: "DROP_PROGRAM" || "DROP_TS" || "EMIT_PROGRAM",

clients/client-medialive/src/commands/DescribeScheduleCommand.ts

+7
Original file line numberDiff line numberDiff line change
@@ -184,6 +184,13 @@ export interface DescribeScheduleCommandOutput extends DescribeScheduleResponse,
184184
* // "STRING_VALUE",
185185
* // ],
186186
* // },
187+
* // Id3SegmentTaggingSettings: { // Id3SegmentTaggingScheduleActionSettings
188+
* // Id3: "STRING_VALUE",
189+
* // Tag: "STRING_VALUE",
190+
* // },
191+
* // TimedMetadataSettings: { // TimedMetadataScheduleActionSettings
192+
* // Id3: "STRING_VALUE", // required
193+
* // },
187194
* // },
188195
* // ScheduleActionStartSettings: { // ScheduleActionStartSettings
189196
* // FixedModeScheduleActionStartSettings: { // FixedModeScheduleActionStartSettings

clients/client-medialive/src/commands/RestartChannelPipelinesCommand.ts

+2
Original file line numberDiff line numberDiff line change
@@ -538,6 +538,8 @@ export interface RestartChannelPipelinesCommandOutput extends RestartChannelPipe
538538
* // KlvNameModifier: "STRING_VALUE",
539539
* // NielsenId3NameModifier: "STRING_VALUE",
540540
* // Scte35NameModifier: "STRING_VALUE",
541+
* // Id3Behavior: "DISABLED" || "ENABLED",
542+
* // Id3NameModifier: "STRING_VALUE",
541543
* // },
542544
* // SrtGroupSettings: { // SrtGroupSettings
543545
* // InputLossAction: "DROP_PROGRAM" || "DROP_TS" || "EMIT_PROGRAM",

clients/client-medialive/src/commands/StartChannelCommand.ts

+2
Original file line numberDiff line numberDiff line change
@@ -535,6 +535,8 @@ export interface StartChannelCommandOutput extends StartChannelResponse, __Metad
535535
* // KlvNameModifier: "STRING_VALUE",
536536
* // NielsenId3NameModifier: "STRING_VALUE",
537537
* // Scte35NameModifier: "STRING_VALUE",
538+
* // Id3Behavior: "DISABLED" || "ENABLED",
539+
* // Id3NameModifier: "STRING_VALUE",
538540
* // },
539541
* // SrtGroupSettings: { // SrtGroupSettings
540542
* // InputLossAction: "DROP_PROGRAM" || "DROP_TS" || "EMIT_PROGRAM",

clients/client-medialive/src/commands/StopChannelCommand.ts

+2
Original file line numberDiff line numberDiff line change
@@ -535,6 +535,8 @@ export interface StopChannelCommandOutput extends StopChannelResponse, __Metadat
535535
* // KlvNameModifier: "STRING_VALUE",
536536
* // NielsenId3NameModifier: "STRING_VALUE",
537537
* // Scte35NameModifier: "STRING_VALUE",
538+
* // Id3Behavior: "DISABLED" || "ENABLED",
539+
* // Id3NameModifier: "STRING_VALUE",
538540
* // },
539541
* // SrtGroupSettings: { // SrtGroupSettings
540542
* // InputLossAction: "DROP_PROGRAM" || "DROP_TS" || "EMIT_PROGRAM",

clients/client-medialive/src/commands/UpdateChannelClassCommand.ts

+2
Original file line numberDiff line numberDiff line change
@@ -568,6 +568,8 @@ export interface UpdateChannelClassCommandOutput extends UpdateChannelClassRespo
568568
* // KlvNameModifier: "STRING_VALUE",
569569
* // NielsenId3NameModifier: "STRING_VALUE",
570570
* // Scte35NameModifier: "STRING_VALUE",
571+
* // Id3Behavior: "DISABLED" || "ENABLED",
572+
* // Id3NameModifier: "STRING_VALUE",
571573
* // },
572574
* // SrtGroupSettings: { // SrtGroupSettings
573575
* // InputLossAction: "DROP_PROGRAM" || "DROP_TS" || "EMIT_PROGRAM",

clients/client-medialive/src/commands/UpdateChannelCommand.ts

+4
Original file line numberDiff line numberDiff line change
@@ -524,6 +524,8 @@ export interface UpdateChannelCommandOutput extends UpdateChannelResponse, __Met
524524
* KlvNameModifier: "STRING_VALUE",
525525
* NielsenId3NameModifier: "STRING_VALUE",
526526
* Scte35NameModifier: "STRING_VALUE",
527+
* Id3Behavior: "DISABLED" || "ENABLED",
528+
* Id3NameModifier: "STRING_VALUE",
527529
* },
528530
* SrtGroupSettings: { // SrtGroupSettings
529531
* InputLossAction: "DROP_PROGRAM" || "DROP_TS" || "EMIT_PROGRAM",
@@ -1710,6 +1712,8 @@ export interface UpdateChannelCommandOutput extends UpdateChannelResponse, __Met
17101712
* // KlvNameModifier: "STRING_VALUE",
17111713
* // NielsenId3NameModifier: "STRING_VALUE",
17121714
* // Scte35NameModifier: "STRING_VALUE",
1715+
* // Id3Behavior: "DISABLED" || "ENABLED",
1716+
* // Id3NameModifier: "STRING_VALUE",
17131717
* // },
17141718
* // SrtGroupSettings: { // SrtGroupSettings
17151719
* // InputLossAction: "DROP_PROGRAM" || "DROP_TS" || "EMIT_PROGRAM",

clients/client-medialive/src/models/models_1.ts

+68-39
Original file line numberDiff line numberDiff line change
@@ -982,6 +982,20 @@ export interface ArchiveGroupSettings {
982982
RolloverInterval?: number | undefined;
983983
}
984984

985+
/**
986+
* @public
987+
* @enum
988+
*/
989+
export const CmafId3Behavior = {
990+
DISABLED: "DISABLED",
991+
ENABLED: "ENABLED",
992+
} as const;
993+
994+
/**
995+
* @public
996+
*/
997+
export type CmafId3Behavior = (typeof CmafId3Behavior)[keyof typeof CmafId3Behavior];
998+
985999
/**
9861000
* @public
9871001
* @enum
@@ -1103,6 +1117,18 @@ export interface CmafIngestGroupSettings {
11031117
* @public
11041118
*/
11051119
Scte35NameModifier?: string | undefined;
1120+
1121+
/**
1122+
* Set to ENABLED to enable ID3 metadata insertion. To include metadata, you configure other parameters in the output group, or you add an ID3 action to the channel schedule.
1123+
* @public
1124+
*/
1125+
Id3Behavior?: CmafId3Behavior | undefined;
1126+
1127+
/**
1128+
* Change the modifier that MediaLive automatically adds to the Streams() name that identifies an ID3 track. The default is "id3", which means the default name will be Streams(id3.cmfm). Any string you enter here will replace the "id3" string.\nThe modifier can only contain: numbers, letters, plus (+), minus (-), underscore (_) and period (.) and has a maximum length of 100 characters.
1129+
* @public
1130+
*/
1131+
Id3NameModifier?: string | undefined;
11061132
}
11071133

11081134
/**
@@ -2927,6 +2953,24 @@ export interface HlsTimedMetadataScheduleActionSettings {
29272953
Id3: string | undefined;
29282954
}
29292955

2956+
/**
2957+
* Settings for the action to insert ID3 metadata in every segment, in applicable output groups.
2958+
* @public
2959+
*/
2960+
export interface Id3SegmentTaggingScheduleActionSettings {
2961+
/**
2962+
* 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
2963+
* @public
2964+
*/
2965+
Id3?: string | undefined;
2966+
2967+
/**
2968+
* 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.
2969+
* @public
2970+
*/
2971+
Tag?: string | undefined;
2972+
}
2973+
29302974
/**
29312975
* @public
29322976
* @enum
@@ -3560,6 +3604,18 @@ export interface StaticImageOutputDeactivateScheduleActionSettings {
35603604
OutputNames: string[] | undefined;
35613605
}
35623606

3607+
/**
3608+
* Settings for the action to insert ID3 metadata (as a one-time action) in applicable output groups.
3609+
* @public
3610+
*/
3611+
export interface TimedMetadataScheduleActionSettings {
3612+
/**
3613+
* Enter a base64 string that contains one or more fully formed ID3 tags.See the ID3 specification: http://id3.org/id3v2.4.0-structure
3614+
* @public
3615+
*/
3616+
Id3: string | undefined;
3617+
}
3618+
35633619
/**
35643620
* Holds the settings for a single schedule action.
35653621
* @public
@@ -3654,6 +3710,18 @@ export interface ScheduleActionSettings {
36543710
* @public
36553711
*/
36563712
StaticImageOutputDeactivateSettings?: StaticImageOutputDeactivateScheduleActionSettings | undefined;
3713+
3714+
/**
3715+
* Action to insert ID3 metadata in every segment, in applicable output groups
3716+
* @public
3717+
*/
3718+
Id3SegmentTaggingSettings?: Id3SegmentTaggingScheduleActionSettings | undefined;
3719+
3720+
/**
3721+
* Action to insert ID3 metadata once, in applicable output groups
3722+
* @public
3723+
*/
3724+
TimedMetadataSettings?: TimedMetadataScheduleActionSettings | undefined;
36573725
}
36583726

36593727
/**
@@ -7137,42 +7205,3 @@ export interface InputLossBehavior {
71377205
*/
71387206
RepeatFrameMsec?: number | undefined;
71397207
}
7140-
7141-
/**
7142-
* @public
7143-
* @enum
7144-
*/
7145-
export const GlobalConfigurationOutputLockingMode = {
7146-
EPOCH_LOCKING: "EPOCH_LOCKING",
7147-
PIPELINE_LOCKING: "PIPELINE_LOCKING",
7148-
} as const;
7149-
7150-
/**
7151-
* @public
7152-
*/
7153-
export type GlobalConfigurationOutputLockingMode =
7154-
(typeof GlobalConfigurationOutputLockingMode)[keyof typeof GlobalConfigurationOutputLockingMode];
7155-
7156-
/**
7157-
* Epoch Locking Settings
7158-
* @public
7159-
*/
7160-
export interface EpochLockingSettings {
7161-
/**
7162-
* Optional. Enter a value here to use a custom epoch, instead of the standard epoch (which started at 1970-01-01T00:00:00 UTC). Specify the start time of the custom epoch, in YYYY-MM-DDTHH:MM:SS in UTC. The time must be 2000-01-01T00:00:00 or later. Always set the MM:SS portion to 00:00.
7163-
* @public
7164-
*/
7165-
CustomEpoch?: string | undefined;
7166-
7167-
/**
7168-
* Optional. Enter a time for the jam sync. The default is midnight UTC. When epoch locking is enabled, MediaLive performs a daily jam sync on every output encode to ensure timecodes don’t diverge from the wall clock. The jam sync applies only to encodes with frame rate of 29.97 or 59.94 FPS. To override, enter a time in HH:MM:SS in UTC. Always set the MM:SS portion to 00:00.
7169-
* @public
7170-
*/
7171-
JamSyncTime?: string | undefined;
7172-
}
7173-
7174-
/**
7175-
* Pipeline Locking Settings
7176-
* @public
7177-
*/
7178-
export interface PipelineLockingSettings {}

clients/client-medialive/src/models/models_2.ts

+39-3
Original file line numberDiff line numberDiff line change
@@ -103,14 +103,11 @@ import {
103103
AvailConfiguration,
104104
BlackoutSlate,
105105
ColorCorrectionSettings,
106-
EpochLockingSettings,
107106
FeatureActivations,
108107
GlobalConfigurationInputEndAction,
109-
GlobalConfigurationOutputLockingMode,
110108
InputLossBehavior,
111109
OutputGroup,
112110
PipelineDetail,
113-
PipelineLockingSettings,
114111
RenewalSettings,
115112
Reservation,
116113
ReservationState,
@@ -126,6 +123,45 @@ import {
126123
VideoDescription,
127124
} from "./models_1";
128125

126+
/**
127+
* @public
128+
* @enum
129+
*/
130+
export const GlobalConfigurationOutputLockingMode = {
131+
EPOCH_LOCKING: "EPOCH_LOCKING",
132+
PIPELINE_LOCKING: "PIPELINE_LOCKING",
133+
} as const;
134+
135+
/**
136+
* @public
137+
*/
138+
export type GlobalConfigurationOutputLockingMode =
139+
(typeof GlobalConfigurationOutputLockingMode)[keyof typeof GlobalConfigurationOutputLockingMode];
140+
141+
/**
142+
* Epoch Locking Settings
143+
* @public
144+
*/
145+
export interface EpochLockingSettings {
146+
/**
147+
* Optional. Enter a value here to use a custom epoch, instead of the standard epoch (which started at 1970-01-01T00:00:00 UTC). Specify the start time of the custom epoch, in YYYY-MM-DDTHH:MM:SS in UTC. The time must be 2000-01-01T00:00:00 or later. Always set the MM:SS portion to 00:00.
148+
* @public
149+
*/
150+
CustomEpoch?: string | undefined;
151+
152+
/**
153+
* Optional. Enter a time for the jam sync. The default is midnight UTC. When epoch locking is enabled, MediaLive performs a daily jam sync on every output encode to ensure timecodes don’t diverge from the wall clock. The jam sync applies only to encodes with frame rate of 29.97 or 59.94 FPS. To override, enter a time in HH:MM:SS in UTC. Always set the MM:SS portion to 00:00.
154+
* @public
155+
*/
156+
JamSyncTime?: string | undefined;
157+
}
158+
159+
/**
160+
* Pipeline Locking Settings
161+
* @public
162+
*/
163+
export interface PipelineLockingSettings {}
164+
129165
/**
130166
* Output Locking Settings
131167
* @public

0 commit comments

Comments
 (0)