Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Découvrez comment utiliser Step Functions pour créer une AWS Elemental MediaConvert tâche à l'aide de l'CreateJob
API.
Expérimentez avec Step Functions et MediaConvert
Découvrez comment utiliser l'intégration MediaConvert optimisée dans un flux de travail qui détecte et supprime les barres de couleur SMTPE de longueur inconnue au début d'un clip vidéo. Lisez le billet de blog du 12 avril 2024 : Workflows low code avec AWS Elemental MediaConvert
Pour en savoir plus sur l'intégration aux AWS services dans Step Functions, reportez-vous Intégration des services aux sections etTransmission de paramètres à une API de service dans Step Functions.
Principales fonctionnalités de l' MediaConvert intégration optimisée
Les modèles Réponse à la requête d'intégration Exécuter une tâche (.sync) et sont pris en charge.
Step Functions ajoutera la balise personnalisée suivante aux MediaConvert tâches :
ManagedByService: AWSStepFunctions
Aucune optimisation pour les modèles Attendre un rappel avec un jeton de tâche d'intégration.
Ce qui suit inclut un Task
État qui soumet une MediaConvert tâche et attend qu'elle soit terminée.
{
"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
}
}
}
Paramètres dans Step Functions sont exprimés en PascalCase
Même si l'API de service native se trouve dans CamelCase, par exemple l'startSyncExecution
action d'API, vous spécifiez des paramètres PascalCase dans, tels que :. StateMachineArn
Optimisé MediaConvert APIs
-
-
Paramètres pris en charge :
-
Role
(Obligatoire) -
Settings
(Obligatoire) -
CreateJobRequest
(facultatif)
-
-
Syntaxe de réponse — voir CreateJobResponse schéma
Politiques IAM pour les appels AWS Elemental MediaConvert
Les exemples de modèles suivants montrent comment AWS Step Functions générer des politiques IAM en fonction des ressources contenues dans la définition de votre machine d'état. Pour plus d’informations, consultez Comment Step Functions génère des politiques IAM pour les services intégrés et Découvrez les modèles d'intégration des services dans Step Functions.
La politique GetJob
et les CancelJob
actions IAM sont définies de manière à autoriser uniquement l'accès aux tâches comportant le ManagedByService: AWSStepFunctions
tag.
Politique basée sur les balises
La modification de la ManagedByService: AWSStepFunctions
balise générée automatiquement entraînera l'échec des exécutions par State Machine.
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "MediaConvertCreateJob",
"Effect": "Allow",
"Action": [
"mediaconvert:CreateJob"
],
"Resource": [
"arn:aws:mediaconvert:[[region]]
:[[accountId]]
:queues/*",
"arn:aws:mediaconvert:[[region]]
:[[accountId]]
:jobTemplates/*",
"arn:aws:mediaconvert:[[region]]
:[[accountId]]
:presets/*"
]
},
{
"Sid": "MediaConvertManageJob",
"Effect": "Allow",
"Action": [
"mediaconvert:GetJob",
"mediaconvert:CancelJob"
],
"Resource": "arn:aws:mediaconvert:[[region]]
:[[accountId]]
:jobs/*",
"Condition": {
"StringEquals": {
"aws:ResourceTag/ManagedByService": "AWSStepFunctions"
}
}
},
{
"Sid": "IamPassRole",
"Effect": "Allow",
"Action": [
"iam:PassRole"
],
"Resource": [
"arn:aws:iam::[[accountId]]
:role/[[roleName]]"
],
"Condition": {
"StringEquals": {
"iam:PassedToService": [
"mediaconvert.amazonaws.com"
]
}
}
},
{
"Sid": "EventBridgeManageRule",
"Effect": "Allow",
"Action": [
"events:PutTargets",
"events:PutRule",
"events:DescribeRule"
],
"Resource": [
"arn:aws:events:[[region]]
:[[accountId]]
:rule/StepFunctionsGetEventsForMediaConvertJobRule"
]
}
]
}