@aws-cdk/aws-mediaconnect-alpha 2.263.0-alpha.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.
- package/.jsii +28415 -0
- package/.jsii.tabl.json.gz +0 -0
- package/.warnings.jsii.js +592 -0
- package/LICENSE +201 -0
- package/NOTICE +2 -0
- package/README.md +1280 -0
- package/awslint.json +50 -0
- package/grants.json +42 -0
- package/lib/bridge-output.d.ts +54 -0
- package/lib/bridge-output.js +122 -0
- package/lib/bridge-source.d.ts +79 -0
- package/lib/bridge-source.js +217 -0
- package/lib/bridge.d.ts +419 -0
- package/lib/bridge.js +490 -0
- package/lib/flow-entitlement.d.ts +86 -0
- package/lib/flow-entitlement.js +152 -0
- package/lib/flow-output.d.ts +329 -0
- package/lib/flow-output.js +415 -0
- package/lib/flow-source-configuration.d.ts +558 -0
- package/lib/flow-source-configuration.js +595 -0
- package/lib/flow-source.d.ts +116 -0
- package/lib/flow-source.js +190 -0
- package/lib/flow.d.ts +975 -0
- package/lib/flow.js +1065 -0
- package/lib/gateway.d.ts +142 -0
- package/lib/gateway.js +236 -0
- package/lib/index.d.ts +14 -0
- package/lib/index.js +31 -0
- package/lib/mediaconnect-grants.generated.d.ts +53 -0
- package/lib/mediaconnect-grants.generated.js +136 -0
- package/lib/router-input.d.ts +686 -0
- package/lib/router-input.js +1095 -0
- package/lib/router-network-interface.d.ts +153 -0
- package/lib/router-network-interface.js +245 -0
- package/lib/router-output.d.ts +557 -0
- package/lib/router-output.js +789 -0
- package/lib/shared.d.ts +548 -0
- package/lib/shared.js +668 -0
- package/package.json +118 -0
- package/rosetta/_generated.ts-fixture +6 -0
- package/rosetta/default.ts-fixture +68 -0
|
@@ -0,0 +1,557 @@
|
|
|
1
|
+
import type { Bitrate, IResource } from 'aws-cdk-lib';
|
|
2
|
+
import { Duration, Resource } from 'aws-cdk-lib';
|
|
3
|
+
import type { MetricOptions } from 'aws-cdk-lib/aws-cloudwatch';
|
|
4
|
+
import { Metric } from 'aws-cdk-lib/aws-cloudwatch';
|
|
5
|
+
import type { IRouterOutputRef, RouterOutputReference } from 'aws-cdk-lib/aws-mediaconnect';
|
|
6
|
+
import type { Construct } from 'constructs';
|
|
7
|
+
import type { IFlow } from './flow';
|
|
8
|
+
import type { MaintenanceConfiguration, ForwardErrorCorrection, RoutingScope } from './router-input';
|
|
9
|
+
import type { IRouterNetworkInterface } from './router-network-interface';
|
|
10
|
+
import type { MediaLivePipeline, RouterSrtEncryption, TransitEncryption } from './shared';
|
|
11
|
+
/**
|
|
12
|
+
* Protocol options available for Router Output configurations
|
|
13
|
+
*/
|
|
14
|
+
export declare class RouterOutputProtocolOptions {
|
|
15
|
+
readonly value: string;
|
|
16
|
+
/** Real-time Transport Protocol */
|
|
17
|
+
static readonly RTP: RouterOutputProtocolOptions;
|
|
18
|
+
/** Reliable Internet Stream Transport */
|
|
19
|
+
static readonly RIST: RouterOutputProtocolOptions;
|
|
20
|
+
/** Secure Reliable Transport - Caller mode */
|
|
21
|
+
static readonly SRT_CALLER: RouterOutputProtocolOptions;
|
|
22
|
+
/** Secure Reliable Transport - Listener mode */
|
|
23
|
+
static readonly SRT_LISTENER: RouterOutputProtocolOptions;
|
|
24
|
+
/**
|
|
25
|
+
* Use a custom protocol value
|
|
26
|
+
* @param value The protocol string value
|
|
27
|
+
*/
|
|
28
|
+
static of(value: string): RouterOutputProtocolOptions;
|
|
29
|
+
/** @param value The protocol string value */
|
|
30
|
+
private constructor();
|
|
31
|
+
/** Returns the string value */
|
|
32
|
+
toString(): string;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Routing tier that determines the maximum bitrate (in Mbps) for a Router Output.
|
|
36
|
+
*/
|
|
37
|
+
export declare class RouterOutputTier {
|
|
38
|
+
readonly value: string;
|
|
39
|
+
/** Up to 100 Mbps */
|
|
40
|
+
static readonly OUTPUT_100: RouterOutputTier;
|
|
41
|
+
/** Up to 50 Mbps */
|
|
42
|
+
static readonly OUTPUT_50: RouterOutputTier;
|
|
43
|
+
/** Up to 20 Mbps */
|
|
44
|
+
static readonly OUTPUT_20: RouterOutputTier;
|
|
45
|
+
/**
|
|
46
|
+
* Use a custom tier value
|
|
47
|
+
* @param value The tier string value
|
|
48
|
+
*/
|
|
49
|
+
static of(value: string): RouterOutputTier;
|
|
50
|
+
/** @param value The tier string value */
|
|
51
|
+
private constructor();
|
|
52
|
+
/** Returns the string value */
|
|
53
|
+
toString(): string;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Interface for Router Output
|
|
57
|
+
*/
|
|
58
|
+
export interface IRouterOutput extends IResource, IRouterOutputRef {
|
|
59
|
+
/**
|
|
60
|
+
* The name of the router output.
|
|
61
|
+
*
|
|
62
|
+
* @attribute
|
|
63
|
+
*/
|
|
64
|
+
readonly routerOutputName: string;
|
|
65
|
+
/**
|
|
66
|
+
* The Amazon Resource Name (ARN) of the router output.
|
|
67
|
+
*
|
|
68
|
+
* @attribute
|
|
69
|
+
*/
|
|
70
|
+
readonly routerOutputArn: string;
|
|
71
|
+
/**
|
|
72
|
+
* The unique identifier of the router output.
|
|
73
|
+
*
|
|
74
|
+
* @attribute
|
|
75
|
+
*/
|
|
76
|
+
readonly routerOutputId: string;
|
|
77
|
+
/**
|
|
78
|
+
* The IP address of the router output.
|
|
79
|
+
*
|
|
80
|
+
* @attribute
|
|
81
|
+
*/
|
|
82
|
+
readonly ipAddress: string;
|
|
83
|
+
/**
|
|
84
|
+
* The timestamp when the router output was created.
|
|
85
|
+
*
|
|
86
|
+
* @attribute
|
|
87
|
+
*/
|
|
88
|
+
readonly createdAt?: string;
|
|
89
|
+
/**
|
|
90
|
+
* The timestamp when the router output was last updated.
|
|
91
|
+
*
|
|
92
|
+
* @attribute
|
|
93
|
+
*/
|
|
94
|
+
readonly updatedAt?: string;
|
|
95
|
+
/**
|
|
96
|
+
* Create a CloudWatch metric for this router output.
|
|
97
|
+
*
|
|
98
|
+
* Router output metrics are dimensioned by `RouterOutputARN`. See the MediaConnect
|
|
99
|
+
* documentation for available metric names (e.g. `RouterOutputBitRate`,
|
|
100
|
+
* `RouterOutputTotalPackets`).
|
|
101
|
+
*/
|
|
102
|
+
metric(metricName: string, props?: MetricOptions): Metric;
|
|
103
|
+
/**
|
|
104
|
+
* Metric for the bitrate of the router output's payload.
|
|
105
|
+
* @default - average over 60 seconds
|
|
106
|
+
*/
|
|
107
|
+
metricBitrate(props?: MetricOptions): Metric;
|
|
108
|
+
/**
|
|
109
|
+
* Metric for the total number of packets sent by the router output.
|
|
110
|
+
* @default - sum over 60 seconds
|
|
111
|
+
*/
|
|
112
|
+
metricTotalPackets(props?: MetricOptions): Metric;
|
|
113
|
+
/**
|
|
114
|
+
* Metric for the router output connection state (1 connected, 0 disconnected). Applies to SRT outputs only.
|
|
115
|
+
* @default - minimum over 60 seconds
|
|
116
|
+
*/
|
|
117
|
+
metricConnected(props?: MetricOptions): Metric;
|
|
118
|
+
/**
|
|
119
|
+
* Metric for the number of retransmitted packets requested through automatic repeat request (ARQ).
|
|
120
|
+
* Applies to RIST and SRT outputs only.
|
|
121
|
+
*
|
|
122
|
+
* @default - sum over 60 seconds
|
|
123
|
+
*/
|
|
124
|
+
metricArqRequests(props?: MetricOptions): Metric;
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* Properties for creating a Router Output
|
|
128
|
+
*/
|
|
129
|
+
export interface RouterOutputProps {
|
|
130
|
+
/**
|
|
131
|
+
* Name of the Router Output
|
|
132
|
+
* @default - Generated automatically
|
|
133
|
+
*/
|
|
134
|
+
readonly routerOutputName?: string;
|
|
135
|
+
/** Maximum bitrate in bits per second that the Router Output can handle */
|
|
136
|
+
readonly maximumBitrate: Bitrate;
|
|
137
|
+
/** Routing scope for the Router Output */
|
|
138
|
+
readonly routingScope: RoutingScope;
|
|
139
|
+
/**
|
|
140
|
+
* Routing tier that determines the maximum number of outputs.
|
|
141
|
+
*
|
|
142
|
+
* @default RouterOutputTier.OUTPUT_20
|
|
143
|
+
*/
|
|
144
|
+
readonly tier?: RouterOutputTier;
|
|
145
|
+
/** Configuration for the Router Output (standard, MediaConnect Flow, or MediaLive) */
|
|
146
|
+
readonly configuration: RouterOutputConfiguration;
|
|
147
|
+
/**
|
|
148
|
+
* Maintenance window configuration
|
|
149
|
+
* @default - Default maintenance window will be used
|
|
150
|
+
*/
|
|
151
|
+
readonly maintenanceConfiguration?: MaintenanceConfiguration;
|
|
152
|
+
/**
|
|
153
|
+
* AWS region where the Router Output will be created
|
|
154
|
+
* @default - Defaults to the same region as stack
|
|
155
|
+
*/
|
|
156
|
+
readonly regionName?: string;
|
|
157
|
+
/**
|
|
158
|
+
* Tags to add to the Router Output
|
|
159
|
+
* @default - No tagging
|
|
160
|
+
*/
|
|
161
|
+
readonly tags?: {
|
|
162
|
+
[key: string]: string;
|
|
163
|
+
};
|
|
164
|
+
}
|
|
165
|
+
/**
|
|
166
|
+
* Attributes for importing an existing Router Output.
|
|
167
|
+
*/
|
|
168
|
+
export interface RouterOutputAttributes {
|
|
169
|
+
/**
|
|
170
|
+
* The ARN of the router output.
|
|
171
|
+
*/
|
|
172
|
+
readonly routerOutputArn: string;
|
|
173
|
+
/**
|
|
174
|
+
* The name of the router output.
|
|
175
|
+
*
|
|
176
|
+
* The name is not encoded in the ARN (the ARN contains only the service-generated ID),
|
|
177
|
+
* so provide it here if you need to access `routerOutputName` on the imported construct.
|
|
178
|
+
*
|
|
179
|
+
* @default - routerOutputName is not available on the imported construct
|
|
180
|
+
*/
|
|
181
|
+
readonly routerOutputName?: string;
|
|
182
|
+
/**
|
|
183
|
+
* The unique identifier of the router output.
|
|
184
|
+
*
|
|
185
|
+
* @default - parsed from the ARN when available
|
|
186
|
+
*/
|
|
187
|
+
readonly routerOutputId?: string;
|
|
188
|
+
}
|
|
189
|
+
/**
|
|
190
|
+
* Properties for RTP protocol configuration for outputs
|
|
191
|
+
*/
|
|
192
|
+
export interface RtpOutputProtocolProps {
|
|
193
|
+
/** Destination IP address for RTP traffic */
|
|
194
|
+
readonly destinationAddress: string;
|
|
195
|
+
/** Port number for RTP traffic */
|
|
196
|
+
readonly port: number;
|
|
197
|
+
/**
|
|
198
|
+
* Forward Error Correction setting
|
|
199
|
+
* @default - undefined; when omitted, MediaConnect applies ForwardErrorCorrection.DISABLED at deploy time
|
|
200
|
+
*/
|
|
201
|
+
readonly forwardErrorCorrection?: ForwardErrorCorrection;
|
|
202
|
+
}
|
|
203
|
+
/**
|
|
204
|
+
* Properties for RIST protocol configuration for outputs
|
|
205
|
+
*/
|
|
206
|
+
export interface RistOutputProtocolProps {
|
|
207
|
+
/** Destination IP address for RIST traffic */
|
|
208
|
+
readonly destinationAddress: string;
|
|
209
|
+
/** Port number for RIST traffic */
|
|
210
|
+
readonly port: number;
|
|
211
|
+
}
|
|
212
|
+
/**
|
|
213
|
+
* Properties for SRT Listener protocol configuration for outputs
|
|
214
|
+
*/
|
|
215
|
+
export interface SrtListenerOutputProtocolProps {
|
|
216
|
+
/** Port number for SRT listener */
|
|
217
|
+
readonly port: number;
|
|
218
|
+
/** Minimum latency for SRT */
|
|
219
|
+
readonly minimumLatency: Duration;
|
|
220
|
+
/**
|
|
221
|
+
* Optional encryption configuration for SRT streams
|
|
222
|
+
* @default - No encryption
|
|
223
|
+
*/
|
|
224
|
+
readonly encryptionConfiguration?: RouterSrtEncryption;
|
|
225
|
+
}
|
|
226
|
+
/**
|
|
227
|
+
* Properties for SRT Caller protocol configuration for outputs
|
|
228
|
+
*/
|
|
229
|
+
export interface SrtCallerOutputProtocolProps {
|
|
230
|
+
/** Destination IP address to connect to */
|
|
231
|
+
readonly destinationAddress: string;
|
|
232
|
+
/** Destination port to connect to */
|
|
233
|
+
readonly destinationPort: number;
|
|
234
|
+
/** Minimum latency for SRT */
|
|
235
|
+
readonly minimumLatency: Duration;
|
|
236
|
+
/**
|
|
237
|
+
* Optional stream ID for SRT connection
|
|
238
|
+
* @default - No stream ID
|
|
239
|
+
*/
|
|
240
|
+
readonly streamId?: string;
|
|
241
|
+
/**
|
|
242
|
+
* Optional encryption configuration for SRT streams
|
|
243
|
+
* @default - No encryption
|
|
244
|
+
*/
|
|
245
|
+
readonly encryptionConfiguration?: RouterSrtEncryption;
|
|
246
|
+
}
|
|
247
|
+
/**
|
|
248
|
+
* Factory class for creating Router Output protocol configurations.
|
|
249
|
+
*
|
|
250
|
+
* Supported protocols: RTP, RIST, SRT (Listener and Caller).
|
|
251
|
+
*/
|
|
252
|
+
export declare class RouterOutputProtocol {
|
|
253
|
+
/**
|
|
254
|
+
* Create an RTP protocol configuration
|
|
255
|
+
*
|
|
256
|
+
* @example
|
|
257
|
+
*
|
|
258
|
+
* RouterOutputProtocol.rtp({
|
|
259
|
+
* destinationAddress: '10.0.0.1',
|
|
260
|
+
* port: 5000,
|
|
261
|
+
* });
|
|
262
|
+
*
|
|
263
|
+
* @param props RTP protocol properties
|
|
264
|
+
* @returns RouterOutputProtocol instance configured for RTP
|
|
265
|
+
*/
|
|
266
|
+
static rtp(props: RtpOutputProtocolProps): RouterOutputProtocol;
|
|
267
|
+
/**
|
|
268
|
+
* Create a RIST protocol configuration
|
|
269
|
+
*
|
|
270
|
+
* @example
|
|
271
|
+
*
|
|
272
|
+
* RouterOutputProtocol.rist({
|
|
273
|
+
* destinationAddress: '10.0.0.1',
|
|
274
|
+
* port: 5000,
|
|
275
|
+
* });
|
|
276
|
+
*
|
|
277
|
+
* @param props RIST protocol properties
|
|
278
|
+
* @returns RouterOutputProtocol instance configured for RIST
|
|
279
|
+
*/
|
|
280
|
+
static rist(props: RistOutputProtocolProps): RouterOutputProtocol;
|
|
281
|
+
/**
|
|
282
|
+
* Create an SRT Listener protocol configuration
|
|
283
|
+
*
|
|
284
|
+
* @example
|
|
285
|
+
*
|
|
286
|
+
* RouterOutputProtocol.srtListener({
|
|
287
|
+
* port: 5000,
|
|
288
|
+
* minimumLatency: Duration.millis(125),
|
|
289
|
+
* });
|
|
290
|
+
*
|
|
291
|
+
* @param props SRT Listener protocol properties
|
|
292
|
+
* @returns RouterOutputProtocol instance configured for SRT Listener
|
|
293
|
+
*/
|
|
294
|
+
static srtListener(props: SrtListenerOutputProtocolProps): RouterOutputProtocol;
|
|
295
|
+
/**
|
|
296
|
+
* Create an SRT Caller protocol configuration
|
|
297
|
+
*
|
|
298
|
+
* @example
|
|
299
|
+
*
|
|
300
|
+
* RouterOutputProtocol.srtCaller({
|
|
301
|
+
* destinationAddress: '10.0.0.1',
|
|
302
|
+
* destinationPort: 5000,
|
|
303
|
+
* minimumLatency: Duration.millis(125),
|
|
304
|
+
* });
|
|
305
|
+
*
|
|
306
|
+
* @param props SRT Caller protocol properties
|
|
307
|
+
* @returns RouterOutputProtocol instance configured for SRT Caller
|
|
308
|
+
*/
|
|
309
|
+
static srtCaller(props: SrtCallerOutputProtocolProps): RouterOutputProtocol;
|
|
310
|
+
/**
|
|
311
|
+
* Validate that port is within the valid range (3000-30000)
|
|
312
|
+
*/
|
|
313
|
+
private static validatePort;
|
|
314
|
+
/**
|
|
315
|
+
* Validate that SRT Caller port is within the valid range (0-65535)
|
|
316
|
+
*/
|
|
317
|
+
private static validateSrtCallerPort;
|
|
318
|
+
private readonly _protocolName;
|
|
319
|
+
private readonly _config;
|
|
320
|
+
private readonly _encryption?;
|
|
321
|
+
private constructor();
|
|
322
|
+
}
|
|
323
|
+
/**
|
|
324
|
+
* Properties for standard Router Output configuration
|
|
325
|
+
*/
|
|
326
|
+
export interface StandardOutputConfigurationProps {
|
|
327
|
+
/** Network interface for the Router Output */
|
|
328
|
+
readonly networkInterface: IRouterNetworkInterface;
|
|
329
|
+
/** Protocol configuration for the output */
|
|
330
|
+
readonly protocol: RouterOutputProtocol;
|
|
331
|
+
}
|
|
332
|
+
/**
|
|
333
|
+
* Properties for MediaLive Router Output configuration with specific input connection
|
|
334
|
+
*/
|
|
335
|
+
export interface MediaLiveInputConnectionProps {
|
|
336
|
+
/**
|
|
337
|
+
* ARN of the MediaLive input to send output to.
|
|
338
|
+
*
|
|
339
|
+
* Note: This will change to accept an IInputRef (typed MediaLive Input reference)
|
|
340
|
+
* when the @aws-cdk/aws-medialive-alpha L2 construct is released.
|
|
341
|
+
*/
|
|
342
|
+
readonly mediaLiveInputArn: string;
|
|
343
|
+
/** Pipeline ID for MediaLive input */
|
|
344
|
+
readonly mediaLivePipelineId: MediaLivePipeline;
|
|
345
|
+
/**
|
|
346
|
+
* Optional transit encryption configuration
|
|
347
|
+
* @default - Automatic encryption will be used
|
|
348
|
+
*/
|
|
349
|
+
readonly destinationTransitEncryption?: TransitEncryption;
|
|
350
|
+
}
|
|
351
|
+
/**
|
|
352
|
+
* Properties for MediaLive Router Output configuration without specific input connection
|
|
353
|
+
*/
|
|
354
|
+
export interface MediaLiveNoInputConnectionProps {
|
|
355
|
+
/** Availability zone for the router output when not connecting to a specific input */
|
|
356
|
+
readonly availabilityZone: string;
|
|
357
|
+
/**
|
|
358
|
+
* Optional transit encryption configuration
|
|
359
|
+
* @default - Automatic encryption will be used
|
|
360
|
+
*/
|
|
361
|
+
readonly destinationTransitEncryption?: TransitEncryption;
|
|
362
|
+
}
|
|
363
|
+
/**
|
|
364
|
+
* Properties for MediaConnect Flow Router Output configuration with specific flow connection
|
|
365
|
+
*/
|
|
366
|
+
export interface MediaConnectFlowConnectionProps {
|
|
367
|
+
/** MediaConnect Flow to send output to */
|
|
368
|
+
readonly flow: IFlow;
|
|
369
|
+
/**
|
|
370
|
+
* Optional transit encryption configuration
|
|
371
|
+
* @default - Automatic encryption will be used
|
|
372
|
+
*/
|
|
373
|
+
readonly destinationTransitEncryption?: TransitEncryption;
|
|
374
|
+
}
|
|
375
|
+
/**
|
|
376
|
+
* Properties for MediaConnect Flow Router Output configuration without specific flow connection
|
|
377
|
+
*/
|
|
378
|
+
export interface MediaConnectFlowNoConnectionProps {
|
|
379
|
+
/** Availability zone for the router output when not connecting to a specific flow */
|
|
380
|
+
readonly availabilityZone: string;
|
|
381
|
+
/**
|
|
382
|
+
* Optional transit encryption configuration
|
|
383
|
+
* @default - Automatic encryption will be used
|
|
384
|
+
*/
|
|
385
|
+
readonly destinationTransitEncryption?: TransitEncryption;
|
|
386
|
+
}
|
|
387
|
+
/**
|
|
388
|
+
* Factory class for creating Router Output configurations
|
|
389
|
+
*/
|
|
390
|
+
export declare abstract class RouterOutputConfiguration {
|
|
391
|
+
/**
|
|
392
|
+
* Create a standard Router Output configuration with a single protocol
|
|
393
|
+
*
|
|
394
|
+
* @example
|
|
395
|
+
*
|
|
396
|
+
* declare const networkInterface: RouterNetworkInterface;
|
|
397
|
+
*
|
|
398
|
+
* RouterOutputConfiguration.standard({
|
|
399
|
+
* networkInterface,
|
|
400
|
+
* protocol: RouterOutputProtocol.rtp({
|
|
401
|
+
* destinationAddress: '10.0.0.1',
|
|
402
|
+
* port: 5000,
|
|
403
|
+
* }),
|
|
404
|
+
* });
|
|
405
|
+
*
|
|
406
|
+
* @param props Standard configuration properties
|
|
407
|
+
* @returns RouterOutputConfiguration instance for standard setup
|
|
408
|
+
*/
|
|
409
|
+
static standard(props: StandardOutputConfigurationProps): RouterOutputConfiguration;
|
|
410
|
+
/**
|
|
411
|
+
* Create a MediaLive Router Output configuration with a specific input connection.
|
|
412
|
+
*
|
|
413
|
+
* Use this when the MediaLive input already exists and you want to connect immediately.
|
|
414
|
+
*
|
|
415
|
+
* @example
|
|
416
|
+
*
|
|
417
|
+
* RouterOutputConfiguration.mediaLiveInput({
|
|
418
|
+
* mediaLiveInputArn: 'arn:aws:medialive:us-east-1:123456789012:input:1234567',
|
|
419
|
+
* mediaLivePipelineId: MediaLivePipeline.PIPELINE_0,
|
|
420
|
+
* });
|
|
421
|
+
*
|
|
422
|
+
* @param props MediaLive input connection properties
|
|
423
|
+
* @returns RouterOutputConfiguration instance for MediaLive setup with input connection
|
|
424
|
+
*/
|
|
425
|
+
static mediaLiveInput(props: MediaLiveInputConnectionProps): RouterOutputConfiguration;
|
|
426
|
+
/**
|
|
427
|
+
* Create a MediaLive Router Output configuration without a specific input connection.
|
|
428
|
+
*
|
|
429
|
+
* Use this when you want to set up the router output before the MediaLive input exists.
|
|
430
|
+
*
|
|
431
|
+
* @example
|
|
432
|
+
*
|
|
433
|
+
* RouterOutputConfiguration.mediaLiveInputWithoutConnection({
|
|
434
|
+
* availabilityZone: 'us-east-1a',
|
|
435
|
+
* });
|
|
436
|
+
*
|
|
437
|
+
* @param props MediaLive no input connection properties
|
|
438
|
+
* @returns RouterOutputConfiguration instance for MediaLive setup without input connection
|
|
439
|
+
*/
|
|
440
|
+
static mediaLiveInputWithoutConnection(props: MediaLiveNoInputConnectionProps): RouterOutputConfiguration;
|
|
441
|
+
/**
|
|
442
|
+
* Create a MediaConnect Flow Router Output configuration with a specific flow connection.
|
|
443
|
+
*
|
|
444
|
+
* Use this when the target flow already exists and you want to connect immediately.
|
|
445
|
+
*
|
|
446
|
+
* @example
|
|
447
|
+
*
|
|
448
|
+
* declare const flow: Flow;
|
|
449
|
+
*
|
|
450
|
+
* RouterOutputConfiguration.mediaConnectFlow({
|
|
451
|
+
* flow,
|
|
452
|
+
* });
|
|
453
|
+
*
|
|
454
|
+
* @param props MediaConnect Flow connection properties
|
|
455
|
+
* @returns RouterOutputConfiguration instance for MediaConnect Flow setup with flow connection
|
|
456
|
+
*/
|
|
457
|
+
static mediaConnectFlow(props: MediaConnectFlowConnectionProps): RouterOutputConfiguration;
|
|
458
|
+
/**
|
|
459
|
+
* Create a MediaConnect Flow Router Output configuration without a specific flow connection.
|
|
460
|
+
*
|
|
461
|
+
* Use this when you want to set up the router output before the target flow exists.
|
|
462
|
+
*
|
|
463
|
+
* @example
|
|
464
|
+
*
|
|
465
|
+
* RouterOutputConfiguration.mediaConnectFlowWithoutConnection({
|
|
466
|
+
* availabilityZone: 'us-east-1a',
|
|
467
|
+
* });
|
|
468
|
+
*
|
|
469
|
+
* @param props MediaConnect Flow no connection properties
|
|
470
|
+
* @returns RouterOutputConfiguration instance for MediaConnect Flow setup without flow connection
|
|
471
|
+
*/
|
|
472
|
+
static mediaConnectFlowWithoutConnection(props: MediaConnectFlowNoConnectionProps): RouterOutputConfiguration;
|
|
473
|
+
}
|
|
474
|
+
/**
|
|
475
|
+
* A MediaConnect Router Output that sends media streams to destinations.
|
|
476
|
+
*
|
|
477
|
+
* Router Outputs support multiple configuration types:
|
|
478
|
+
* - Standard: Single protocol output
|
|
479
|
+
* - MediaLive Input: Output to AWS Elemental MediaLive
|
|
480
|
+
* - MediaConnect Flow: Output to another MediaConnect Flow
|
|
481
|
+
*/
|
|
482
|
+
declare abstract class RouterOutputBase extends Resource implements IRouterOutput {
|
|
483
|
+
abstract readonly routerOutputArn: string;
|
|
484
|
+
abstract readonly routerOutputName: string;
|
|
485
|
+
abstract readonly routerOutputId: string;
|
|
486
|
+
abstract readonly ipAddress: string;
|
|
487
|
+
abstract readonly createdAt?: string;
|
|
488
|
+
abstract readonly updatedAt?: string;
|
|
489
|
+
/**
|
|
490
|
+
* A reference to this Router Output resource.
|
|
491
|
+
* Required by the auto-generated IRouterOutputRef interface.
|
|
492
|
+
*/
|
|
493
|
+
get routerOutputRef(): RouterOutputReference;
|
|
494
|
+
/**
|
|
495
|
+
* Create a CloudWatch metric for this router output.
|
|
496
|
+
*/
|
|
497
|
+
metric(metricName: string, props?: MetricOptions): Metric;
|
|
498
|
+
/**
|
|
499
|
+
* Metric for the bitrate of the router output's payload.
|
|
500
|
+
*/
|
|
501
|
+
metricBitrate(props?: MetricOptions): Metric;
|
|
502
|
+
/**
|
|
503
|
+
* Metric for the total number of packets sent by the router output.
|
|
504
|
+
*/
|
|
505
|
+
metricTotalPackets(props?: MetricOptions): Metric;
|
|
506
|
+
/**
|
|
507
|
+
* Metric for the router output connection state (1 connected, 0 disconnected). Applies to SRT outputs only.
|
|
508
|
+
*/
|
|
509
|
+
metricConnected(props?: MetricOptions): Metric;
|
|
510
|
+
/**
|
|
511
|
+
* Metric for the number of retransmitted packets requested through ARQ. Applies to RIST and SRT outputs.
|
|
512
|
+
*/
|
|
513
|
+
metricArqRequests(props?: MetricOptions): Metric;
|
|
514
|
+
}
|
|
515
|
+
/**
|
|
516
|
+
* Defines an AWS Elemental MediaConnect Router Output.
|
|
517
|
+
*/
|
|
518
|
+
export declare class RouterOutput extends RouterOutputBase implements IRouterOutput {
|
|
519
|
+
/** Uniquely identifies this class. */
|
|
520
|
+
static readonly PROPERTY_INJECTION_ID: string;
|
|
521
|
+
/**
|
|
522
|
+
* Import an existing Router Output from its ARN.
|
|
523
|
+
*
|
|
524
|
+
* The ARN only contains the service-generated ID (not the router output name). Accessing
|
|
525
|
+
* `routerOutputName` on an ARN import throws — use `fromRouterOutputAttributes()` to provide
|
|
526
|
+
* the name explicitly.
|
|
527
|
+
*
|
|
528
|
+
* @param scope The parent construct
|
|
529
|
+
* @param id The construct id
|
|
530
|
+
* @param routerOutputArn The ARN of the Router Output
|
|
531
|
+
* @returns A Router Output construct
|
|
532
|
+
*/
|
|
533
|
+
static fromRouterOutputArn(scope: Construct, id: string, routerOutputArn: string): IRouterOutput;
|
|
534
|
+
/**
|
|
535
|
+
* Import an existing Router Output from attributes.
|
|
536
|
+
*
|
|
537
|
+
* Use this when you need to reference a router output by name.
|
|
538
|
+
*
|
|
539
|
+
* @param scope The parent construct
|
|
540
|
+
* @param id The construct id
|
|
541
|
+
* @param attrs The Router Output attributes
|
|
542
|
+
* @returns A Router Output construct
|
|
543
|
+
*/
|
|
544
|
+
static fromRouterOutputAttributes(scope: Construct, id: string, attrs: RouterOutputAttributes): IRouterOutput;
|
|
545
|
+
/**
|
|
546
|
+
* Returns the maximum bitrate in Mbps for a known tier, or undefined for custom tiers.
|
|
547
|
+
*/
|
|
548
|
+
private static tierLimitMbps;
|
|
549
|
+
readonly routerOutputArn: string;
|
|
550
|
+
readonly routerOutputName: string;
|
|
551
|
+
readonly routerOutputId: string;
|
|
552
|
+
readonly ipAddress: string;
|
|
553
|
+
readonly createdAt?: string;
|
|
554
|
+
readonly updatedAt?: string;
|
|
555
|
+
constructor(scope: Construct, id: string, props: RouterOutputProps);
|
|
556
|
+
}
|
|
557
|
+
export {};
|