Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RFC635: L2 Constructs for MediaConvert #639

Draft
wants to merge 3 commits into
base: main
Choose a base branch
from

Conversation

PavanRangudu
Copy link

This is a request for comments about MediaConvert L2 Constructs. See #{635} for additional details.

[TODO] APIs are signed off by @{BAR_RAISER}.


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

@PavanRangudu PavanRangudu changed the title [WIP] RFC635: L2 Constructs for MediaConvert RFC635: L2 Constructs for MediaConvert Aug 29, 2024
text/0635-mediaconvert-l2-construct.md Show resolved Hide resolved
are optimized and aligned with recommended standards.

const genericMp4Hev1AvcAacSdrQvbJobTemplate = new JobTemplate(this, 'GenericMp4Hev1AvcAacSdrQvbJobTemplate', {
name: "GenericMp4Hev1AvcAacSdrQvbJobTemplate"

Choose a reason for hiding this comment

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

where are these templated maintained?

Copy link
Author

Choose a reason for hiding this comment

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

My initial idea is to maintain (a copy of these system templates) inside CDK repo. Discussed offline with @moelasmar and pending implementation details.

To create a Custom Job Template using an L2 Construct, you define the ``jobTemplateProps`` object, which includes all the
necessary settings for your media processing tasks. This object is then passed to the ``JobTemplate`` construct to create the custom template.

const jobTemplateProps: JobTemplateProps = {

Choose a reason for hiding this comment

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

how can customers define a template, will they write it in JSON format ?

Copy link
Author

Choose a reason for hiding this comment

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

Yes, they can write it in a JSON format. We also discussed about having some helper methods to produce this props object. I plan to add some more details on it in my next commit.

text/0635-mediaconvert-l2-construct.md Show resolved Hide resolved

const presetProps: PresetProps = {
name: 'CustomPreset',
settings: {

Choose a reason for hiding this comment

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

Will the objects in this settings have types defined?

Same question to the settings in JobTemplateProps.

And in these 2 settings objects, are all fields required?

Copy link
Author

Choose a reason for hiding this comment

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

Yes, my idea is to have strongly-typed fields for all of these interfaces by importing our SDK. Discussed offline with @moelasmar and @samson-keung and pending decision on whether we can use SDK inside CDK.

To your second que: no, not all fields are required. I plan to add respective interfaces (with fields marked as required/optional) in my next commit.

Using System Presets like this allows you to leverage AWS MediaConvert’s best practices without needing to manually configure every encoding parameter, making your media processing workflows more efficient and reliable.



Choose a reason for hiding this comment

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

Please add RFC for L2 Queues

Copy link
Author

Choose a reason for hiding this comment

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

Sure, I will add them in my next commit.

@mergify mergify bot dismissed samson-keung’s stale review September 18, 2024 01:12

Pull request has been modified.

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.

3 participants