aws-sdk-ivs 1.62.0 → 1.64.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8d3f60823a1895480326f2f84fe2d45fa067684eb574f1ceef30c9b303565fe6
4
- data.tar.gz: 5cd199891815b5cec47c179c34674c54ad9b3099b7031a00049428f486ef9494
3
+ metadata.gz: 8e544da2b5ed9e030fd536d13b714230723cf11c9b9255ae0a00cd3e376a7b25
4
+ data.tar.gz: 162e5b277750b34aa769d8218841e1298dedae12a1b0672d8c49db89ed65138e
5
5
  SHA512:
6
- metadata.gz: e4ddfb7f4ec083beb5c752f90835e4bbfcb14596addff2474a9d2d12dd43ee6ead86bc4eee05cc58f31869b5cb4fd998ed58d7f98f0828ba5f002e6abaae9a9f
7
- data.tar.gz: 2882f2d09003a43719b67b969b36be83b4e39408a85c13af4b98b7282890aebe55b000a4e6a958ed82e63e3658b1a443a5776f929177654efde9ea31cc27a00d
6
+ metadata.gz: f83dbcabec28ea5aa346f06bcc02a225ac6fd3429b7577bc99215f8204cf7852e61de48d3cc7e5f7c5eeb12c9e7653450594d3c40bca05dc77500e894c645c50
7
+ data.tar.gz: e1a61a5278c0252761559a577ea62f79eb708406df9cabb261ba42833a5fd3c7b8f557829537a93b8d63a96202e3dd42475b79483906700c629e63138ab75737
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.64.0 (2024-11-14)
5
+ ------------------
6
+
7
+ * Feature - IVS now offers customers the ability to stream multitrack video to Channels.
8
+
9
+ 1.63.0 (2024-10-18)
10
+ ------------------
11
+
12
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
13
+
4
14
  1.62.0 (2024-10-15)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.62.0
1
+ 1.64.0
@@ -468,9 +468,13 @@ module Aws::IVS
468
468
  # resp.channels #=> Array
469
469
  # resp.channels[0].arn #=> String
470
470
  # resp.channels[0].authorized #=> Boolean
471
+ # resp.channels[0].container_format #=> String, one of "TS", "FRAGMENTED_MP4"
471
472
  # resp.channels[0].ingest_endpoint #=> String
472
473
  # resp.channels[0].insecure_ingest #=> Boolean
473
474
  # resp.channels[0].latency_mode #=> String, one of "NORMAL", "LOW"
475
+ # resp.channels[0].multitrack_input_configuration.enabled #=> Boolean
476
+ # resp.channels[0].multitrack_input_configuration.maximum_resolution #=> String, one of "SD", "HD", "FULL_HD"
477
+ # resp.channels[0].multitrack_input_configuration.policy #=> String, one of "ALLOW", "REQUIRE"
474
478
  # resp.channels[0].name #=> String
475
479
  # resp.channels[0].playback_restriction_policy_arn #=> String
476
480
  # resp.channels[0].playback_url #=> String
@@ -578,6 +582,13 @@ module Aws::IVS
578
582
  # Whether the channel is private (enabled for playback authorization).
579
583
  # Default: `false`.
580
584
  #
585
+ # @option params [String] :container_format
586
+ # Indicates which content-packaging format is used (MPEG-TS or fMP4). If
587
+ # `multitrackInputConfiguration` is specified and `enabled` is `true`,
588
+ # then `containerFormat` is required and must be set to
589
+ # `FRAGMENTED_MP4`. Otherwise, `containerFormat` may be set to `TS` or
590
+ # `FRAGMENTED_MP4`. Default: `TS`.
591
+ #
581
592
  # @option params [Boolean] :insecure_ingest
582
593
  # Whether the channel allows insecure RTMP and SRT ingest. Default:
583
594
  # `false`.
@@ -587,6 +598,10 @@ module Aws::IVS
587
598
  # up to Full HD. Use `LOW` for near-real-time interaction with viewers.
588
599
  # Default: `LOW`.
589
600
  #
601
+ # @option params [Types::MultitrackInputConfiguration] :multitrack_input_configuration
602
+ # Object specifying multitrack input configuration. Default: no
603
+ # multitrack input configuration is specified.
604
+ #
590
605
  # @option params [String] :name
591
606
  # Channel name.
592
607
  #
@@ -637,8 +652,14 @@ module Aws::IVS
637
652
  #
638
653
  # resp = client.create_channel({
639
654
  # authorized: false,
655
+ # container_format: "TS", # accepts TS, FRAGMENTED_MP4
640
656
  # insecure_ingest: false,
641
657
  # latency_mode: "NORMAL", # accepts NORMAL, LOW
658
+ # multitrack_input_configuration: {
659
+ # enabled: false,
660
+ # maximum_resolution: "SD", # accepts SD, HD, FULL_HD
661
+ # policy: "ALLOW", # accepts ALLOW, REQUIRE
662
+ # },
642
663
  # name: "ChannelName",
643
664
  # playback_restriction_policy_arn: "ChannelPlaybackRestrictionPolicyArn",
644
665
  # preset: "HIGHER_BANDWIDTH_DELIVERY", # accepts HIGHER_BANDWIDTH_DELIVERY, CONSTRAINED_BANDWIDTH_DELIVERY
@@ -653,9 +674,13 @@ module Aws::IVS
653
674
  #
654
675
  # resp.channel.arn #=> String
655
676
  # resp.channel.authorized #=> Boolean
677
+ # resp.channel.container_format #=> String, one of "TS", "FRAGMENTED_MP4"
656
678
  # resp.channel.ingest_endpoint #=> String
657
679
  # resp.channel.insecure_ingest #=> Boolean
658
680
  # resp.channel.latency_mode #=> String, one of "NORMAL", "LOW"
681
+ # resp.channel.multitrack_input_configuration.enabled #=> Boolean
682
+ # resp.channel.multitrack_input_configuration.maximum_resolution #=> String, one of "SD", "HD", "FULL_HD"
683
+ # resp.channel.multitrack_input_configuration.policy #=> String, one of "ALLOW", "REQUIRE"
659
684
  # resp.channel.name #=> String
660
685
  # resp.channel.playback_restriction_policy_arn #=> String
661
686
  # resp.channel.playback_url #=> String
@@ -1070,9 +1095,13 @@ module Aws::IVS
1070
1095
  #
1071
1096
  # resp.channel.arn #=> String
1072
1097
  # resp.channel.authorized #=> Boolean
1098
+ # resp.channel.container_format #=> String, one of "TS", "FRAGMENTED_MP4"
1073
1099
  # resp.channel.ingest_endpoint #=> String
1074
1100
  # resp.channel.insecure_ingest #=> Boolean
1075
1101
  # resp.channel.latency_mode #=> String, one of "NORMAL", "LOW"
1102
+ # resp.channel.multitrack_input_configuration.enabled #=> Boolean
1103
+ # resp.channel.multitrack_input_configuration.maximum_resolution #=> String, one of "SD", "HD", "FULL_HD"
1104
+ # resp.channel.multitrack_input_configuration.policy #=> String, one of "ALLOW", "REQUIRE"
1076
1105
  # resp.channel.name #=> String
1077
1106
  # resp.channel.playback_restriction_policy_arn #=> String
1078
1107
  # resp.channel.playback_url #=> String
@@ -1303,9 +1332,13 @@ module Aws::IVS
1303
1332
  #
1304
1333
  # resp.stream_session.channel.arn #=> String
1305
1334
  # resp.stream_session.channel.authorized #=> Boolean
1335
+ # resp.stream_session.channel.container_format #=> String, one of "TS", "FRAGMENTED_MP4"
1306
1336
  # resp.stream_session.channel.ingest_endpoint #=> String
1307
1337
  # resp.stream_session.channel.insecure_ingest #=> Boolean
1308
1338
  # resp.stream_session.channel.latency_mode #=> String, one of "NORMAL", "LOW"
1339
+ # resp.stream_session.channel.multitrack_input_configuration.enabled #=> Boolean
1340
+ # resp.stream_session.channel.multitrack_input_configuration.maximum_resolution #=> String, one of "SD", "HD", "FULL_HD"
1341
+ # resp.stream_session.channel.multitrack_input_configuration.policy #=> String, one of "ALLOW", "REQUIRE"
1309
1342
  # resp.stream_session.channel.name #=> String
1310
1343
  # resp.stream_session.channel.playback_restriction_policy_arn #=> String
1311
1344
  # resp.stream_session.channel.playback_url #=> String
@@ -1321,14 +1354,36 @@ module Aws::IVS
1321
1354
  # resp.stream_session.ingest_configuration.audio.codec #=> String
1322
1355
  # resp.stream_session.ingest_configuration.audio.sample_rate #=> Integer
1323
1356
  # resp.stream_session.ingest_configuration.audio.target_bitrate #=> Integer
1357
+ # resp.stream_session.ingest_configuration.audio.track #=> String
1324
1358
  # resp.stream_session.ingest_configuration.video.avc_level #=> String
1325
1359
  # resp.stream_session.ingest_configuration.video.avc_profile #=> String
1326
1360
  # resp.stream_session.ingest_configuration.video.codec #=> String
1327
1361
  # resp.stream_session.ingest_configuration.video.encoder #=> String
1362
+ # resp.stream_session.ingest_configuration.video.level #=> String
1363
+ # resp.stream_session.ingest_configuration.video.profile #=> String
1328
1364
  # resp.stream_session.ingest_configuration.video.target_bitrate #=> Integer
1329
1365
  # resp.stream_session.ingest_configuration.video.target_framerate #=> Integer
1366
+ # resp.stream_session.ingest_configuration.video.track #=> String
1330
1367
  # resp.stream_session.ingest_configuration.video.video_height #=> Integer
1331
1368
  # resp.stream_session.ingest_configuration.video.video_width #=> Integer
1369
+ # resp.stream_session.ingest_configurations.audio_configurations #=> Array
1370
+ # resp.stream_session.ingest_configurations.audio_configurations[0].channels #=> Integer
1371
+ # resp.stream_session.ingest_configurations.audio_configurations[0].codec #=> String
1372
+ # resp.stream_session.ingest_configurations.audio_configurations[0].sample_rate #=> Integer
1373
+ # resp.stream_session.ingest_configurations.audio_configurations[0].target_bitrate #=> Integer
1374
+ # resp.stream_session.ingest_configurations.audio_configurations[0].track #=> String
1375
+ # resp.stream_session.ingest_configurations.video_configurations #=> Array
1376
+ # resp.stream_session.ingest_configurations.video_configurations[0].avc_level #=> String
1377
+ # resp.stream_session.ingest_configurations.video_configurations[0].avc_profile #=> String
1378
+ # resp.stream_session.ingest_configurations.video_configurations[0].codec #=> String
1379
+ # resp.stream_session.ingest_configurations.video_configurations[0].encoder #=> String
1380
+ # resp.stream_session.ingest_configurations.video_configurations[0].level #=> String
1381
+ # resp.stream_session.ingest_configurations.video_configurations[0].profile #=> String
1382
+ # resp.stream_session.ingest_configurations.video_configurations[0].target_bitrate #=> Integer
1383
+ # resp.stream_session.ingest_configurations.video_configurations[0].target_framerate #=> Integer
1384
+ # resp.stream_session.ingest_configurations.video_configurations[0].track #=> String
1385
+ # resp.stream_session.ingest_configurations.video_configurations[0].video_height #=> Integer
1386
+ # resp.stream_session.ingest_configurations.video_configurations[0].video_width #=> Integer
1332
1387
  # resp.stream_session.recording_configuration.arn #=> String
1333
1388
  # resp.stream_session.recording_configuration.destination_configuration.s3.bucket_name #=> String
1334
1389
  # resp.stream_session.recording_configuration.name #=> String
@@ -1989,6 +2044,13 @@ module Aws::IVS
1989
2044
  # @option params [Boolean] :authorized
1990
2045
  # Whether the channel is private (enabled for playback authorization).
1991
2046
  #
2047
+ # @option params [String] :container_format
2048
+ # Indicates which content-packaging format is used (MPEG-TS or fMP4). If
2049
+ # `multitrackInputConfiguration` is specified and `enabled` is `true`,
2050
+ # then `containerFormat` is required and must be set to
2051
+ # `FRAGMENTED_MP4`. Otherwise, `containerFormat` may be set to `TS` or
2052
+ # `FRAGMENTED_MP4`. Default: `TS`.
2053
+ #
1992
2054
  # @option params [Boolean] :insecure_ingest
1993
2055
  # Whether the channel allows insecure RTMP and SRT ingest. Default:
1994
2056
  # `false`.
@@ -1997,6 +2059,10 @@ module Aws::IVS
1997
2059
  # Channel latency mode. Use `NORMAL` to broadcast and deliver live video
1998
2060
  # up to Full HD. Use `LOW` for near-real-time interaction with viewers.
1999
2061
  #
2062
+ # @option params [Types::MultitrackInputConfiguration] :multitrack_input_configuration
2063
+ # Object specifying multitrack input configuration. Default: no
2064
+ # multitrack input configuration is specified.
2065
+ #
2000
2066
  # @option params [String] :name
2001
2067
  # Channel name.
2002
2068
  #
@@ -2036,8 +2102,14 @@ module Aws::IVS
2036
2102
  # resp = client.update_channel({
2037
2103
  # arn: "ChannelArn", # required
2038
2104
  # authorized: false,
2105
+ # container_format: "TS", # accepts TS, FRAGMENTED_MP4
2039
2106
  # insecure_ingest: false,
2040
2107
  # latency_mode: "NORMAL", # accepts NORMAL, LOW
2108
+ # multitrack_input_configuration: {
2109
+ # enabled: false,
2110
+ # maximum_resolution: "SD", # accepts SD, HD, FULL_HD
2111
+ # policy: "ALLOW", # accepts ALLOW, REQUIRE
2112
+ # },
2041
2113
  # name: "ChannelName",
2042
2114
  # playback_restriction_policy_arn: "ChannelPlaybackRestrictionPolicyArn",
2043
2115
  # preset: "HIGHER_BANDWIDTH_DELIVERY", # accepts HIGHER_BANDWIDTH_DELIVERY, CONSTRAINED_BANDWIDTH_DELIVERY
@@ -2049,9 +2121,13 @@ module Aws::IVS
2049
2121
  #
2050
2122
  # resp.channel.arn #=> String
2051
2123
  # resp.channel.authorized #=> Boolean
2124
+ # resp.channel.container_format #=> String, one of "TS", "FRAGMENTED_MP4"
2052
2125
  # resp.channel.ingest_endpoint #=> String
2053
2126
  # resp.channel.insecure_ingest #=> Boolean
2054
2127
  # resp.channel.latency_mode #=> String, one of "NORMAL", "LOW"
2128
+ # resp.channel.multitrack_input_configuration.enabled #=> Boolean
2129
+ # resp.channel.multitrack_input_configuration.maximum_resolution #=> String, one of "SD", "HD", "FULL_HD"
2130
+ # resp.channel.multitrack_input_configuration.policy #=> String, one of "ALLOW", "REQUIRE"
2055
2131
  # resp.channel.name #=> String
2056
2132
  # resp.channel.playback_restriction_policy_arn #=> String
2057
2133
  # resp.channel.playback_url #=> String
@@ -2157,7 +2233,7 @@ module Aws::IVS
2157
2233
  tracer: tracer
2158
2234
  )
2159
2235
  context[:gem_name] = 'aws-sdk-ivs'
2160
- context[:gem_version] = '1.62.0'
2236
+ context[:gem_version] = '1.64.0'
2161
2237
  Seahorse::Client::Request.new(handlers, context)
2162
2238
  end
2163
2239
 
@@ -16,6 +16,7 @@ module Aws::IVS
16
16
 
17
17
  AccessDeniedException = Shapes::StructureShape.new(name: 'AccessDeniedException')
18
18
  AudioConfiguration = Shapes::StructureShape.new(name: 'AudioConfiguration')
19
+ AudioConfigurationList = Shapes::ListShape.new(name: 'AudioConfigurationList')
19
20
  BatchError = Shapes::StructureShape.new(name: 'BatchError')
20
21
  BatchErrors = Shapes::ListShape.new(name: 'BatchErrors')
21
22
  BatchGetChannelRequest = Shapes::StructureShape.new(name: 'BatchGetChannelRequest')
@@ -42,6 +43,7 @@ module Aws::IVS
42
43
  ChannelType = Shapes::StringShape.new(name: 'ChannelType')
43
44
  Channels = Shapes::ListShape.new(name: 'Channels')
44
45
  ConflictException = Shapes::StructureShape.new(name: 'ConflictException')
46
+ ContainerFormat = Shapes::StringShape.new(name: 'ContainerFormat')
45
47
  CreateChannelRequest = Shapes::StructureShape.new(name: 'CreateChannelRequest')
46
48
  CreateChannelResponse = Shapes::StructureShape.new(name: 'CreateChannelResponse')
47
49
  CreatePlaybackRestrictionPolicyRequest = Shapes::StructureShape.new(name: 'CreatePlaybackRestrictionPolicyRequest')
@@ -74,11 +76,13 @@ module Aws::IVS
74
76
  ImportPlaybackKeyPairRequest = Shapes::StructureShape.new(name: 'ImportPlaybackKeyPairRequest')
75
77
  ImportPlaybackKeyPairResponse = Shapes::StructureShape.new(name: 'ImportPlaybackKeyPairResponse')
76
78
  IngestConfiguration = Shapes::StructureShape.new(name: 'IngestConfiguration')
79
+ IngestConfigurations = Shapes::StructureShape.new(name: 'IngestConfigurations')
77
80
  IngestEndpoint = Shapes::StringShape.new(name: 'IngestEndpoint')
78
81
  InsecureIngest = Shapes::BooleanShape.new(name: 'InsecureIngest')
79
82
  Integer = Shapes::IntegerShape.new(name: 'Integer')
80
83
  InternalServerException = Shapes::StructureShape.new(name: 'InternalServerException')
81
84
  IsAuthorized = Shapes::BooleanShape.new(name: 'IsAuthorized')
85
+ IsMultitrackInputEnabled = Shapes::BooleanShape.new(name: 'IsMultitrackInputEnabled')
82
86
  ListChannelsRequest = Shapes::StructureShape.new(name: 'ListChannelsRequest')
83
87
  ListChannelsResponse = Shapes::StructureShape.new(name: 'ListChannelsResponse')
84
88
  ListPlaybackKeyPairsRequest = Shapes::StructureShape.new(name: 'ListPlaybackKeyPairsRequest')
@@ -101,6 +105,9 @@ module Aws::IVS
101
105
  MaxRecordingConfigurationResults = Shapes::IntegerShape.new(name: 'MaxRecordingConfigurationResults')
102
106
  MaxStreamKeyResults = Shapes::IntegerShape.new(name: 'MaxStreamKeyResults')
103
107
  MaxStreamResults = Shapes::IntegerShape.new(name: 'MaxStreamResults')
108
+ MultitrackInputConfiguration = Shapes::StructureShape.new(name: 'MultitrackInputConfiguration')
109
+ MultitrackMaximumResolution = Shapes::StringShape.new(name: 'MultitrackMaximumResolution')
110
+ MultitrackPolicy = Shapes::StringShape.new(name: 'MultitrackPolicy')
104
111
  PaginationToken = Shapes::StringShape.new(name: 'PaginationToken')
105
112
  PendingVerification = Shapes::StructureShape.new(name: 'PendingVerification')
106
113
  PlaybackKeyPair = Shapes::StructureShape.new(name: 'PlaybackKeyPair')
@@ -192,6 +199,7 @@ module Aws::IVS
192
199
  UpdatePlaybackRestrictionPolicyResponse = Shapes::StructureShape.new(name: 'UpdatePlaybackRestrictionPolicyResponse')
193
200
  ValidationException = Shapes::StructureShape.new(name: 'ValidationException')
194
201
  VideoConfiguration = Shapes::StructureShape.new(name: 'VideoConfiguration')
202
+ VideoConfigurationList = Shapes::ListShape.new(name: 'VideoConfigurationList')
195
203
  ViewerId = Shapes::StringShape.new(name: 'ViewerId')
196
204
  ViewerSessionVersion = Shapes::IntegerShape.new(name: 'ViewerSessionVersion')
197
205
  errorCode = Shapes::StringShape.new(name: 'errorCode')
@@ -204,8 +212,11 @@ module Aws::IVS
204
212
  AudioConfiguration.add_member(:codec, Shapes::ShapeRef.new(shape: String, location_name: "codec"))
205
213
  AudioConfiguration.add_member(:sample_rate, Shapes::ShapeRef.new(shape: Integer, location_name: "sampleRate"))
206
214
  AudioConfiguration.add_member(:target_bitrate, Shapes::ShapeRef.new(shape: Integer, location_name: "targetBitrate"))
215
+ AudioConfiguration.add_member(:track, Shapes::ShapeRef.new(shape: String, location_name: "track"))
207
216
  AudioConfiguration.struct_class = Types::AudioConfiguration
208
217
 
218
+ AudioConfigurationList.member = Shapes::ShapeRef.new(shape: AudioConfiguration)
219
+
209
220
  BatchError.add_member(:arn, Shapes::ShapeRef.new(shape: ResourceArn, location_name: "arn"))
210
221
  BatchError.add_member(:code, Shapes::ShapeRef.new(shape: errorCode, location_name: "code"))
211
222
  BatchError.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
@@ -250,9 +261,11 @@ module Aws::IVS
250
261
 
251
262
  Channel.add_member(:arn, Shapes::ShapeRef.new(shape: ChannelArn, location_name: "arn"))
252
263
  Channel.add_member(:authorized, Shapes::ShapeRef.new(shape: IsAuthorized, location_name: "authorized"))
264
+ Channel.add_member(:container_format, Shapes::ShapeRef.new(shape: ContainerFormat, location_name: "containerFormat"))
253
265
  Channel.add_member(:ingest_endpoint, Shapes::ShapeRef.new(shape: IngestEndpoint, location_name: "ingestEndpoint"))
254
266
  Channel.add_member(:insecure_ingest, Shapes::ShapeRef.new(shape: InsecureIngest, location_name: "insecureIngest"))
255
267
  Channel.add_member(:latency_mode, Shapes::ShapeRef.new(shape: ChannelLatencyMode, location_name: "latencyMode"))
268
+ Channel.add_member(:multitrack_input_configuration, Shapes::ShapeRef.new(shape: MultitrackInputConfiguration, location_name: "multitrackInputConfiguration"))
256
269
  Channel.add_member(:name, Shapes::ShapeRef.new(shape: ChannelName, location_name: "name"))
257
270
  Channel.add_member(:playback_restriction_policy_arn, Shapes::ShapeRef.new(shape: ChannelPlaybackRestrictionPolicyArn, location_name: "playbackRestrictionPolicyArn"))
258
271
  Channel.add_member(:playback_url, Shapes::ShapeRef.new(shape: PlaybackURL, location_name: "playbackUrl"))
@@ -288,8 +301,10 @@ module Aws::IVS
288
301
  ConflictException.struct_class = Types::ConflictException
289
302
 
290
303
  CreateChannelRequest.add_member(:authorized, Shapes::ShapeRef.new(shape: Boolean, location_name: "authorized"))
304
+ CreateChannelRequest.add_member(:container_format, Shapes::ShapeRef.new(shape: ContainerFormat, location_name: "containerFormat"))
291
305
  CreateChannelRequest.add_member(:insecure_ingest, Shapes::ShapeRef.new(shape: Boolean, location_name: "insecureIngest"))
292
306
  CreateChannelRequest.add_member(:latency_mode, Shapes::ShapeRef.new(shape: ChannelLatencyMode, location_name: "latencyMode"))
307
+ CreateChannelRequest.add_member(:multitrack_input_configuration, Shapes::ShapeRef.new(shape: MultitrackInputConfiguration, location_name: "multitrackInputConfiguration"))
293
308
  CreateChannelRequest.add_member(:name, Shapes::ShapeRef.new(shape: ChannelName, location_name: "name"))
294
309
  CreateChannelRequest.add_member(:playback_restriction_policy_arn, Shapes::ShapeRef.new(shape: ChannelPlaybackRestrictionPolicyArn, location_name: "playbackRestrictionPolicyArn"))
295
310
  CreateChannelRequest.add_member(:preset, Shapes::ShapeRef.new(shape: TranscodePreset, location_name: "preset"))
@@ -405,6 +420,10 @@ module Aws::IVS
405
420
  IngestConfiguration.add_member(:video, Shapes::ShapeRef.new(shape: VideoConfiguration, location_name: "video"))
406
421
  IngestConfiguration.struct_class = Types::IngestConfiguration
407
422
 
423
+ IngestConfigurations.add_member(:audio_configurations, Shapes::ShapeRef.new(shape: AudioConfigurationList, required: true, location_name: "audioConfigurations"))
424
+ IngestConfigurations.add_member(:video_configurations, Shapes::ShapeRef.new(shape: VideoConfigurationList, required: true, location_name: "videoConfigurations"))
425
+ IngestConfigurations.struct_class = Types::IngestConfigurations
426
+
408
427
  InternalServerException.add_member(:exception_message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "exceptionMessage"))
409
428
  InternalServerException.struct_class = Types::InternalServerException
410
429
 
@@ -476,6 +495,11 @@ module Aws::IVS
476
495
  ListTagsForResourceResponse.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, required: true, location_name: "tags"))
477
496
  ListTagsForResourceResponse.struct_class = Types::ListTagsForResourceResponse
478
497
 
498
+ MultitrackInputConfiguration.add_member(:enabled, Shapes::ShapeRef.new(shape: IsMultitrackInputEnabled, location_name: "enabled"))
499
+ MultitrackInputConfiguration.add_member(:maximum_resolution, Shapes::ShapeRef.new(shape: MultitrackMaximumResolution, location_name: "maximumResolution"))
500
+ MultitrackInputConfiguration.add_member(:policy, Shapes::ShapeRef.new(shape: MultitrackPolicy, location_name: "policy"))
501
+ MultitrackInputConfiguration.struct_class = Types::MultitrackInputConfiguration
502
+
479
503
  PendingVerification.add_member(:exception_message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "exceptionMessage"))
480
504
  PendingVerification.struct_class = Types::PendingVerification
481
505
 
@@ -610,6 +634,7 @@ module Aws::IVS
610
634
  StreamSession.add_member(:channel, Shapes::ShapeRef.new(shape: Channel, location_name: "channel"))
611
635
  StreamSession.add_member(:end_time, Shapes::ShapeRef.new(shape: Time, location_name: "endTime"))
612
636
  StreamSession.add_member(:ingest_configuration, Shapes::ShapeRef.new(shape: IngestConfiguration, location_name: "ingestConfiguration"))
637
+ StreamSession.add_member(:ingest_configurations, Shapes::ShapeRef.new(shape: IngestConfigurations, location_name: "ingestConfigurations"))
613
638
  StreamSession.add_member(:recording_configuration, Shapes::ShapeRef.new(shape: RecordingConfiguration, location_name: "recordingConfiguration"))
614
639
  StreamSession.add_member(:start_time, Shapes::ShapeRef.new(shape: Time, location_name: "startTime"))
615
640
  StreamSession.add_member(:stream_id, Shapes::ShapeRef.new(shape: StreamId, location_name: "streamId"))
@@ -665,8 +690,10 @@ module Aws::IVS
665
690
 
666
691
  UpdateChannelRequest.add_member(:arn, Shapes::ShapeRef.new(shape: ChannelArn, required: true, location_name: "arn"))
667
692
  UpdateChannelRequest.add_member(:authorized, Shapes::ShapeRef.new(shape: Boolean, location_name: "authorized"))
693
+ UpdateChannelRequest.add_member(:container_format, Shapes::ShapeRef.new(shape: ContainerFormat, location_name: "containerFormat"))
668
694
  UpdateChannelRequest.add_member(:insecure_ingest, Shapes::ShapeRef.new(shape: Boolean, location_name: "insecureIngest"))
669
695
  UpdateChannelRequest.add_member(:latency_mode, Shapes::ShapeRef.new(shape: ChannelLatencyMode, location_name: "latencyMode"))
696
+ UpdateChannelRequest.add_member(:multitrack_input_configuration, Shapes::ShapeRef.new(shape: MultitrackInputConfiguration, location_name: "multitrackInputConfiguration"))
670
697
  UpdateChannelRequest.add_member(:name, Shapes::ShapeRef.new(shape: ChannelName, location_name: "name"))
671
698
  UpdateChannelRequest.add_member(:playback_restriction_policy_arn, Shapes::ShapeRef.new(shape: ChannelPlaybackRestrictionPolicyArn, location_name: "playbackRestrictionPolicyArn"))
672
699
  UpdateChannelRequest.add_member(:preset, Shapes::ShapeRef.new(shape: TranscodePreset, location_name: "preset"))
@@ -694,12 +721,17 @@ module Aws::IVS
694
721
  VideoConfiguration.add_member(:avc_profile, Shapes::ShapeRef.new(shape: String, location_name: "avcProfile"))
695
722
  VideoConfiguration.add_member(:codec, Shapes::ShapeRef.new(shape: String, location_name: "codec"))
696
723
  VideoConfiguration.add_member(:encoder, Shapes::ShapeRef.new(shape: String, location_name: "encoder"))
724
+ VideoConfiguration.add_member(:level, Shapes::ShapeRef.new(shape: String, location_name: "level"))
725
+ VideoConfiguration.add_member(:profile, Shapes::ShapeRef.new(shape: String, location_name: "profile"))
697
726
  VideoConfiguration.add_member(:target_bitrate, Shapes::ShapeRef.new(shape: Integer, location_name: "targetBitrate"))
698
727
  VideoConfiguration.add_member(:target_framerate, Shapes::ShapeRef.new(shape: Integer, location_name: "targetFramerate"))
728
+ VideoConfiguration.add_member(:track, Shapes::ShapeRef.new(shape: String, location_name: "track"))
699
729
  VideoConfiguration.add_member(:video_height, Shapes::ShapeRef.new(shape: Integer, location_name: "videoHeight"))
700
730
  VideoConfiguration.add_member(:video_width, Shapes::ShapeRef.new(shape: Integer, location_name: "videoWidth"))
701
731
  VideoConfiguration.struct_class = Types::VideoConfiguration
702
732
 
733
+ VideoConfigurationList.member = Shapes::ShapeRef.new(shape: VideoConfiguration)
734
+
703
735
 
704
736
  # @api private
705
737
  API = Seahorse::Model::Api.new.tap do |api|
@@ -52,15 +52,18 @@ module Aws::IVS
52
52
  self[:region] = options[:region]
53
53
  self[:use_dual_stack] = options[:use_dual_stack]
54
54
  self[:use_dual_stack] = false if self[:use_dual_stack].nil?
55
- if self[:use_dual_stack].nil?
56
- raise ArgumentError, "Missing required EndpointParameter: :use_dual_stack"
57
- end
58
55
  self[:use_fips] = options[:use_fips]
59
56
  self[:use_fips] = false if self[:use_fips].nil?
60
- if self[:use_fips].nil?
61
- raise ArgumentError, "Missing required EndpointParameter: :use_fips"
62
- end
63
57
  self[:endpoint] = options[:endpoint]
64
58
  end
59
+
60
+ def self.create(config, options={})
61
+ new({
62
+ region: config.region,
63
+ use_dual_stack: config.use_dualstack_endpoint,
64
+ use_fips: config.use_fips_endpoint,
65
+ endpoint: (config.endpoint.to_s unless config.regional_endpoint),
66
+ }.merge(options))
67
+ end
65
68
  end
66
69
  end