All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazonaws.services.elastictranscoder.model.JobOutput Maven / Gradle / Ivy

/*
 * Copyright 2010-2014 Amazon.com, Inc. or its affiliates. All Rights Reserved.
 * 
 * Licensed under the Apache License, Version 2.0 (the "License").
 * You may not use this file except in compliance with the License.
 * A copy of the License is located at
 * 
 *  http://aws.amazon.com/apache2.0
 * 
 * or in the "license" file accompanying this file. This file is distributed
 * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
 * express or implied. See the License for the specific language governing
 * permissions and limitations under the License.
 */
package com.amazonaws.services.elastictranscoder.model;

import java.io.Serializable;

/**
 * 

*

* IMPORTANT:Outputs recommended instead. *

* If you specified one output for a job, information about that output. * If you specified multiple outputs for a job, the Output * object lists information about the first output. This duplicates the * information that is listed for the first output in the * Outputs object. *

*/ public class JobOutput implements Serializable { /** * A sequential counter, starting with 1, that identifies an output among * the outputs from the current job. In the Output syntax, this value is * always 1. */ private String id; /** * The name to assign to the transcoded file. Elastic Transcoder saves * the file in the Amazon S3 bucket specified by the * OutputBucket object in the pipeline that is specified by * the pipeline ID. *

* Constraints:
* Length: 1 - 255
*/ private String key; /** * Whether you want Elastic Transcoder to create thumbnails for your * videos and, if so, how you want Elastic Transcoder to name the files. *

If you don't want Elastic Transcoder to create thumbnails, specify * "".

If you do want Elastic Transcoder to create thumbnails, * specify the information that you want to include in the file name for * each thumbnail. You can specify the following values in any sequence: *

  • {count} (Required): If you want to * create thumbnails, you must include {count} in the * ThumbnailPattern object. Wherever you specify * {count}, Elastic Transcoder adds a five-digit sequence * number (beginning with 00001) to thumbnail file names. The * number indicates where a given thumbnail appears in the sequence of * thumbnails for a transcoded file. If you specify a literal * value and/or {resolution} but you omit * {count}, Elastic Transcoder returns a validation error * and does not create the job.

  • Literal * values (Optional): You can specify literal values anywhere in the * ThumbnailPattern object. For example, you can include * them as a file name prefix or as a delimiter between * {resolution} and {count}.

  • * {resolution} (Optional): If you want Elastic * Transcoder to include the resolution in the file name, include * {resolution} in the ThumbnailPattern object. *

When creating thumbnails, Elastic Transcoder * automatically saves the files in the format (.jpg or .png) that * appears in the preset that you specified in the PresetID * value of CreateJobOutput. Elastic Transcoder also appends * the applicable file name extension. *

* Constraints:
* Pattern: (^$)|(^.*\{count\}.*$)
*/ private String thumbnailPattern; /** * The number of degrees clockwise by which you want Elastic Transcoder * to rotate the output relative to the input. Enter one of the following * values:

auto, 0, 90, * 180, 270

The value auto * generally works only if the file that you're transcoding contains * rotation metadata. *

* Constraints:
* Pattern: (^auto$)|(^0$)|(^90$)|(^180$)|(^270$)
*/ private String rotate; /** * The value of the Id object for the preset that you want * to use for this job. The preset determines the audio, video, and * thumbnail settings that Elastic Transcoder uses for transcoding. To * use a preset that you created, specify the preset ID that Elastic * Transcoder returned in the response when you created the preset. You * can also use the Elastic Transcoder system presets, which you can get * with ListPresets. *

* Constraints:
* Pattern: ^\d{13}-\w{6}$
*/ private String presetId; /** * (Outputs in MPEG-TS format only.If you specify * a preset in PresetId for which the value of * Containeris ts (MPEG-TS), * SegmentDuration is the maximum duration of each .ts file * in seconds. The range of valid values is 1 to 60 seconds. If the * duration of the video is not evenly divisible by * SegmentDuration, the duration of the last segment is the * remainder of total length/SegmentDuration. Elastic Transcoder creates * an output-specific playlist for each output that you specify in * OutputKeys. To add an output to the master playlist for this job, * include it in OutputKeys. *

* Constraints:
* Pattern: ^\d{1,5}(\.\d{0,5})?$
*/ private String segmentDuration; /** * The status of one output in a job. If you specified only one output * for the job, Outputs:Status is always the same as * Job:Status. If you specified more than one output:

    *
  • Job:Status and Outputs:Status for all of * the outputs is Submitted until Elastic Transcoder starts to process * the first output.
  • When Elastic Transcoder starts to process * the first output, Outputs:Status for that output and * Job:Status both change to Progressing. For each output, * the value of Outputs:Status remains Submitted until * Elastic Transcoder starts to process the output.
  • Job:Status * remains Progressing until all of the outputs reach a terminal status, * either Complete or Error.
  • When all of the outputs reach a * terminal status, Job:Status changes to Complete only if * Outputs:Status for all of the outputs is * Complete. If Outputs:Status for one or more * outputs is Error, the terminal status for * Job:Status is also Error.
The * value of Status is one of the following: * Submitted, Progressing, * Complete, Canceled, or Error. *

* Constraints:
* Pattern: (^Submitted$)|(^Progressing$)|(^Complete$)|(^Canceled$)|(^Error$)
*/ private String status; /** * Information that further explains Status. *

* Constraints:
* Length: 0 - 255
*/ private String statusDetail; /** * Duration of the output file, in seconds. */ private Long duration; /** * Specifies the width of the output file in pixels. */ private Integer width; /** * Height of the output file, in pixels. */ private Integer height; /** * Information about the watermarks that you want Elastic Transcoder to * add to the video during transcoding. You can specify up to four * watermarks for each output. Settings for each watermark must be * defined in the preset that you specify in Preset for the * current output.

Watermarks are added to the output video in the * sequence in which you list them in the job output???the first * watermark in the list is added to the output video first, the second * watermark in the list is added next, and so on. As a result, if the * settings in a preset cause Elastic Transcoder to place all watermarks * in the same location, the second watermark that you add will cover the * first one, the third one will cover the second, and the fourth one * will cover the third. */ private com.amazonaws.internal.ListWithAutoConstructFlag watermarks; /** * The album art to be associated with the output file, if any. */ private JobAlbumArt albumArt; /** * You can create an output file that contains an excerpt from the input * file. This excerpt, called a clip, can come from the beginning, * middle, or end of the file. The Composition object contains settings * for the clips that make up an output file. For the current release, * you can only specify settings for a single clip per output file. The * Composition object cannot be null. */ private com.amazonaws.internal.ListWithAutoConstructFlag composition; /** * You can configure Elastic Transcoder to transcode captions, or * subtitles, from one format to another. All captions must be in UTF-8. * Elastic Transcoder supports two types of captions:

    *
  • Embedded: Embedded captions are included in the same * file as the audio and video. Elastic Transcoder supports only one * embedded caption per language, to a maximum of 300 embedded captions * per file.

    Valid input values include: CEA-608 * (EIA-608, first non-empty channel only), CEA-708 * (EIA-708, first non-empty channel only), and * mov-text

    Valid outputs include: mov-text *

    Elastic Transcoder supports a maximum of one embedded format per * output.

  • Sidecar: Sidecar captions are kept in a * separate metadata file from the audio and video data. Sidecar captions * require a player that is capable of understanding the relationship * between the video file and the sidecar file. Elastic Transcoder * supports only one sidecar caption per language, to a maximum of 20 * sidecar captions per file.

    Valid input values include: * dfxp (first div element only), ebu-tt, * scc, smpt, srt, * ttml (first div element only), and webvtt *

    Valid outputs include: dfxp (first div element only), * scc, srt, and webvtt.

  • *

If you want ttml or smpte-tt compatible captions, specify * dfxp as your output format.

Elastic Transcoder does not support OCR * (Optical Character Recognition), does not accept pictures as a valid * input for captions, and is not available for audio-only transcoding. * Elastic Transcoder does not preserve text formatting (for example, * italics) during the transcoding process.

To remove captions or * leave the captions empty, set Captions to null. To pass * through existing captions unchanged, set the MergePolicy * to MergeRetain, and pass in a null * CaptionSources array.

For more information on embedded * files, see the Subtitles Wikipedia page.

For more information on * sidecar files, see the Extensible Metadata Platform and Sidecar file * Wikipedia pages. */ private Captions captions; /** * A sequential counter, starting with 1, that identifies an output among * the outputs from the current job. In the Output syntax, this value is * always 1. * * @return A sequential counter, starting with 1, that identifies an output among * the outputs from the current job. In the Output syntax, this value is * always 1. */ public String getId() { return id; } /** * A sequential counter, starting with 1, that identifies an output among * the outputs from the current job. In the Output syntax, this value is * always 1. * * @param id A sequential counter, starting with 1, that identifies an output among * the outputs from the current job. In the Output syntax, this value is * always 1. */ public void setId(String id) { this.id = id; } /** * A sequential counter, starting with 1, that identifies an output among * the outputs from the current job. In the Output syntax, this value is * always 1. *

* Returns a reference to this object so that method calls can be chained together. * * @param id A sequential counter, starting with 1, that identifies an output among * the outputs from the current job. In the Output syntax, this value is * always 1. * * @return A reference to this updated object so that method calls can be chained * together. */ public JobOutput withId(String id) { this.id = id; return this; } /** * The name to assign to the transcoded file. Elastic Transcoder saves * the file in the Amazon S3 bucket specified by the * OutputBucket object in the pipeline that is specified by * the pipeline ID. *

* Constraints:
* Length: 1 - 255
* * @return The name to assign to the transcoded file. Elastic Transcoder saves * the file in the Amazon S3 bucket specified by the * OutputBucket object in the pipeline that is specified by * the pipeline ID. */ public String getKey() { return key; } /** * The name to assign to the transcoded file. Elastic Transcoder saves * the file in the Amazon S3 bucket specified by the * OutputBucket object in the pipeline that is specified by * the pipeline ID. *

* Constraints:
* Length: 1 - 255
* * @param key The name to assign to the transcoded file. Elastic Transcoder saves * the file in the Amazon S3 bucket specified by the * OutputBucket object in the pipeline that is specified by * the pipeline ID. */ public void setKey(String key) { this.key = key; } /** * The name to assign to the transcoded file. Elastic Transcoder saves * the file in the Amazon S3 bucket specified by the * OutputBucket object in the pipeline that is specified by * the pipeline ID. *

* Returns a reference to this object so that method calls can be chained together. *

* Constraints:
* Length: 1 - 255
* * @param key The name to assign to the transcoded file. Elastic Transcoder saves * the file in the Amazon S3 bucket specified by the * OutputBucket object in the pipeline that is specified by * the pipeline ID. * * @return A reference to this updated object so that method calls can be chained * together. */ public JobOutput withKey(String key) { this.key = key; return this; } /** * Whether you want Elastic Transcoder to create thumbnails for your * videos and, if so, how you want Elastic Transcoder to name the files. *

If you don't want Elastic Transcoder to create thumbnails, specify * "".

If you do want Elastic Transcoder to create thumbnails, * specify the information that you want to include in the file name for * each thumbnail. You can specify the following values in any sequence: *

  • {count} (Required): If you want to * create thumbnails, you must include {count} in the * ThumbnailPattern object. Wherever you specify * {count}, Elastic Transcoder adds a five-digit sequence * number (beginning with 00001) to thumbnail file names. The * number indicates where a given thumbnail appears in the sequence of * thumbnails for a transcoded file. If you specify a literal * value and/or {resolution} but you omit * {count}, Elastic Transcoder returns a validation error * and does not create the job.

  • Literal * values (Optional): You can specify literal values anywhere in the * ThumbnailPattern object. For example, you can include * them as a file name prefix or as a delimiter between * {resolution} and {count}.

  • * {resolution} (Optional): If you want Elastic * Transcoder to include the resolution in the file name, include * {resolution} in the ThumbnailPattern object. *

When creating thumbnails, Elastic Transcoder * automatically saves the files in the format (.jpg or .png) that * appears in the preset that you specified in the PresetID * value of CreateJobOutput. Elastic Transcoder also appends * the applicable file name extension. *

* Constraints:
* Pattern: (^$)|(^.*\{count\}.*$)
* * @return Whether you want Elastic Transcoder to create thumbnails for your * videos and, if so, how you want Elastic Transcoder to name the files. *

If you don't want Elastic Transcoder to create thumbnails, specify * "".

If you do want Elastic Transcoder to create thumbnails, * specify the information that you want to include in the file name for * each thumbnail. You can specify the following values in any sequence: *

  • {count} (Required): If you want to * create thumbnails, you must include {count} in the * ThumbnailPattern object. Wherever you specify * {count}, Elastic Transcoder adds a five-digit sequence * number (beginning with 00001) to thumbnail file names. The * number indicates where a given thumbnail appears in the sequence of * thumbnails for a transcoded file. If you specify a literal * value and/or {resolution} but you omit * {count}, Elastic Transcoder returns a validation error * and does not create the job.

  • Literal * values (Optional): You can specify literal values anywhere in the * ThumbnailPattern object. For example, you can include * them as a file name prefix or as a delimiter between * {resolution} and {count}.

  • * {resolution} (Optional): If you want Elastic * Transcoder to include the resolution in the file name, include * {resolution} in the ThumbnailPattern object. *

When creating thumbnails, Elastic Transcoder * automatically saves the files in the format (.jpg or .png) that * appears in the preset that you specified in the PresetID * value of CreateJobOutput. Elastic Transcoder also appends * the applicable file name extension. */ public String getThumbnailPattern() { return thumbnailPattern; } /** * Whether you want Elastic Transcoder to create thumbnails for your * videos and, if so, how you want Elastic Transcoder to name the files. *

If you don't want Elastic Transcoder to create thumbnails, specify * "".

If you do want Elastic Transcoder to create thumbnails, * specify the information that you want to include in the file name for * each thumbnail. You can specify the following values in any sequence: *

  • {count} (Required): If you want to * create thumbnails, you must include {count} in the * ThumbnailPattern object. Wherever you specify * {count}, Elastic Transcoder adds a five-digit sequence * number (beginning with 00001) to thumbnail file names. The * number indicates where a given thumbnail appears in the sequence of * thumbnails for a transcoded file. If you specify a literal * value and/or {resolution} but you omit * {count}, Elastic Transcoder returns a validation error * and does not create the job.

  • Literal * values (Optional): You can specify literal values anywhere in the * ThumbnailPattern object. For example, you can include * them as a file name prefix or as a delimiter between * {resolution} and {count}.

  • * {resolution} (Optional): If you want Elastic * Transcoder to include the resolution in the file name, include * {resolution} in the ThumbnailPattern object. *

When creating thumbnails, Elastic Transcoder * automatically saves the files in the format (.jpg or .png) that * appears in the preset that you specified in the PresetID * value of CreateJobOutput. Elastic Transcoder also appends * the applicable file name extension. *

* Constraints:
* Pattern: (^$)|(^.*\{count\}.*$)
* * @param thumbnailPattern Whether you want Elastic Transcoder to create thumbnails for your * videos and, if so, how you want Elastic Transcoder to name the files. *

If you don't want Elastic Transcoder to create thumbnails, specify * "".

If you do want Elastic Transcoder to create thumbnails, * specify the information that you want to include in the file name for * each thumbnail. You can specify the following values in any sequence: *

  • {count} (Required): If you want to * create thumbnails, you must include {count} in the * ThumbnailPattern object. Wherever you specify * {count}, Elastic Transcoder adds a five-digit sequence * number (beginning with 00001) to thumbnail file names. The * number indicates where a given thumbnail appears in the sequence of * thumbnails for a transcoded file. If you specify a literal * value and/or {resolution} but you omit * {count}, Elastic Transcoder returns a validation error * and does not create the job.

  • Literal * values (Optional): You can specify literal values anywhere in the * ThumbnailPattern object. For example, you can include * them as a file name prefix or as a delimiter between * {resolution} and {count}.

  • * {resolution} (Optional): If you want Elastic * Transcoder to include the resolution in the file name, include * {resolution} in the ThumbnailPattern object. *

When creating thumbnails, Elastic Transcoder * automatically saves the files in the format (.jpg or .png) that * appears in the preset that you specified in the PresetID * value of CreateJobOutput. Elastic Transcoder also appends * the applicable file name extension. */ public void setThumbnailPattern(String thumbnailPattern) { this.thumbnailPattern = thumbnailPattern; } /** * Whether you want Elastic Transcoder to create thumbnails for your * videos and, if so, how you want Elastic Transcoder to name the files. *

If you don't want Elastic Transcoder to create thumbnails, specify * "".

If you do want Elastic Transcoder to create thumbnails, * specify the information that you want to include in the file name for * each thumbnail. You can specify the following values in any sequence: *

  • {count} (Required): If you want to * create thumbnails, you must include {count} in the * ThumbnailPattern object. Wherever you specify * {count}, Elastic Transcoder adds a five-digit sequence * number (beginning with 00001) to thumbnail file names. The * number indicates where a given thumbnail appears in the sequence of * thumbnails for a transcoded file. If you specify a literal * value and/or {resolution} but you omit * {count}, Elastic Transcoder returns a validation error * and does not create the job.

  • Literal * values (Optional): You can specify literal values anywhere in the * ThumbnailPattern object. For example, you can include * them as a file name prefix or as a delimiter between * {resolution} and {count}.

  • * {resolution} (Optional): If you want Elastic * Transcoder to include the resolution in the file name, include * {resolution} in the ThumbnailPattern object. *

When creating thumbnails, Elastic Transcoder * automatically saves the files in the format (.jpg or .png) that * appears in the preset that you specified in the PresetID * value of CreateJobOutput. Elastic Transcoder also appends * the applicable file name extension. *

* Returns a reference to this object so that method calls can be chained together. *

* Constraints:
* Pattern: (^$)|(^.*\{count\}.*$)
* * @param thumbnailPattern Whether you want Elastic Transcoder to create thumbnails for your * videos and, if so, how you want Elastic Transcoder to name the files. *

If you don't want Elastic Transcoder to create thumbnails, specify * "".

If you do want Elastic Transcoder to create thumbnails, * specify the information that you want to include in the file name for * each thumbnail. You can specify the following values in any sequence: *

  • {count} (Required): If you want to * create thumbnails, you must include {count} in the * ThumbnailPattern object. Wherever you specify * {count}, Elastic Transcoder adds a five-digit sequence * number (beginning with 00001) to thumbnail file names. The * number indicates where a given thumbnail appears in the sequence of * thumbnails for a transcoded file. If you specify a literal * value and/or {resolution} but you omit * {count}, Elastic Transcoder returns a validation error * and does not create the job.

  • Literal * values (Optional): You can specify literal values anywhere in the * ThumbnailPattern object. For example, you can include * them as a file name prefix or as a delimiter between * {resolution} and {count}.

  • * {resolution} (Optional): If you want Elastic * Transcoder to include the resolution in the file name, include * {resolution} in the ThumbnailPattern object. *

When creating thumbnails, Elastic Transcoder * automatically saves the files in the format (.jpg or .png) that * appears in the preset that you specified in the PresetID * value of CreateJobOutput. Elastic Transcoder also appends * the applicable file name extension. * * @return A reference to this updated object so that method calls can be chained * together. */ public JobOutput withThumbnailPattern(String thumbnailPattern) { this.thumbnailPattern = thumbnailPattern; return this; } /** * The number of degrees clockwise by which you want Elastic Transcoder * to rotate the output relative to the input. Enter one of the following * values:

auto, 0, 90, * 180, 270

The value auto * generally works only if the file that you're transcoding contains * rotation metadata. *

* Constraints:
* Pattern: (^auto$)|(^0$)|(^90$)|(^180$)|(^270$)
* * @return The number of degrees clockwise by which you want Elastic Transcoder * to rotate the output relative to the input. Enter one of the following * values:

auto, 0, 90, * 180, 270

The value auto * generally works only if the file that you're transcoding contains * rotation metadata. */ public String getRotate() { return rotate; } /** * The number of degrees clockwise by which you want Elastic Transcoder * to rotate the output relative to the input. Enter one of the following * values:

auto, 0, 90, * 180, 270

The value auto * generally works only if the file that you're transcoding contains * rotation metadata. *

* Constraints:
* Pattern: (^auto$)|(^0$)|(^90$)|(^180$)|(^270$)
* * @param rotate The number of degrees clockwise by which you want Elastic Transcoder * to rotate the output relative to the input. Enter one of the following * values:

auto, 0, 90, * 180, 270

The value auto * generally works only if the file that you're transcoding contains * rotation metadata. */ public void setRotate(String rotate) { this.rotate = rotate; } /** * The number of degrees clockwise by which you want Elastic Transcoder * to rotate the output relative to the input. Enter one of the following * values:

auto, 0, 90, * 180, 270

The value auto * generally works only if the file that you're transcoding contains * rotation metadata. *

* Returns a reference to this object so that method calls can be chained together. *

* Constraints:
* Pattern: (^auto$)|(^0$)|(^90$)|(^180$)|(^270$)
* * @param rotate The number of degrees clockwise by which you want Elastic Transcoder * to rotate the output relative to the input. Enter one of the following * values:

auto, 0, 90, * 180, 270

The value auto * generally works only if the file that you're transcoding contains * rotation metadata. * * @return A reference to this updated object so that method calls can be chained * together. */ public JobOutput withRotate(String rotate) { this.rotate = rotate; return this; } /** * The value of the Id object for the preset that you want * to use for this job. The preset determines the audio, video, and * thumbnail settings that Elastic Transcoder uses for transcoding. To * use a preset that you created, specify the preset ID that Elastic * Transcoder returned in the response when you created the preset. You * can also use the Elastic Transcoder system presets, which you can get * with ListPresets. *

* Constraints:
* Pattern: ^\d{13}-\w{6}$
* * @return The value of the Id object for the preset that you want * to use for this job. The preset determines the audio, video, and * thumbnail settings that Elastic Transcoder uses for transcoding. To * use a preset that you created, specify the preset ID that Elastic * Transcoder returned in the response when you created the preset. You * can also use the Elastic Transcoder system presets, which you can get * with ListPresets. */ public String getPresetId() { return presetId; } /** * The value of the Id object for the preset that you want * to use for this job. The preset determines the audio, video, and * thumbnail settings that Elastic Transcoder uses for transcoding. To * use a preset that you created, specify the preset ID that Elastic * Transcoder returned in the response when you created the preset. You * can also use the Elastic Transcoder system presets, which you can get * with ListPresets. *

* Constraints:
* Pattern: ^\d{13}-\w{6}$
* * @param presetId The value of the Id object for the preset that you want * to use for this job. The preset determines the audio, video, and * thumbnail settings that Elastic Transcoder uses for transcoding. To * use a preset that you created, specify the preset ID that Elastic * Transcoder returned in the response when you created the preset. You * can also use the Elastic Transcoder system presets, which you can get * with ListPresets. */ public void setPresetId(String presetId) { this.presetId = presetId; } /** * The value of the Id object for the preset that you want * to use for this job. The preset determines the audio, video, and * thumbnail settings that Elastic Transcoder uses for transcoding. To * use a preset that you created, specify the preset ID that Elastic * Transcoder returned in the response when you created the preset. You * can also use the Elastic Transcoder system presets, which you can get * with ListPresets. *

* Returns a reference to this object so that method calls can be chained together. *

* Constraints:
* Pattern: ^\d{13}-\w{6}$
* * @param presetId The value of the Id object for the preset that you want * to use for this job. The preset determines the audio, video, and * thumbnail settings that Elastic Transcoder uses for transcoding. To * use a preset that you created, specify the preset ID that Elastic * Transcoder returned in the response when you created the preset. You * can also use the Elastic Transcoder system presets, which you can get * with ListPresets. * * @return A reference to this updated object so that method calls can be chained * together. */ public JobOutput withPresetId(String presetId) { this.presetId = presetId; return this; } /** * (Outputs in MPEG-TS format only.If you specify * a preset in PresetId for which the value of * Containeris ts (MPEG-TS), * SegmentDuration is the maximum duration of each .ts file * in seconds. The range of valid values is 1 to 60 seconds. If the * duration of the video is not evenly divisible by * SegmentDuration, the duration of the last segment is the * remainder of total length/SegmentDuration. Elastic Transcoder creates * an output-specific playlist for each output that you specify in * OutputKeys. To add an output to the master playlist for this job, * include it in OutputKeys. *

* Constraints:
* Pattern: ^\d{1,5}(\.\d{0,5})?$
* * @return (Outputs in MPEG-TS format only.If you specify * a preset in PresetId for which the value of * Containeris ts (MPEG-TS), * SegmentDuration is the maximum duration of each .ts file * in seconds. The range of valid values is 1 to 60 seconds. If the * duration of the video is not evenly divisible by * SegmentDuration, the duration of the last segment is the * remainder of total length/SegmentDuration. Elastic Transcoder creates * an output-specific playlist for each output that you specify in * OutputKeys. To add an output to the master playlist for this job, * include it in OutputKeys. */ public String getSegmentDuration() { return segmentDuration; } /** * (Outputs in MPEG-TS format only.If you specify * a preset in PresetId for which the value of * Containeris ts (MPEG-TS), * SegmentDuration is the maximum duration of each .ts file * in seconds. The range of valid values is 1 to 60 seconds. If the * duration of the video is not evenly divisible by * SegmentDuration, the duration of the last segment is the * remainder of total length/SegmentDuration. Elastic Transcoder creates * an output-specific playlist for each output that you specify in * OutputKeys. To add an output to the master playlist for this job, * include it in OutputKeys. *

* Constraints:
* Pattern: ^\d{1,5}(\.\d{0,5})?$
* * @param segmentDuration (Outputs in MPEG-TS format only.If you specify * a preset in PresetId for which the value of * Containeris ts (MPEG-TS), * SegmentDuration is the maximum duration of each .ts file * in seconds. The range of valid values is 1 to 60 seconds. If the * duration of the video is not evenly divisible by * SegmentDuration, the duration of the last segment is the * remainder of total length/SegmentDuration. Elastic Transcoder creates * an output-specific playlist for each output that you specify in * OutputKeys. To add an output to the master playlist for this job, * include it in OutputKeys. */ public void setSegmentDuration(String segmentDuration) { this.segmentDuration = segmentDuration; } /** * (Outputs in MPEG-TS format only.If you specify * a preset in PresetId for which the value of * Containeris ts (MPEG-TS), * SegmentDuration is the maximum duration of each .ts file * in seconds. The range of valid values is 1 to 60 seconds. If the * duration of the video is not evenly divisible by * SegmentDuration, the duration of the last segment is the * remainder of total length/SegmentDuration. Elastic Transcoder creates * an output-specific playlist for each output that you specify in * OutputKeys. To add an output to the master playlist for this job, * include it in OutputKeys. *

* Returns a reference to this object so that method calls can be chained together. *

* Constraints:
* Pattern: ^\d{1,5}(\.\d{0,5})?$
* * @param segmentDuration (Outputs in MPEG-TS format only.If you specify * a preset in PresetId for which the value of * Containeris ts (MPEG-TS), * SegmentDuration is the maximum duration of each .ts file * in seconds. The range of valid values is 1 to 60 seconds. If the * duration of the video is not evenly divisible by * SegmentDuration, the duration of the last segment is the * remainder of total length/SegmentDuration. Elastic Transcoder creates * an output-specific playlist for each output that you specify in * OutputKeys. To add an output to the master playlist for this job, * include it in OutputKeys. * * @return A reference to this updated object so that method calls can be chained * together. */ public JobOutput withSegmentDuration(String segmentDuration) { this.segmentDuration = segmentDuration; return this; } /** * The status of one output in a job. If you specified only one output * for the job, Outputs:Status is always the same as * Job:Status. If you specified more than one output:

    *
  • Job:Status and Outputs:Status for all of * the outputs is Submitted until Elastic Transcoder starts to process * the first output.
  • When Elastic Transcoder starts to process * the first output, Outputs:Status for that output and * Job:Status both change to Progressing. For each output, * the value of Outputs:Status remains Submitted until * Elastic Transcoder starts to process the output.
  • Job:Status * remains Progressing until all of the outputs reach a terminal status, * either Complete or Error.
  • When all of the outputs reach a * terminal status, Job:Status changes to Complete only if * Outputs:Status for all of the outputs is * Complete. If Outputs:Status for one or more * outputs is Error, the terminal status for * Job:Status is also Error.
The * value of Status is one of the following: * Submitted, Progressing, * Complete, Canceled, or Error. *

* Constraints:
* Pattern: (^Submitted$)|(^Progressing$)|(^Complete$)|(^Canceled$)|(^Error$)
* * @return The status of one output in a job. If you specified only one output * for the job, Outputs:Status is always the same as * Job:Status. If you specified more than one output:

    *
  • Job:Status and Outputs:Status for all of * the outputs is Submitted until Elastic Transcoder starts to process * the first output.
  • When Elastic Transcoder starts to process * the first output, Outputs:Status for that output and * Job:Status both change to Progressing. For each output, * the value of Outputs:Status remains Submitted until * Elastic Transcoder starts to process the output.
  • Job:Status * remains Progressing until all of the outputs reach a terminal status, * either Complete or Error.
  • When all of the outputs reach a * terminal status, Job:Status changes to Complete only if * Outputs:Status for all of the outputs is * Complete. If Outputs:Status for one or more * outputs is Error, the terminal status for * Job:Status is also Error.
The * value of Status is one of the following: * Submitted, Progressing, * Complete, Canceled, or Error. */ public String getStatus() { return status; } /** * The status of one output in a job. If you specified only one output * for the job, Outputs:Status is always the same as * Job:Status. If you specified more than one output:
    *
  • Job:Status and Outputs:Status for all of * the outputs is Submitted until Elastic Transcoder starts to process * the first output.
  • When Elastic Transcoder starts to process * the first output, Outputs:Status for that output and * Job:Status both change to Progressing. For each output, * the value of Outputs:Status remains Submitted until * Elastic Transcoder starts to process the output.
  • Job:Status * remains Progressing until all of the outputs reach a terminal status, * either Complete or Error.
  • When all of the outputs reach a * terminal status, Job:Status changes to Complete only if * Outputs:Status for all of the outputs is * Complete. If Outputs:Status for one or more * outputs is Error, the terminal status for * Job:Status is also Error.
The * value of Status is one of the following: * Submitted, Progressing, * Complete, Canceled, or Error. *

* Constraints:
* Pattern: (^Submitted$)|(^Progressing$)|(^Complete$)|(^Canceled$)|(^Error$)
* * @param status The status of one output in a job. If you specified only one output * for the job, Outputs:Status is always the same as * Job:Status. If you specified more than one output:

    *
  • Job:Status and Outputs:Status for all of * the outputs is Submitted until Elastic Transcoder starts to process * the first output.
  • When Elastic Transcoder starts to process * the first output, Outputs:Status for that output and * Job:Status both change to Progressing. For each output, * the value of Outputs:Status remains Submitted until * Elastic Transcoder starts to process the output.
  • Job:Status * remains Progressing until all of the outputs reach a terminal status, * either Complete or Error.
  • When all of the outputs reach a * terminal status, Job:Status changes to Complete only if * Outputs:Status for all of the outputs is * Complete. If Outputs:Status for one or more * outputs is Error, the terminal status for * Job:Status is also Error.
The * value of Status is one of the following: * Submitted, Progressing, * Complete, Canceled, or Error. */ public void setStatus(String status) { this.status = status; } /** * The status of one output in a job. If you specified only one output * for the job, Outputs:Status is always the same as * Job:Status. If you specified more than one output:
    *
  • Job:Status and Outputs:Status for all of * the outputs is Submitted until Elastic Transcoder starts to process * the first output.
  • When Elastic Transcoder starts to process * the first output, Outputs:Status for that output and * Job:Status both change to Progressing. For each output, * the value of Outputs:Status remains Submitted until * Elastic Transcoder starts to process the output.
  • Job:Status * remains Progressing until all of the outputs reach a terminal status, * either Complete or Error.
  • When all of the outputs reach a * terminal status, Job:Status changes to Complete only if * Outputs:Status for all of the outputs is * Complete. If Outputs:Status for one or more * outputs is Error, the terminal status for * Job:Status is also Error.
The * value of Status is one of the following: * Submitted, Progressing, * Complete, Canceled, or Error. *

* Returns a reference to this object so that method calls can be chained together. *

* Constraints:
* Pattern: (^Submitted$)|(^Progressing$)|(^Complete$)|(^Canceled$)|(^Error$)
* * @param status The status of one output in a job. If you specified only one output * for the job, Outputs:Status is always the same as * Job:Status. If you specified more than one output:

    *
  • Job:Status and Outputs:Status for all of * the outputs is Submitted until Elastic Transcoder starts to process * the first output.
  • When Elastic Transcoder starts to process * the first output, Outputs:Status for that output and * Job:Status both change to Progressing. For each output, * the value of Outputs:Status remains Submitted until * Elastic Transcoder starts to process the output.
  • Job:Status * remains Progressing until all of the outputs reach a terminal status, * either Complete or Error.
  • When all of the outputs reach a * terminal status, Job:Status changes to Complete only if * Outputs:Status for all of the outputs is * Complete. If Outputs:Status for one or more * outputs is Error, the terminal status for * Job:Status is also Error.
The * value of Status is one of the following: * Submitted, Progressing, * Complete, Canceled, or Error. * * @return A reference to this updated object so that method calls can be chained * together. */ public JobOutput withStatus(String status) { this.status = status; return this; } /** * Information that further explains Status. *

* Constraints:
* Length: 0 - 255
* * @return Information that further explains Status. */ public String getStatusDetail() { return statusDetail; } /** * Information that further explains Status. *

* Constraints:
* Length: 0 - 255
* * @param statusDetail Information that further explains Status. */ public void setStatusDetail(String statusDetail) { this.statusDetail = statusDetail; } /** * Information that further explains Status. *

* Returns a reference to this object so that method calls can be chained together. *

* Constraints:
* Length: 0 - 255
* * @param statusDetail Information that further explains Status. * * @return A reference to this updated object so that method calls can be chained * together. */ public JobOutput withStatusDetail(String statusDetail) { this.statusDetail = statusDetail; return this; } /** * Duration of the output file, in seconds. * * @return Duration of the output file, in seconds. */ public Long getDuration() { return duration; } /** * Duration of the output file, in seconds. * * @param duration Duration of the output file, in seconds. */ public void setDuration(Long duration) { this.duration = duration; } /** * Duration of the output file, in seconds. *

* Returns a reference to this object so that method calls can be chained together. * * @param duration Duration of the output file, in seconds. * * @return A reference to this updated object so that method calls can be chained * together. */ public JobOutput withDuration(Long duration) { this.duration = duration; return this; } /** * Specifies the width of the output file in pixels. * * @return Specifies the width of the output file in pixels. */ public Integer getWidth() { return width; } /** * Specifies the width of the output file in pixels. * * @param width Specifies the width of the output file in pixels. */ public void setWidth(Integer width) { this.width = width; } /** * Specifies the width of the output file in pixels. *

* Returns a reference to this object so that method calls can be chained together. * * @param width Specifies the width of the output file in pixels. * * @return A reference to this updated object so that method calls can be chained * together. */ public JobOutput withWidth(Integer width) { this.width = width; return this; } /** * Height of the output file, in pixels. * * @return Height of the output file, in pixels. */ public Integer getHeight() { return height; } /** * Height of the output file, in pixels. * * @param height Height of the output file, in pixels. */ public void setHeight(Integer height) { this.height = height; } /** * Height of the output file, in pixels. *

* Returns a reference to this object so that method calls can be chained together. * * @param height Height of the output file, in pixels. * * @return A reference to this updated object so that method calls can be chained * together. */ public JobOutput withHeight(Integer height) { this.height = height; return this; } /** * Information about the watermarks that you want Elastic Transcoder to * add to the video during transcoding. You can specify up to four * watermarks for each output. Settings for each watermark must be * defined in the preset that you specify in Preset for the * current output.

Watermarks are added to the output video in the * sequence in which you list them in the job output???the first * watermark in the list is added to the output video first, the second * watermark in the list is added next, and so on. As a result, if the * settings in a preset cause Elastic Transcoder to place all watermarks * in the same location, the second watermark that you add will cover the * first one, the third one will cover the second, and the fourth one * will cover the third. * * @return Information about the watermarks that you want Elastic Transcoder to * add to the video during transcoding. You can specify up to four * watermarks for each output. Settings for each watermark must be * defined in the preset that you specify in Preset for the * current output.

Watermarks are added to the output video in the * sequence in which you list them in the job output???the first * watermark in the list is added to the output video first, the second * watermark in the list is added next, and so on. As a result, if the * settings in a preset cause Elastic Transcoder to place all watermarks * in the same location, the second watermark that you add will cover the * first one, the third one will cover the second, and the fourth one * will cover the third. */ public java.util.List getWatermarks() { if (watermarks == null) { watermarks = new com.amazonaws.internal.ListWithAutoConstructFlag(); watermarks.setAutoConstruct(true); } return watermarks; } /** * Information about the watermarks that you want Elastic Transcoder to * add to the video during transcoding. You can specify up to four * watermarks for each output. Settings for each watermark must be * defined in the preset that you specify in Preset for the * current output.

Watermarks are added to the output video in the * sequence in which you list them in the job output???the first * watermark in the list is added to the output video first, the second * watermark in the list is added next, and so on. As a result, if the * settings in a preset cause Elastic Transcoder to place all watermarks * in the same location, the second watermark that you add will cover the * first one, the third one will cover the second, and the fourth one * will cover the third. * * @param watermarks Information about the watermarks that you want Elastic Transcoder to * add to the video during transcoding. You can specify up to four * watermarks for each output. Settings for each watermark must be * defined in the preset that you specify in Preset for the * current output.

Watermarks are added to the output video in the * sequence in which you list them in the job output???the first * watermark in the list is added to the output video first, the second * watermark in the list is added next, and so on. As a result, if the * settings in a preset cause Elastic Transcoder to place all watermarks * in the same location, the second watermark that you add will cover the * first one, the third one will cover the second, and the fourth one * will cover the third. */ public void setWatermarks(java.util.Collection watermarks) { if (watermarks == null) { this.watermarks = null; return; } com.amazonaws.internal.ListWithAutoConstructFlag watermarksCopy = new com.amazonaws.internal.ListWithAutoConstructFlag(watermarks.size()); watermarksCopy.addAll(watermarks); this.watermarks = watermarksCopy; } /** * Information about the watermarks that you want Elastic Transcoder to * add to the video during transcoding. You can specify up to four * watermarks for each output. Settings for each watermark must be * defined in the preset that you specify in Preset for the * current output.

Watermarks are added to the output video in the * sequence in which you list them in the job output???the first * watermark in the list is added to the output video first, the second * watermark in the list is added next, and so on. As a result, if the * settings in a preset cause Elastic Transcoder to place all watermarks * in the same location, the second watermark that you add will cover the * first one, the third one will cover the second, and the fourth one * will cover the third. *

* Returns a reference to this object so that method calls can be chained together. * * @param watermarks Information about the watermarks that you want Elastic Transcoder to * add to the video during transcoding. You can specify up to four * watermarks for each output. Settings for each watermark must be * defined in the preset that you specify in Preset for the * current output.

Watermarks are added to the output video in the * sequence in which you list them in the job output???the first * watermark in the list is added to the output video first, the second * watermark in the list is added next, and so on. As a result, if the * settings in a preset cause Elastic Transcoder to place all watermarks * in the same location, the second watermark that you add will cover the * first one, the third one will cover the second, and the fourth one * will cover the third. * * @return A reference to this updated object so that method calls can be chained * together. */ public JobOutput withWatermarks(JobWatermark... watermarks) { if (getWatermarks() == null) setWatermarks(new java.util.ArrayList(watermarks.length)); for (JobWatermark value : watermarks) { getWatermarks().add(value); } return this; } /** * Information about the watermarks that you want Elastic Transcoder to * add to the video during transcoding. You can specify up to four * watermarks for each output. Settings for each watermark must be * defined in the preset that you specify in Preset for the * current output.

Watermarks are added to the output video in the * sequence in which you list them in the job output???the first * watermark in the list is added to the output video first, the second * watermark in the list is added next, and so on. As a result, if the * settings in a preset cause Elastic Transcoder to place all watermarks * in the same location, the second watermark that you add will cover the * first one, the third one will cover the second, and the fourth one * will cover the third. *

* Returns a reference to this object so that method calls can be chained together. * * @param watermarks Information about the watermarks that you want Elastic Transcoder to * add to the video during transcoding. You can specify up to four * watermarks for each output. Settings for each watermark must be * defined in the preset that you specify in Preset for the * current output.

Watermarks are added to the output video in the * sequence in which you list them in the job output???the first * watermark in the list is added to the output video first, the second * watermark in the list is added next, and so on. As a result, if the * settings in a preset cause Elastic Transcoder to place all watermarks * in the same location, the second watermark that you add will cover the * first one, the third one will cover the second, and the fourth one * will cover the third. * * @return A reference to this updated object so that method calls can be chained * together. */ public JobOutput withWatermarks(java.util.Collection watermarks) { if (watermarks == null) { this.watermarks = null; } else { com.amazonaws.internal.ListWithAutoConstructFlag watermarksCopy = new com.amazonaws.internal.ListWithAutoConstructFlag(watermarks.size()); watermarksCopy.addAll(watermarks); this.watermarks = watermarksCopy; } return this; } /** * The album art to be associated with the output file, if any. * * @return The album art to be associated with the output file, if any. */ public JobAlbumArt getAlbumArt() { return albumArt; } /** * The album art to be associated with the output file, if any. * * @param albumArt The album art to be associated with the output file, if any. */ public void setAlbumArt(JobAlbumArt albumArt) { this.albumArt = albumArt; } /** * The album art to be associated with the output file, if any. *

* Returns a reference to this object so that method calls can be chained together. * * @param albumArt The album art to be associated with the output file, if any. * * @return A reference to this updated object so that method calls can be chained * together. */ public JobOutput withAlbumArt(JobAlbumArt albumArt) { this.albumArt = albumArt; return this; } /** * You can create an output file that contains an excerpt from the input * file. This excerpt, called a clip, can come from the beginning, * middle, or end of the file. The Composition object contains settings * for the clips that make up an output file. For the current release, * you can only specify settings for a single clip per output file. The * Composition object cannot be null. * * @return You can create an output file that contains an excerpt from the input * file. This excerpt, called a clip, can come from the beginning, * middle, or end of the file. The Composition object contains settings * for the clips that make up an output file. For the current release, * you can only specify settings for a single clip per output file. The * Composition object cannot be null. */ public java.util.List getComposition() { if (composition == null) { composition = new com.amazonaws.internal.ListWithAutoConstructFlag(); composition.setAutoConstruct(true); } return composition; } /** * You can create an output file that contains an excerpt from the input * file. This excerpt, called a clip, can come from the beginning, * middle, or end of the file. The Composition object contains settings * for the clips that make up an output file. For the current release, * you can only specify settings for a single clip per output file. The * Composition object cannot be null. * * @param composition You can create an output file that contains an excerpt from the input * file. This excerpt, called a clip, can come from the beginning, * middle, or end of the file. The Composition object contains settings * for the clips that make up an output file. For the current release, * you can only specify settings for a single clip per output file. The * Composition object cannot be null. */ public void setComposition(java.util.Collection composition) { if (composition == null) { this.composition = null; return; } com.amazonaws.internal.ListWithAutoConstructFlag compositionCopy = new com.amazonaws.internal.ListWithAutoConstructFlag(composition.size()); compositionCopy.addAll(composition); this.composition = compositionCopy; } /** * You can create an output file that contains an excerpt from the input * file. This excerpt, called a clip, can come from the beginning, * middle, or end of the file. The Composition object contains settings * for the clips that make up an output file. For the current release, * you can only specify settings for a single clip per output file. The * Composition object cannot be null. *

* Returns a reference to this object so that method calls can be chained together. * * @param composition You can create an output file that contains an excerpt from the input * file. This excerpt, called a clip, can come from the beginning, * middle, or end of the file. The Composition object contains settings * for the clips that make up an output file. For the current release, * you can only specify settings for a single clip per output file. The * Composition object cannot be null. * * @return A reference to this updated object so that method calls can be chained * together. */ public JobOutput withComposition(Clip... composition) { if (getComposition() == null) setComposition(new java.util.ArrayList(composition.length)); for (Clip value : composition) { getComposition().add(value); } return this; } /** * You can create an output file that contains an excerpt from the input * file. This excerpt, called a clip, can come from the beginning, * middle, or end of the file. The Composition object contains settings * for the clips that make up an output file. For the current release, * you can only specify settings for a single clip per output file. The * Composition object cannot be null. *

* Returns a reference to this object so that method calls can be chained together. * * @param composition You can create an output file that contains an excerpt from the input * file. This excerpt, called a clip, can come from the beginning, * middle, or end of the file. The Composition object contains settings * for the clips that make up an output file. For the current release, * you can only specify settings for a single clip per output file. The * Composition object cannot be null. * * @return A reference to this updated object so that method calls can be chained * together. */ public JobOutput withComposition(java.util.Collection composition) { if (composition == null) { this.composition = null; } else { com.amazonaws.internal.ListWithAutoConstructFlag compositionCopy = new com.amazonaws.internal.ListWithAutoConstructFlag(composition.size()); compositionCopy.addAll(composition); this.composition = compositionCopy; } return this; } /** * You can configure Elastic Transcoder to transcode captions, or * subtitles, from one format to another. All captions must be in UTF-8. * Elastic Transcoder supports two types of captions:

    *
  • Embedded: Embedded captions are included in the same * file as the audio and video. Elastic Transcoder supports only one * embedded caption per language, to a maximum of 300 embedded captions * per file.

    Valid input values include: CEA-608 * (EIA-608, first non-empty channel only), CEA-708 * (EIA-708, first non-empty channel only), and * mov-text

    Valid outputs include: mov-text *

    Elastic Transcoder supports a maximum of one embedded format per * output.

  • Sidecar: Sidecar captions are kept in a * separate metadata file from the audio and video data. Sidecar captions * require a player that is capable of understanding the relationship * between the video file and the sidecar file. Elastic Transcoder * supports only one sidecar caption per language, to a maximum of 20 * sidecar captions per file.

    Valid input values include: * dfxp (first div element only), ebu-tt, * scc, smpt, srt, * ttml (first div element only), and webvtt *

    Valid outputs include: dfxp (first div element only), * scc, srt, and webvtt.

  • *

If you want ttml or smpte-tt compatible captions, specify * dfxp as your output format.

Elastic Transcoder does not support OCR * (Optical Character Recognition), does not accept pictures as a valid * input for captions, and is not available for audio-only transcoding. * Elastic Transcoder does not preserve text formatting (for example, * italics) during the transcoding process.

To remove captions or * leave the captions empty, set Captions to null. To pass * through existing captions unchanged, set the MergePolicy * to MergeRetain, and pass in a null * CaptionSources array.

For more information on embedded * files, see the Subtitles Wikipedia page.

For more information on * sidecar files, see the Extensible Metadata Platform and Sidecar file * Wikipedia pages. * * @return You can configure Elastic Transcoder to transcode captions, or * subtitles, from one format to another. All captions must be in UTF-8. * Elastic Transcoder supports two types of captions:

    *
  • Embedded: Embedded captions are included in the same * file as the audio and video. Elastic Transcoder supports only one * embedded caption per language, to a maximum of 300 embedded captions * per file.

    Valid input values include: CEA-608 * (EIA-608, first non-empty channel only), CEA-708 * (EIA-708, first non-empty channel only), and * mov-text

    Valid outputs include: mov-text *

    Elastic Transcoder supports a maximum of one embedded format per * output.

  • Sidecar: Sidecar captions are kept in a * separate metadata file from the audio and video data. Sidecar captions * require a player that is capable of understanding the relationship * between the video file and the sidecar file. Elastic Transcoder * supports only one sidecar caption per language, to a maximum of 20 * sidecar captions per file.

    Valid input values include: * dfxp (first div element only), ebu-tt, * scc, smpt, srt, * ttml (first div element only), and webvtt *

    Valid outputs include: dfxp (first div element only), * scc, srt, and webvtt.

  • *

If you want ttml or smpte-tt compatible captions, specify * dfxp as your output format.

Elastic Transcoder does not support OCR * (Optical Character Recognition), does not accept pictures as a valid * input for captions, and is not available for audio-only transcoding. * Elastic Transcoder does not preserve text formatting (for example, * italics) during the transcoding process.

To remove captions or * leave the captions empty, set Captions to null. To pass * through existing captions unchanged, set the MergePolicy * to MergeRetain, and pass in a null * CaptionSources array.

For more information on embedded * files, see the Subtitles Wikipedia page.

For more information on * sidecar files, see the Extensible Metadata Platform and Sidecar file * Wikipedia pages. */ public Captions getCaptions() { return captions; } /** * You can configure Elastic Transcoder to transcode captions, or * subtitles, from one format to another. All captions must be in UTF-8. * Elastic Transcoder supports two types of captions:

    *
  • Embedded: Embedded captions are included in the same * file as the audio and video. Elastic Transcoder supports only one * embedded caption per language, to a maximum of 300 embedded captions * per file.

    Valid input values include: CEA-608 * (EIA-608, first non-empty channel only), CEA-708 * (EIA-708, first non-empty channel only), and * mov-text

    Valid outputs include: mov-text *

    Elastic Transcoder supports a maximum of one embedded format per * output.

  • Sidecar: Sidecar captions are kept in a * separate metadata file from the audio and video data. Sidecar captions * require a player that is capable of understanding the relationship * between the video file and the sidecar file. Elastic Transcoder * supports only one sidecar caption per language, to a maximum of 20 * sidecar captions per file.

    Valid input values include: * dfxp (first div element only), ebu-tt, * scc, smpt, srt, * ttml (first div element only), and webvtt *

    Valid outputs include: dfxp (first div element only), * scc, srt, and webvtt.

  • *

If you want ttml or smpte-tt compatible captions, specify * dfxp as your output format.

Elastic Transcoder does not support OCR * (Optical Character Recognition), does not accept pictures as a valid * input for captions, and is not available for audio-only transcoding. * Elastic Transcoder does not preserve text formatting (for example, * italics) during the transcoding process.

To remove captions or * leave the captions empty, set Captions to null. To pass * through existing captions unchanged, set the MergePolicy * to MergeRetain, and pass in a null * CaptionSources array.

For more information on embedded * files, see the Subtitles Wikipedia page.

For more information on * sidecar files, see the Extensible Metadata Platform and Sidecar file * Wikipedia pages. * * @param captions You can configure Elastic Transcoder to transcode captions, or * subtitles, from one format to another. All captions must be in UTF-8. * Elastic Transcoder supports two types of captions:

    *
  • Embedded: Embedded captions are included in the same * file as the audio and video. Elastic Transcoder supports only one * embedded caption per language, to a maximum of 300 embedded captions * per file.

    Valid input values include: CEA-608 * (EIA-608, first non-empty channel only), CEA-708 * (EIA-708, first non-empty channel only), and * mov-text

    Valid outputs include: mov-text *

    Elastic Transcoder supports a maximum of one embedded format per * output.

  • Sidecar: Sidecar captions are kept in a * separate metadata file from the audio and video data. Sidecar captions * require a player that is capable of understanding the relationship * between the video file and the sidecar file. Elastic Transcoder * supports only one sidecar caption per language, to a maximum of 20 * sidecar captions per file.

    Valid input values include: * dfxp (first div element only), ebu-tt, * scc, smpt, srt, * ttml (first div element only), and webvtt *

    Valid outputs include: dfxp (first div element only), * scc, srt, and webvtt.

  • *

If you want ttml or smpte-tt compatible captions, specify * dfxp as your output format.

Elastic Transcoder does not support OCR * (Optical Character Recognition), does not accept pictures as a valid * input for captions, and is not available for audio-only transcoding. * Elastic Transcoder does not preserve text formatting (for example, * italics) during the transcoding process.

To remove captions or * leave the captions empty, set Captions to null. To pass * through existing captions unchanged, set the MergePolicy * to MergeRetain, and pass in a null * CaptionSources array.

For more information on embedded * files, see the Subtitles Wikipedia page.

For more information on * sidecar files, see the Extensible Metadata Platform and Sidecar file * Wikipedia pages. */ public void setCaptions(Captions captions) { this.captions = captions; } /** * You can configure Elastic Transcoder to transcode captions, or * subtitles, from one format to another. All captions must be in UTF-8. * Elastic Transcoder supports two types of captions:

    *
  • Embedded: Embedded captions are included in the same * file as the audio and video. Elastic Transcoder supports only one * embedded caption per language, to a maximum of 300 embedded captions * per file.

    Valid input values include: CEA-608 * (EIA-608, first non-empty channel only), CEA-708 * (EIA-708, first non-empty channel only), and * mov-text

    Valid outputs include: mov-text *

    Elastic Transcoder supports a maximum of one embedded format per * output.

  • Sidecar: Sidecar captions are kept in a * separate metadata file from the audio and video data. Sidecar captions * require a player that is capable of understanding the relationship * between the video file and the sidecar file. Elastic Transcoder * supports only one sidecar caption per language, to a maximum of 20 * sidecar captions per file.

    Valid input values include: * dfxp (first div element only), ebu-tt, * scc, smpt, srt, * ttml (first div element only), and webvtt *

    Valid outputs include: dfxp (first div element only), * scc, srt, and webvtt.

  • *

If you want ttml or smpte-tt compatible captions, specify * dfxp as your output format.

Elastic Transcoder does not support OCR * (Optical Character Recognition), does not accept pictures as a valid * input for captions, and is not available for audio-only transcoding. * Elastic Transcoder does not preserve text formatting (for example, * italics) during the transcoding process.

To remove captions or * leave the captions empty, set Captions to null. To pass * through existing captions unchanged, set the MergePolicy * to MergeRetain, and pass in a null * CaptionSources array.

For more information on embedded * files, see the Subtitles Wikipedia page.

For more information on * sidecar files, see the Extensible Metadata Platform and Sidecar file * Wikipedia pages. *

* Returns a reference to this object so that method calls can be chained together. * * @param captions You can configure Elastic Transcoder to transcode captions, or * subtitles, from one format to another. All captions must be in UTF-8. * Elastic Transcoder supports two types of captions:

    *
  • Embedded: Embedded captions are included in the same * file as the audio and video. Elastic Transcoder supports only one * embedded caption per language, to a maximum of 300 embedded captions * per file.

    Valid input values include: CEA-608 * (EIA-608, first non-empty channel only), CEA-708 * (EIA-708, first non-empty channel only), and * mov-text

    Valid outputs include: mov-text *

    Elastic Transcoder supports a maximum of one embedded format per * output.

  • Sidecar: Sidecar captions are kept in a * separate metadata file from the audio and video data. Sidecar captions * require a player that is capable of understanding the relationship * between the video file and the sidecar file. Elastic Transcoder * supports only one sidecar caption per language, to a maximum of 20 * sidecar captions per file.

    Valid input values include: * dfxp (first div element only), ebu-tt, * scc, smpt, srt, * ttml (first div element only), and webvtt *

    Valid outputs include: dfxp (first div element only), * scc, srt, and webvtt.

  • *

If you want ttml or smpte-tt compatible captions, specify * dfxp as your output format.

Elastic Transcoder does not support OCR * (Optical Character Recognition), does not accept pictures as a valid * input for captions, and is not available for audio-only transcoding. * Elastic Transcoder does not preserve text formatting (for example, * italics) during the transcoding process.

To remove captions or * leave the captions empty, set Captions to null. To pass * through existing captions unchanged, set the MergePolicy * to MergeRetain, and pass in a null * CaptionSources array.

For more information on embedded * files, see the Subtitles Wikipedia page.

For more information on * sidecar files, see the Extensible Metadata Platform and Sidecar file * Wikipedia pages. * * @return A reference to this updated object so that method calls can be chained * together. */ public JobOutput withCaptions(Captions captions) { this.captions = captions; return this; } /** * Returns a string representation of this object; useful for testing and * debugging. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getId() != null) sb.append("Id: " + getId() + ","); if (getKey() != null) sb.append("Key: " + getKey() + ","); if (getThumbnailPattern() != null) sb.append("ThumbnailPattern: " + getThumbnailPattern() + ","); if (getRotate() != null) sb.append("Rotate: " + getRotate() + ","); if (getPresetId() != null) sb.append("PresetId: " + getPresetId() + ","); if (getSegmentDuration() != null) sb.append("SegmentDuration: " + getSegmentDuration() + ","); if (getStatus() != null) sb.append("Status: " + getStatus() + ","); if (getStatusDetail() != null) sb.append("StatusDetail: " + getStatusDetail() + ","); if (getDuration() != null) sb.append("Duration: " + getDuration() + ","); if (getWidth() != null) sb.append("Width: " + getWidth() + ","); if (getHeight() != null) sb.append("Height: " + getHeight() + ","); if (getWatermarks() != null) sb.append("Watermarks: " + getWatermarks() + ","); if (getAlbumArt() != null) sb.append("AlbumArt: " + getAlbumArt() + ","); if (getComposition() != null) sb.append("Composition: " + getComposition() + ","); if (getCaptions() != null) sb.append("Captions: " + getCaptions() ); sb.append("}"); return sb.toString(); } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getId() == null) ? 0 : getId().hashCode()); hashCode = prime * hashCode + ((getKey() == null) ? 0 : getKey().hashCode()); hashCode = prime * hashCode + ((getThumbnailPattern() == null) ? 0 : getThumbnailPattern().hashCode()); hashCode = prime * hashCode + ((getRotate() == null) ? 0 : getRotate().hashCode()); hashCode = prime * hashCode + ((getPresetId() == null) ? 0 : getPresetId().hashCode()); hashCode = prime * hashCode + ((getSegmentDuration() == null) ? 0 : getSegmentDuration().hashCode()); hashCode = prime * hashCode + ((getStatus() == null) ? 0 : getStatus().hashCode()); hashCode = prime * hashCode + ((getStatusDetail() == null) ? 0 : getStatusDetail().hashCode()); hashCode = prime * hashCode + ((getDuration() == null) ? 0 : getDuration().hashCode()); hashCode = prime * hashCode + ((getWidth() == null) ? 0 : getWidth().hashCode()); hashCode = prime * hashCode + ((getHeight() == null) ? 0 : getHeight().hashCode()); hashCode = prime * hashCode + ((getWatermarks() == null) ? 0 : getWatermarks().hashCode()); hashCode = prime * hashCode + ((getAlbumArt() == null) ? 0 : getAlbumArt().hashCode()); hashCode = prime * hashCode + ((getComposition() == null) ? 0 : getComposition().hashCode()); hashCode = prime * hashCode + ((getCaptions() == null) ? 0 : getCaptions().hashCode()); return hashCode; } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof JobOutput == false) return false; JobOutput other = (JobOutput)obj; if (other.getId() == null ^ this.getId() == null) return false; if (other.getId() != null && other.getId().equals(this.getId()) == false) return false; if (other.getKey() == null ^ this.getKey() == null) return false; if (other.getKey() != null && other.getKey().equals(this.getKey()) == false) return false; if (other.getThumbnailPattern() == null ^ this.getThumbnailPattern() == null) return false; if (other.getThumbnailPattern() != null && other.getThumbnailPattern().equals(this.getThumbnailPattern()) == false) return false; if (other.getRotate() == null ^ this.getRotate() == null) return false; if (other.getRotate() != null && other.getRotate().equals(this.getRotate()) == false) return false; if (other.getPresetId() == null ^ this.getPresetId() == null) return false; if (other.getPresetId() != null && other.getPresetId().equals(this.getPresetId()) == false) return false; if (other.getSegmentDuration() == null ^ this.getSegmentDuration() == null) return false; if (other.getSegmentDuration() != null && other.getSegmentDuration().equals(this.getSegmentDuration()) == false) return false; if (other.getStatus() == null ^ this.getStatus() == null) return false; if (other.getStatus() != null && other.getStatus().equals(this.getStatus()) == false) return false; if (other.getStatusDetail() == null ^ this.getStatusDetail() == null) return false; if (other.getStatusDetail() != null && other.getStatusDetail().equals(this.getStatusDetail()) == false) return false; if (other.getDuration() == null ^ this.getDuration() == null) return false; if (other.getDuration() != null && other.getDuration().equals(this.getDuration()) == false) return false; if (other.getWidth() == null ^ this.getWidth() == null) return false; if (other.getWidth() != null && other.getWidth().equals(this.getWidth()) == false) return false; if (other.getHeight() == null ^ this.getHeight() == null) return false; if (other.getHeight() != null && other.getHeight().equals(this.getHeight()) == false) return false; if (other.getWatermarks() == null ^ this.getWatermarks() == null) return false; if (other.getWatermarks() != null && other.getWatermarks().equals(this.getWatermarks()) == false) return false; if (other.getAlbumArt() == null ^ this.getAlbumArt() == null) return false; if (other.getAlbumArt() != null && other.getAlbumArt().equals(this.getAlbumArt()) == false) return false; if (other.getComposition() == null ^ this.getComposition() == null) return false; if (other.getComposition() != null && other.getComposition().equals(this.getComposition()) == false) return false; if (other.getCaptions() == null ^ this.getCaptions() == null) return false; if (other.getCaptions() != null && other.getCaptions().equals(this.getCaptions()) == false) return false; return true; } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy