Skip to content

904: MediaLive L2 RFC Design#938

Open
jamiepmullan wants to merge 6 commits into
aws:mainfrom
jamiepmullan:feat/medialive-l2-rfc
Open

904: MediaLive L2 RFC Design#938
jamiepmullan wants to merge 6 commits into
aws:mainfrom
jamiepmullan:feat/medialive-l2-rfc

Conversation

@jamiepmullan

Copy link
Copy Markdown
Contributor

This is a request for comments about MediaLive L2 Construct. See #904 for
additional details.

APIs are signed off by TBC.


By submitting this pull request, I confirm that my contribution is made under
the terms of the Apache-2.0 license

@@ -0,0 +1,2084 @@
---

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks like this line is causing the file to fail to render in github markdown preview

could you remove this line ?

The L2 uses a typed `InputConfiguration` factory class to create the correct input type with validated properties, replacing the L1's untyped
string-based `type` field and loosely-typed source/destination arrays.

For further information refer to [our documentation](https://docs.aws.amazon.com/medialive/latest/ug/inputs.html).

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks like this link has changed

is this the correct one - https://docs.aws.amazon.com/medialive/latest/ug/medialive-inputs.html ?


#### AWS Elemental MediaLive Channel

The Channel is the central construct in MediaLive. It takes one or more inputs, encodes the content using configurable video and audio codecs, and

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The CDK Design Guidelines require a removalPolicy prop on stateful resources (defaulting to Retain).

Consider whether Channel (or other constructs) should expose a removalPolicy prop. If these resources are not considered stateful and don't require removalPolicy, could we document that reasoning?

/** @default - EMBEDDED source */
readonly timecodeConfig?: TimecodeConfig;
/** @default - no VPC */
readonly vpc?: VpcOutputSettings;

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

CDK Design Guidelines state that resources using security groups should implement ec2.IConnectable.

If the VPC-placed channel uses security groups (which is likely given ENI creation), consider having IChannel extend ec2.IConnectable when vpc is set. If MediaLive manages security groups entirely internally without user-facing configuration, could we document why IConnectable doesn't apply ?

@alvazjor What are your thoughts on this?

- **SRT/RTMP destination count:** SRT and RTMP outputs take one destination per pipeline (the console's "Destination A"/"Destination B") — exactly 2
for a STANDARD channel, 1 for SINGLE_PIPELINE.

#### 4. Auto-created IAM role and automatic grants

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

CDK Design Guidelines expect resources to have grant methods (via a Grants Facade) so consumers can request permissions.

@alvazjor What are your thoughts on this auto-grant mechanism instead of grant methods ?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants