Skip to content

Commit e804655

Browse files
author
awstools
committed
feat(client-mediaconvert): This release adds support for TAMS server integration with MediaConvert inputs.
1 parent c63c1e3 commit e804655

File tree

9 files changed

+537
-344
lines changed

9 files changed

+537
-344
lines changed

clients/client-mediaconvert/src/commands/CreateJobCommand.ts

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -246,6 +246,12 @@ export interface CreateJobCommandOutput extends CreateJobResponse, __MetadataBea
246246
* SupplementalImps: [ // __listOf__stringPatternS3ASSETMAPXml
247247
* "STRING_VALUE",
248248
* ],
249+
* TamsSettings: { // InputTamsSettings
250+
* AuthConnectionArn: "STRING_VALUE",
251+
* GapHandling: "SKIP_GAPS" || "FILL_WITH_BLACK" || "HOLD_LAST_FRAME",
252+
* SourceId: "STRING_VALUE",
253+
* Timerange: "STRING_VALUE",
254+
* },
249255
* TimecodeSource: "EMBEDDED" || "ZEROBASED" || "SPECIFIEDSTART",
250256
* TimecodeStart: "STRING_VALUE",
251257
* VideoGenerator: { // InputVideoGenerator
@@ -1854,6 +1860,12 @@ export interface CreateJobCommandOutput extends CreateJobResponse, __MetadataBea
18541860
* // SupplementalImps: [ // __listOf__stringPatternS3ASSETMAPXml
18551861
* // "STRING_VALUE",
18561862
* // ],
1863+
* // TamsSettings: { // InputTamsSettings
1864+
* // AuthConnectionArn: "STRING_VALUE",
1865+
* // GapHandling: "SKIP_GAPS" || "FILL_WITH_BLACK" || "HOLD_LAST_FRAME",
1866+
* // SourceId: "STRING_VALUE",
1867+
* // Timerange: "STRING_VALUE",
1868+
* // },
18571869
* // TimecodeSource: "EMBEDDED" || "ZEROBASED" || "SPECIFIEDSTART",
18581870
* // TimecodeStart: "STRING_VALUE",
18591871
* // VideoGenerator: { // InputVideoGenerator

clients/client-mediaconvert/src/commands/GetJobCommand.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -290,6 +290,12 @@ export interface GetJobCommandOutput extends GetJobResponse, __MetadataBearer {}
290290
* // SupplementalImps: [ // __listOf__stringPatternS3ASSETMAPXml
291291
* // "STRING_VALUE",
292292
* // ],
293+
* // TamsSettings: { // InputTamsSettings
294+
* // AuthConnectionArn: "STRING_VALUE",
295+
* // GapHandling: "SKIP_GAPS" || "FILL_WITH_BLACK" || "HOLD_LAST_FRAME",
296+
* // SourceId: "STRING_VALUE",
297+
* // Timerange: "STRING_VALUE",
298+
* // },
293299
* // TimecodeSource: "EMBEDDED" || "ZEROBASED" || "SPECIFIEDSTART",
294300
* // TimecodeStart: "STRING_VALUE",
295301
* // VideoGenerator: { // InputVideoGenerator

clients/client-mediaconvert/src/commands/ListJobsCommand.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -295,6 +295,12 @@ export interface ListJobsCommandOutput extends ListJobsResponse, __MetadataBeare
295295
* // SupplementalImps: [ // __listOf__stringPatternS3ASSETMAPXml
296296
* // "STRING_VALUE",
297297
* // ],
298+
* // TamsSettings: { // InputTamsSettings
299+
* // AuthConnectionArn: "STRING_VALUE",
300+
* // GapHandling: "SKIP_GAPS" || "FILL_WITH_BLACK" || "HOLD_LAST_FRAME",
301+
* // SourceId: "STRING_VALUE",
302+
* // Timerange: "STRING_VALUE",
303+
* // },
298304
* // TimecodeSource: "EMBEDDED" || "ZEROBASED" || "SPECIFIEDSTART",
299305
* // TimecodeStart: "STRING_VALUE",
300306
* // VideoGenerator: { // InputVideoGenerator

clients/client-mediaconvert/src/commands/SearchJobsCommand.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -296,6 +296,12 @@ export interface SearchJobsCommandOutput extends SearchJobsResponse, __MetadataB
296296
* // SupplementalImps: [ // __listOf__stringPatternS3ASSETMAPXml
297297
* // "STRING_VALUE",
298298
* // ],
299+
* // TamsSettings: { // InputTamsSettings
300+
* // AuthConnectionArn: "STRING_VALUE",
301+
* // GapHandling: "SKIP_GAPS" || "FILL_WITH_BLACK" || "HOLD_LAST_FRAME",
302+
* // SourceId: "STRING_VALUE",
303+
* // Timerange: "STRING_VALUE",
304+
* // },
299305
* // TimecodeSource: "EMBEDDED" || "ZEROBASED" || "SPECIFIEDSTART",
300306
* // TimecodeStart: "STRING_VALUE",
301307
* // VideoGenerator: { // InputVideoGenerator

clients/client-mediaconvert/src/models/models_0.ts

Lines changed: 54 additions & 216 deletions
Large diffs are not rendered by default.

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

Lines changed: 234 additions & 114 deletions
Large diffs are not rendered by default.

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

Lines changed: 106 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ import {
1515
EsamSettings,
1616
ExtendedDataServices,
1717
HopDestination,
18+
Input,
1819
InputTemplate,
1920
JobMessages,
2021
JobPhase,
@@ -26,15 +27,111 @@ import {
2627
QueueTransition,
2728
} from "./models_0";
2829

29-
import {
30-
ContainerSettings,
31-
JobSettings,
32-
OutputGroup,
33-
SimulateReservedQueue,
34-
TimecodeConfig,
35-
TimedMetadataInsertion,
36-
VideoDescription,
37-
} from "./models_1";
30+
import { ContainerSettings, OutputGroup, TimecodeConfig, TimedMetadataInsertion, VideoDescription } from "./models_1";
31+
32+
/**
33+
* JobSettings contains all the transcode settings for a job.
34+
* @public
35+
*/
36+
export interface JobSettings {
37+
/**
38+
* When specified, this offset (in milliseconds) is added to the input Ad Avail PTS time.
39+
* @public
40+
*/
41+
AdAvailOffset?: number | undefined;
42+
43+
/**
44+
* Settings for ad avail blanking. Video can be blanked or overlaid with an image, and audio muted during SCTE-35 triggered ad avails.
45+
* @public
46+
*/
47+
AvailBlanking?: AvailBlanking | undefined;
48+
49+
/**
50+
* Use 3D LUTs to specify custom color mapping behavior when you convert from one color space into another. You can include up to 8 different 3D LUTs. For more information, see: https://docs.aws.amazon.com/mediaconvert/latest/ug/3d-luts.html
51+
* @public
52+
*/
53+
ColorConversion3DLUTSettings?: ColorConversion3DLUTSetting[] | undefined;
54+
55+
/**
56+
* Settings for Event Signaling And Messaging (ESAM). If you don't do ad insertion, you can ignore these settings.
57+
* @public
58+
*/
59+
Esam?: EsamSettings | undefined;
60+
61+
/**
62+
* If your source content has EIA-608 Line 21 Data Services, enable this feature to specify what MediaConvert does with the Extended Data Services (XDS) packets. You can choose to pass through XDS packets, or remove them from the output. For more information about XDS, see EIA-608 Line Data Services, section 9.5.1.5 05h Content Advisory.
63+
* @public
64+
*/
65+
ExtendedDataServices?: ExtendedDataServices | undefined;
66+
67+
/**
68+
* Specify the input that MediaConvert references for your default output settings. MediaConvert uses this input's Resolution, Frame rate, and Pixel aspect ratio for all outputs that you don't manually specify different output settings for. Enabling this setting will disable "Follow source" for all other inputs. If MediaConvert cannot follow your source, for example if you specify an audio-only input, MediaConvert uses the first followable input instead. In your JSON job specification, enter an integer from 1 to 150 corresponding to the order of your inputs.
69+
* @public
70+
*/
71+
FollowSource?: number | undefined;
72+
73+
/**
74+
* Use Inputs to define source file used in the transcode job. There can be multiple inputs add in a job. These inputs will be concantenated together to create the output.
75+
* @public
76+
*/
77+
Inputs?: Input[] | undefined;
78+
79+
/**
80+
* Use these settings only when you use Kantar watermarking. Specify the values that MediaConvert uses to generate and place Kantar watermarks in your output audio. These settings apply to every output in your job. In addition to specifying these values, you also need to store your Kantar credentials in AWS Secrets Manager. For more information, see https://docs.aws.amazon.com/mediaconvert/latest/ug/kantar-watermarking.html.
81+
* @public
82+
*/
83+
KantarWatermark?: KantarWatermarkSettings | undefined;
84+
85+
/**
86+
* Overlay motion graphics on top of your video. The motion graphics that you specify here appear on all outputs in all output groups. For more information, see https://docs.aws.amazon.com/mediaconvert/latest/ug/motion-graphic-overlay.html.
87+
* @public
88+
*/
89+
MotionImageInserter?: MotionImageInserter | undefined;
90+
91+
/**
92+
* Settings for your Nielsen configuration. If you don't do Nielsen measurement and analytics, ignore these settings. When you enable Nielsen configuration, MediaConvert enables PCM to ID3 tagging for all outputs in the job.
93+
* @public
94+
*/
95+
NielsenConfiguration?: NielsenConfiguration | undefined;
96+
97+
/**
98+
* Ignore these settings unless you are using Nielsen non-linear watermarking. Specify the values that MediaConvert uses to generate and place Nielsen watermarks in your output audio. In addition to specifying these values, you also need to set up your cloud TIC server. These settings apply to every output in your job. The MediaConvert implementation is currently with the following Nielsen versions: Nielsen Watermark SDK Version 6.0.13 Nielsen NLM Watermark Engine Version 1.3.3 Nielsen Watermark Authenticator [SID_TIC] Version [7.0.0]
99+
* @public
100+
*/
101+
NielsenNonLinearWatermark?: NielsenNonLinearWatermarkSettings | undefined;
102+
103+
/**
104+
* Contains one group of settings for each set of outputs that share a common package type. All unpackaged files (MPEG-4, MPEG-2 TS, Quicktime, MXF, and no container) are grouped in a single output group as well. Required in is a group of settings that apply to the whole group. This required object depends on the value you set for Type. Type, settings object pairs are as follows. * FILE_GROUP_SETTINGS, FileGroupSettings * HLS_GROUP_SETTINGS, HlsGroupSettings * DASH_ISO_GROUP_SETTINGS, DashIsoGroupSettings * MS_SMOOTH_GROUP_SETTINGS, MsSmoothGroupSettings * CMAF_GROUP_SETTINGS, CmafGroupSettings
105+
* @public
106+
*/
107+
OutputGroups?: OutputGroup[] | undefined;
108+
109+
/**
110+
* These settings control how the service handles timecodes throughout the job. These settings don't affect input clipping.
111+
* @public
112+
*/
113+
TimecodeConfig?: TimecodeConfig | undefined;
114+
115+
/**
116+
* Insert user-defined custom ID3 metadata at timecodes that you specify. In each output that you want to include this metadata, you must set ID3 metadata to Passthrough.
117+
* @public
118+
*/
119+
TimedMetadataInsertion?: TimedMetadataInsertion | undefined;
120+
}
121+
122+
/**
123+
* @public
124+
* @enum
125+
*/
126+
export const SimulateReservedQueue = {
127+
DISABLED: "DISABLED",
128+
ENABLED: "ENABLED",
129+
} as const;
130+
131+
/**
132+
* @public
133+
*/
134+
export type SimulateReservedQueue = (typeof SimulateReservedQueue)[keyof typeof SimulateReservedQueue];
38135

39136
/**
40137
* @public

clients/client-mediaconvert/src/protocols/Aws_restJson1.ts

Lines changed: 29 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -129,7 +129,6 @@ import {
129129
HlsAdMarkers,
130130
HlsCaptionLanguageMapping,
131131
HlsEncryptionSettings,
132-
HlsGroupSettings,
133132
HlsImageBasedTrickPlaySettings,
134133
HlsRenditionGroupSettings,
135134
HopDestination,
@@ -139,6 +138,7 @@ import {
139138
Input,
140139
InputClipping,
141140
InputDecryptionSettings,
141+
InputTamsSettings,
142142
InputTemplate,
143143
InputVideoGenerator,
144144
InsertableImage,
@@ -210,8 +210,8 @@ import {
210210
H265QvbrSettings,
211211
H265Settings,
212212
Hdr10Plus,
213+
HlsGroupSettings,
213214
HlsSettings,
214-
JobSettings,
215215
M2tsScte35Esam,
216216
M2tsSettings,
217217
M3u8Settings,
@@ -263,6 +263,7 @@ import {
263263
InternalServerErrorException,
264264
Job,
265265
JobEngineVersion,
266+
JobSettings,
266267
JobTemplate,
267268
JobTemplateSettings,
268269
Metadata,
@@ -3418,6 +3419,7 @@ const se_Input = (input: Input, context: __SerdeContext): any => {
34183419
programNumber: [, , `ProgramNumber`],
34193420
psiControl: [, , `PsiControl`],
34203421
supplementalImps: [, _json, `SupplementalImps`],
3422+
tamsSettings: [, (_) => se_InputTamsSettings(_, context), `TamsSettings`],
34213423
timecodeSource: [, , `TimecodeSource`],
34223424
timecodeStart: [, , `TimecodeStart`],
34233425
videoGenerator: [, (_) => se_InputVideoGenerator(_, context), `VideoGenerator`],
@@ -3448,6 +3450,18 @@ const se_InputDecryptionSettings = (input: InputDecryptionSettings, context: __S
34483450
});
34493451
};
34503452

3453+
/**
3454+
* serializeAws_restJson1InputTamsSettings
3455+
*/
3456+
const se_InputTamsSettings = (input: InputTamsSettings, context: __SerdeContext): any => {
3457+
return take(input, {
3458+
authConnectionArn: [, , `AuthConnectionArn`],
3459+
gapHandling: [, , `GapHandling`],
3460+
sourceId: [, , `SourceId`],
3461+
timerange: [, , `Timerange`],
3462+
});
3463+
};
3464+
34513465
/**
34523466
* serializeAws_restJson1InputTemplate
34533467
*/
@@ -6682,6 +6696,7 @@ const de_Input = (output: any, context: __SerdeContext): Input => {
66826696
ProgramNumber: [, __expectInt32, `programNumber`],
66836697
PsiControl: [, __expectString, `psiControl`],
66846698
SupplementalImps: [, _json, `supplementalImps`],
6699+
TamsSettings: [, (_: any) => de_InputTamsSettings(_, context), `tamsSettings`],
66856700
TimecodeSource: [, __expectString, `timecodeSource`],
66866701
TimecodeStart: [, __expectString, `timecodeStart`],
66876702
VideoGenerator: [, (_: any) => de_InputVideoGenerator(_, context), `videoGenerator`],
@@ -6712,6 +6727,18 @@ const de_InputDecryptionSettings = (output: any, context: __SerdeContext): Input
67126727
}) as any;
67136728
};
67146729

6730+
/**
6731+
* deserializeAws_restJson1InputTamsSettings
6732+
*/
6733+
const de_InputTamsSettings = (output: any, context: __SerdeContext): InputTamsSettings => {
6734+
return take(output, {
6735+
AuthConnectionArn: [, __expectString, `authConnectionArn`],
6736+
GapHandling: [, __expectString, `gapHandling`],
6737+
SourceId: [, __expectString, `sourceId`],
6738+
Timerange: [, __expectString, `timerange`],
6739+
}) as any;
6740+
};
6741+
67156742
/**
67166743
* deserializeAws_restJson1InputTemplate
67176744
*/

0 commit comments

Comments
 (0)