依狀態列出任務 - Amazon Elastic Transcoder

節省成本並獲得更多功能 AWS Elemental MediaConvert

MediaConvert 是一項較新的檔案型視訊轉碼服務,提供全方位的進階轉碼功能,按需費率從每分鐘 $0.0075 起。閱讀更多

已經使用 Amazon Elastic Transcoder? 遷移到 MediaConvert. 如需詳細資訊,請參閱此概觀,其中包含有關移轉程序的重要資訊以及其他資源的連結。

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

依狀態列出任務

Description (描述)

若要取得具有指定狀態的任務清單,將 GET 請求傳送到/2012-09-25/jobsByStatus/Submitted資源。Elastic Transcoder 會列出您最近建立和目前擁有指定狀態的任務。

請求

Syntax (語法)

若要取得過去 6 個月內與目前具有指定狀態的 AWS 帳戶相關聯之任務數資訊,請傳送以下 GET 請求。

GET /2012-09-25/jobsByStatus/Status? Ascending=true|false& PageToken=value for accessing the next page of results HTTP/1.1 Content-Type: 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

請求參數

此操作會使用以下請求參數。Elastic Transcoder 會傳回過去 6 個月內具有指定狀態的所有任務。

狀態

若要取得過去六個月內與目前具有指定狀態的 AWS 帳戶相關聯的所有任務資訊,指定狀態:SubmittedProgressingCompleteCanceledError

升序

若要依照所提交的日期及時間依序列出任務,請輸入 true。若要依照相反的時間順序列出任務,請輸入 false

頁面令牌

當 Elastic Transcoder 會傳回多個結果頁面時,使用PageToken在後續GET請求來取得每次的連續結果頁面。

請求標頭

此操作僅使用所有操作常見的請求標頭。如需常見請求標頭的資訊,請參閱 HTTP 標頭內容

請求主體

此操作不會使用請求內文。

回應

Syntax (語法)

Status: 200 OK 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 { "Jobs":[ { "Id":"Id that Elastic Transcoder assigned 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 pixelsxheight 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", "DetectedProperties":{ "Width":"video width in pixels", "Height":"video height in pixels", "FrameRate":"video frame rate in fps", "FileSize":"file size in bytes", "DurationMillis":"file duration in milliseconds" }, "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", "DurationMillis":"duration in milliseconds", "Height":"height in pixels", "Width":"width in pixels", "FrameRate":"frame rate in fps", "FileSize":"file size in bytes", "Status":"Submitted|In Progress|Complete|Error", "StatusDetail":"detail associated with 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": { "Key":"Value", "Second user metadata key":"Second user metadata value" }, "PipelineId":"PipelineId for the job", "Status":"Submitted|Progressing|Complete|Canceled|Error", "Timing":{ "SubmitTimeMillis":"job submitted time in epoch milliseconds", "StartTimeMillis":"job start time in epoch milliseconds", "FinishTimeMillis":"job finish time in epoch milliseconds" } }, {...} ], "NextPageToken":value for accessing the next page of results|null }

回應標頭

此操作僅使用大部分回應常見的回應標頭。如需常見回應標頭的資訊,請參閱 HTTP 回應

回應內文

每個符合條件之任務的回應內文都包含一個元素,而且每個元素都包含您在建立任務時指定的值。如需任務值的詳細資訊,請參閱您在建立 Elastic Transcoder Job 時指定的設定

此外,Elastic Transcoder 會傳回下列值。

(自動) Id

Elastic Transcoder 分配給作業的標識符。您可使用此值來取得任務的設定,或刪除任務。

(自動) Inputs: 檢測到的屬性

檢測到的輸入文件屬性。Elastic Transcoder 從輸入文件中識別這些值。

(自動) Inputs: Width

檢測到的輸入文件寬度 (以像素為單位)。

(自動) Inputs: Height

檢測到的輸入文件高度 (以像素為單位)。

(自動) Inputs: FrameRate

輸入文件檢測到的幀率 (以每秒影格數為單位)。

(自動) Inputs: FileSize

檢測到的輸入文件大小 (以位元組為單位)。

(自動) Inputs: DurationMillis

檢測到的輸入文件持續時間,以毫秒為單位。

(自動) Outputs: Id

一個序列計數器,從 1 開始,用於標識當前作業輸出之間的輸出。在 中Output語法,這個值永遠是1

(自動) Outputs: Duration

輸出文件的持續時間(以秒為單位),向上舍入。

(自動) Outputs: DurationMillis

輸出文件的持續時間,以毫秒為單位。

(自動) Outputs: Width

輸出文件的寬度 (以像素為單位)。

(自動) Outputs: Height

輸出文件的高度 (以像素為單位)。

(自動) Outputs: FrameRate

輸出文件的幀速率 (以每秒影格數為單位)。

(自動) Outputs: FileSize

輸出文件的文件大小 (以位元組為單位)。

(自動) Outputs: Status

作業中一個輸出的狀態。如果只為該作業指定了一個輸出,Outputs:Status總是與Job:Status。如果指定了多個輸出:

  • Job:StatusOutputs:Status對於所有輸出都是Submitted直到 Elastic Transcoder 開始處理第一個輸出。

  • 當 Elastic Transcoder 開始處理第一個輸出時,Outputs:Status對於該輸出,Job:Status兩者皆會變更為Progressing。對於每個輸出,Outputs:Status遺跡Submitted直到 Elastic Transcoder 開始處理輸出。

  • Job:Status遺跡Progressing直到所有輸出達到終端狀態,Complete或者Error

  • 當所有輸出都達到終端狀態時,Job:Status對的變更Complete僅當Outputs:Status對於所有輸出都是Complete。如果Outputs:Status對於一或多個輸出是Error,終端狀態Job:Status也是Error

的值Status是下列其中一項:SubmittedProgressingCompleteCanceled, 或Error

(自動) Outputs: StatusDetail

進一步解釋的信息Outputs:Status

(自動) Outputs: AppliedColorSpaceCottage

如果 Elastic Transcoder 使用了具有ColorSpaceConversionMode對輸出文件進行轉碼,則AppliedColorSpaceConversion參數顯示了所使用的轉換。如果沒有ColorSpaceConversionMode在預設中定義,則此參數將不會包含在作業響應中。

(自動) Status

如果為作業指定了多個輸出,則表示整個作業的狀態。當 Elastic Transcoder 開始處理作業時,Job:Status對的變更Progressing並且在 Elastic Transcoder 完成處理所有輸出之前不會更改。處理完成後,Job:Status更改為Complete或者,如果任何輸出失敗,Error

如果只為該作業指定了一個輸出,Job:Status與相同Outputs:Status

的值Job:Status是下列其中一項:SubmittedProgressingCompleteCanceled, 或Error

(自動) Timing

有關作業時間的詳細信息。

(自動) Timing: SubmitTimeMillis

作業提交給 Elastic Transcoder 的時間,以紀元毫秒為單位。

(自動) Timing: StartTimeMillis

作業開始轉碼的時間,以紀元毫秒為單位。

(自動) Timing: FinishTimeMillis

作業完成轉碼的時間,以紀元毫秒為單位。

若要進一步了解紀元時間,請參epoch頁面。

(自動) 下一頁 Token

用於訪問結果的第二頁和後續頁面(如果有)的值。當指定管道中的作業適合在一個頁面上或到達結果的最後一頁時,NextPageTokennull

錯誤

有關 Elastic Transcoder 例外和錯誤消息的詳細信息,請參處理 Elastic Transcoder 中的錯誤

範例

以下範例請求建立任務。

請求範例

以下範例請求會取得您在過去六個月內建立且狀態為 Complete 的所有任務清單。

GET /2012-09-25/jobsByStatus/Complete?Ascending=true HTTP/1.1 Content-Type: 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

回應範例

Status: 200 OK 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 { "Jobs":[ { "Id":"3333333333333-abcde3", "Input":[{ "Key":"cooking/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" } ] }, "DetectedProperties":{ "Width":"1280", "Height":"720", "FrameRate":"30.00", "FileSize":"5872000", "DurationMillis":"1003000" } }], "OutputKeyPrefix":"", "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", "DurationMillis":"1003000", "Width":"1280", "Height":"720", "FrameRate":"30.00", "FileSize":"5872000", "Status":"Complete", "StatusDetail":"", "Captions":{ "CaptionFormats":[ { "Format":"scc", "Pattern":"scc/lasagna-{language}" }, { "Format":"srt", "Pattern":"srt/lasagna-{language}" }, { "Format":"mov-text" } ] }, "AppliedColorSpaceConversion":"None" }, { "Id":"2", "Key":"iphone/lasagna-1024k", "ThumbnailPattern":"iphone/th1024k/lasagna-{count}", "Rotate":"0", "PresetId":"1351620000000-987654", "SegmentDuration":"5", "Duration":"1003", "DurationMillis":"1003000", "Width":"1136", "Height":"640", "FrameRate":"30.00", "FileSize":"4718600", "Status":"Complete", "StatusDetail":"" }, ], "PipelineId":"1111111111111-abcde1", "Playlists":[ { "Format":"HLSv3", "Name":"playlist-iPhone-lasagna.m3u8", "OutputKeys":[ "iphone/lasagna-1024k", "iphone/lasagna-512k" ] } ], "Timing":{ "SubmitTime":"1427212800000", "StartTime":"1427212856000", "FinishTime":"1427212875000" }, "Status":"Complete" }, { "Id":"4444444444444-abcde4", "Input":{ "Key":"cooking/spaghetti.mp4", "FrameRate":"auto", "Resolution":"auto", "AspectRatio":"auto", "Interlaced":"auto", "Container":"mp4", "DetectedProperties":{ "Width":"1280", "Height":"720", "FrameRate":"30.00", "FileSize":"5872000", "DurationMillis":"1003000" } }, "Outputs":[ { "Id":"3", "Key":"iphone/spaghetti-512k", "ThumbnailPattern":"iphone/th512k/spaghetti-{count}", "Rotate":"0", "PresetId":"1351620000000-456789", "SegmentDuration":"5", "Watermarks":[ { "InputKey":"logo/128x64.png", "PresetWatermarkId":"company logo 128x64" } ], "Duration":"1003", "DurationMillis":"1003000", "Width":"1136", "Height":"640", "FrameRate":"30.00", "FileSize":"5872000", "Status":"Complete", "StatusDetail":"" } ], "Playlists":[ { "Format":"HLSv3", "Name":"playlist-iPhone-spaghetti.m3u8", "OutputKeys":[ "iphone/spaghetti-512k" ] } ], "UserMetadata": { "Food type":"Italian", "Cook book":"recipe notebook" }, "Status":"Complete", "Timing":{ "SubmitTime":"1427212800000", "StartTime":"1427212856000", "FinishTime":"1427212875000" } } ], "NextPageToken":null }