Step Functions로 AWS Elemental MediaConvert 작업 생성 - AWS Step Functions

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Step Functions로 AWS Elemental MediaConvert 작업 생성

Step Functions를 사용하여 CreateJob를 사용하여 AWS Elemental MediaConvert 작업을 생성하는 방법을 알아봅니다API.

Step Functions 및 실험 MediaConvert

비디오 클립의 시작부터 길이가 알려지지 않은 SMTPE 색상 막대를 감지하고 제거하는 워크플로에서 MediaConvert 최적화된 통합을 사용하는 방법을 알아봅니다. 2024년 4월 12일부터 블로그 게시물 읽기:를 사용한 로우 코드 워크플로 AWS Elemental MediaConvert

Step Functions의 AWS 서비스와 통합하는 방법에 대한 자세한 내용은 서비스 통합 및 단원을 참조하십시오Step FunctionsAPI의 서비스에 파라미터 전달.

최적화된 MediaConvert 통합의 주요 기능

다음은 MediaConvert 작업을 제출하고 완료되기를 기다리는 Task 상태를 포함합니다.

{ "StartAt": "MediaConvert_CreateJob", "States": { "MediaConvert_CreateJob": { "Type": "Task", "Resource": "arn:aws:states:::mediaconvert:createJob.sync", "Parameters": { "Role": "arn:aws:iam::111122223333:role/Admin", "Settings": { "OutputGroups": [ { "Outputs": [ { "ContainerSettings": { "Container": "MP4" }, "VideoDescription": { "CodecSettings": { "Codec": "H_264", "H264Settings": { "MaxBitrate": 1000, "RateControlMode": "QVBR", "SceneChangeDetect": "TRANSITION_DETECTION" } } }, "AudioDescriptions": [ { "CodecSettings": { "Codec": "AAC", "AacSettings": { "Bitrate": 96000, "CodingMode": "CODING_MODE_2_0", "SampleRate": 48000 } } } ] } ], "OutputGroupSettings": { "Type": "FILE_GROUP_SETTINGS", "FileGroupSettings": { "Destination": "s3://amzn-s3-demo-destination-bucket/" } } } ], "Inputs": [ { "AudioSelectors": { "Audio Selector 1": { "DefaultSelection": "DEFAULT" } }, "FileInput": "s3://amzn-s3-demo-bucket/DOC-EXAMPLE-SOURCE_FILE" } ] } }, "End": true } } }
의 파라미터 Step Functions 는 로 표현됩니다. PascalCase

네이티브 서비스가 API 작업 camelCase과 같이 API에 있더라도 PascalCase와 같은 파라미터를에 startSyncExecution지정합니다StateMachineArn.

지원됨 MediaConvert APIs

IAM 호출 정책 AWS Elemental MediaConvert

다음 예제 템플릿은 AWS Step Functions 가 상태 시스템 정의의 리소스를 기반으로 IAM 정책을 설정하는 방법을 보여줍니다. IAM 콘솔을 사용하여 누락된 역할 정책을 추가할 수 있습니다. 자세한 내용은 Step Functions가 통합 서비스용 IAM 정책을 생성하는 방법Step Functions에서 서비스 통합 패턴 검색 단원을 참조하세요.

MediaConvert 는 리소스 수준 액세스 제어를 부분적으로 지원하므로를 사용해야 합니다"Resource": "*".

Run a Job (.sync)
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iam:PassRole", "Resource": "*" }, { "Effect": "Allow", "Action": [ "mediaconvert:CreateJob", "mediaconvert:GetJob", "mediaconvert:CancelJob" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "events:PutTargets", "events:PutRule", "events:DescribeRule" ], "Resource": [ "arn:aws:events:[[region]]:[[accountId]]:rule/StepFunctionsGetEventsForMediaConvertJobRule" ] } ] }
Request Response
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iam:PassRole", "Resource": "*" }, { "Effect": "Allow", "Action": [ "mediaconvert:CreateJob" ], "Resource": "*" } ] }