Skip to content

Commit d834e2a

Browse files
AWS Elemental MediaLive / Features : Add support for CMAF Ingest CaptionLanguageMappings, TimedMetadataId3 settings, and Link InputResolution.
1 parent e8228bf commit d834e2a

15 files changed

+709
-3
lines changed

generator/ServiceModels/medialive/medialive-2017-10-14.api.json

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10584,6 +10584,10 @@
1058410584
"AudioChannelPairs": {
1058510585
"shape": "__listOfInputDeviceConfigurableAudioChannelPairConfig",
1058610586
"locationName": "audioChannelPairs"
10587+
},
10588+
"InputResolution": {
10589+
"shape": "__string",
10590+
"locationName": "inputResolution"
1058710591
}
1058810592
}
1058910593
},
@@ -10903,6 +10907,10 @@
1090310907
"AudioChannelPairs": {
1090410908
"shape": "__listOfInputDeviceUhdAudioChannelPairConfig",
1090510909
"locationName": "audioChannelPairs"
10910+
},
10911+
"InputResolution": {
10912+
"shape": "__string",
10913+
"locationName": "inputResolution"
1090610914
}
1090710915
}
1090810916
},
@@ -17551,6 +17559,22 @@
1755117559
"Id3NameModifier": {
1755217560
"shape": "__stringMax100",
1755317561
"locationName": "id3NameModifier"
17562+
},
17563+
"CaptionLanguageMappings": {
17564+
"shape": "__listOfCmafIngestCaptionLanguageMapping",
17565+
"locationName": "captionLanguageMappings"
17566+
},
17567+
"TimedMetadataId3Frame": {
17568+
"shape": "CmafTimedMetadataId3Frame",
17569+
"locationName": "timedMetadataId3Frame"
17570+
},
17571+
"TimedMetadataId3Period": {
17572+
"shape": "__integerMin0Max10000",
17573+
"locationName": "timedMetadataId3Period"
17574+
},
17575+
"TimedMetadataPassthrough": {
17576+
"shape": "CmafTimedMetadataPassthrough",
17577+
"locationName": "timedMetadataPassthrough"
1755417578
}
1755517579
},
1755617580
"required": [
@@ -24539,6 +24563,44 @@
2453924563
"member": {
2454024564
"shape": "SdiSourceSummary"
2454124565
}
24566+
},
24567+
"CmafIngestCaptionLanguageMapping": {
24568+
"type": "structure",
24569+
"members": {
24570+
"CaptionChannel": {
24571+
"shape": "__integerMin1Max4",
24572+
"locationName": "captionChannel"
24573+
},
24574+
"LanguageCode": {
24575+
"shape": "__stringMin3Max3",
24576+
"locationName": "languageCode"
24577+
}
24578+
},
24579+
"required": [
24580+
"LanguageCode",
24581+
"CaptionChannel"
24582+
]
24583+
},
24584+
"CmafTimedMetadataId3Frame": {
24585+
"type": "string",
24586+
"enum": [
24587+
"NONE",
24588+
"PRIV",
24589+
"TDRL"
24590+
]
24591+
},
24592+
"CmafTimedMetadataPassthrough": {
24593+
"type": "string",
24594+
"enum": [
24595+
"DISABLED",
24596+
"ENABLED"
24597+
]
24598+
},
24599+
"__listOfCmafIngestCaptionLanguageMapping": {
24600+
"type": "list",
24601+
"member": {
24602+
"shape": "CmafIngestCaptionLanguageMapping"
24603+
}
2454224604
}
2454324605
}
2454424606
}

generator/ServiceModels/medialive/medialive-2017-10-14.docs.json

Lines changed: 30 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4034,7 +4034,8 @@
40344034
"M2tsSettings$EbpLookaheadMs": "When set, enforces that Encoder Boundary Points do not come within the specified time interval of each other by looking ahead at input video. If another EBP is going to come in within the specified time interval, the current EBP is not emitted, and the segment is \"stretched\" to the next marker. The lookahead value does not add latency to the system. The Live Event must be configured elsewhere to create sufficient latency to make the lookahead accurate.",
40354035
"MsSmoothGroupSettings$SendDelayMs": "Number of milliseconds to delay the output from the second pipeline.",
40364036
"UdpOutputSettings$BufferMsec": "UDP output buffering in milliseconds. Larger values increase latency through the transcoder but simultaneously assist the transcoder in maintaining a constant, low-jitter UDP/RTP output while accommodating clock recovery, input switching, input disruptions, picture reordering, etc.",
4037-
"SrtOutputSettings$BufferMsec": "SRT output buffering in milliseconds. A higher value increases latency through the encoder. But the benefits are that it helps to maintain a constant, low-jitter SRT output, and it accommodates clock recovery, input switching, input disruptions, picture reordering, and so on. Range: 0-10000 milliseconds."
4037+
"SrtOutputSettings$BufferMsec": "SRT output buffering in milliseconds. A higher value increases latency through the encoder. But the benefits are that it helps to maintain a constant, low-jitter SRT output, and it accommodates clock recovery, input switching, input disruptions, picture reordering, and so on. Range: 0-10000 milliseconds.",
4038+
"CmafIngestGroupSettings$TimedMetadataId3Period": "If you set up to insert a timecode in the output, specify the frequency for the frame, in seconds."
40384039
}
40394040
},
40404041
"__integerMin0Max1000000": {
@@ -4319,7 +4320,8 @@
43194320
"AncillarySourceSettings$SourceAncillaryChannelNumber": "Specifies the number (1 to 4) of the captions channel you want to extract from the ancillary captions. If you plan to convert the ancillary captions to another format, complete this field. If you plan to choose Embedded as the captions destination in the output (to pass through all the channels in the ancillary captions), leave this field blank because MediaLive ignores the field.",
43204321
"CaptionLanguageMapping$CaptionChannel": "The closed caption channel being described by this CaptionLanguageMapping. Each channel mapping must have a unique channel number (maximum of 4)",
43214322
"EmbeddedSourceSettings$Source608ChannelNumber": "Specifies the 608/708 channel number within the video track from which to extract captions. Unused for passthrough.",
4322-
"Scte20SourceSettings$Source608ChannelNumber": "Specifies the 608/708 channel number within the video track from which to extract captions. Unused for passthrough."
4323+
"Scte20SourceSettings$Source608ChannelNumber": "Specifies the 608/708 channel number within the video track from which to extract captions. Unused for passthrough.",
4324+
"CmafIngestCaptionLanguageMapping$CaptionChannel": "A number for the channel for this caption, 1 to 4."
43234325
}
43244326
},
43254327
"__integerMin1Max5": {
@@ -5358,7 +5360,8 @@
53585360
"__stringMin3Max3": {
53595361
"base": null,
53605362
"refs": {
5361-
"CaptionLanguageMapping$LanguageCode": "Three character ISO 639-2 language code (see http://www.loc.gov/standards/iso639-2)"
5363+
"CaptionLanguageMapping$LanguageCode": "Three character ISO 639-2 language code (see http://www.loc.gov/standards/iso639-2)",
5364+
"CmafIngestCaptionLanguageMapping$LanguageCode": "Language code for the language of the caption in this channel. For example, ger/deu. See http://www.loc.gov/standards/iso639-2"
53625365
}
53635366
},
53645367
"__stringMin6Max6": {
@@ -7131,6 +7134,30 @@
71317134
"refs": {
71327135
"ListSdiSourcesResponse$SdiSources": null
71337136
}
7137+
},
7138+
"CmafIngestCaptionLanguageMapping": {
7139+
"base": "Add an array item for each language. Follow the order of the caption descriptions. For example, if the first caption description is for German, then the first array item must be for German, and its caption channel must be set to 1. The second array item must be 2, and so on.",
7140+
"refs": {
7141+
"__listOfCmafIngestCaptionLanguageMapping$member": null
7142+
}
7143+
},
7144+
"CmafTimedMetadataId3Frame": {
7145+
"base": "Cmaf Timed Metadata Id3 Frame",
7146+
"refs": {
7147+
"CmafIngestGroupSettings$TimedMetadataId3Frame": "Set to none if you don't want to insert a timecode in the output. Otherwise choose the frame type for the timecode."
7148+
}
7149+
},
7150+
"CmafTimedMetadataPassthrough": {
7151+
"base": "Cmaf Timed Metadata Passthrough",
7152+
"refs": {
7153+
"CmafIngestGroupSettings$TimedMetadataPassthrough": "Set to enabled to pass through ID3 metadata from the input sources."
7154+
}
7155+
},
7156+
"__listOfCmafIngestCaptionLanguageMapping": {
7157+
"base": null,
7158+
"refs": {
7159+
"CmafIngestGroupSettings$CaptionLanguageMappings": "An array that identifies the languages in the four caption channels in the embedded captions."
7160+
}
71347161
}
71357162
},
71367163
"documentation": "API for AWS Elemental MediaLive"

generator/ServiceModels/medialive/medialive-2017-10-14.normal.json

Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12800,6 +12800,11 @@
1280012800
"shape": "__listOfInputDeviceConfigurableAudioChannelPairConfig",
1280112801
"locationName": "audioChannelPairs",
1280212802
"documentation": "An array of eight audio configurations, one for each audio pair in the source. Set up each audio configuration either to exclude the pair, or to format it and include it in the output from the device. This parameter applies only to UHD devices, and only when the device is configured as the source for a MediaConnect flow. For an HD device, you configure the audio by setting up audio selectors in the channel configuration."
12803+
},
12804+
"InputResolution": {
12805+
"shape": "__string",
12806+
"locationName": "inputResolution",
12807+
"documentation": "Choose the resolution of the Link device's source (HD or UHD). Make sure the resolution matches the current source from the device. This value determines MediaLive resource allocation and billing for this input. Only UHD devices can specify this parameter."
1280312808
}
1280412809
},
1280512810
"documentation": "Configurable settings for the input device."
@@ -13190,6 +13195,11 @@
1319013195
"shape": "__listOfInputDeviceUhdAudioChannelPairConfig",
1319113196
"locationName": "audioChannelPairs",
1319213197
"documentation": "An array of eight audio configurations, one for each audio pair in the source. Each audio configuration specifies either to exclude the pair, or to format it and include it in the output from the UHD device. Applies only when the device is configured as the source for a MediaConnect flow."
13198+
},
13199+
"InputResolution": {
13200+
"shape": "__string",
13201+
"locationName": "inputResolution",
13202+
"documentation": "The resolution of the Link device's source (HD or UHD). This value determines MediaLive resource allocation and billing for this input."
1319313203
}
1319413204
},
1319513205
"documentation": "Settings that describe the active source from the input device, and the video characteristics of that source."
@@ -21077,6 +21087,26 @@
2107721087
"shape": "__stringMax100",
2107821088
"locationName": "id3NameModifier",
2107921089
"documentation": "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."
21090+
},
21091+
"CaptionLanguageMappings": {
21092+
"shape": "__listOfCmafIngestCaptionLanguageMapping",
21093+
"locationName": "captionLanguageMappings",
21094+
"documentation": "An array that identifies the languages in the four caption channels in the embedded captions."
21095+
},
21096+
"TimedMetadataId3Frame": {
21097+
"shape": "CmafTimedMetadataId3Frame",
21098+
"locationName": "timedMetadataId3Frame",
21099+
"documentation": "Set to none if you don't want to insert a timecode in the output. Otherwise choose the frame type for the timecode."
21100+
},
21101+
"TimedMetadataId3Period": {
21102+
"shape": "__integerMin0Max10000",
21103+
"locationName": "timedMetadataId3Period",
21104+
"documentation": "If you set up to insert a timecode in the output, specify the frequency for the frame, in seconds."
21105+
},
21106+
"TimedMetadataPassthrough": {
21107+
"shape": "CmafTimedMetadataPassthrough",
21108+
"locationName": "timedMetadataPassthrough",
21109+
"documentation": "Set to enabled to pass through ID3 metadata from the input sources."
2108021110
}
2108121111
},
2108221112
"documentation": "Cmaf Ingest Group Settings",
@@ -29209,6 +29239,50 @@
2920929239
"shape": "SdiSourceSummary"
2921029240
},
2921129241
"documentation": "Placeholder documentation for __listOfSdiSourceSummary"
29242+
},
29243+
"CmafIngestCaptionLanguageMapping": {
29244+
"type": "structure",
29245+
"members": {
29246+
"CaptionChannel": {
29247+
"shape": "__integerMin1Max4",
29248+
"locationName": "captionChannel",
29249+
"documentation": "A number for the channel for this caption, 1 to 4."
29250+
},
29251+
"LanguageCode": {
29252+
"shape": "__stringMin3Max3",
29253+
"locationName": "languageCode",
29254+
"documentation": "Language code for the language of the caption in this channel. For example, ger/deu. See http://www.loc.gov/standards/iso639-2"
29255+
}
29256+
},
29257+
"documentation": "Add an array item for each language. Follow the order of the caption descriptions. For example, if the first caption description is for German, then the first array item must be for German, and its caption channel must be set to 1. The second array item must be 2, and so on.",
29258+
"required": [
29259+
"LanguageCode",
29260+
"CaptionChannel"
29261+
]
29262+
},
29263+
"CmafTimedMetadataId3Frame": {
29264+
"type": "string",
29265+
"documentation": "Cmaf Timed Metadata Id3 Frame",
29266+
"enum": [
29267+
"NONE",
29268+
"PRIV",
29269+
"TDRL"
29270+
]
29271+
},
29272+
"CmafTimedMetadataPassthrough": {
29273+
"type": "string",
29274+
"documentation": "Cmaf Timed Metadata Passthrough",
29275+
"enum": [
29276+
"DISABLED",
29277+
"ENABLED"
29278+
]
29279+
},
29280+
"__listOfCmafIngestCaptionLanguageMapping": {
29281+
"type": "list",
29282+
"member": {
29283+
"shape": "CmafIngestCaptionLanguageMapping"
29284+
},
29285+
"documentation": "Placeholder documentation for __listOfCmafIngestCaptionLanguageMapping"
2921229286
}
2921329287
},
2921429288
"documentation": "API for AWS Elemental MediaLive"

sdk/code-analysis/ServiceAnalysis/MediaLive/Generated/PropertyValueRules.xml

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1026,6 +1026,16 @@
10261026
<min>10</min>
10271027
<max>86400</max>
10281028
</property-value-rule>
1029+
<property-value-rule>
1030+
<property>Amazon.MediaLive.Model.CmafIngestCaptionLanguageMapping.CaptionChannel</property>
1031+
<min>1</min>
1032+
<max>4</max>
1033+
</property-value-rule>
1034+
<property-value-rule>
1035+
<property>Amazon.MediaLive.Model.CmafIngestCaptionLanguageMapping.LanguageCode</property>
1036+
<min>3</min>
1037+
<max>3</max>
1038+
</property-value-rule>
10291039
<property-value-rule>
10301040
<property>Amazon.MediaLive.Model.CmafIngestGroupSettings.Id3NameModifier</property>
10311041
<max>100</max>
@@ -1051,6 +1061,11 @@
10511061
<min>0</min>
10521062
<max>2000</max>
10531063
</property-value-rule>
1064+
<property-value-rule>
1065+
<property>Amazon.MediaLive.Model.CmafIngestGroupSettings.TimedMetadataId3Period</property>
1066+
<min>0</min>
1067+
<max>10000</max>
1068+
</property-value-rule>
10541069
<property-value-rule>
10551070
<property>Amazon.MediaLive.Model.CreateCloudWatchAlarmTemplateGroupRequestContent.Description</property>
10561071
<min>0</min>
Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
/*
2+
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3+
*
4+
* Licensed under the Apache License, Version 2.0 (the "License").
5+
* You may not use this file except in compliance with the License.
6+
* A copy of the License is located at
7+
*
8+
* http://aws.amazon.com/apache2.0
9+
*
10+
* or in the "license" file accompanying this file. This file is distributed
11+
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
12+
* express or implied. See the License for the specific language governing
13+
* permissions and limitations under the License.
14+
*/
15+
16+
/*
17+
* Do not modify this file. This file is generated from the medialive-2017-10-14.normal.json service model.
18+
*/
19+
using System;
20+
using System.Collections.Generic;
21+
using System.Xml.Serialization;
22+
using System.Text;
23+
using System.IO;
24+
using System.Net;
25+
26+
using Amazon.Runtime;
27+
using Amazon.Runtime.Internal;
28+
29+
#pragma warning disable CS0612,CS0618,CS1570
30+
namespace Amazon.MediaLive.Model
31+
{
32+
/// <summary>
33+
/// Add an array item for each language. Follow the order of the caption descriptions.
34+
/// For example, if the first caption description is for German, then the first array
35+
/// item must be for German, and its caption channel must be set to 1. The second array
36+
/// item must be 2, and so on.
37+
/// </summary>
38+
public partial class CmafIngestCaptionLanguageMapping
39+
{
40+
private int? _captionChannel;
41+
private string _languageCode;
42+
43+
/// <summary>
44+
/// Gets and sets the property CaptionChannel. A number for the channel for this caption,
45+
/// 1 to 4.
46+
/// </summary>
47+
[AWSProperty(Required=true, Min=1, Max=4)]
48+
public int CaptionChannel
49+
{
50+
get { return this._captionChannel.GetValueOrDefault(); }
51+
set { this._captionChannel = value; }
52+
}
53+
54+
// Check to see if CaptionChannel property is set
55+
internal bool IsSetCaptionChannel()
56+
{
57+
return this._captionChannel.HasValue;
58+
}
59+
60+
/// <summary>
61+
/// Gets and sets the property LanguageCode. Language code for the language of the caption
62+
/// in this channel. For example, ger/deu. See http://www.loc.gov/standards/iso639-2
63+
/// </summary>
64+
[AWSProperty(Required=true, Min=3, Max=3)]
65+
public string LanguageCode
66+
{
67+
get { return this._languageCode; }
68+
set { this._languageCode = value; }
69+
}
70+
71+
// Check to see if LanguageCode property is set
72+
internal bool IsSetLanguageCode()
73+
{
74+
return this._languageCode != null;
75+
}
76+
77+
}
78+
}

0 commit comments

Comments
 (0)