aws-cdk.aws-ivs-alpha 2.135.0a0__py3-none-any.whl → 2.230.0a0__py3-none-any.whl

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.
@@ -11,16 +11,31 @@ import jsii
11
11
  import publication
12
12
  import typing_extensions
13
13
 
14
- from typeguard import check_type
14
+ import typeguard
15
+ from importlib.metadata import version as _metadata_package_version
16
+ TYPEGUARD_MAJOR_VERSION = int(_metadata_package_version('typeguard').split('.')[0])
17
+
18
+ def check_type(argname: str, value: object, expected_type: typing.Any) -> typing.Any:
19
+ if TYPEGUARD_MAJOR_VERSION <= 2:
20
+ return typeguard.check_type(argname=argname, value=value, expected_type=expected_type) # type:ignore
21
+ else:
22
+ if isinstance(value, jsii._reference_map.InterfaceDynamicProxy): # pyright: ignore [reportAttributeAccessIssue]
23
+ pass
24
+ else:
25
+ if TYPEGUARD_MAJOR_VERSION == 3:
26
+ typeguard.config.collection_check_strategy = typeguard.CollectionCheckStrategy.ALL_ITEMS # type:ignore
27
+ typeguard.check_type(value=value, expected_type=expected_type) # type:ignore
28
+ else:
29
+ typeguard.check_type(value=value, expected_type=expected_type, collection_check_strategy=typeguard.CollectionCheckStrategy.ALL_ITEMS) # type:ignore
15
30
 
16
31
  import aws_cdk._jsii
17
32
  import constructs._jsii
18
33
 
19
34
  __jsii_assembly__ = jsii.JSIIAssembly.load(
20
35
  "@aws-cdk/aws-ivs-alpha",
21
- "2.135.0-alpha.0",
36
+ "2.230.0-alpha.0",
22
37
  __name__[0:-6],
23
- "aws-ivs-alpha@2.135.0-alpha.0.jsii.tgz",
38
+ "aws-ivs-alpha@2.230.0-alpha.0.jsii.tgz",
24
39
  )
25
40
 
26
41
  __all__ = [
@@ -186,7 +186,7 @@
186
186
  same "printed page" as the copyright notice for easier
187
187
  identification within third-party archives.
188
188
 
189
- Copyright 2018-2024 Amazon.com, Inc. or its affiliates. All Rights Reserved.
189
+ Copyright 2018-2025 Amazon.com, Inc. or its affiliates. All Rights Reserved.
190
190
 
191
191
  Licensed under the Apache License, Version 2.0 (the "License");
192
192
  you may not use this file except in compliance with the License.
@@ -0,0 +1,257 @@
1
+ Metadata-Version: 2.1
2
+ Name: aws-cdk.aws-ivs-alpha
3
+ Version: 2.230.0a0
4
+ Summary: The CDK Construct Library for AWS::IVS
5
+ Home-page: https://github.com/aws/aws-cdk
6
+ Author: Amazon Web Services
7
+ License: Apache-2.0
8
+ Project-URL: Source, https://github.com/aws/aws-cdk.git
9
+ Classifier: Intended Audience :: Developers
10
+ Classifier: Operating System :: OS Independent
11
+ Classifier: Programming Language :: JavaScript
12
+ Classifier: Programming Language :: Python :: 3 :: Only
13
+ Classifier: Programming Language :: Python :: 3.9
14
+ Classifier: Programming Language :: Python :: 3.10
15
+ Classifier: Programming Language :: Python :: 3.11
16
+ Classifier: Typing :: Typed
17
+ Classifier: Development Status :: 4 - Beta
18
+ Classifier: License :: OSI Approved
19
+ Classifier: Framework :: AWS CDK
20
+ Classifier: Framework :: AWS CDK :: 2
21
+ Requires-Python: ~=3.9
22
+ Description-Content-Type: text/markdown
23
+ License-File: LICENSE
24
+ License-File: NOTICE
25
+ Requires-Dist: aws-cdk-lib <3.0.0,>=2.230.0
26
+ Requires-Dist: constructs <11.0.0,>=10.0.0
27
+ Requires-Dist: jsii <2.0.0,>=1.119.0
28
+ Requires-Dist: publication >=0.0.3
29
+ Requires-Dist: typeguard <4.3.0,>=2.13.3
30
+
31
+ # AWS::IVS Construct Library
32
+
33
+ <!--BEGIN STABILITY BANNER-->---
34
+
35
+
36
+ ![cdk-constructs: Experimental](https://img.shields.io/badge/cdk--constructs-experimental-important.svg?style=for-the-badge)
37
+
38
+ > The APIs of higher level constructs in this module are experimental and under active development.
39
+ > They are subject to non-backward compatible changes or removal in any future version. These are
40
+ > not subject to the [Semantic Versioning](https://semver.org/) model and breaking changes will be
41
+ > announced in the release notes. This means that while you may use them, you may need to update
42
+ > your source code when upgrading to a newer version of this package.
43
+
44
+ ---
45
+ <!--END STABILITY BANNER-->
46
+
47
+ Amazon Interactive Video Service (Amazon IVS) is a managed live streaming
48
+ solution that is quick and easy to set up, and ideal for creating interactive
49
+ video experiences. Send your live streams to Amazon IVS using streaming software
50
+ and the service does everything you need to make low-latency live video
51
+ available to any viewer around the world, letting you focus on building
52
+ interactive experiences alongside the live video. You can easily customize and
53
+ enhance the audience experience through the Amazon IVS player SDK and timed
54
+ metadata APIs, allowing you to build a more valuable relationship with your
55
+ viewers on your own websites and applications.
56
+
57
+ This module is part of the [AWS Cloud Development Kit](https://github.com/aws/aws-cdk) project.
58
+
59
+ ## Channels
60
+
61
+ An Amazon IVS channel stores configuration information related to your live
62
+ stream. You first create a channel and then contribute video to it using the
63
+ channel’s stream key to start your live stream.
64
+
65
+ You can create a channel
66
+
67
+ ```python
68
+ my_channel = ivs.Channel(self, "Channel")
69
+ ```
70
+
71
+ You can use Advanced Channel type by setting the `type` property to
72
+ `ivs.ChannelType.ADVANCED_HD` or `ivs.ChannelType.ADVANCED_SD`.
73
+
74
+ Additionally, when using the Advanced Channel type, you can set
75
+ the `preset` property to `ivs.Preset.CONSTRAINED_BANDWIDTH_DELIVERY`
76
+ or `ivs.Preset.HIGHER_BANDWIDTH_DELIVERY`.
77
+
78
+ For more information, see [Amazon IVS Streaming Configuration](https://docs.aws.amazon.com/ivs/latest/LowLatencyUserGuide/streaming-config.html).
79
+
80
+ ```python
81
+ my_channel = ivs.Channel(self, "myChannel",
82
+ type=ivs.ChannelType.ADVANCED_HD,
83
+ preset=ivs.Preset.CONSTRAINED_BANDWIDTH_DELIVERY
84
+ )
85
+ ```
86
+
87
+ If you want to use RTMP ingest, set `insecureIngest` property to `true`.
88
+ By default, `insecureIngest` is `false` which means using RTMPS ingest.
89
+
90
+ **⚠ Note:** RTMP ingest might result in reduced security for your streams. AWS recommends that you use RTMPS for ingest, unless you have specific and verified use cases. For more information, see [Encoder Settings](https://docs.aws.amazon.com/ivs/latest/LowLatencyUserGuide/streaming-config.html#streaming-config-settings).
91
+
92
+ ```python
93
+ my_rtmp_channel = ivs.Channel(self, "myRtmpChannel",
94
+ type=ivs.ChannelType.STANDARD,
95
+ insecure_ingest=True
96
+ )
97
+ ```
98
+
99
+ ### Multitrack Video
100
+
101
+ Multitrack video is a new, low-latency streaming paradigm supported by Amazon Interactive Video Service (IVS) and services that use Amazon IVS.
102
+
103
+ You can use Multitrack Video by setting the `multitrackInputConfiguration` property.
104
+ Multitrack Video requires both a STANDARD Channel and Fragmented Mp4.
105
+
106
+ For more information, see [Amazon IVS Multitrack Video](https://docs.aws.amazon.com/ivs/latest/LowLatencyUserGuide/multitrack-video.html).
107
+
108
+ ```python
109
+ ivs.Channel(self, "ChannelWithMultitrackVideo",
110
+ type=ivs.ChannelType.STANDARD,
111
+ container_format=ivs.ContainerFormat.FRAGMENTED_MP4,
112
+ multitrack_input_configuration=ivs.MultitrackInputConfiguration(
113
+ maximum_resolution=ivs.MaximumResolution.HD,
114
+ policy=ivs.Policy.ALLOW
115
+ )
116
+ )
117
+ ```
118
+
119
+ ### Importing an existing channel
120
+
121
+ You can reference an existing channel, for example, if you need to create a
122
+ stream key for an existing channel
123
+
124
+ ```python
125
+ my_channel = ivs.Channel.from_channel_arn(self, "Channel", my_channel_arn)
126
+ ```
127
+
128
+ ## Stream Keys
129
+
130
+ A Stream Key is used by a broadcast encoder to initiate a stream and identify
131
+ to Amazon IVS which customer and channel the stream is for. If you are
132
+ storing this value, it should be treated as if it were a password.
133
+
134
+ You can create a stream key for a given channel
135
+
136
+ ```python
137
+ my_stream_key = my_channel.add_stream_key("StreamKey")
138
+ ```
139
+
140
+ ## Private Channels
141
+
142
+ Amazon IVS offers the ability to create private channels, allowing
143
+ you to restrict your streams by channel or viewer. You control access
144
+ to video playback by enabling playback authorization on channels and
145
+ generating signed JSON Web Tokens (JWTs) for authorized playback requests.
146
+
147
+ A playback token is a JWT that you sign (with a playback authorization key)
148
+ and include with every playback request for a channel that has playback
149
+ authorization enabled.
150
+
151
+ In order for Amazon IVS to validate the token, you need to upload
152
+ the public key that corresponds to the private key you use to sign the token.
153
+
154
+ ```python
155
+ key_pair = ivs.PlaybackKeyPair(self, "PlaybackKeyPair",
156
+ public_key_material=my_public_key_pem_string
157
+ )
158
+ ```
159
+
160
+ Then, when creating a channel, specify the authorized property
161
+
162
+ ```python
163
+ my_channel = ivs.Channel(self, "Channel",
164
+ authorized=True
165
+ )
166
+ ```
167
+
168
+ ## Recording Configurations
169
+
170
+ An Amazon IVS Recording Configuration stores settings that specify how a channel's live streams should be recorded.
171
+ You can configure video quality, thumbnail generation, and where recordings are stored in Amazon S3.
172
+
173
+ For more information about IVS recording, see [IVS Auto-Record to Amazon S3 | Low-Latency Streaming](https://docs.aws.amazon.com/ivs/latest/LowLatencyUserGuide/record-to-s3.html).
174
+
175
+ You can create a recording configuration:
176
+
177
+ ```python
178
+ # create an S3 bucket for storing recordings
179
+ recording_bucket = s3.Bucket(self, "RecordingBucket")
180
+
181
+ # create a basic recording configuration
182
+ recording_configuration = ivs.RecordingConfiguration(self, "RecordingConfiguration",
183
+ bucket=recording_bucket
184
+ )
185
+ ```
186
+
187
+ ### Renditions of a Recording
188
+
189
+ When you stream content to an Amazon IVS channel, auto-record-to-s3 uses the source video to generate multiple renditions.
190
+
191
+ For more information, see [Discovering the Renditions of a Recording](https://docs.aws.amazon.com/ivs/latest/LowLatencyUserGuide/record-to-s3.html#r2s3-recording-renditions).
192
+
193
+ ```python
194
+ # recording_bucket: s3.Bucket
195
+
196
+
197
+ recording_configuration = ivs.RecordingConfiguration(self, "RecordingConfiguration",
198
+ bucket=recording_bucket,
199
+
200
+ # set rendition configuration
201
+ rendition_configuration=ivs.RenditionConfiguration.custom([ivs.Resolution.HD, ivs.Resolution.SD])
202
+ )
203
+ ```
204
+
205
+ ### Thumbnail Generation
206
+
207
+ You can enable or disable the recording of thumbnails for a live session and modify the interval at which thumbnails are generated for the live session.
208
+
209
+ Thumbnail intervals may range from 1 second to 60 seconds; by default, thumbnail recording is enabled, at an interval of 60 seconds.
210
+
211
+ For more information, see [Thumbnails](https://docs.aws.amazon.com/ivs/latest/LowLatencyUserGuide/record-to-s3.html#r2s3-thumbnails).
212
+
213
+ ```python
214
+ # recording_bucket: s3.Bucket
215
+
216
+
217
+ recording_configuration = ivs.RecordingConfiguration(self, "RecordingConfiguration",
218
+ bucket=recording_bucket,
219
+
220
+ # set thumbnail settings
221
+ thumbnail_configuration=ivs.ThumbnailConfiguration.interval(ivs.Resolution.HD, [ivs.Storage.LATEST, ivs.Storage.SEQUENTIAL], Duration.seconds(30))
222
+ )
223
+ ```
224
+
225
+ ### Merge Fragmented Streams
226
+
227
+ The `recordingReconnectWindow` property allows you to specify a window of time (in seconds) during which, if your stream is interrupted and a new stream is started, Amazon IVS tries to record to the same S3 prefix as the previous stream.
228
+
229
+ In other words, if a broadcast disconnects and then reconnects within the specified interval, the multiple streams are considered a single broadcast and merged together.
230
+
231
+ For more information, see [Merge Fragmented Streams](https://docs.aws.amazon.com/ivs/latest/LowLatencyUserGuide/record-to-s3.html#r2s3-merge-fragmented-streams).
232
+
233
+ ```python
234
+ # recording_bucket: s3.Bucket
235
+
236
+
237
+ recording_configuration = ivs.RecordingConfiguration(self, "RecordingConfiguration",
238
+ bucket=recording_bucket,
239
+
240
+ # set recording reconnect window
241
+ recording_reconnect_window=Duration.seconds(60)
242
+ )
243
+ ```
244
+
245
+ ### Attaching Recording Configuration to a Channel
246
+
247
+ To enable recording for a channel, specify the recording configuration when creating the channel:
248
+
249
+ ```python
250
+ # recording_configuration: ivs.RecordingConfiguration
251
+
252
+
253
+ channel = ivs.Channel(self, "Channel",
254
+ # set recording configuration
255
+ recording_configuration=recording_configuration
256
+ )
257
+ ```
@@ -0,0 +1,2 @@
1
+ AWS Cloud Development Kit (AWS CDK)
2
+ Copyright 2018-2025 Amazon.com, Inc. or its affiliates. All Rights Reserved.
@@ -0,0 +1,10 @@
1
+ aws_cdk/aws_ivs_alpha/__init__.py,sha256=0gmvGqLSMqzmlkk3pOOJrm-O8cXQDi7vWaZHweWJGGI,84942
2
+ aws_cdk/aws_ivs_alpha/py.typed,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
3
+ aws_cdk/aws_ivs_alpha/_jsii/__init__.py,sha256=ZQu1xtN0G_ur68v18aI_Slde49qgAJzudtNsTzfu70M,1479
4
+ aws_cdk/aws_ivs_alpha/_jsii/aws-ivs-alpha@2.230.0-alpha.0.jsii.tgz,sha256=IX4lZHOMX9j2Z0aNPK6MH9HrCnSGxsN1i4bD24UEfFA,73553
5
+ aws_cdk_aws_ivs_alpha-2.230.0a0.dist-info/LICENSE,sha256=y47tc38H0C4DpGljYUZDl8XxidQjNxxGLq-K4jwv6Xc,11391
6
+ aws_cdk_aws_ivs_alpha-2.230.0a0.dist-info/METADATA,sha256=ZoF9dsaiVcAkWAI73MbyZZ046RBXsGr6ERuo-WZbpvo,9672
7
+ aws_cdk_aws_ivs_alpha-2.230.0a0.dist-info/NOTICE,sha256=ZDV6_xBfMvhFtjjBh_f6lJjhZ2AEWWAGGkx2kLKHiuc,113
8
+ aws_cdk_aws_ivs_alpha-2.230.0a0.dist-info/WHEEL,sha256=iAkIy5fosb7FzIOwONchHf19Qu7_1wCWyFNR5gu9nU0,91
9
+ aws_cdk_aws_ivs_alpha-2.230.0a0.dist-info/top_level.txt,sha256=1TALAKbuUGsMSrfKWEf268lySCmcqSEO6cDYe_XlLHM,8
10
+ aws_cdk_aws_ivs_alpha-2.230.0a0.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: bdist_wheel (0.41.3)
2
+ Generator: setuptools (75.3.2)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
@@ -1,119 +0,0 @@
1
- Metadata-Version: 2.1
2
- Name: aws-cdk.aws-ivs-alpha
3
- Version: 2.135.0a0
4
- Summary: The CDK Construct Library for AWS::IVS
5
- Home-page: https://github.com/aws/aws-cdk
6
- Author: Amazon Web Services
7
- License: Apache-2.0
8
- Project-URL: Source, https://github.com/aws/aws-cdk.git
9
- Classifier: Intended Audience :: Developers
10
- Classifier: Operating System :: OS Independent
11
- Classifier: Programming Language :: JavaScript
12
- Classifier: Programming Language :: Python :: 3 :: Only
13
- Classifier: Programming Language :: Python :: 3.8
14
- Classifier: Programming Language :: Python :: 3.9
15
- Classifier: Programming Language :: Python :: 3.10
16
- Classifier: Programming Language :: Python :: 3.11
17
- Classifier: Typing :: Typed
18
- Classifier: Development Status :: 4 - Beta
19
- Classifier: License :: OSI Approved
20
- Classifier: Framework :: AWS CDK
21
- Classifier: Framework :: AWS CDK :: 2
22
- Requires-Python: ~=3.8
23
- Description-Content-Type: text/markdown
24
- License-File: LICENSE
25
- License-File: NOTICE
26
- Requires-Dist: aws-cdk-lib <3.0.0,>=2.135.0
27
- Requires-Dist: constructs <11.0.0,>=10.0.0
28
- Requires-Dist: jsii <2.0.0,>=1.96.0
29
- Requires-Dist: publication >=0.0.3
30
- Requires-Dist: typeguard ~=2.13.3
31
-
32
- # AWS::IVS Construct Library
33
-
34
- <!--BEGIN STABILITY BANNER-->---
35
-
36
-
37
- ![cdk-constructs: Experimental](https://img.shields.io/badge/cdk--constructs-experimental-important.svg?style=for-the-badge)
38
-
39
- > The APIs of higher level constructs in this module are experimental and under active development.
40
- > They are subject to non-backward compatible changes or removal in any future version. These are
41
- > not subject to the [Semantic Versioning](https://semver.org/) model and breaking changes will be
42
- > announced in the release notes. This means that while you may use them, you may need to update
43
- > your source code when upgrading to a newer version of this package.
44
-
45
- ---
46
- <!--END STABILITY BANNER-->
47
-
48
- Amazon Interactive Video Service (Amazon IVS) is a managed live streaming
49
- solution that is quick and easy to set up, and ideal for creating interactive
50
- video experiences. Send your live streams to Amazon IVS using streaming software
51
- and the service does everything you need to make low-latency live video
52
- available to any viewer around the world, letting you focus on building
53
- interactive experiences alongside the live video. You can easily customize and
54
- enhance the audience experience through the Amazon IVS player SDK and timed
55
- metadata APIs, allowing you to build a more valuable relationship with your
56
- viewers on your own websites and applications.
57
-
58
- This module is part of the [AWS Cloud Development Kit](https://github.com/aws/aws-cdk) project.
59
-
60
- ## Channels
61
-
62
- An Amazon IVS channel stores configuration information related to your live
63
- stream. You first create a channel and then contribute video to it using the
64
- channel’s stream key to start your live stream.
65
-
66
- You can create a channel
67
-
68
- ```python
69
- my_channel = ivs.Channel(self, "Channel")
70
- ```
71
-
72
- ### Importing an existing channel
73
-
74
- You can reference an existing channel, for example, if you need to create a
75
- stream key for an existing channel
76
-
77
- ```python
78
- my_channel = ivs.Channel.from_channel_arn(self, "Channel", my_channel_arn)
79
- ```
80
-
81
- ## Stream Keys
82
-
83
- A Stream Key is used by a broadcast encoder to initiate a stream and identify
84
- to Amazon IVS which customer and channel the stream is for. If you are
85
- storing this value, it should be treated as if it were a password.
86
-
87
- You can create a stream key for a given channel
88
-
89
- ```python
90
- my_stream_key = my_channel.add_stream_key("StreamKey")
91
- ```
92
-
93
- ## Private Channels
94
-
95
- Amazon IVS offers the ability to create private channels, allowing
96
- you to restrict your streams by channel or viewer. You control access
97
- to video playback by enabling playback authorization on channels and
98
- generating signed JSON Web Tokens (JWTs) for authorized playback requests.
99
-
100
- A playback token is a JWT that you sign (with a playback authorization key)
101
- and include with every playback request for a channel that has playback
102
- authorization enabled.
103
-
104
- In order for Amazon IVS to validate the token, you need to upload
105
- the public key that corresponds to the private key you use to sign the token.
106
-
107
- ```python
108
- key_pair = ivs.PlaybackKeyPair(self, "PlaybackKeyPair",
109
- public_key_material=my_public_key_pem_string
110
- )
111
- ```
112
-
113
- Then, when creating a channel, specify the authorized property
114
-
115
- ```python
116
- my_channel = ivs.Channel(self, "Channel",
117
- authorized=True
118
- )
119
- ```
@@ -1,2 +0,0 @@
1
- AWS Cloud Development Kit (AWS CDK)
2
- Copyright 2018-2024 Amazon.com, Inc. or its affiliates. All Rights Reserved.
@@ -1,10 +0,0 @@
1
- aws_cdk/aws_ivs_alpha/__init__.py,sha256=Gxr-VC7XuqJW-0BGOXLmhQwbN8Gn2qpcunKOvvHFtWU,31553
2
- aws_cdk/aws_ivs_alpha/py.typed,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
3
- aws_cdk/aws_ivs_alpha/_jsii/__init__.py,sha256=YlBKxFgPkUiWyvdHdq9UldU4flBTGnftU_Y0rWtQ9Bw,511
4
- aws_cdk/aws_ivs_alpha/_jsii/aws-ivs-alpha@2.135.0-alpha.0.jsii.tgz,sha256=xtXHGkqE8ft2nWRI1vHNRXtYVEgsvJZrMg8AxfdudtY,33416
5
- aws_cdk.aws_ivs_alpha-2.135.0a0.dist-info/LICENSE,sha256=kEDF86xJUQh1E9M7UPKKbHepBEdFxIUyoGfTwQB7zKg,11391
6
- aws_cdk.aws_ivs_alpha-2.135.0a0.dist-info/METADATA,sha256=B1ihEnjJcBB5EDosU61AQs2Pb-h0qZMY1kglBJy6kWk,4351
7
- aws_cdk.aws_ivs_alpha-2.135.0a0.dist-info/NOTICE,sha256=dXf56qvx2VDNCaqiRscOD2IH5GbmqbnKRzroZCeLtaQ,113
8
- aws_cdk.aws_ivs_alpha-2.135.0a0.dist-info/WHEEL,sha256=Xo9-1PvkuimrydujYJAjF7pCkriuXBpUPEjma1nZyJ0,92
9
- aws_cdk.aws_ivs_alpha-2.135.0a0.dist-info/top_level.txt,sha256=1TALAKbuUGsMSrfKWEf268lySCmcqSEO6cDYe_XlLHM,8
10
- aws_cdk.aws_ivs_alpha-2.135.0a0.dist-info/RECORD,,