Avis de fin de support : le 13 novembre 2025, le support d'Amazon Elastic Transcoder AWS sera interrompu. Après le 13 novembre 2025, vous ne pourrez plus accéder à la console Elastic Transcoder ni aux ressources Elastic Transcoder.
Pour plus d'informations sur la transition vers AWS Elemental MediaConvert, consultez ce billet de blog
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.
Créer une tâche
Description
Pour créer une tâche, envoyez une demande POST à la ressource /2012-09-25/jobs
. Les tâches démarrent dès que vous les créez.
Note
Vous pouvez configurer Elastic Transcoder de sorte à être informé lorsque le statut d'une tâche change, notamment lorsque Elastic Transcoder commence et termine le traitement d'une tâche, et quand Elastic Transcoder rencontre un avertissement ou une condition d'erreur. Pour plus d'informations, consultez Créer un pipeline.
Requêtes
Syntaxe
POST /2012-09-25/jobs HTTP/1.1 Content-Type: application/json; charset=UTF-8 Accept: */* Host: elastictranscoder.
Elastic Transcoder endpoint
.amazonaws.com:443 x-amz-date: 20130114T174952Z Authorization: AWS4-HMAC-SHA256 Credential=AccessKeyID
/request-date
/Elastic Transcoder endpoint
/elastictranscoder/aws4_request, SignedHeaders=host;x-amz-date;x-amz-target, Signature=calculated-signature
Content-Length:number of characters in the JSON string
{ "Inputs":[{ "Key":"name of the file to transcode
", "Encryption":{ "Mode":"aes-cbc-pkcs7|aes-ctr|aes-gcm", "Key":"encrypted and base64-encoded decryption key
", "KeyMd5":"base64-encoded key digest
", "InitializationVector":"base64-encoded initialization vector
" }, "TimeSpan":{ "StartTime":"starting place of the clip, in HH:mm:ss.SSS or sssss.SSS
", "Duration":"duration of the clip, in HH:mm:ss.SSS or sssss.SSS
" }, "FrameRate":"auto|10|15|23.97|24|25|29.97|30|50|60", "Resolution":"auto", "AspectRatio":"auto|1:1|4:3|3:2|16:9", "Interlaced":"auto|true|false", "Container":"auto|aac|asf|avi|divx|flv|m4a|mkv|mov|mp2|mp3| mp4|mpeg|mpeg-ps|mpeg-ts|mxf|ogg|vob|wav|webm", "InputCaptions":{ "MergePolicy":"MergeOverride|MergeRetain|Override", "CaptionSources":[ { "Key":"name of the input caption file
", "Encryption":{ "Mode":"aes-cbc-pkcs7|aes-ctr|aes-gcm", "Key":"encrypted and base64-encoded encryption key
", "KeyMd5":"base64-encoded key digest
", "InitializationVector":"base64-encoded initialization vector
" }, "Language":"language of the input caption file
", "TimeOffset":"starting place of the captions, in either [-+]SS.sss or [-+]HH:mm:SS.ss
", "Label":"label for the caption
" }, {...} ] } }, {...} ] "OutputKeyPrefix":"prefix for file names in Amazon S3 bucket
", "Outputs":[{ "Key":"name of the transcoded file
", "Encryption":{ "Mode":"s3||aes-cbc-pkcs7|aes-ctr| aes-gcm", "Key":"encrypted and base64-encoded encryption key
", "KeyMd5":"base64-encoded key digest
", "InitializationVector":"base64-encoded initialization vector
" }, "ThumbnailPattern":""|"pattern
", "Rotate":"auto|0|90|180|270", "PresetId":"preset to use for the job
", "SegmentDuration":"[1,60]", "Watermarks":[ { "InputKey":"name of the .png or .jpg file
", "Encryption":{ "Mode":"s3||aes-cbc-pkcs7| aes-ctr|aes-gcm", "Key":"encrypted and base64-encoded encryption key
", "KeyMd5":"base64-encoded key digest
", "InitializationVector":"base64-encoded initialization vector
" }, "PresetWatermarkId":"value of Video:Watermarks:Id in preset
" }, {...} ], "AlbumArt":[ { "AlbumArtMerge":"Replace|Prepend|Append|Fallback", "AlbumArtArtwork":"can be empty, but not null
":[ { "AlbumArtInputKey":"name of the file to use as album art
", "Encryption":{ "Mode":"s3||aes-cbc-pkcs7| aes-ctr|aes-gcm", "Key":"encrypted and base64-encoded encryption key
", "KeyMd5":"base64-encoded key digest
", "InitializationVector":"base64-encoded initialization vector
" }, "AlbumArtMaxWidth":"maximum width of output album art in pixels
", "AlbumArtMaxHeight":"maximum height of output album art in pixels
", "AlbumArtSizingPolicy":"Fit|Fill|Stretch|Keep| ShrinkToFit|ShrinkToFill", "AlbumArtPaddingPolicy":"Pad|NoPad", "AlbumArtFormat":"jpg|png" }, {...} ] }, {...} ], "Captions":{ "CaptionFormats":[ { "Format":"cea-708|dfxp|mov-text|scc|srt|webvtt", "Pattern":"myCaption/file-language
", "Encryption":{ "Mode":"s3||aes-cbc-pkcs7| aes-ctr|aes-gcm", "Key":"encrypted and base64-encoded encryption key
", "KeyMd5":"base64-encoded key digest
", "InitializationVector":"base64-encoded initialization vector
" } }, {...} ] } }, {...}], "Playlists":[{ "Format":"HLSv3|HLSv4|MPEG-DASH|Smooth", "Name":"name
", "OutputKeys":[ "Outputs:Key to include in this playlist
", ... ], "HlsContentProtection":{ "Method":"aes-128", "Key":"encrypted and base64-encoded protection key
", "KeyMd5":"base64-encoded key digest
", "InitializationVector":"base64-encoded initialization vector
", "LicenseAcquisitionUrl":"license acquisition url
", "KeyStoragePolicy":"NoStore|WithVariantPlaylists" }, "PlayReadyDrm":{ "Format":"microsoft|discretix-3.0", "Key":"encrypted and base64-encoded DRM key
", "KeyId":"id of the DRM key
", "KeyMd5":"base64-encoded key digest
", "InitializationVector":"base64-encoded initialization vector
", "LicenseAcquisitionUrl":"license acquisition url
" } }, {...}], "UserMetadata": { "Key":"Value", "Second user metadata key
":"Second user metadata value
" }, "PipelineId":"pipeline to use for transcoding
" }
Paramètres de demande
Cette opération n'utilise pas les paramètres de demande.
En-têtes de demande
Cette opération utilise uniquement les en-têtes de demande qui sont communs à toutes les opérations. Pour plus d'informations sur les en-têtes de demande communs, consultez Contenu de l'en-tête HTTP.
Corps de la demande
La chaîne JSON du corps de la demande contient les objets d'entrée pour l'opération CreateJob
. Pour en savoir plus sur les objets d'entrée, consultez Paramètres que vous spécifiez lorsque vous créez un Elastic Transcoder Job.
Réponses
Syntaxe
Status: 201 Created x-amzn-RequestId: c321ec43-378e-11e2-8e4c-4d5b971203e9 Content-Type: application/json Content-Length:
number of characters in the response
Date: Mon, 14 Jan 2013 06:01:47 GMT { "Job":{ "Id":"Id that Elastic Transcoder assigns to the job
", "Inputs":[{ "Key":"name of the file to transcode
", "Encryption":{ "Mode":"aes-cbc-pkcs7|aes-ctr|aes-gcm", "Key":"encrypted and base64-encoded decryption key
", "KeyMd5":"base64-encoded key digest
", "InitializationVector":"base64-encoded initialization vector
" }, "TimeSpan":{ "StartTime":"starting place of the clip, in HH:mm:ss.SSS or sssss.SSS
", "Duration":"duration of the clip, in HH:mm:ss.SSS or sssss.SSS
" }, "FrameRate":"auto|10|15|23.97|24|25|29.97|30|50|60", "Resolution":"auto|width in pixels
xheight in pixels
", "AspectRatio":"auto|1:1|4:3|3:2|16:9", "Interlaced":"auto|true|false", "Container":"auto|aac|asf|avi|divx|flv|m4a|mkv|mov|mp2|mp3| mp4|mpeg|mpeg-ps|mpeg-ts|mxf|ogg|vob|wav|webm", "InputCaptions":{ "MergePolicy":"MergeOverride|MergeRetain|Override", "CaptionSources":[ { "Key":"name of the input caption file
", "Language":"language of the input caption file
", "TimeOffset":"starting place of the captions, in either [-+]SS.sss or [-+]HH:mm:SS.ss
", "Label":"label for the caption
" "Encryption":{ "Mode":"aes-cbc-pkcs7|aes-ctr|aes-gcm", "Key":"encrypted and base64-encoded decryption key
", "KeyMd5":"base64-encoded key digest
", "InitializationVector":"base64-encoded initialization vector
" }, }, {...} ] } }, {...}], "OutputKeyPrefix":"prefix for file names in Amazon S3 bucket
", "Outputs":[{ "Id":"sequential counter
", "Key":"name of the transcoded file
", "Encryption":{ "Mode":"s3||aes-cbc-pkcs7|aes-ctr| aes-gcm", "Key":"encrypted and base64-encoded encryption key
", "KeyMd5":"base64-encoded key digest
", "InitializationVector":"base64-encoded initialization vector
" }, "ThumbnailPattern":""|"pattern
", "Rotate":"auto|0|90|180|270", "PresetId":"preset to use for the job
", "SegmentDuration":"[1,60]", "Watermarks":[ { "InputKey":"name of the .png or .jpg file
", "Encryption":{ "Mode":"s3||aes-cbc-pkcs7| aes-ctr|aes-gcm", "Key":"encrypted and base64-encoded encryption key
", "KeyMd5":"base64-encoded key digest
", "InitializationVector":"base64-encoded initialization vector
" }, "PresetWatermarkId":"value of Video:Watermarks:Id in preset
" }, {...} ], "AlbumArt":[ { "AlbumArtMerge":"Replace|Prepend|Append|Fallback", "AlbumArtArtwork":"can be empty, but not null
":[ { "AlbumArtInputKey":"name of the file to use as album art
", "Encryption":{ "Mode":"s3||aes-cbc-pkcs7| aes-ctr|aes-gcm", "Key":"encrypted and base64-encoded encryption key
", "KeyMd5":"base64-encoded key digest
", "InitializationVector":"base64-encoded initialization vector
" }, "AlbumArtMaxWidth":"maximum width of output album art in pixels
", "AlbumArtMaxHeight":"maximum height of output album art in pixels
", "AlbumArtSizingPolicy":"Fit|Fill|Stretch|Keep| ShrinkToFit|ShrinkToFill", "AlbumArtPaddingPolicy":"Pad|NoPad", "AlbumArtFormat":"jpg|png" }, {...} ] }, {...} ], "Duration":"duration in seconds
", "Width":"width in pixels
", "Height":"height in pixels
", "Status":"Submitted|Progressing|Complete|Canceled|Error", "StatusDetail":"additional information about job status
", "Captions":{ "CaptionFormats":[ { "Format":"cea-708|dfxp|mov-text|scc|srt|webvtt", "Pattern":"myCaption/file-language
", "Encryption":{ "Mode":"s3||aes-cbc-pkcs7| aes-ctr|aes-gcm", "Key":"encrypted and base64-encoded encryption key
", "KeyMd5":"base64-encoded key digest
", "InitializationVector":"base64-encoded initialization vector
" } }, {...} ] }, "AppliedColorSpaceConversion":"None|Bt601ToBt709| Bt709ToBt601" }, {...} ], "Playlists":[ { "Format":"HLSv3|HLSv4|MPEG-DASH|Smooth", "Name":"name
", "OutputKeys":[ "Outputs:Key to include in this playlist
", ... ], "HlsContentProtection":{ "Method":"aes-128", "Key":"encrypted and base64-encoded protection key
", "KeyMd5":"base64-encoded key digest
", "InitializationVector":"base64-encoded initialization vector
", "LicenseAcquisitionUrl":"license acquisition url
", "KeyStoragePolicy":"NoStore|WithVariantPlaylists" }, "PlayReadyDrm":{ "Format":"microsoft|discretix-3.0", "Key":"encrypted and base64-encoded DRM key
", "KeyId":"id of the DRM key
", "KeyMd5":"base64-encoded key digest
", "InitializationVector":"base64-encoded initialization vector
", "LicenseAcquisitionUrl":"license acquisition url
" } }, {...} ], "UserMetadata":{ "key1":"First user metadata value
", "key2":"Second user metadata value
" }, "PipelineId":"pipeline to add the job to
", "Status":"Submitted|Progressing|Complete|Canceled|Error" } }
En-têtes de réponse
Cette opération utilise uniquement les en-têtes de réponse qui sont communs à la plupart des réponses. Pour plus d'informations sur les en-têtes de réponse communs, consultez Réponses HTTP.
Corps de la réponse
Lorsque vous créez une tâche, Elastic Transcoder renvoie les valeurs que vous avez spécifiées dans la demande. Pour plus d'informations, consultez Paramètres que vous spécifiez lorsque vous créez un Elastic Transcoder Job.
En outre, Elastic Transcoder renvoie les valeurs suivantes.
- (Automatique) Id
-
Identificateur que Elastic Transcoder a attribué à la tâche. Cette valeur permet d'obtenir les paramètres de la tâche ou de le supprimer.
- (Automatique) Outputs:Id
-
Compteur séquentiel, commençant par 1, qui identifie une sortie parmi les sorties de la tâche actuelle. Dans
Output
syntaxe, cette valeur est toujours1
. - (Automatique) Outputs:Duration
-
Durée du fichier de sortie en secondes, arrondie.
- (Automatique) Outputs:Width
-
Largeur du fichier de sortie, en pixels.
- (Automatique) Outputs:Height
-
Hauteur du fichier de sortie, en pixels.
- (Automatique) Outputs:Status
-
Statut d'une sortie dans une tâche. Si vous n'avez spécifié qu'une seule sortie pour la tâche,
Outputs:Status
est toujours identique àJob:Status
. Si vous avez spécifié plusieurs sorties :Job:Status
etOutputs:Status
pour toutes les sorties estSubmitted
jusqu'à ce qu'Elastic Transcoder commence à traiter la première sortie.Lorsque Elastic Transcoder commence à traiter la première sortie,
Outputs:Status
pour cette sortie etJob:Status
les deux sont remplacés parProgressing
. Pour chaque sortie, la valeur deOutputs:Status
resteSubmitted
jusqu'à ce qu'Elastic Transcoder commence à traiter la sortie.Job:Status
resteProgressing
jusqu'à ce que toutes les sorties atteignent l'état terminal, soitComplete
ouError
.Lorsque toutes les sorties atteignent l'état terminal,
Job:Status
Modifications apportées àComplete
uniquementOutputs:Status
pour toutes les sorties estComplete
. SiOutputs:Status
pour une ou plusieurs sorties :Error
, l'état du terminal pourJob:Status
est aussiError
.
Pour
Status
est l'une des actions suivantes :Submitted
,Progressing
,Complete
,Canceled
, ouError
. - (Automatique) Outputs:StatusDetail
-
Informations qui expliquent plus en détail
Outputs:Status
. - (Automatique) Outputs:AppliedColorSpaceConversion
-
Si Elastic Transcoder a utilisé un préréglage avec un
ColorSpaceConversionMode
pour transcoder le fichier de sortie, leAppliedColorSpaceConversion
indique la conversion utilisée. Si nonColorSpaceConversionMode
a été défini dans le préréglage, ce paramètre ne sera pas inclus dans la réponse de la tâche. - (Automatique) Status
-
Si vous avez spécifié plusieurs résultats pour la tâche, le statut de la tâche entière. Lorsque Elastic Transcoder commence à traiter une tâche, la valeur de
Job:Status
Modifications apportées àProgressing
et ne change pas tant qu'Elastic Transcoder n'a pas fini de traiter toutes les sorties. Lorsque le traitement est terminé,Job:Status
change soit àComplete
ou, si l'une des sorties a échoué, àError
.Si vous n'avez spécifié qu'une seule sortie pour la tâche,
Job:Status
est identique àOutputs:Status
.Pour
Job:Status
est l'une des actions suivantes :Submitted
,Progressing
,Complete
,Canceled
, ouError
.
Erreurs
Pour plus d'informations sur les exceptions et les messages d'erreur Elastic Transcoder, consultezGestion des erreurs dans Elastic Transcoder.
Note
Si une tâche échoue avec une erreur Access Denied
, nous vous conseillons d'exécuter l'action d'API Test Role
pour déterminer la cause de l'erreur. Pour plus d'informations, consultez Tester un rôle.
Exemples
L'exemple de demande suivant crée une tâche qui possède deux sorties.
Exemple de demande
POST /2012-09-25/jobs HTTP/1.1 Content-Type: application/json; charset=UTF-8 Accept: */* Host: elastictranscoder.
Elastic Transcoder endpoint
.amazonaws.com:443 x-amz-date: 20130114T174952Z Authorization: AWS4-HMAC-SHA256 Credential=AccessKeyID
/request-date
/Elastic Transcoder endpoint
/elastictranscoder/aws4_request, SignedHeaders=host;x-amz-date;x-amz-target, Signature=calculated-signature
Content-Length:number of characters in the JSON string
{ "Inputs":[{ "Key":"recipes/lasagna.mp4", "FrameRate":"auto", "Resolution":"auto", "AspectRatio":"auto", "Interlaced":"auto", "Container":"mp4", "InputCaptions":{ "MergePolicy":"MergeOverride", "CaptionSources":[ { "Key":"scc/lasagna-kindlefirehd.scc", "Language":"en", "Label":"English" }, { "Key":"srt/lasagna-kindlefirehd.srt", "Language":"fr", "TimeOffset":"1:00:00", "Label":"French" } ] } }] "OutputKeyPrefix":"recipes/", "Outputs":[ { "Key":"mp4/lasagna-kindlefirehd.mp4", "ThumbnailPattern":"mp4/thumbnails/lasagna-{count}", "Rotate":"0", "PresetId":"1351620000000-100080", "Watermarks":[ { "InputKey":"logo/128x64.png", "PresetWatermarkId":"company logo 128x64" } ], "Captions":{ "CaptionFormats":[ { "Format":"scc", "Pattern":"scc/lasagna-{language}" }, { "Format":"srt", "Pattern":"srt/lasagna-{language}", } ] } }, { "Key":"iphone/lasagna-1024k", "ThumbnailPattern":"iphone/th1024k/lasagna-{count}", "Rotate":"0", "PresetId":"1351620000000-987654", "SegmentDuration":"5" }, { "Key":"iphone/lasagna-512k", "ThumbnailPattern":"iphone/th512k/lasagna-{count}", "Rotate":"0", "PresetId":"1351620000000-456789", "SegmentDuration":"5" }, ], "Playlists": [ { "Format": "HLSv3", "Name": "playlist-iPhone-lasagna.m3u8", "OutputKeys": [ "iphone/lasagna-1024k", "iphone/lasagna-512k" ] } ], "UserMetadata": { "Food type":"Italian", "Cook book":"recipe notebook" }, "PipelineId":"1111111111111-abcde1" }
Exemple de réponse
Status: 201 Created x-amzn-RequestId: c321ec43-378e-11e2-8e4c-4d5b971203e9 Content-Type: application/json Content-Length:
number of characters in the response
Date: Mon, 14 Jan 2013 06:01:47 GMT { "Job":{ "Id":"3333333333333-abcde3", "Inputs":[{ "Key":"recipes/lasagna.mp4", "FrameRate":"auto", "Resolution":"auto", "AspectRatio":"auto", "Interlaced":"auto", "Container":"mp4", "InputCaptions":{ "MergePolicy":"MergeOverride", "CaptionSources":[ { "Key":"scc/lasagna-kindlefirehd.scc", "Language":"en", "Label":"English" }, { "Key":"srt/lasagna-kindlefirehd.srt", "Language":"fr", "TimeOffset":"1:00:00", "Label":"French" } ] } }], "Outputs":[ { "Id":"1", "Key":"mp4/lasagna-kindlefirehd.mp4", "ThumbnailPattern":"mp4/thumbnails/lasagna-{count}", "Rotate":"0", "PresetId":"1351620000000-100080", "Watermarks":[ { "InputKey":"logo/128x64.png", "PresetWatermarkId":"company logo 128x64", } ], "Duration":"1003", "Width":"1280", "Height":"720", "Status":"Progressing", "StatusDetail":"", "Captions":{ "CaptionFormats":[ { "Format":"scc", "Pattern":"scc/lasagna-{language}", }, { "Format":"srt", "Pattern":"srt/lasagna-{language}", }, { "Format":"mov-text" } ] } }, { "Id":"2", "Key":"iphone/lasagna-1024k", "ThumbnailPattern":"iphone/th1024k/lasagna-{count}", "Rotate":"0", "PresetId":"1351620000000-987654", "SegmentDuration":"5", "Duration":"1003", "Width":"1136", "Height":"640", "Status":"Progressing", "StatusDetail":"" }, { "Id":"3", "Key":"iphone/lasagna-512k", "ThumbnailPattern":"iphone/th512k/lasagna-{count}", "Rotate":"0", "PresetId":"1351620000000-456789", "SegmentDuration":"5", "Duration":"1003", "Width":"1136", "Height":"640", "Status":"Complete", "StatusDetail":"", "AppliedColorSpaceConversion":"None" } ], "Playlists":[ { "Format":"HLSv3", "Name":"playlist-iPhone-lasagna.m3u8", "OutputKeys": [ "iphone/lasagna-1024k", "iphone/lasagna-512k" ] } ], "UserMetadata": { "Food type":"Italian", "Cook book":"recipe notebook" }, "PipelineId":"1111111111111-abcde1", "Status":"Progressing" } }