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 Functions APIのサービスへのパラメータの受け渡し

最適化 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が にある場合でもstartSyncExecution、 PascalCaseなどのパラメータを で指定します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": "*" } ] }