@aws-cdk/aws-medialive-alpha 2.268.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 +60888 -0
- package/.jsii.tabl.json.gz +0 -0
- package/.warnings.jsii.js +524 -0
- package/LICENSE +201 -0
- package/NOTICE +2 -0
- package/README.md +1297 -0
- package/grants.json +27 -0
- package/lib/audio-codec-settings.d.ts +901 -0
- package/lib/audio-codec-settings.js +1098 -0
- package/lib/audio-selector.d.ts +170 -0
- package/lib/audio-selector.js +306 -0
- package/lib/avail-settings.d.ts +231 -0
- package/lib/avail-settings.js +226 -0
- package/lib/caption-selector.d.ts +234 -0
- package/lib/caption-selector.js +413 -0
- package/lib/caption-settings.d.ts +349 -0
- package/lib/caption-settings.js +482 -0
- package/lib/channel-features.d.ts +106 -0
- package/lib/channel-features.js +85 -0
- package/lib/channel-placement-group.d.ts +73 -0
- package/lib/channel-placement-group.js +132 -0
- package/lib/channel.d.ts +687 -0
- package/lib/channel.js +1096 -0
- package/lib/cluster.d.ts +129 -0
- package/lib/cluster.js +158 -0
- package/lib/color-correction.d.ts +39 -0
- package/lib/color-correction.js +29 -0
- package/lib/destinations.d.ts +242 -0
- package/lib/destinations.js +455 -0
- package/lib/encode-configuration.d.ts +615 -0
- package/lib/encode-configuration.js +629 -0
- package/lib/enums.d.ts +698 -0
- package/lib/enums.js +1045 -0
- package/lib/file-location.d.ts +65 -0
- package/lib/file-location.js +150 -0
- package/lib/framerate.d.ts +31 -0
- package/lib/framerate.js +71 -0
- package/lib/index.d.ts +26 -0
- package/lib/index.js +43 -0
- package/lib/input-attachment.d.ts +319 -0
- package/lib/input-attachment.js +228 -0
- package/lib/input-security-group.d.ts +51 -0
- package/lib/input-security-group.js +123 -0
- package/lib/input-specification.d.ts +111 -0
- package/lib/input-specification.js +181 -0
- package/lib/input.d.ts +505 -0
- package/lib/input.js +803 -0
- package/lib/m2ts-settings.d.ts +421 -0
- package/lib/m2ts-settings.js +469 -0
- package/lib/m3u8-settings.d.ts +272 -0
- package/lib/m3u8-settings.js +304 -0
- package/lib/medialive-grants.generated.d.ts +30 -0
- package/lib/medialive-grants.generated.js +92 -0
- package/lib/network.d.ts +83 -0
- package/lib/network.js +132 -0
- package/lib/output-group.d.ts +924 -0
- package/lib/output-group.js +941 -0
- package/lib/outputs.d.ts +304 -0
- package/lib/outputs.js +598 -0
- package/lib/sdi-source.d.ts +124 -0
- package/lib/sdi-source.js +180 -0
- package/lib/shared.d.ts +44 -0
- package/lib/shared.js +146 -0
- package/lib/video-codec-settings.d.ts +1500 -0
- package/lib/video-codec-settings.js +1722 -0
- package/lib/video-selection.d.ts +92 -0
- package/lib/video-selection.js +95 -0
- package/package.json +135 -0
- package/rosetta/_generated.ts-fixture +6 -0
- package/rosetta/default.ts-fixture +21 -0
|
@@ -0,0 +1,924 @@
|
|
|
1
|
+
export * from './destinations';
|
|
2
|
+
export * from './enums';
|
|
3
|
+
export * from './outputs';
|
|
4
|
+
import type { IChannel as IMediaPackageV2Channel } from '@aws-cdk/aws-mediapackagev2-alpha';
|
|
5
|
+
import type { Duration, SecretValue } from 'aws-cdk-lib';
|
|
6
|
+
import type { OutputDestination, S3OutputDestination, UdpOutputDestination } from './destinations';
|
|
7
|
+
import { MediaPackageV2Destination, MediaConnectRouterSettings } from './destinations';
|
|
8
|
+
import { HlsMode, HlsInputLossAction, RtmpAuthenticationScheme, HlsClientCache, HlsCodecSpecification, HlsDirectoryStructure, HlsDiscontinuityTags, HlsId3SegmentTaggingState, HlsIFrameOnlyPlaylists, HlsIncompleteSegmentBehavior, HlsManifestCompression, HlsManifestDurationFormat, HlsOutputSelection, HlsProgramDateTime, HlsProgramDateTimeClock, HlsRedundantManifest, HlsSegmentationMode, HlsStreamInfResolution, HlsTsFileMode, HttpTransferMode, HlsTimedMetadataId3Frame, UdpInputLossAction, Id3Behavior, KlvBehavior, NielsenId3Behavior, Scte35Type, TimedMetadataId3Frame, TimedMetadataPassthrough, UdpTimedMetadataId3Frame, SrtInputLossAction } from './enums';
|
|
9
|
+
import type { S3CannedAcl, HlsEncryptionType, HlsIvInManifest, HlsIvSource, HlsCaptionLanguageSetting, RtmpCacheFullBehavior, RtmpCaptionData, RtmpInputLossAction, RtmpIncludeFillerNalUnits, MsSmoothAudioOnlyTimecodeControl, MsSmoothCertificateMode, MsSmoothEventIdMode, MsSmoothEventStopBehavior, MsSmoothInputLossAction, MsSmoothSegmentationMode, MsSmoothSparseTrackType, MsSmoothStreamManifestBehavior, MsSmoothTimestampOffsetMode, HlsAdMarkers, RtmpAdMarkers } from './enums';
|
|
10
|
+
import type { MediaConnectRouterOutputDefinition, MediaPackageV2OutputDefinition, HlsOutputDefinition, UdpOutputDefinition, ArchiveOutputDefinition, RtmpOutputDefinition, SrtOutputDefinition, CmafIngestOutputDefinition, FrameCaptureOutputDefinition, MsSmoothOutputDefinition } from './outputs';
|
|
11
|
+
import type { Segment } from './shared';
|
|
12
|
+
/**
|
|
13
|
+
* Configuration for an output group. Use the static factory methods to create.
|
|
14
|
+
*/
|
|
15
|
+
export declare abstract class OutputGroupConfiguration {
|
|
16
|
+
/**
|
|
17
|
+
* Create a MediaPackage V2 output group that delivers to a single channel, auto-mapping each
|
|
18
|
+
* pipeline to a MediaPackage ingest endpoint based on the channel class.
|
|
19
|
+
*/
|
|
20
|
+
static mediaPackageV2(props: MediaPackageV2OutputGroupProps): OutputGroupConfiguration;
|
|
21
|
+
/**
|
|
22
|
+
* Create a MediaPackage V2 output group with explicit per-pipeline destinations (channel +
|
|
23
|
+
* endpoint per pipeline). Use for cross-region delivery or pinning a pipeline to an endpoint.
|
|
24
|
+
*/
|
|
25
|
+
static mediaPackageV2PerPipeline(props: MediaPackageV2PerPipelineOutputGroupProps): OutputGroupConfiguration;
|
|
26
|
+
/**
|
|
27
|
+
* Create a MediaConnect Router output group, delivering each channel pipeline to a MediaConnect
|
|
28
|
+
* Router. Transit encryption defaults to AUTOMATIC; override per pipeline via `routerSettings`.
|
|
29
|
+
*
|
|
30
|
+
* The downstream wiring (which router input each pipeline feeds) is configured on the
|
|
31
|
+
* MediaConnect side, referencing this output group by `name` and the pipeline id.
|
|
32
|
+
*/
|
|
33
|
+
static mediaConnectRouter(props: MediaConnectRouterOutputGroupProps): OutputGroupConfiguration;
|
|
34
|
+
/** Create an HLS output group configuration. */
|
|
35
|
+
static hls(props: HlsOutputGroupProps): OutputGroupConfiguration;
|
|
36
|
+
/** Create a UDP output group configuration. */
|
|
37
|
+
static udp(props: UdpOutputGroupProps): OutputGroupConfiguration;
|
|
38
|
+
/** Create an Archive (S3) output group configuration. */
|
|
39
|
+
static archive(props: ArchiveOutputGroupProps): OutputGroupConfiguration;
|
|
40
|
+
/** Create an RTMP output group configuration. */
|
|
41
|
+
static rtmp(props: RtmpOutputGroupProps): OutputGroupConfiguration;
|
|
42
|
+
/** Create an SRT output group configuration. */
|
|
43
|
+
static srt(props: SrtOutputGroupProps): OutputGroupConfiguration;
|
|
44
|
+
/** Create a CMAF Ingest output group configuration. */
|
|
45
|
+
static cmafIngest(props: CmafIngestOutputGroupProps): OutputGroupConfiguration;
|
|
46
|
+
/**
|
|
47
|
+
* Create a Frame Capture output group configuration.
|
|
48
|
+
*
|
|
49
|
+
* A channel that includes a Frame Capture output group must also include
|
|
50
|
+
* a separate video output group (e.g. Archive, HLS, UDP). Frame Capture
|
|
51
|
+
* cannot be the channel's only output group.
|
|
52
|
+
*/
|
|
53
|
+
static frameCapture(props: FrameCaptureOutputGroupProps): OutputGroupConfiguration;
|
|
54
|
+
/** Create an MS Smooth output group configuration. */
|
|
55
|
+
static msSmooth(props: MsSmoothOutputGroupProps): OutputGroupConfiguration;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Maps a captions channel to an ISO 693-2 language code.
|
|
59
|
+
*/
|
|
60
|
+
export interface CaptionLanguageMapping {
|
|
61
|
+
/** The closed caption channel number (1-4). */
|
|
62
|
+
readonly captionChannel: number;
|
|
63
|
+
/** A three-character ISO 639-2 language code. */
|
|
64
|
+
readonly languageCode: string;
|
|
65
|
+
/** The textual description of the language. */
|
|
66
|
+
readonly languageDescription: string;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Maps a captions channel to an ISO 639-2 language code for a CMAF Ingest output group.
|
|
70
|
+
*
|
|
71
|
+
* Unlike `CaptionLanguageMapping`, the CMAF Ingest variant has no language description.
|
|
72
|
+
*/
|
|
73
|
+
export interface CmafCaptionLanguageMapping {
|
|
74
|
+
/** The closed caption channel number (1-4). */
|
|
75
|
+
readonly captionChannel: number;
|
|
76
|
+
/** A three-character ISO 639-2 language code. */
|
|
77
|
+
readonly languageCode: string;
|
|
78
|
+
}
|
|
79
|
+
/** Properties for HLS static key encryption. */
|
|
80
|
+
export interface HlsStaticKeyProps {
|
|
81
|
+
/**
|
|
82
|
+
* The URL of the license server that serves the static key.
|
|
83
|
+
*
|
|
84
|
+
* Required — MediaLive rejects this without a server URL, even though the underlying
|
|
85
|
+
* CloudFormation property is typed as optional.
|
|
86
|
+
*/
|
|
87
|
+
readonly keyProviderServerUrl: string;
|
|
88
|
+
/** The static key value as a 32-character hexadecimal string. */
|
|
89
|
+
readonly staticKeyValue: SecretValue;
|
|
90
|
+
}
|
|
91
|
+
/** Properties for HLS S3 CDN settings. */
|
|
92
|
+
export interface HlsS3CdnProps {
|
|
93
|
+
/** The S3 canned ACL to apply to each output. @default - no canned ACL */
|
|
94
|
+
readonly cannedAcl?: S3CannedAcl;
|
|
95
|
+
}
|
|
96
|
+
/** Properties for HLS Basic PUT CDN settings. */
|
|
97
|
+
export interface HlsBasicPutCdnProps {
|
|
98
|
+
/** The number of seconds to wait before retrying a connection to the CDN. @default 1 */
|
|
99
|
+
readonly connectionRetryInterval?: number;
|
|
100
|
+
/** The size of the file cache for streaming outputs. @default Duration.seconds(300) */
|
|
101
|
+
readonly filecacheDuration?: Duration;
|
|
102
|
+
/** The number of retry attempts. @default 10 */
|
|
103
|
+
readonly numRetries?: number;
|
|
104
|
+
/** The number of seconds to wait before restarting after a failure. @default 1 */
|
|
105
|
+
readonly restartDelay?: number;
|
|
106
|
+
}
|
|
107
|
+
/** Properties for HLS Akamai CDN settings. */
|
|
108
|
+
export interface HlsAkamaiCdnProps {
|
|
109
|
+
/** The number of seconds to wait before retrying a connection to the CDN. @default 1 */
|
|
110
|
+
readonly connectionRetryInterval?: number;
|
|
111
|
+
/** The size of the file cache for streaming outputs. @default Duration.seconds(300) */
|
|
112
|
+
readonly filecacheDuration?: Duration;
|
|
113
|
+
/** Specifies whether to use chunked transfer encoding. @default HttpTransferMode.NON_CHUNKED */
|
|
114
|
+
readonly httpTransferMode?: HttpTransferMode;
|
|
115
|
+
/** The number of retry attempts. @default 10 */
|
|
116
|
+
readonly numRetries?: number;
|
|
117
|
+
/** The number of seconds to wait before restarting after a failure. @default 1 */
|
|
118
|
+
readonly restartDelay?: number;
|
|
119
|
+
/** The salt for Akamai authentication. @default - no salt */
|
|
120
|
+
readonly salt?: string;
|
|
121
|
+
/** The token for Akamai authentication. @default - no token */
|
|
122
|
+
readonly token?: string;
|
|
123
|
+
}
|
|
124
|
+
/** Properties for HLS WebDAV CDN settings. */
|
|
125
|
+
export interface HlsWebdavCdnProps {
|
|
126
|
+
/** The number of seconds to wait before retrying a connection to the CDN. @default 1 */
|
|
127
|
+
readonly connectionRetryInterval?: number;
|
|
128
|
+
/** The size of the file cache for streaming outputs. @default Duration.seconds(300) */
|
|
129
|
+
readonly filecacheDuration?: Duration;
|
|
130
|
+
/** Specifies whether to use chunked transfer encoding. @default HttpTransferMode.NON_CHUNKED */
|
|
131
|
+
readonly httpTransferMode?: HttpTransferMode;
|
|
132
|
+
/** The number of retry attempts. @default 10 */
|
|
133
|
+
readonly numRetries?: number;
|
|
134
|
+
/** The number of seconds to wait before restarting after a failure. @default 1 */
|
|
135
|
+
readonly restartDelay?: number;
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* Key provider settings for HLS encryption.
|
|
139
|
+
*/
|
|
140
|
+
export declare class HlsKeyProviderSettings {
|
|
141
|
+
/** Use a static key for HLS encryption. */
|
|
142
|
+
static staticKey(props: HlsStaticKeyProps): HlsKeyProviderSettings;
|
|
143
|
+
private readonly config;
|
|
144
|
+
private constructor();
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* CDN settings for HLS output groups.
|
|
148
|
+
*/
|
|
149
|
+
export declare class HlsCdnSettings {
|
|
150
|
+
/** Use Amazon S3 as the CDN for HLS output. */
|
|
151
|
+
static s3(props?: HlsS3CdnProps): HlsCdnSettings;
|
|
152
|
+
/** Use a basic HTTP PUT for HLS output. */
|
|
153
|
+
static basicPut(props?: HlsBasicPutCdnProps): HlsCdnSettings;
|
|
154
|
+
/** Use Akamai as the CDN for HLS output. */
|
|
155
|
+
static akamai(props?: HlsAkamaiCdnProps): HlsCdnSettings;
|
|
156
|
+
/** Use WebDAV as the CDN for HLS output. */
|
|
157
|
+
static webdav(props?: HlsWebdavCdnProps): HlsCdnSettings;
|
|
158
|
+
private readonly config;
|
|
159
|
+
private constructor();
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* Common properties shared by the MediaPackage V2 output group variants.
|
|
163
|
+
*
|
|
164
|
+
* @see https://docs.aws.amazon.com/medialive/latest/ug/creating-mediapackage-output-group.html
|
|
165
|
+
*/
|
|
166
|
+
export interface MediaPackageV2OutputGroupBaseProps {
|
|
167
|
+
/** The name of this output group. Used as the destination reference ID. Underscores are normalised to hyphens internally. */
|
|
168
|
+
readonly name: string;
|
|
169
|
+
/**
|
|
170
|
+
* Configure additional destinations to fan out the output to extra MediaPackage V2
|
|
171
|
+
* channels, for example for cross-region delivery or backup packaging.
|
|
172
|
+
* These correspond to Destination 3/4 in the AWS console. Each additional destination is a
|
|
173
|
+
* single, explicit entry (channel + endpoint), independent of the channel class.
|
|
174
|
+
*
|
|
175
|
+
* @see https://docs.aws.amazon.com/medialive/latest/ug/creating-mediapackage-output-group.html
|
|
176
|
+
* @default - no additional destinations
|
|
177
|
+
*/
|
|
178
|
+
readonly additionalDestinations?: MediaPackageV2Destination[];
|
|
179
|
+
/**
|
|
180
|
+
* The length of each media segment.
|
|
181
|
+
* @default - Segment.seconds(1)
|
|
182
|
+
*/
|
|
183
|
+
readonly segment?: Segment;
|
|
184
|
+
/**
|
|
185
|
+
* The ID3 behavior.
|
|
186
|
+
* @default Id3Behavior.DISABLED
|
|
187
|
+
*/
|
|
188
|
+
readonly id3Behavior?: Id3Behavior;
|
|
189
|
+
/**
|
|
190
|
+
* The KLV behavior.
|
|
191
|
+
* @default KlvBehavior.NO_PASSTHROUGH
|
|
192
|
+
*/
|
|
193
|
+
readonly klvBehavior?: KlvBehavior;
|
|
194
|
+
/**
|
|
195
|
+
* The Nielsen ID3 behavior.
|
|
196
|
+
* @default NielsenId3Behavior.NO_PASSTHROUGH
|
|
197
|
+
*/
|
|
198
|
+
readonly nielsenId3Behavior?: NielsenId3Behavior;
|
|
199
|
+
/**
|
|
200
|
+
* The SCTE-35 type.
|
|
201
|
+
* @default Scte35Type.SCTE_35_WITHOUT_SEGMENTATION
|
|
202
|
+
*/
|
|
203
|
+
readonly scte35Type?: Scte35Type;
|
|
204
|
+
/**
|
|
205
|
+
* The timed metadata ID3 frame.
|
|
206
|
+
* @default TimedMetadataId3Frame.NONE
|
|
207
|
+
*/
|
|
208
|
+
readonly timedMetadataId3Frame?: TimedMetadataId3Frame;
|
|
209
|
+
/**
|
|
210
|
+
* The timed metadata interval.
|
|
211
|
+
* @default Duration.seconds(10)
|
|
212
|
+
*/
|
|
213
|
+
readonly timedMetadataId3Period?: Duration;
|
|
214
|
+
/**
|
|
215
|
+
* Whether timed metadata is passed through.
|
|
216
|
+
* @default TimedMetadataPassthrough.DISABLED
|
|
217
|
+
*/
|
|
218
|
+
readonly timedMetadataPassthrough?: TimedMetadataPassthrough;
|
|
219
|
+
/**
|
|
220
|
+
* Caption language mappings for the MediaPackage V2 output.
|
|
221
|
+
* @default - no caption language mappings
|
|
222
|
+
*/
|
|
223
|
+
readonly captionLanguageMappings?: CaptionLanguageMapping[];
|
|
224
|
+
/**
|
|
225
|
+
* The outputs for this output group.
|
|
226
|
+
*
|
|
227
|
+
* MediaPackage V2 uses CMAF ingest which requires one track per output.
|
|
228
|
+
* Create a separate output for each encode (e.g. one for HD video, one for SD video, one for audio).
|
|
229
|
+
* Do NOT put multiple encodes in a single output.
|
|
230
|
+
*/
|
|
231
|
+
readonly outputs: MediaPackageV2OutputDefinition[];
|
|
232
|
+
}
|
|
233
|
+
/**
|
|
234
|
+
* Properties for a MediaPackage V2 output group.
|
|
235
|
+
*
|
|
236
|
+
* Reference a single MediaPackage V2 channel; MediaLive wires each channel pipeline to a
|
|
237
|
+
* MediaPackage ingest endpoint automatically (one for SINGLE_PIPELINE, both for STANDARD). For
|
|
238
|
+
* per-pipeline control — for example sending pipeline 0 to a specific endpoint of a channel in
|
|
239
|
+
* another region — use `OutputGroupConfiguration.mediaPackageV2PerPipeline()` instead.
|
|
240
|
+
*/
|
|
241
|
+
export interface MediaPackageV2OutputGroupProps extends MediaPackageV2OutputGroupBaseProps {
|
|
242
|
+
/**
|
|
243
|
+
* The MediaPackage V2 channel to deliver to. MediaLive maps the channel pipelines to the
|
|
244
|
+
* channel's ingest endpoints automatically based on the channel class.
|
|
245
|
+
*/
|
|
246
|
+
readonly channel: IMediaPackageV2Channel;
|
|
247
|
+
}
|
|
248
|
+
/**
|
|
249
|
+
* Properties for a MediaPackage V2 output group with explicit per-pipeline destinations.
|
|
250
|
+
*
|
|
251
|
+
* Use this when you need to control the channel and endpoint each pipeline delivers to — for
|
|
252
|
+
* example cross-region delivery, or pinning pipeline 0 to a specific endpoint.
|
|
253
|
+
*/
|
|
254
|
+
export interface MediaPackageV2PerPipelineOutputGroupProps extends MediaPackageV2OutputGroupBaseProps {
|
|
255
|
+
/**
|
|
256
|
+
* The primary MediaPackage V2 destinations — one per pipeline.
|
|
257
|
+
*
|
|
258
|
+
* Array position determines the pipeline mapping:
|
|
259
|
+
* - `destinations[0]` → Pipeline 0
|
|
260
|
+
* - `destinations[1]` → Pipeline 1 (STANDARD channels only)
|
|
261
|
+
*
|
|
262
|
+
* For a SINGLE_PIPELINE channel, provide exactly 1 destination.
|
|
263
|
+
* For a STANDARD channel, provide exactly 2 destinations.
|
|
264
|
+
*/
|
|
265
|
+
readonly destinations: MediaPackageV2Destination[];
|
|
266
|
+
}
|
|
267
|
+
/**
|
|
268
|
+
* Properties for a MediaConnect Router output group.
|
|
269
|
+
*
|
|
270
|
+
* Delivers each channel pipeline to a MediaConnect Router. The downstream routing (which router
|
|
271
|
+
* input each pipeline feeds) is configured on the MediaConnect side, referencing this group by
|
|
272
|
+
* `name` and pipeline id.
|
|
273
|
+
*
|
|
274
|
+
* @see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-medialive-channel-mediaconnectroutergroupsettings.html
|
|
275
|
+
*/
|
|
276
|
+
export interface MediaConnectRouterOutputGroupProps {
|
|
277
|
+
/** The name of this output group. Used as the destination reference ID. Underscores are normalised to hyphens internally. */
|
|
278
|
+
readonly name: string;
|
|
279
|
+
/**
|
|
280
|
+
* The Availability Zones in which to write output to the MediaConnect Router. Provide exactly
|
|
281
|
+
* one AZ for a `SINGLE_PIPELINE` channel, or two (one per pipeline) for a `STANDARD` channel.
|
|
282
|
+
*/
|
|
283
|
+
readonly availabilityZones: string[];
|
|
284
|
+
/**
|
|
285
|
+
* Transit-encryption settings, applied per channel pipeline.
|
|
286
|
+
* @default - AUTOMATIC (service-managed) transit encryption on every pipeline
|
|
287
|
+
*/
|
|
288
|
+
readonly routerSettings?: MediaConnectRouterSettings;
|
|
289
|
+
/**
|
|
290
|
+
* The outputs for this output group.
|
|
291
|
+
*
|
|
292
|
+
* MediaConnect Router outputs use an MPEG-TS container, so each output may multiplex one video
|
|
293
|
+
* encode and one or more audio encodes (as with UDP).
|
|
294
|
+
*/
|
|
295
|
+
readonly outputs: MediaConnectRouterOutputDefinition[];
|
|
296
|
+
}
|
|
297
|
+
/**
|
|
298
|
+
* Properties for an HLS output group.
|
|
299
|
+
*/
|
|
300
|
+
export interface HlsOutputGroupProps {
|
|
301
|
+
/**
|
|
302
|
+
* The name of this output group. Used as the destination reference ID. Underscores are normalised to hyphens internally.
|
|
303
|
+
*/
|
|
304
|
+
readonly name: string;
|
|
305
|
+
/**
|
|
306
|
+
* The destinations for this output group — one per pipeline.
|
|
307
|
+
*
|
|
308
|
+
* Array position determines the pipeline mapping:
|
|
309
|
+
* - `destinations[0]` → Pipeline 0
|
|
310
|
+
* - `destinations[1]` → Pipeline 1 (STANDARD channels only)
|
|
311
|
+
*
|
|
312
|
+
* For a SINGLE_PIPELINE channel, provide exactly 1 destination.
|
|
313
|
+
* For a STANDARD channel, provide exactly 2 destinations.
|
|
314
|
+
*/
|
|
315
|
+
readonly destinations: OutputDestination[];
|
|
316
|
+
/**
|
|
317
|
+
* The length of each media segment. HLS supports whole-second segments only.
|
|
318
|
+
* @default - Segment.seconds(2)
|
|
319
|
+
*/
|
|
320
|
+
readonly segment?: Segment;
|
|
321
|
+
/**
|
|
322
|
+
* The number of segments to retain in the destination directory (LIVE mode only).
|
|
323
|
+
* @default 21
|
|
324
|
+
*/
|
|
325
|
+
readonly keepSegments?: number;
|
|
326
|
+
/**
|
|
327
|
+
* The maximum number of segments in the media manifest (LIVE mode only).
|
|
328
|
+
* @default 10
|
|
329
|
+
*/
|
|
330
|
+
readonly indexNSegments?: number;
|
|
331
|
+
/**
|
|
332
|
+
* The output mode — LIVE or VOD.
|
|
333
|
+
* @default HlsMode.LIVE
|
|
334
|
+
*/
|
|
335
|
+
readonly mode?: HlsMode;
|
|
336
|
+
/**
|
|
337
|
+
* The minimum segment length. HLS supports whole-second segments only.
|
|
338
|
+
* @default - service default
|
|
339
|
+
*/
|
|
340
|
+
readonly minSegment?: Segment;
|
|
341
|
+
/**
|
|
342
|
+
* Action to take when the input is lost.
|
|
343
|
+
* @default HlsInputLossAction.EMIT_OUTPUT
|
|
344
|
+
*/
|
|
345
|
+
readonly inputLossAction?: HlsInputLossAction;
|
|
346
|
+
/**
|
|
347
|
+
* Chooses one or more ad marker types to pass SCTE35 signals through to this group of Apple HLS outputs.
|
|
348
|
+
* @default - no ad markers
|
|
349
|
+
*/
|
|
350
|
+
readonly adMarkers?: HlsAdMarkers[];
|
|
351
|
+
/**
|
|
352
|
+
* A partial URI prefix that will be prepended to each output in the media .m3u8 file.
|
|
353
|
+
* @default - no base URL content prefix
|
|
354
|
+
*/
|
|
355
|
+
readonly baseUrlContent?: string;
|
|
356
|
+
/**
|
|
357
|
+
* Optional base URL content for pipeline 1 if different from pipeline 0.
|
|
358
|
+
* @default - no base URL content 1
|
|
359
|
+
*/
|
|
360
|
+
readonly baseUrlContent1?: string;
|
|
361
|
+
/**
|
|
362
|
+
* A partial URI prefix that will be prepended to each output in the media .m3u8 file for the manifest.
|
|
363
|
+
* @default - no base URL manifest prefix
|
|
364
|
+
*/
|
|
365
|
+
readonly baseUrlManifest?: string;
|
|
366
|
+
/**
|
|
367
|
+
* Optional base URL manifest for pipeline 1 if different from pipeline 0.
|
|
368
|
+
* @default - no base URL manifest 1
|
|
369
|
+
*/
|
|
370
|
+
readonly baseUrlManifest1?: string;
|
|
371
|
+
/**
|
|
372
|
+
* A mapping of up to 4 captions channels to captions languages.
|
|
373
|
+
* Meaningful only if captionLanguageSetting is set to INSERT.
|
|
374
|
+
* @default - no caption language mappings
|
|
375
|
+
*/
|
|
376
|
+
readonly captionLanguageMappings?: CaptionLanguageMapping[];
|
|
377
|
+
/**
|
|
378
|
+
* Applies only to 608 embedded output captions.
|
|
379
|
+
* @default - service default
|
|
380
|
+
*/
|
|
381
|
+
readonly captionLanguageSetting?: HlsCaptionLanguageSetting;
|
|
382
|
+
/**
|
|
383
|
+
* When set to DISABLED, sets the #EXT-X-ALLOW-CACHE:no tag in the manifest.
|
|
384
|
+
* @default HlsClientCache.ENABLED
|
|
385
|
+
*/
|
|
386
|
+
readonly clientCache?: HlsClientCache;
|
|
387
|
+
/**
|
|
388
|
+
* The specification to use (RFC-6381 or the default RFC-4281) during m3u8 playlist generation.
|
|
389
|
+
* @default HlsCodecSpecification.RFC_4281
|
|
390
|
+
*/
|
|
391
|
+
readonly codecSpecification?: HlsCodecSpecification;
|
|
392
|
+
/**
|
|
393
|
+
* A 128-bit, 16-byte hex value represented by a 32-character text string used as the IV for encryption.
|
|
394
|
+
* Used with encryptionType when ivSource is set to EXPLICIT.
|
|
395
|
+
* @default - no constant IV
|
|
396
|
+
*/
|
|
397
|
+
readonly constantIv?: string;
|
|
398
|
+
/**
|
|
399
|
+
* Places segments in subdirectories.
|
|
400
|
+
* @default HlsDirectoryStructure.SINGLE_DIRECTORY
|
|
401
|
+
*/
|
|
402
|
+
readonly directoryStructure?: HlsDirectoryStructure;
|
|
403
|
+
/**
|
|
404
|
+
* Specifies whether to insert EXT-X-DISCONTINUITY tags in the HLS child manifests.
|
|
405
|
+
* @default HlsDiscontinuityTags.INSERT
|
|
406
|
+
*/
|
|
407
|
+
readonly discontinuityTags?: HlsDiscontinuityTags;
|
|
408
|
+
/**
|
|
409
|
+
* Encrypts the segments with the specified encryption scheme.
|
|
410
|
+
* @default - no encryption
|
|
411
|
+
*/
|
|
412
|
+
readonly encryptionType?: HlsEncryptionType;
|
|
413
|
+
/**
|
|
414
|
+
* Settings to configure the CDN for the HLS output.
|
|
415
|
+
* @default - service default
|
|
416
|
+
*/
|
|
417
|
+
readonly hlsCdnSettings?: HlsCdnSettings;
|
|
418
|
+
/**
|
|
419
|
+
* State of HLS ID3 Segment Tagging.
|
|
420
|
+
* @default HlsId3SegmentTaggingState.DISABLED
|
|
421
|
+
*/
|
|
422
|
+
readonly hlsId3SegmentTagging?: HlsId3SegmentTaggingState;
|
|
423
|
+
/**
|
|
424
|
+
* Whether to create an I-frame-only manifest.
|
|
425
|
+
* @default HlsIFrameOnlyPlaylists.DISABLED
|
|
426
|
+
*/
|
|
427
|
+
readonly iFrameOnlyPlaylists?: HlsIFrameOnlyPlaylists;
|
|
428
|
+
/**
|
|
429
|
+
* Specifies whether to include the final (incomplete) segment in the media output.
|
|
430
|
+
* @default HlsIncompleteSegmentBehavior.AUTO
|
|
431
|
+
*/
|
|
432
|
+
readonly incompleteSegmentBehavior?: HlsIncompleteSegmentBehavior;
|
|
433
|
+
/**
|
|
434
|
+
* Whether the IV is listed in the manifest.
|
|
435
|
+
* @default - service default
|
|
436
|
+
*/
|
|
437
|
+
readonly ivInManifest?: HlsIvInManifest;
|
|
438
|
+
/**
|
|
439
|
+
* Whether the IV follows the segment number or is explicit.
|
|
440
|
+
* @default - service default
|
|
441
|
+
*/
|
|
442
|
+
readonly ivSource?: HlsIvSource;
|
|
443
|
+
/**
|
|
444
|
+
* Specifies how the key is represented in the resource identified by the URI.
|
|
445
|
+
* @default - service default
|
|
446
|
+
*/
|
|
447
|
+
readonly keyFormat?: string;
|
|
448
|
+
/**
|
|
449
|
+
* Either a single positive integer version value or a slash-delimited list of version values (1/2/3).
|
|
450
|
+
* @default - service default
|
|
451
|
+
*/
|
|
452
|
+
readonly keyFormatVersions?: string;
|
|
453
|
+
/**
|
|
454
|
+
* The key provider settings for HLS encryption.
|
|
455
|
+
* @default - no key provider settings
|
|
456
|
+
*/
|
|
457
|
+
readonly keyProviderSettings?: HlsKeyProviderSettings;
|
|
458
|
+
/**
|
|
459
|
+
* When set to GZIP, compresses HLS playlist.
|
|
460
|
+
* @default HlsManifestCompression.NONE
|
|
461
|
+
*/
|
|
462
|
+
readonly manifestCompression?: HlsManifestCompression;
|
|
463
|
+
/**
|
|
464
|
+
* Indicates whether the output manifest should use floating point or integer values for segment duration.
|
|
465
|
+
* @default HlsManifestDurationFormat.FLOATING_POINT
|
|
466
|
+
*/
|
|
467
|
+
readonly manifestDurationFormat?: HlsManifestDurationFormat;
|
|
468
|
+
/**
|
|
469
|
+
* Controls which manifests and segments are generated.
|
|
470
|
+
* @default HlsOutputSelection.MANIFESTS_AND_SEGMENTS
|
|
471
|
+
*/
|
|
472
|
+
readonly outputSelection?: HlsOutputSelection;
|
|
473
|
+
/**
|
|
474
|
+
* Includes or excludes the EXT-X-PROGRAM-DATE-TIME tag in .m3u8 manifest files.
|
|
475
|
+
* @default HlsProgramDateTime.INCLUDE
|
|
476
|
+
*/
|
|
477
|
+
readonly programDateTime?: HlsProgramDateTime;
|
|
478
|
+
/**
|
|
479
|
+
* Specifies the algorithm used to drive the HLS EXT-X-PROGRAM-DATE-TIME clock.
|
|
480
|
+
*
|
|
481
|
+
* @default - HlsProgramDateTimeClock.SYSTEM_CLOCK, or INITIALIZE_FROM_OUTPUT_TIMECODE with epoch locking
|
|
482
|
+
*/
|
|
483
|
+
readonly programDateTimeClock?: HlsProgramDateTimeClock;
|
|
484
|
+
/**
|
|
485
|
+
* The period of insertion of the EXT-X-PROGRAM-DATE-TIME entry.
|
|
486
|
+
* @default Duration.minutes(10)
|
|
487
|
+
*/
|
|
488
|
+
readonly programDateTimePeriod?: Duration;
|
|
489
|
+
/**
|
|
490
|
+
* Whether the master manifest includes information about both pipelines.
|
|
491
|
+
* @default HlsRedundantManifest.DISABLED
|
|
492
|
+
*/
|
|
493
|
+
readonly redundantManifest?: HlsRedundantManifest;
|
|
494
|
+
/**
|
|
495
|
+
* The segmentation mode.
|
|
496
|
+
* @default HlsSegmentationMode.USE_SEGMENT_DURATION
|
|
497
|
+
*/
|
|
498
|
+
readonly segmentationMode?: HlsSegmentationMode;
|
|
499
|
+
/**
|
|
500
|
+
* The number of segments to write to a subdirectory before starting a new one.
|
|
501
|
+
* @default 10000
|
|
502
|
+
*/
|
|
503
|
+
readonly segmentsPerSubdirectory?: number;
|
|
504
|
+
/**
|
|
505
|
+
* Whether to include or exclude the RESOLUTION attribute for a video in the EXT-X-STREAM-INF tag.
|
|
506
|
+
* @default HlsStreamInfResolution.INCLUDE
|
|
507
|
+
*/
|
|
508
|
+
readonly streamInfResolution?: HlsStreamInfResolution;
|
|
509
|
+
/**
|
|
510
|
+
* Indicates the ID3 frame that has the timecode.
|
|
511
|
+
* @default HlsTimedMetadataId3Frame.PRIV
|
|
512
|
+
*/
|
|
513
|
+
readonly timedMetadataId3Frame?: HlsTimedMetadataId3Frame;
|
|
514
|
+
/**
|
|
515
|
+
* The timed metadata interval.
|
|
516
|
+
* @default Duration.seconds(10)
|
|
517
|
+
*/
|
|
518
|
+
readonly timedMetadataId3Period?: Duration;
|
|
519
|
+
/**
|
|
520
|
+
* Provides an extra delta offset to fine tune the timestamps.
|
|
521
|
+
* @default - service default
|
|
522
|
+
*/
|
|
523
|
+
readonly timestampDelta?: Duration;
|
|
524
|
+
/**
|
|
525
|
+
* Whether to emit segmented files or a single file.
|
|
526
|
+
* @default HlsTsFileMode.SEGMENTED_FILES
|
|
527
|
+
*/
|
|
528
|
+
readonly tsFileMode?: HlsTsFileMode;
|
|
529
|
+
/**
|
|
530
|
+
* The outputs for this HLS output group.
|
|
531
|
+
* @default - no initial outputs
|
|
532
|
+
*/
|
|
533
|
+
readonly outputs?: HlsOutputDefinition[];
|
|
534
|
+
}
|
|
535
|
+
/**
|
|
536
|
+
* Properties for a UDP output group.
|
|
537
|
+
*/
|
|
538
|
+
export interface UdpOutputGroupProps {
|
|
539
|
+
/**
|
|
540
|
+
* The name of this output group. Used as the destination reference ID. Underscores are normalised to hyphens internally.
|
|
541
|
+
*/
|
|
542
|
+
readonly name: string;
|
|
543
|
+
/**
|
|
544
|
+
* The destinations for this output group — one per pipeline.
|
|
545
|
+
*
|
|
546
|
+
* Array position determines the pipeline mapping:
|
|
547
|
+
* - `destinations[0]` → Pipeline 0
|
|
548
|
+
* - `destinations[1]` → Pipeline 1 (STANDARD channels only)
|
|
549
|
+
*
|
|
550
|
+
* For a SINGLE_PIPELINE channel, provide exactly 1 destination.
|
|
551
|
+
* For a STANDARD channel, provide exactly 2 destinations.
|
|
552
|
+
*/
|
|
553
|
+
readonly destinations: UdpOutputDestination[];
|
|
554
|
+
/**
|
|
555
|
+
* The output buffering. Applied at millisecond granularity.
|
|
556
|
+
* @default - service default
|
|
557
|
+
*/
|
|
558
|
+
readonly buffer?: Duration;
|
|
559
|
+
/**
|
|
560
|
+
* Action to take when the input is lost.
|
|
561
|
+
* @default UdpInputLossAction.EMIT_PROGRAM
|
|
562
|
+
*/
|
|
563
|
+
readonly inputLossAction?: UdpInputLossAction;
|
|
564
|
+
/**
|
|
565
|
+
* Indicates the ID3 frame that has the timecode.
|
|
566
|
+
* @default UdpTimedMetadataId3Frame.PRIV
|
|
567
|
+
*/
|
|
568
|
+
readonly timedMetadataId3Frame?: UdpTimedMetadataId3Frame;
|
|
569
|
+
/**
|
|
570
|
+
* The timed metadata interval.
|
|
571
|
+
* @default - Duration.seconds(10)
|
|
572
|
+
*/
|
|
573
|
+
readonly timedMetadataId3Period?: Duration;
|
|
574
|
+
/**
|
|
575
|
+
* The outputs for this UDP output group.
|
|
576
|
+
* @default - no initial outputs
|
|
577
|
+
*/
|
|
578
|
+
readonly outputs?: UdpOutputDefinition[];
|
|
579
|
+
}
|
|
580
|
+
/** Properties for an Archive (S3) output group. */
|
|
581
|
+
export interface ArchiveOutputGroupProps {
|
|
582
|
+
/**
|
|
583
|
+
* The name of this output group. Used as the destination reference ID. Underscores are normalised to hyphens internally.
|
|
584
|
+
*/
|
|
585
|
+
readonly name: string;
|
|
586
|
+
/**
|
|
587
|
+
* The destinations for this output group — one per pipeline.
|
|
588
|
+
*
|
|
589
|
+
* Array position determines the pipeline mapping:
|
|
590
|
+
* - `destinations[0]` → Pipeline 0
|
|
591
|
+
* - `destinations[1]` → Pipeline 1 (STANDARD channels only)
|
|
592
|
+
*
|
|
593
|
+
* For a SINGLE_PIPELINE channel, provide exactly 1 destination.
|
|
594
|
+
* For a STANDARD channel, provide exactly 2 destinations.
|
|
595
|
+
*/
|
|
596
|
+
readonly destinations: S3OutputDestination[];
|
|
597
|
+
/**
|
|
598
|
+
* The duration of each archive file (rollover interval).
|
|
599
|
+
* @default Duration.seconds(300)
|
|
600
|
+
*/
|
|
601
|
+
readonly rolloverInterval?: Duration;
|
|
602
|
+
/**
|
|
603
|
+
* The S3 canned ACL to apply to each archive output.
|
|
604
|
+
* @default - no canned ACL
|
|
605
|
+
*/
|
|
606
|
+
readonly archiveS3CannedAcl?: S3CannedAcl;
|
|
607
|
+
/**
|
|
608
|
+
* The outputs for this Archive output group.
|
|
609
|
+
* @default - no initial outputs
|
|
610
|
+
*/
|
|
611
|
+
readonly outputs?: ArchiveOutputDefinition[];
|
|
612
|
+
}
|
|
613
|
+
/** Properties for an RTMP output group. */
|
|
614
|
+
export interface RtmpOutputGroupProps {
|
|
615
|
+
/**
|
|
616
|
+
* The name of this output group.
|
|
617
|
+
*/
|
|
618
|
+
readonly name: string;
|
|
619
|
+
/**
|
|
620
|
+
* The authentication scheme for the RTMP connection.
|
|
621
|
+
* @default RtmpAuthenticationScheme.COMMON
|
|
622
|
+
*/
|
|
623
|
+
readonly authenticationScheme?: RtmpAuthenticationScheme;
|
|
624
|
+
/**
|
|
625
|
+
* The delay before restarting after a streaming output failure. A value of
|
|
626
|
+
* `Duration.seconds(0)` means never restart.
|
|
627
|
+
* @default Duration.seconds(1)
|
|
628
|
+
*/
|
|
629
|
+
readonly restartDelay?: Duration;
|
|
630
|
+
/**
|
|
631
|
+
* Choose the ad marker type for this output group.
|
|
632
|
+
* @default - no ad markers
|
|
633
|
+
*/
|
|
634
|
+
readonly adMarkers?: RtmpAdMarkers[];
|
|
635
|
+
/**
|
|
636
|
+
* Controls behavior when the content cache fills up.
|
|
637
|
+
* @default - service default
|
|
638
|
+
*/
|
|
639
|
+
readonly cacheFullBehavior?: RtmpCacheFullBehavior;
|
|
640
|
+
/**
|
|
641
|
+
* The cache length, in seconds, that is used to calculate buffer size.
|
|
642
|
+
* @default - service default
|
|
643
|
+
*/
|
|
644
|
+
readonly cacheLength?: Duration;
|
|
645
|
+
/**
|
|
646
|
+
* Controls the types of data that pass to onCaptionInfo outputs.
|
|
647
|
+
* @default - service default
|
|
648
|
+
*/
|
|
649
|
+
readonly captionData?: RtmpCaptionData;
|
|
650
|
+
/**
|
|
651
|
+
* Controls whether filler NAL units are included in the output.
|
|
652
|
+
* @default - service default
|
|
653
|
+
*/
|
|
654
|
+
readonly includeFillerNalUnits?: RtmpIncludeFillerNalUnits;
|
|
655
|
+
/**
|
|
656
|
+
* Controls the behavior of this RTMP group if the input becomes unavailable.
|
|
657
|
+
* @default - service default
|
|
658
|
+
*/
|
|
659
|
+
readonly inputLossAction?: RtmpInputLossAction;
|
|
660
|
+
/**
|
|
661
|
+
* The outputs for this RTMP output group. Each output includes its own RTMP destination.
|
|
662
|
+
*/
|
|
663
|
+
readonly outputs: RtmpOutputDefinition[];
|
|
664
|
+
}
|
|
665
|
+
/** Properties for an SRT output group. */
|
|
666
|
+
export interface SrtOutputGroupProps {
|
|
667
|
+
/**
|
|
668
|
+
* The name of this output group.
|
|
669
|
+
*/
|
|
670
|
+
readonly name: string;
|
|
671
|
+
/**
|
|
672
|
+
* Controls the behavior of this SRT group if the input becomes unavailable.
|
|
673
|
+
* @default SrtInputLossAction.EMIT_PROGRAM
|
|
674
|
+
*/
|
|
675
|
+
readonly inputLossAction?: SrtInputLossAction;
|
|
676
|
+
/**
|
|
677
|
+
* The outputs for this SRT output group. Each output includes its own SRT destination.
|
|
678
|
+
*/
|
|
679
|
+
readonly outputs: SrtOutputDefinition[];
|
|
680
|
+
}
|
|
681
|
+
/** Properties for a CMAF Ingest output group. */
|
|
682
|
+
export interface CmafIngestOutputGroupProps {
|
|
683
|
+
/**
|
|
684
|
+
* The name of this output group. Used as the destination reference ID. Underscores are normalised to hyphens internally.
|
|
685
|
+
*/
|
|
686
|
+
readonly name: string;
|
|
687
|
+
/**
|
|
688
|
+
* The primary CMAF ingest destinations — one per pipeline.
|
|
689
|
+
*
|
|
690
|
+
* Array position determines the pipeline mapping:
|
|
691
|
+
* - `destinations[0]` → Pipeline 0
|
|
692
|
+
* - `destinations[1]` → Pipeline 1 (STANDARD channels only)
|
|
693
|
+
*
|
|
694
|
+
* For a SINGLE_PIPELINE channel, provide exactly 1 destination.
|
|
695
|
+
* For a STANDARD channel, provide exactly 2 destinations to utilise both
|
|
696
|
+
* pipelines for redundancy.
|
|
697
|
+
*/
|
|
698
|
+
readonly destinations: OutputDestination[];
|
|
699
|
+
/**
|
|
700
|
+
* Configure additional destinations to fan out the CMAF ingest output to extra
|
|
701
|
+
* endpoints, for example for cross-region delivery or backup packaging.
|
|
702
|
+
*
|
|
703
|
+
* Standard channels support up to 2 additional destinations.
|
|
704
|
+
* Single pipeline channels support 1 additional destination.
|
|
705
|
+
*
|
|
706
|
+
* @default - no additional destinations
|
|
707
|
+
*/
|
|
708
|
+
readonly additionalDestinations?: OutputDestination[];
|
|
709
|
+
/**
|
|
710
|
+
* The length of each media segment.
|
|
711
|
+
* @default - Segment.seconds(1)
|
|
712
|
+
*/
|
|
713
|
+
readonly segment?: Segment;
|
|
714
|
+
/**
|
|
715
|
+
* The ID3 behavior for the CMAF ingest output.
|
|
716
|
+
* @default Id3Behavior.DISABLED
|
|
717
|
+
*/
|
|
718
|
+
readonly id3Behavior?: Id3Behavior;
|
|
719
|
+
/**
|
|
720
|
+
* The name modifier for ID3 metadata.
|
|
721
|
+
* @default - service default
|
|
722
|
+
*/
|
|
723
|
+
readonly id3NameModifier?: string;
|
|
724
|
+
/**
|
|
725
|
+
* The KLV behavior for the CMAF ingest output.
|
|
726
|
+
* @default KlvBehavior.NO_PASSTHROUGH
|
|
727
|
+
*/
|
|
728
|
+
readonly klvBehavior?: KlvBehavior;
|
|
729
|
+
/**
|
|
730
|
+
* The name modifier for KLV metadata.
|
|
731
|
+
* @default - service default
|
|
732
|
+
*/
|
|
733
|
+
readonly klvNameModifier?: string;
|
|
734
|
+
/**
|
|
735
|
+
* The Nielsen ID3 behavior for the CMAF ingest output.
|
|
736
|
+
* @default NielsenId3Behavior.NO_PASSTHROUGH
|
|
737
|
+
*/
|
|
738
|
+
readonly nielsenId3Behavior?: NielsenId3Behavior;
|
|
739
|
+
/**
|
|
740
|
+
* The name modifier for Nielsen ID3 metadata.
|
|
741
|
+
* @default - service default
|
|
742
|
+
*/
|
|
743
|
+
readonly nielsenId3NameModifier?: string;
|
|
744
|
+
/**
|
|
745
|
+
* The name modifier for SCTE-35 messages.
|
|
746
|
+
* @default - service default
|
|
747
|
+
*/
|
|
748
|
+
readonly scte35NameModifier?: string;
|
|
749
|
+
/**
|
|
750
|
+
* The SCTE-35 type for the CMAF ingest output.
|
|
751
|
+
* @default Scte35Type.SCTE_35_WITHOUT_SEGMENTATION
|
|
752
|
+
*/
|
|
753
|
+
readonly scte35Type?: Scte35Type;
|
|
754
|
+
/**
|
|
755
|
+
* The number of milliseconds to delay the output from the second pipeline.
|
|
756
|
+
* @default - service default
|
|
757
|
+
*/
|
|
758
|
+
readonly sendDelayMs?: number;
|
|
759
|
+
/**
|
|
760
|
+
* Indicates the ID3 frame that has the timecode.
|
|
761
|
+
* @default TimedMetadataId3Frame.NONE
|
|
762
|
+
*/
|
|
763
|
+
readonly timedMetadataId3Frame?: TimedMetadataId3Frame;
|
|
764
|
+
/**
|
|
765
|
+
* The timed metadata interval.
|
|
766
|
+
* @default - Duration.seconds(10)
|
|
767
|
+
*/
|
|
768
|
+
readonly timedMetadataId3Period?: Duration;
|
|
769
|
+
/**
|
|
770
|
+
* Whether timed metadata is passed through.
|
|
771
|
+
* @default TimedMetadataPassthrough.DISABLED
|
|
772
|
+
*/
|
|
773
|
+
readonly timedMetadataPassthrough?: TimedMetadataPassthrough;
|
|
774
|
+
/**
|
|
775
|
+
* Maps captions channels to languages for this CMAF Ingest output group.
|
|
776
|
+
* @default - no caption language mappings
|
|
777
|
+
*/
|
|
778
|
+
readonly captionLanguageMappings?: CmafCaptionLanguageMapping[];
|
|
779
|
+
/**
|
|
780
|
+
* The outputs for this CMAF Ingest output group. Each output should contain a single encode.
|
|
781
|
+
*/
|
|
782
|
+
readonly outputs: CmafIngestOutputDefinition[];
|
|
783
|
+
}
|
|
784
|
+
/** Properties for a Frame Capture output group. */
|
|
785
|
+
export interface FrameCaptureOutputGroupProps {
|
|
786
|
+
/**
|
|
787
|
+
* The name of this output group. Used as the destination reference ID. Underscores are normalised to hyphens internally.
|
|
788
|
+
*/
|
|
789
|
+
readonly name: string;
|
|
790
|
+
/**
|
|
791
|
+
* The destinations for this output group — one per pipeline.
|
|
792
|
+
*
|
|
793
|
+
* Array position determines the pipeline mapping:
|
|
794
|
+
* - `destinations[0]` → Pipeline 0
|
|
795
|
+
* - `destinations[1]` → Pipeline 1 (STANDARD channels only)
|
|
796
|
+
*
|
|
797
|
+
* For a SINGLE_PIPELINE channel, provide exactly 1 destination.
|
|
798
|
+
* For a STANDARD channel, provide exactly 2 destinations.
|
|
799
|
+
*/
|
|
800
|
+
readonly destinations: S3OutputDestination[];
|
|
801
|
+
/**
|
|
802
|
+
* The S3 canned ACL to apply to each frame capture output.
|
|
803
|
+
* @default - no canned ACL
|
|
804
|
+
*/
|
|
805
|
+
readonly frameCaptureS3CannedAcl?: S3CannedAcl;
|
|
806
|
+
/**
|
|
807
|
+
* The outputs for this Frame Capture output group.
|
|
808
|
+
* @default - no initial outputs
|
|
809
|
+
*/
|
|
810
|
+
readonly outputs?: FrameCaptureOutputDefinition[];
|
|
811
|
+
}
|
|
812
|
+
/** Properties for an MS Smooth output group. */
|
|
813
|
+
export interface MsSmoothOutputGroupProps {
|
|
814
|
+
/**
|
|
815
|
+
* The name of this output group. Used as the destination reference ID. Underscores are normalised to hyphens internally.
|
|
816
|
+
*/
|
|
817
|
+
readonly name: string;
|
|
818
|
+
/**
|
|
819
|
+
* The destinations for this output group — one per pipeline.
|
|
820
|
+
*
|
|
821
|
+
* Array position determines the pipeline mapping:
|
|
822
|
+
* - `destinations[0]` → Pipeline 0
|
|
823
|
+
* - `destinations[1]` → Pipeline 1 (STANDARD channels only)
|
|
824
|
+
*
|
|
825
|
+
* For a SINGLE_PIPELINE channel, provide exactly 1 destination.
|
|
826
|
+
* For a STANDARD channel, provide exactly 2 destinations.
|
|
827
|
+
*/
|
|
828
|
+
readonly destinations: OutputDestination[];
|
|
829
|
+
/**
|
|
830
|
+
* The value of the Acquisition Point Identity element used in each message placed in the sparse track.
|
|
831
|
+
* @default - service default
|
|
832
|
+
*/
|
|
833
|
+
readonly acquisitionPointId?: string;
|
|
834
|
+
/**
|
|
835
|
+
* If set to passthrough for an audio-only output, the fragment absolute time is set to the current timecode.
|
|
836
|
+
* @default - service default
|
|
837
|
+
*/
|
|
838
|
+
readonly audioOnlyTimecodeControl?: MsSmoothAudioOnlyTimecodeControl;
|
|
839
|
+
/**
|
|
840
|
+
* If set to VERIFY_AUTHENTICITY, verifies the HTTPS certificate chain to a trusted CA.
|
|
841
|
+
* @default - service default
|
|
842
|
+
*/
|
|
843
|
+
readonly certificateMode?: MsSmoothCertificateMode;
|
|
844
|
+
/**
|
|
845
|
+
* The number of seconds to wait before retrying the connection to the IIS server if the connection is lost.
|
|
846
|
+
* @default - service default
|
|
847
|
+
*/
|
|
848
|
+
readonly connectionRetryInterval?: Duration;
|
|
849
|
+
/**
|
|
850
|
+
* The Microsoft Smooth channel ID that is sent to the IIS server.
|
|
851
|
+
* @default - service default
|
|
852
|
+
*/
|
|
853
|
+
readonly eventId?: string;
|
|
854
|
+
/**
|
|
855
|
+
* Specifies whether to send a channel ID to the IIS server.
|
|
856
|
+
* @default - service default
|
|
857
|
+
*/
|
|
858
|
+
readonly eventIdMode?: MsSmoothEventIdMode;
|
|
859
|
+
/**
|
|
860
|
+
* When set to SEND_EOS, sends an EOS signal to an IIS server when stopping the channel.
|
|
861
|
+
* @default - service default
|
|
862
|
+
*/
|
|
863
|
+
readonly eventStopBehavior?: MsSmoothEventStopBehavior;
|
|
864
|
+
/**
|
|
865
|
+
* The size, in seconds, of the file cache for streaming outputs.
|
|
866
|
+
* @default - service default
|
|
867
|
+
*/
|
|
868
|
+
readonly filecacheDuration?: Duration;
|
|
869
|
+
/**
|
|
870
|
+
* The length, in seconds, of mp4 fragments to generate.
|
|
871
|
+
* @default - service default
|
|
872
|
+
*/
|
|
873
|
+
readonly fragmentLength?: Duration;
|
|
874
|
+
/**
|
|
875
|
+
* A parameter that controls output group behavior on an input loss.
|
|
876
|
+
* @default - service default
|
|
877
|
+
*/
|
|
878
|
+
readonly inputLossAction?: MsSmoothInputLossAction;
|
|
879
|
+
/**
|
|
880
|
+
* The number of retry attempts.
|
|
881
|
+
* @default 10
|
|
882
|
+
*/
|
|
883
|
+
readonly numRetries?: number;
|
|
884
|
+
/**
|
|
885
|
+
* The number of seconds before initiating a restart due to output failure.
|
|
886
|
+
* @default - Duration.seconds(1)
|
|
887
|
+
*/
|
|
888
|
+
readonly restartDelay?: Duration;
|
|
889
|
+
/**
|
|
890
|
+
* The segmentation mode.
|
|
891
|
+
* @default - service default
|
|
892
|
+
*/
|
|
893
|
+
readonly segmentationMode?: MsSmoothSegmentationMode;
|
|
894
|
+
/**
|
|
895
|
+
* The number of milliseconds to delay the output from the second pipeline.
|
|
896
|
+
* @default - service default
|
|
897
|
+
*/
|
|
898
|
+
readonly sendDelayMs?: number;
|
|
899
|
+
/**
|
|
900
|
+
* If set to SCTE_35, uses incoming SCTE-35 messages to generate a sparse track.
|
|
901
|
+
* @default - service default
|
|
902
|
+
*/
|
|
903
|
+
readonly sparseTrackType?: MsSmoothSparseTrackType;
|
|
904
|
+
/**
|
|
905
|
+
* When set to SEND, sends a stream manifest so that the publishing point doesn't start until all streams start.
|
|
906
|
+
* @default - service default
|
|
907
|
+
*/
|
|
908
|
+
readonly streamManifestBehavior?: MsSmoothStreamManifestBehavior;
|
|
909
|
+
/**
|
|
910
|
+
* The timestamp offset for the channel. Used only if timestampOffsetMode is set to USE_CONFIGURED_OFFSET.
|
|
911
|
+
* @default - service default
|
|
912
|
+
*/
|
|
913
|
+
readonly timestampOffset?: string;
|
|
914
|
+
/**
|
|
915
|
+
* The type of timestamp date offset to use.
|
|
916
|
+
* @default - service default
|
|
917
|
+
*/
|
|
918
|
+
readonly timestampOffsetMode?: MsSmoothTimestampOffsetMode;
|
|
919
|
+
/**
|
|
920
|
+
* The outputs for this MS Smooth output group.
|
|
921
|
+
* @default - no initial outputs
|
|
922
|
+
*/
|
|
923
|
+
readonly outputs?: MsSmoothOutputDefinition[];
|
|
924
|
+
}
|