/* * Copyright 2018-2023 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; import javax.annotation.Generated; import com.amazonaws.protocol.StructuredPojo; import com.amazonaws.protocol.ProtocolMarshaller; /** *

* The VideoParameters structure. *

*/ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class VideoParameters implements Serializable, Cloneable, StructuredPojo { /** *

* The video codec for the output file. Valid values include gif, H.264, * mpeg2, vp8, and vp9. You can only specify vp8 and * vp9 when the container type is webm, gif when the container type is * gif, and mpeg2 when the container type is mpg. *

*/ private String codec; /** *

* Profile (H.264/VP8/VP9 Only) *

*

* The H.264 profile that you want to use for the output file. Elastic Transcoder supports the following profiles: *

* *

* Level (H.264 Only) *

*

* The H.264 level that you want to use for the output file. Elastic Transcoder supports the following levels: *

*

* 1, 1b, 1.1, 1.2, 1.3, 2, * 2.1, 2.2, 3, 3.1, 3.2, 4, * 4.1 *

*

* MaxReferenceFrames (H.264 Only) *

*

* Applicable only when the value of Video:Codec is H.264. The maximum number of previously decoded frames to use as * a reference for decoding future frames. Valid values are integers 0 through 16, but we recommend that you not use * a value greater than the following: *

*

* Min(Floor(Maximum decoded picture buffer in macroblocks * 256 / (Width in pixels * Height in pixels)), 16) *

*

* where Width in pixels and Height in pixels represent either MaxWidth and MaxHeight, or Resolution. * Maximum decoded picture buffer in macroblocks depends on the value of the Level object. See * the list below. (A macroblock is a block of pixels measuring 16x16.) *

* *

* MaxBitRate (Optional, H.264/MPEG2/VP8/VP9 only) *

*

* The maximum number of bits per second in a video buffer; the size of the buffer is specified by * BufferSize. Specify a value between 16 and 62,500. You can reduce the bandwidth required to stream a * video by reducing the maximum bit rate, but this also reduces the quality of the video. *

*

* BufferSize (Optional, H.264/MPEG2/VP8/VP9 only) *

*

* The maximum number of bits in any x seconds of the output video. This window is commonly 10 seconds, the standard * segment duration when you're using FMP4 or MPEG-TS for the container type of the output video. Specify an integer * greater than 0. If you specify MaxBitRate and omit BufferSize, Elastic Transcoder sets * BufferSize to 10 times the value of MaxBitRate. *

*

* InterlacedMode (Optional, H.264/MPEG2 Only) *

*

* The interlace mode for the output video. *

*

* Interlaced video is used to double the perceived frame rate for a video by interlacing two fields (one field on * every other line, the other field on the other lines) so that the human eye registers multiple pictures per * frame. Interlacing reduces the bandwidth required for transmitting a video, but can result in blurred images and * flickering. *

*

* Valid values include Progressive (no interlacing, top to bottom), TopFirst (top field * first), BottomFirst (bottom field first), and Auto. *

*

* If InterlaceMode is not specified, Elastic Transcoder uses Progressive for the output. * If Auto is specified, Elastic Transcoder interlaces the output. *

*

* ColorSpaceConversionMode (Optional, H.264/MPEG2 Only) *

*

* The color space conversion Elastic Transcoder applies to the output video. Color spaces are the algorithms used * by the computer to store information about how to render color. Bt.601 is the standard for standard * definition video, while Bt.709 is the standard for high definition video. *

*

* Valid values include None, Bt709toBt601, Bt601toBt709, and * Auto. *

*

* If you chose Auto for ColorSpaceConversionMode and your output is interlaced, your * frame rate is one of 23.97, 24, 25, 29.97, 50, * or 60, your SegmentDuration is null, and you are using one of the resolution changes * from the list below, Elastic Transcoder applies the following color space conversions: *

* * *

* Elastic Transcoder may change the behavior of the ColorspaceConversionMode Auto mode in * the future. All outputs in a playlist must use the same ColorSpaceConversionMode. *

*
*

* If you do not specify a ColorSpaceConversionMode, Elastic Transcoder does not change the color space * of a file. If you are unsure what ColorSpaceConversionMode was applied to your output file, you can * check the AppliedColorSpaceConversion parameter included in your job response. If your job does not * have an AppliedColorSpaceConversion in its response, no ColorSpaceConversionMode was * applied. *

*

* ChromaSubsampling *

*

* The sampling pattern for the chroma (color) channels of the output video. Valid values include * yuv420p and yuv422p. *

*

* yuv420p samples the chroma information of every other horizontal and every other vertical line, * yuv422p samples the color information of every horizontal line and every other vertical line. *

*

* LoopCount (Gif Only) *

*

* The number of times you want the output gif to loop. Valid values include Infinite and integers * between 0 and 100, inclusive. *

*/ private com.amazonaws.internal.SdkInternalMap codecOptions; /** *

* Applicable only when the value of Video:Codec is one of H.264, MPEG2, or * VP8. *

*

* The maximum number of frames between key frames. Key frames are fully encoded frames; the frames between key * frames are encoded based, in part, on the content of the key frames. The value is an integer formatted as a * string; valid values are between 1 (every frame is a key frame) and 100000, inclusive. A higher value results in * higher compression but may also discernibly decrease video quality. *

*

* For Smooth outputs, the FrameRate must have a constant ratio to the * KeyframesMaxDist. This allows Smooth playlists to switch between different quality * levels while the file is being played. *

*

* For example, an input file can have a FrameRate of 30 with a KeyframesMaxDist of 90. * The output file then needs to have a ratio of 1:3. Valid outputs would have FrameRate of 30, 25, and * 10, and KeyframesMaxDist of 90, 75, and 30, respectively. *

*

* Alternately, this can be achieved by setting FrameRate to auto and having the same values for * MaxFrameRate and KeyframesMaxDist. *

*/ private String keyframesMaxDist; /** *

* Applicable only when the value of Video:Codec is one of H.264, MPEG2, or * VP8. *

*

* Whether to use a fixed value for FixedGOP. Valid values are true and false * : *

* * *

* FixedGOP must be set to true for fmp4 containers. *

*
*/ private String fixedGOP; /** *

* The bit rate of the video stream in the output file, in kilobits/second. Valid values depend on the values of * Level and Profile. If you specify auto, Elastic Transcoder uses the * detected bit rate of the input source. If you specify a value other than auto, we recommend that you * specify a value less than or equal to the maximum H.264-compliant value listed for your level and profile: *

*

* Level - Maximum video bit rate in kilobits/second (baseline and main Profile) : maximum video bit rate in * kilobits/second (high Profile) *

* */ private String bitRate; /** *

* The frames per second for the video stream in the output file. Valid values include: *

*

* auto, 10, 15, 23.97, 24, 25, * 29.97, 30, 60 *

*

* If you specify auto, Elastic Transcoder uses the detected frame rate of the input source. If you * specify a frame rate, we recommend that you perform the following calculation: *

*

* Frame rate = maximum recommended decoding speed in luma samples/second / (width in pixels * height in pixels) *

*

* where: *

* *

* The maximum recommended decoding speed in Luma samples/second for each level is described in the following list * (Level - Decoding speed): *

* */ private String frameRate; /** *

* If you specify auto for FrameRate, Elastic Transcoder uses the frame rate of the input * video for the frame rate of the output video. Specify the maximum frame rate that you want Elastic Transcoder to * use when the frame rate of the input video is greater than the desired maximum frame rate of the output video. * Valid values include: 10, 15, 23.97, 24, 25, * 29.97, 30, 60. *

*/ private String maxFrameRate; /** * *

* To better control resolution and aspect ratio of output videos, we recommend that you use the values * MaxWidth, MaxHeight, SizingPolicy, PaddingPolicy, and * DisplayAspectRatio instead of Resolution and AspectRatio. The two groups * of settings are mutually exclusive. Do not use them together. *

*
*

* The width and height of the video in the output file, in pixels. Valid values are auto and * width x height: *

* *

* Note the following about specifying the width and height: *

* */ private String resolution; /** * *

* To better control resolution and aspect ratio of output videos, we recommend that you use the values * MaxWidth, MaxHeight, SizingPolicy, PaddingPolicy, and * DisplayAspectRatio instead of Resolution and AspectRatio. The two groups * of settings are mutually exclusive. Do not use them together. *

*
*

* The display aspect ratio of the video in the output file. Valid values include: *

*

* auto, 1:1, 4:3, 3:2, 16:9 *

*

* If you specify auto, Elastic Transcoder tries to preserve the aspect ratio of the input file. *

*

* If you specify an aspect ratio for the output file that differs from aspect ratio of the input file, Elastic * Transcoder adds pillarboxing (black bars on the sides) or letterboxing (black bars on the top and bottom) to * maintain the aspect ratio of the active region of the video. *

*/ private String aspectRatio; /** *

* The maximum width of the output video in pixels. If you specify auto, Elastic Transcoder uses 1920 * (Full HD) as the default value. If you specify a numeric value, enter an even integer between 128 and 4096. *

*/ private String maxWidth; /** *

* The maximum height of the output video in pixels. If you specify auto, Elastic Transcoder uses 1080 * (Full HD) as the default value. If you specify a numeric value, enter an even integer between 96 and 3072. *

*/ private String maxHeight; /** *

* The value that Elastic Transcoder adds to the metadata in the output file. *

*/ private String displayAspectRatio; /** *

* Specify one of the following values to control scaling of the output video: *

* */ private String sizingPolicy; /** *

* When you set PaddingPolicy to Pad, Elastic Transcoder may add black bars to the top and * bottom and/or left and right sides of the output video to make the total size of the output video match the * values that you specified for MaxWidth and MaxHeight. *

*/ private String paddingPolicy; /** *

* Settings for the size, location, and opacity of graphics that you want Elastic Transcoder to overlay over videos * that are transcoded using this preset. You can specify settings for up to four watermarks. Watermarks appear in * the specified size and location, and with the specified opacity for the duration of the transcoded video. *

*

* Watermarks can be in .png or .jpg format. If you want to display a watermark that is not rectangular, use the * .png format, which supports transparency. *

*

* When you create a job that uses this preset, you specify the .png or .jpg graphics that you want Elastic * Transcoder to include in the transcoded videos. You can specify fewer graphics in the job than you specify * watermark settings in the preset, which allows you to use the same preset for up to four watermarks that have * different dimensions. *

*/ private com.amazonaws.internal.SdkInternalList watermarks; /** *

* The video codec for the output file. Valid values include gif, H.264, * mpeg2, vp8, and vp9. You can only specify vp8 and * vp9 when the container type is webm, gif when the container type is * gif, and mpeg2 when the container type is mpg. *

* * @param codec * The video codec for the output file. Valid values include gif, H.264, * mpeg2, vp8, and vp9. You can only specify vp8 and * vp9 when the container type is webm, gif when the container type is * gif, and mpeg2 when the container type is mpg. */ public void setCodec(String codec) { this.codec = codec; } /** *

* The video codec for the output file. Valid values include gif, H.264, * mpeg2, vp8, and vp9. You can only specify vp8 and * vp9 when the container type is webm, gif when the container type is * gif, and mpeg2 when the container type is mpg. *

* * @return The video codec for the output file. Valid values include gif, H.264, * mpeg2, vp8, and vp9. You can only specify vp8 and * vp9 when the container type is webm, gif when the container type * is gif, and mpeg2 when the container type is mpg. */ public String getCodec() { return this.codec; } /** *

* The video codec for the output file. Valid values include gif, H.264, * mpeg2, vp8, and vp9. You can only specify vp8 and * vp9 when the container type is webm, gif when the container type is * gif, and mpeg2 when the container type is mpg. *

* * @param codec * The video codec for the output file. Valid values include gif, H.264, * mpeg2, vp8, and vp9. You can only specify vp8 and * vp9 when the container type is webm, gif when the container type is * gif, and mpeg2 when the container type is mpg. * @return Returns a reference to this object so that method calls can be chained together. */ public VideoParameters withCodec(String codec) { setCodec(codec); return this; } /** *

* Profile (H.264/VP8/VP9 Only) *

*

* The H.264 profile that you want to use for the output file. Elastic Transcoder supports the following profiles: *

* *

* Level (H.264 Only) *

*

* The H.264 level that you want to use for the output file. Elastic Transcoder supports the following levels: *

*

* 1, 1b, 1.1, 1.2, 1.3, 2, * 2.1, 2.2, 3, 3.1, 3.2, 4, * 4.1 *

*

* MaxReferenceFrames (H.264 Only) *

*

* Applicable only when the value of Video:Codec is H.264. The maximum number of previously decoded frames to use as * a reference for decoding future frames. Valid values are integers 0 through 16, but we recommend that you not use * a value greater than the following: *

*

* Min(Floor(Maximum decoded picture buffer in macroblocks * 256 / (Width in pixels * Height in pixels)), 16) *

*

* where Width in pixels and Height in pixels represent either MaxWidth and MaxHeight, or Resolution. * Maximum decoded picture buffer in macroblocks depends on the value of the Level object. See * the list below. (A macroblock is a block of pixels measuring 16x16.) *

* *

* MaxBitRate (Optional, H.264/MPEG2/VP8/VP9 only) *

*

* The maximum number of bits per second in a video buffer; the size of the buffer is specified by * BufferSize. Specify a value between 16 and 62,500. You can reduce the bandwidth required to stream a * video by reducing the maximum bit rate, but this also reduces the quality of the video. *

*

* BufferSize (Optional, H.264/MPEG2/VP8/VP9 only) *

*

* The maximum number of bits in any x seconds of the output video. This window is commonly 10 seconds, the standard * segment duration when you're using FMP4 or MPEG-TS for the container type of the output video. Specify an integer * greater than 0. If you specify MaxBitRate and omit BufferSize, Elastic Transcoder sets * BufferSize to 10 times the value of MaxBitRate. *

*

* InterlacedMode (Optional, H.264/MPEG2 Only) *

*

* The interlace mode for the output video. *

*

* Interlaced video is used to double the perceived frame rate for a video by interlacing two fields (one field on * every other line, the other field on the other lines) so that the human eye registers multiple pictures per * frame. Interlacing reduces the bandwidth required for transmitting a video, but can result in blurred images and * flickering. *

*

* Valid values include Progressive (no interlacing, top to bottom), TopFirst (top field * first), BottomFirst (bottom field first), and Auto. *

*

* If InterlaceMode is not specified, Elastic Transcoder uses Progressive for the output. * If Auto is specified, Elastic Transcoder interlaces the output. *

*

* ColorSpaceConversionMode (Optional, H.264/MPEG2 Only) *

*

* The color space conversion Elastic Transcoder applies to the output video. Color spaces are the algorithms used * by the computer to store information about how to render color. Bt.601 is the standard for standard * definition video, while Bt.709 is the standard for high definition video. *

*

* Valid values include None, Bt709toBt601, Bt601toBt709, and * Auto. *

*

* If you chose Auto for ColorSpaceConversionMode and your output is interlaced, your * frame rate is one of 23.97, 24, 25, 29.97, 50, * or 60, your SegmentDuration is null, and you are using one of the resolution changes * from the list below, Elastic Transcoder applies the following color space conversions: *

* * *

* Elastic Transcoder may change the behavior of the ColorspaceConversionMode Auto mode in * the future. All outputs in a playlist must use the same ColorSpaceConversionMode. *

*
*

* If you do not specify a ColorSpaceConversionMode, Elastic Transcoder does not change the color space * of a file. If you are unsure what ColorSpaceConversionMode was applied to your output file, you can * check the AppliedColorSpaceConversion parameter included in your job response. If your job does not * have an AppliedColorSpaceConversion in its response, no ColorSpaceConversionMode was * applied. *

*

* ChromaSubsampling *

*

* The sampling pattern for the chroma (color) channels of the output video. Valid values include * yuv420p and yuv422p. *

*

* yuv420p samples the chroma information of every other horizontal and every other vertical line, * yuv422p samples the color information of every horizontal line and every other vertical line. *

*

* LoopCount (Gif Only) *

*

* The number of times you want the output gif to loop. Valid values include Infinite and integers * between 0 and 100, inclusive. *

* * @return Profile (H.264/VP8/VP9 Only)

*

* The H.264 profile that you want to use for the output file. Elastic Transcoder supports the following * profiles: *

* *

* Level (H.264 Only) *

*

* The H.264 level that you want to use for the output file. Elastic Transcoder supports the following * levels: *

*

* 1, 1b, 1.1, 1.2, 1.3, 2, * 2.1, 2.2, 3, 3.1, 3.2, 4, * 4.1 *

*

* MaxReferenceFrames (H.264 Only) *

*

* Applicable only when the value of Video:Codec is H.264. The maximum number of previously decoded frames * to use as a reference for decoding future frames. Valid values are integers 0 through 16, but we * recommend that you not use a value greater than the following: *

*

* Min(Floor(Maximum decoded picture buffer in macroblocks * 256 / (Width in pixels * Height in pixels)), 16) *

*

* where Width in pixels and Height in pixels represent either MaxWidth and MaxHeight, or * Resolution. Maximum decoded picture buffer in macroblocks depends on the value of the * Level object. See the list below. (A macroblock is a block of pixels measuring 16x16.) *

* *

* MaxBitRate (Optional, H.264/MPEG2/VP8/VP9 only) *

*

* The maximum number of bits per second in a video buffer; the size of the buffer is specified by * BufferSize. Specify a value between 16 and 62,500. You can reduce the bandwidth required to * stream a video by reducing the maximum bit rate, but this also reduces the quality of the video. *

*

* BufferSize (Optional, H.264/MPEG2/VP8/VP9 only) *

*

* The maximum number of bits in any x seconds of the output video. This window is commonly 10 seconds, the * standard segment duration when you're using FMP4 or MPEG-TS for the container type of the output video. * Specify an integer greater than 0. If you specify MaxBitRate and omit * BufferSize, Elastic Transcoder sets BufferSize to 10 times the value of * MaxBitRate. *

*

* InterlacedMode (Optional, H.264/MPEG2 Only) *

*

* The interlace mode for the output video. *

*

* Interlaced video is used to double the perceived frame rate for a video by interlacing two fields (one * field on every other line, the other field on the other lines) so that the human eye registers multiple * pictures per frame. Interlacing reduces the bandwidth required for transmitting a video, but can result * in blurred images and flickering. *

*

* Valid values include Progressive (no interlacing, top to bottom), TopFirst (top * field first), BottomFirst (bottom field first), and Auto. *

*

* If InterlaceMode is not specified, Elastic Transcoder uses Progressive for the * output. If Auto is specified, Elastic Transcoder interlaces the output. *

*

* ColorSpaceConversionMode (Optional, H.264/MPEG2 Only) *

*

* The color space conversion Elastic Transcoder applies to the output video. Color spaces are the * algorithms used by the computer to store information about how to render color. Bt.601 is * the standard for standard definition video, while Bt.709 is the standard for high definition * video. *

*

* Valid values include None, Bt709toBt601, Bt601toBt709, and * Auto. *

*

* If you chose Auto for ColorSpaceConversionMode and your output is interlaced, * your frame rate is one of 23.97, 24, 25, 29.97, * 50, or 60, your SegmentDuration is null, and you are using one of * the resolution changes from the list below, Elastic Transcoder applies the following color space * conversions: *

* * *

* Elastic Transcoder may change the behavior of the ColorspaceConversionMode Auto * mode in the future. All outputs in a playlist must use the same ColorSpaceConversionMode. *

*
*

* If you do not specify a ColorSpaceConversionMode, Elastic Transcoder does not change the * color space of a file. If you are unsure what ColorSpaceConversionMode was applied to your * output file, you can check the AppliedColorSpaceConversion parameter included in your job * response. If your job does not have an AppliedColorSpaceConversion in its response, no * ColorSpaceConversionMode was applied. *

*

* ChromaSubsampling *

*

* The sampling pattern for the chroma (color) channels of the output video. Valid values include * yuv420p and yuv422p. *

*

* yuv420p samples the chroma information of every other horizontal and every other vertical * line, yuv422p samples the color information of every horizontal line and every other * vertical line. *

*

* LoopCount (Gif Only) *

*

* The number of times you want the output gif to loop. Valid values include Infinite and * integers between 0 and 100, inclusive. */ public java.util.Map getCodecOptions() { if (codecOptions == null) { codecOptions = new com.amazonaws.internal.SdkInternalMap(); } return codecOptions; } /** *

* Profile (H.264/VP8/VP9 Only) *

*

* The H.264 profile that you want to use for the output file. Elastic Transcoder supports the following profiles: *

* *

* Level (H.264 Only) *

*

* The H.264 level that you want to use for the output file. Elastic Transcoder supports the following levels: *

*

* 1, 1b, 1.1, 1.2, 1.3, 2, * 2.1, 2.2, 3, 3.1, 3.2, 4, * 4.1 *

*

* MaxReferenceFrames (H.264 Only) *

*

* Applicable only when the value of Video:Codec is H.264. The maximum number of previously decoded frames to use as * a reference for decoding future frames. Valid values are integers 0 through 16, but we recommend that you not use * a value greater than the following: *

*

* Min(Floor(Maximum decoded picture buffer in macroblocks * 256 / (Width in pixels * Height in pixels)), 16) *

*

* where Width in pixels and Height in pixels represent either MaxWidth and MaxHeight, or Resolution. * Maximum decoded picture buffer in macroblocks depends on the value of the Level object. See * the list below. (A macroblock is a block of pixels measuring 16x16.) *

* *

* MaxBitRate (Optional, H.264/MPEG2/VP8/VP9 only) *

*

* The maximum number of bits per second in a video buffer; the size of the buffer is specified by * BufferSize. Specify a value between 16 and 62,500. You can reduce the bandwidth required to stream a * video by reducing the maximum bit rate, but this also reduces the quality of the video. *

*

* BufferSize (Optional, H.264/MPEG2/VP8/VP9 only) *

*

* The maximum number of bits in any x seconds of the output video. This window is commonly 10 seconds, the standard * segment duration when you're using FMP4 or MPEG-TS for the container type of the output video. Specify an integer * greater than 0. If you specify MaxBitRate and omit BufferSize, Elastic Transcoder sets * BufferSize to 10 times the value of MaxBitRate. *

*

* InterlacedMode (Optional, H.264/MPEG2 Only) *

*

* The interlace mode for the output video. *

*

* Interlaced video is used to double the perceived frame rate for a video by interlacing two fields (one field on * every other line, the other field on the other lines) so that the human eye registers multiple pictures per * frame. Interlacing reduces the bandwidth required for transmitting a video, but can result in blurred images and * flickering. *

*

* Valid values include Progressive (no interlacing, top to bottom), TopFirst (top field * first), BottomFirst (bottom field first), and Auto. *

*

* If InterlaceMode is not specified, Elastic Transcoder uses Progressive for the output. * If Auto is specified, Elastic Transcoder interlaces the output. *

*

* ColorSpaceConversionMode (Optional, H.264/MPEG2 Only) *

*

* The color space conversion Elastic Transcoder applies to the output video. Color spaces are the algorithms used * by the computer to store information about how to render color. Bt.601 is the standard for standard * definition video, while Bt.709 is the standard for high definition video. *

*

* Valid values include None, Bt709toBt601, Bt601toBt709, and * Auto. *

*

* If you chose Auto for ColorSpaceConversionMode and your output is interlaced, your * frame rate is one of 23.97, 24, 25, 29.97, 50, * or 60, your SegmentDuration is null, and you are using one of the resolution changes * from the list below, Elastic Transcoder applies the following color space conversions: *

* * *

* Elastic Transcoder may change the behavior of the ColorspaceConversionMode Auto mode in * the future. All outputs in a playlist must use the same ColorSpaceConversionMode. *

*
*

* If you do not specify a ColorSpaceConversionMode, Elastic Transcoder does not change the color space * of a file. If you are unsure what ColorSpaceConversionMode was applied to your output file, you can * check the AppliedColorSpaceConversion parameter included in your job response. If your job does not * have an AppliedColorSpaceConversion in its response, no ColorSpaceConversionMode was * applied. *

*

* ChromaSubsampling *

*

* The sampling pattern for the chroma (color) channels of the output video. Valid values include * yuv420p and yuv422p. *

*

* yuv420p samples the chroma information of every other horizontal and every other vertical line, * yuv422p samples the color information of every horizontal line and every other vertical line. *

*

* LoopCount (Gif Only) *

*

* The number of times you want the output gif to loop. Valid values include Infinite and integers * between 0 and 100, inclusive. *

* * @param codecOptions * Profile (H.264/VP8/VP9 Only)

*

* The H.264 profile that you want to use for the output file. Elastic Transcoder supports the following * profiles: *

* *

* Level (H.264 Only) *

*

* The H.264 level that you want to use for the output file. Elastic Transcoder supports the following * levels: *

*

* 1, 1b, 1.1, 1.2, 1.3, 2, * 2.1, 2.2, 3, 3.1, 3.2, 4, * 4.1 *

*

* MaxReferenceFrames (H.264 Only) *

*

* Applicable only when the value of Video:Codec is H.264. The maximum number of previously decoded frames to * use as a reference for decoding future frames. Valid values are integers 0 through 16, but we recommend * that you not use a value greater than the following: *

*

* Min(Floor(Maximum decoded picture buffer in macroblocks * 256 / (Width in pixels * Height in pixels)), 16) *

*

* where Width in pixels and Height in pixels represent either MaxWidth and MaxHeight, or * Resolution. Maximum decoded picture buffer in macroblocks depends on the value of the * Level object. See the list below. (A macroblock is a block of pixels measuring 16x16.) *

* *

* MaxBitRate (Optional, H.264/MPEG2/VP8/VP9 only) *

*

* The maximum number of bits per second in a video buffer; the size of the buffer is specified by * BufferSize. Specify a value between 16 and 62,500. You can reduce the bandwidth required to * stream a video by reducing the maximum bit rate, but this also reduces the quality of the video. *

*

* BufferSize (Optional, H.264/MPEG2/VP8/VP9 only) *

*

* The maximum number of bits in any x seconds of the output video. This window is commonly 10 seconds, the * standard segment duration when you're using FMP4 or MPEG-TS for the container type of the output video. * Specify an integer greater than 0. If you specify MaxBitRate and omit BufferSize * , Elastic Transcoder sets BufferSize to 10 times the value of MaxBitRate. *

*

* InterlacedMode (Optional, H.264/MPEG2 Only) *

*

* The interlace mode for the output video. *

*

* Interlaced video is used to double the perceived frame rate for a video by interlacing two fields (one * field on every other line, the other field on the other lines) so that the human eye registers multiple * pictures per frame. Interlacing reduces the bandwidth required for transmitting a video, but can result in * blurred images and flickering. *

*

* Valid values include Progressive (no interlacing, top to bottom), TopFirst (top * field first), BottomFirst (bottom field first), and Auto. *

*

* If InterlaceMode is not specified, Elastic Transcoder uses Progressive for the * output. If Auto is specified, Elastic Transcoder interlaces the output. *

*

* ColorSpaceConversionMode (Optional, H.264/MPEG2 Only) *

*

* The color space conversion Elastic Transcoder applies to the output video. Color spaces are the algorithms * used by the computer to store information about how to render color. Bt.601 is the standard * for standard definition video, while Bt.709 is the standard for high definition video. *

*

* Valid values include None, Bt709toBt601, Bt601toBt709, and * Auto. *

*

* If you chose Auto for ColorSpaceConversionMode and your output is interlaced, * your frame rate is one of 23.97, 24, 25, 29.97, * 50, or 60, your SegmentDuration is null, and you are using one of * the resolution changes from the list below, Elastic Transcoder applies the following color space * conversions: *

* * *

* Elastic Transcoder may change the behavior of the ColorspaceConversionMode Auto * mode in the future. All outputs in a playlist must use the same ColorSpaceConversionMode. *

*
*

* If you do not specify a ColorSpaceConversionMode, Elastic Transcoder does not change the * color space of a file. If you are unsure what ColorSpaceConversionMode was applied to your * output file, you can check the AppliedColorSpaceConversion parameter included in your job * response. If your job does not have an AppliedColorSpaceConversion in its response, no * ColorSpaceConversionMode was applied. *

*

* ChromaSubsampling *

*

* The sampling pattern for the chroma (color) channels of the output video. Valid values include * yuv420p and yuv422p. *

*

* yuv420p samples the chroma information of every other horizontal and every other vertical * line, yuv422p samples the color information of every horizontal line and every other vertical * line. *

*

* LoopCount (Gif Only) *

*

* The number of times you want the output gif to loop. Valid values include Infinite and * integers between 0 and 100, inclusive. */ public void setCodecOptions(java.util.Map codecOptions) { this.codecOptions = codecOptions == null ? null : new com.amazonaws.internal.SdkInternalMap(codecOptions); } /** *

* Profile (H.264/VP8/VP9 Only) *

*

* The H.264 profile that you want to use for the output file. Elastic Transcoder supports the following profiles: *

* *

* Level (H.264 Only) *

*

* The H.264 level that you want to use for the output file. Elastic Transcoder supports the following levels: *

*

* 1, 1b, 1.1, 1.2, 1.3, 2, * 2.1, 2.2, 3, 3.1, 3.2, 4, * 4.1 *

*

* MaxReferenceFrames (H.264 Only) *

*

* Applicable only when the value of Video:Codec is H.264. The maximum number of previously decoded frames to use as * a reference for decoding future frames. Valid values are integers 0 through 16, but we recommend that you not use * a value greater than the following: *

*

* Min(Floor(Maximum decoded picture buffer in macroblocks * 256 / (Width in pixels * Height in pixels)), 16) *

*

* where Width in pixels and Height in pixels represent either MaxWidth and MaxHeight, or Resolution. * Maximum decoded picture buffer in macroblocks depends on the value of the Level object. See * the list below. (A macroblock is a block of pixels measuring 16x16.) *

* *

* MaxBitRate (Optional, H.264/MPEG2/VP8/VP9 only) *

*

* The maximum number of bits per second in a video buffer; the size of the buffer is specified by * BufferSize. Specify a value between 16 and 62,500. You can reduce the bandwidth required to stream a * video by reducing the maximum bit rate, but this also reduces the quality of the video. *

*

* BufferSize (Optional, H.264/MPEG2/VP8/VP9 only) *

*

* The maximum number of bits in any x seconds of the output video. This window is commonly 10 seconds, the standard * segment duration when you're using FMP4 or MPEG-TS for the container type of the output video. Specify an integer * greater than 0. If you specify MaxBitRate and omit BufferSize, Elastic Transcoder sets * BufferSize to 10 times the value of MaxBitRate. *

*

* InterlacedMode (Optional, H.264/MPEG2 Only) *

*

* The interlace mode for the output video. *

*

* Interlaced video is used to double the perceived frame rate for a video by interlacing two fields (one field on * every other line, the other field on the other lines) so that the human eye registers multiple pictures per * frame. Interlacing reduces the bandwidth required for transmitting a video, but can result in blurred images and * flickering. *

*

* Valid values include Progressive (no interlacing, top to bottom), TopFirst (top field * first), BottomFirst (bottom field first), and Auto. *

*

* If InterlaceMode is not specified, Elastic Transcoder uses Progressive for the output. * If Auto is specified, Elastic Transcoder interlaces the output. *

*

* ColorSpaceConversionMode (Optional, H.264/MPEG2 Only) *

*

* The color space conversion Elastic Transcoder applies to the output video. Color spaces are the algorithms used * by the computer to store information about how to render color. Bt.601 is the standard for standard * definition video, while Bt.709 is the standard for high definition video. *

*

* Valid values include None, Bt709toBt601, Bt601toBt709, and * Auto. *

*

* If you chose Auto for ColorSpaceConversionMode and your output is interlaced, your * frame rate is one of 23.97, 24, 25, 29.97, 50, * or 60, your SegmentDuration is null, and you are using one of the resolution changes * from the list below, Elastic Transcoder applies the following color space conversions: *

* * *

* Elastic Transcoder may change the behavior of the ColorspaceConversionMode Auto mode in * the future. All outputs in a playlist must use the same ColorSpaceConversionMode. *

*
*

* If you do not specify a ColorSpaceConversionMode, Elastic Transcoder does not change the color space * of a file. If you are unsure what ColorSpaceConversionMode was applied to your output file, you can * check the AppliedColorSpaceConversion parameter included in your job response. If your job does not * have an AppliedColorSpaceConversion in its response, no ColorSpaceConversionMode was * applied. *

*

* ChromaSubsampling *

*

* The sampling pattern for the chroma (color) channels of the output video. Valid values include * yuv420p and yuv422p. *

*

* yuv420p samples the chroma information of every other horizontal and every other vertical line, * yuv422p samples the color information of every horizontal line and every other vertical line. *

*

* LoopCount (Gif Only) *

*

* The number of times you want the output gif to loop. Valid values include Infinite and integers * between 0 and 100, inclusive. *

* * @param codecOptions * Profile (H.264/VP8/VP9 Only)

*

* The H.264 profile that you want to use for the output file. Elastic Transcoder supports the following * profiles: *

* *

* Level (H.264 Only) *

*

* The H.264 level that you want to use for the output file. Elastic Transcoder supports the following * levels: *

*

* 1, 1b, 1.1, 1.2, 1.3, 2, * 2.1, 2.2, 3, 3.1, 3.2, 4, * 4.1 *

*

* MaxReferenceFrames (H.264 Only) *

*

* Applicable only when the value of Video:Codec is H.264. The maximum number of previously decoded frames to * use as a reference for decoding future frames. Valid values are integers 0 through 16, but we recommend * that you not use a value greater than the following: *

*

* Min(Floor(Maximum decoded picture buffer in macroblocks * 256 / (Width in pixels * Height in pixels)), 16) *

*

* where Width in pixels and Height in pixels represent either MaxWidth and MaxHeight, or * Resolution. Maximum decoded picture buffer in macroblocks depends on the value of the * Level object. See the list below. (A macroblock is a block of pixels measuring 16x16.) *

* *

* MaxBitRate (Optional, H.264/MPEG2/VP8/VP9 only) *

*

* The maximum number of bits per second in a video buffer; the size of the buffer is specified by * BufferSize. Specify a value between 16 and 62,500. You can reduce the bandwidth required to * stream a video by reducing the maximum bit rate, but this also reduces the quality of the video. *

*

* BufferSize (Optional, H.264/MPEG2/VP8/VP9 only) *

*

* The maximum number of bits in any x seconds of the output video. This window is commonly 10 seconds, the * standard segment duration when you're using FMP4 or MPEG-TS for the container type of the output video. * Specify an integer greater than 0. If you specify MaxBitRate and omit BufferSize * , Elastic Transcoder sets BufferSize to 10 times the value of MaxBitRate. *

*

* InterlacedMode (Optional, H.264/MPEG2 Only) *

*

* The interlace mode for the output video. *

*

* Interlaced video is used to double the perceived frame rate for a video by interlacing two fields (one * field on every other line, the other field on the other lines) so that the human eye registers multiple * pictures per frame. Interlacing reduces the bandwidth required for transmitting a video, but can result in * blurred images and flickering. *

*

* Valid values include Progressive (no interlacing, top to bottom), TopFirst (top * field first), BottomFirst (bottom field first), and Auto. *

*

* If InterlaceMode is not specified, Elastic Transcoder uses Progressive for the * output. If Auto is specified, Elastic Transcoder interlaces the output. *

*

* ColorSpaceConversionMode (Optional, H.264/MPEG2 Only) *

*

* The color space conversion Elastic Transcoder applies to the output video. Color spaces are the algorithms * used by the computer to store information about how to render color. Bt.601 is the standard * for standard definition video, while Bt.709 is the standard for high definition video. *

*

* Valid values include None, Bt709toBt601, Bt601toBt709, and * Auto. *

*

* If you chose Auto for ColorSpaceConversionMode and your output is interlaced, * your frame rate is one of 23.97, 24, 25, 29.97, * 50, or 60, your SegmentDuration is null, and you are using one of * the resolution changes from the list below, Elastic Transcoder applies the following color space * conversions: *

* * *

* Elastic Transcoder may change the behavior of the ColorspaceConversionMode Auto * mode in the future. All outputs in a playlist must use the same ColorSpaceConversionMode. *

*
*

* If you do not specify a ColorSpaceConversionMode, Elastic Transcoder does not change the * color space of a file. If you are unsure what ColorSpaceConversionMode was applied to your * output file, you can check the AppliedColorSpaceConversion parameter included in your job * response. If your job does not have an AppliedColorSpaceConversion in its response, no * ColorSpaceConversionMode was applied. *

*

* ChromaSubsampling *

*

* The sampling pattern for the chroma (color) channels of the output video. Valid values include * yuv420p and yuv422p. *

*

* yuv420p samples the chroma information of every other horizontal and every other vertical * line, yuv422p samples the color information of every horizontal line and every other vertical * line. *

*

* LoopCount (Gif Only) *

*

* The number of times you want the output gif to loop. Valid values include Infinite and * integers between 0 and 100, inclusive. * @return Returns a reference to this object so that method calls can be chained together. */ public VideoParameters withCodecOptions(java.util.Map codecOptions) { setCodecOptions(codecOptions); return this; } /** * Add a single CodecOptions entry * * @see VideoParameters#withCodecOptions * @returns a reference to this object so that method calls can be chained together. */ public VideoParameters addCodecOptionsEntry(String key, String value) { if (null == this.codecOptions) { this.codecOptions = new com.amazonaws.internal.SdkInternalMap(); } if (this.codecOptions.containsKey(key)) throw new IllegalArgumentException("Duplicated keys (" + key.toString() + ") are provided."); this.codecOptions.put(key, value); return this; } /** * Removes all the entries added into CodecOptions. * * @return Returns a reference to this object so that method calls can be chained together. */ public VideoParameters clearCodecOptionsEntries() { this.codecOptions = null; return this; } /** *

* Applicable only when the value of Video:Codec is one of H.264, MPEG2, or * VP8. *

*

* The maximum number of frames between key frames. Key frames are fully encoded frames; the frames between key * frames are encoded based, in part, on the content of the key frames. The value is an integer formatted as a * string; valid values are between 1 (every frame is a key frame) and 100000, inclusive. A higher value results in * higher compression but may also discernibly decrease video quality. *

*

* For Smooth outputs, the FrameRate must have a constant ratio to the * KeyframesMaxDist. This allows Smooth playlists to switch between different quality * levels while the file is being played. *

*

* For example, an input file can have a FrameRate of 30 with a KeyframesMaxDist of 90. * The output file then needs to have a ratio of 1:3. Valid outputs would have FrameRate of 30, 25, and * 10, and KeyframesMaxDist of 90, 75, and 30, respectively. *

*

* Alternately, this can be achieved by setting FrameRate to auto and having the same values for * MaxFrameRate and KeyframesMaxDist. *

* * @param keyframesMaxDist * Applicable only when the value of Video:Codec is one of H.264, MPEG2, or * VP8.

*

* The maximum number of frames between key frames. Key frames are fully encoded frames; the frames between * key frames are encoded based, in part, on the content of the key frames. The value is an integer formatted * as a string; valid values are between 1 (every frame is a key frame) and 100000, inclusive. A higher value * results in higher compression but may also discernibly decrease video quality. *

*

* For Smooth outputs, the FrameRate must have a constant ratio to the * KeyframesMaxDist. This allows Smooth playlists to switch between different * quality levels while the file is being played. *

*

* For example, an input file can have a FrameRate of 30 with a KeyframesMaxDist of * 90. The output file then needs to have a ratio of 1:3. Valid outputs would have FrameRate of * 30, 25, and 10, and KeyframesMaxDist of 90, 75, and 30, respectively. *

*

* Alternately, this can be achieved by setting FrameRate to auto and having the same values for * MaxFrameRate and KeyframesMaxDist. */ public void setKeyframesMaxDist(String keyframesMaxDist) { this.keyframesMaxDist = keyframesMaxDist; } /** *

* Applicable only when the value of Video:Codec is one of H.264, MPEG2, or * VP8. *

*

* The maximum number of frames between key frames. Key frames are fully encoded frames; the frames between key * frames are encoded based, in part, on the content of the key frames. The value is an integer formatted as a * string; valid values are between 1 (every frame is a key frame) and 100000, inclusive. A higher value results in * higher compression but may also discernibly decrease video quality. *

*

* For Smooth outputs, the FrameRate must have a constant ratio to the * KeyframesMaxDist. This allows Smooth playlists to switch between different quality * levels while the file is being played. *

*

* For example, an input file can have a FrameRate of 30 with a KeyframesMaxDist of 90. * The output file then needs to have a ratio of 1:3. Valid outputs would have FrameRate of 30, 25, and * 10, and KeyframesMaxDist of 90, 75, and 30, respectively. *

*

* Alternately, this can be achieved by setting FrameRate to auto and having the same values for * MaxFrameRate and KeyframesMaxDist. *

* * @return Applicable only when the value of Video:Codec is one of H.264, MPEG2, or * VP8.

*

* The maximum number of frames between key frames. Key frames are fully encoded frames; the frames between * key frames are encoded based, in part, on the content of the key frames. The value is an integer * formatted as a string; valid values are between 1 (every frame is a key frame) and 100000, inclusive. A * higher value results in higher compression but may also discernibly decrease video quality. *

*

* For Smooth outputs, the FrameRate must have a constant ratio to the * KeyframesMaxDist. This allows Smooth playlists to switch between different * quality levels while the file is being played. *

*

* For example, an input file can have a FrameRate of 30 with a KeyframesMaxDist * of 90. The output file then needs to have a ratio of 1:3. Valid outputs would have FrameRate * of 30, 25, and 10, and KeyframesMaxDist of 90, 75, and 30, respectively. *

*

* Alternately, this can be achieved by setting FrameRate to auto and having the same values * for MaxFrameRate and KeyframesMaxDist. */ public String getKeyframesMaxDist() { return this.keyframesMaxDist; } /** *

* Applicable only when the value of Video:Codec is one of H.264, MPEG2, or * VP8. *

*

* The maximum number of frames between key frames. Key frames are fully encoded frames; the frames between key * frames are encoded based, in part, on the content of the key frames. The value is an integer formatted as a * string; valid values are between 1 (every frame is a key frame) and 100000, inclusive. A higher value results in * higher compression but may also discernibly decrease video quality. *

*

* For Smooth outputs, the FrameRate must have a constant ratio to the * KeyframesMaxDist. This allows Smooth playlists to switch between different quality * levels while the file is being played. *

*

* For example, an input file can have a FrameRate of 30 with a KeyframesMaxDist of 90. * The output file then needs to have a ratio of 1:3. Valid outputs would have FrameRate of 30, 25, and * 10, and KeyframesMaxDist of 90, 75, and 30, respectively. *

*

* Alternately, this can be achieved by setting FrameRate to auto and having the same values for * MaxFrameRate and KeyframesMaxDist. *

* * @param keyframesMaxDist * Applicable only when the value of Video:Codec is one of H.264, MPEG2, or * VP8.

*

* The maximum number of frames between key frames. Key frames are fully encoded frames; the frames between * key frames are encoded based, in part, on the content of the key frames. The value is an integer formatted * as a string; valid values are between 1 (every frame is a key frame) and 100000, inclusive. A higher value * results in higher compression but may also discernibly decrease video quality. *

*

* For Smooth outputs, the FrameRate must have a constant ratio to the * KeyframesMaxDist. This allows Smooth playlists to switch between different * quality levels while the file is being played. *

*

* For example, an input file can have a FrameRate of 30 with a KeyframesMaxDist of * 90. The output file then needs to have a ratio of 1:3. Valid outputs would have FrameRate of * 30, 25, and 10, and KeyframesMaxDist of 90, 75, and 30, respectively. *

*

* Alternately, this can be achieved by setting FrameRate to auto and having the same values for * MaxFrameRate and KeyframesMaxDist. * @return Returns a reference to this object so that method calls can be chained together. */ public VideoParameters withKeyframesMaxDist(String keyframesMaxDist) { setKeyframesMaxDist(keyframesMaxDist); return this; } /** *

* Applicable only when the value of Video:Codec is one of H.264, MPEG2, or * VP8. *

*

* Whether to use a fixed value for FixedGOP. Valid values are true and false * : *

* * *

* FixedGOP must be set to true for fmp4 containers. *

*
* * @param fixedGOP * Applicable only when the value of Video:Codec is one of H.264, MPEG2, or * VP8.

*

* Whether to use a fixed value for FixedGOP. Valid values are true and * false: *

* * *

* FixedGOP must be set to true for fmp4 containers. *

*/ public void setFixedGOP(String fixedGOP) { this.fixedGOP = fixedGOP; } /** *

* Applicable only when the value of Video:Codec is one of H.264, MPEG2, or * VP8. *

*

* Whether to use a fixed value for FixedGOP. Valid values are true and false * : *

*
    *
  • *

    * true: Elastic Transcoder uses the value of KeyframesMaxDist for the distance between * key frames (the number of frames in a group of pictures, or GOP). *

    *
  • *
  • *

    * false: The distance between key frames can vary. *

    *
  • *
* *

* FixedGOP must be set to true for fmp4 containers. *

*
* * @return Applicable only when the value of Video:Codec is one of H.264, MPEG2, or * VP8.

*

* Whether to use a fixed value for FixedGOP. Valid values are true and * false: *

*
    *
  • *

    * true: Elastic Transcoder uses the value of KeyframesMaxDist for the distance * between key frames (the number of frames in a group of pictures, or GOP). *

    *
  • *
  • *

    * false: The distance between key frames can vary. *

    *
  • *
* *

* FixedGOP must be set to true for fmp4 containers. *

*/ public String getFixedGOP() { return this.fixedGOP; } /** *

* Applicable only when the value of Video:Codec is one of H.264, MPEG2, or * VP8. *

*

* Whether to use a fixed value for FixedGOP. Valid values are true and false * : *

*
    *
  • *

    * true: Elastic Transcoder uses the value of KeyframesMaxDist for the distance between * key frames (the number of frames in a group of pictures, or GOP). *

    *
  • *
  • *

    * false: The distance between key frames can vary. *

    *
  • *
* *

* FixedGOP must be set to true for fmp4 containers. *

*
* * @param fixedGOP * Applicable only when the value of Video:Codec is one of H.264, MPEG2, or * VP8.

*

* Whether to use a fixed value for FixedGOP. Valid values are true and * false: *

*
    *
  • *

    * true: Elastic Transcoder uses the value of KeyframesMaxDist for the distance * between key frames (the number of frames in a group of pictures, or GOP). *

    *
  • *
  • *

    * false: The distance between key frames can vary. *

    *
  • *
* *

* FixedGOP must be set to true for fmp4 containers. *

* @return Returns a reference to this object so that method calls can be chained together. */ public VideoParameters withFixedGOP(String fixedGOP) { setFixedGOP(fixedGOP); return this; } /** *

* The bit rate of the video stream in the output file, in kilobits/second. Valid values depend on the values of * Level and Profile. If you specify auto, Elastic Transcoder uses the * detected bit rate of the input source. If you specify a value other than auto, we recommend that you * specify a value less than or equal to the maximum H.264-compliant value listed for your level and profile: *

*

* Level - Maximum video bit rate in kilobits/second (baseline and main Profile) : maximum video bit rate in * kilobits/second (high Profile) *

*
    *
  • *

    * 1 - 64 : 80 *

    *
  • *
  • *

    * 1b - 128 : 160 *

    *
  • *
  • *

    * 1.1 - 192 : 240 *

    *
  • *
  • *

    * 1.2 - 384 : 480 *

    *
  • *
  • *

    * 1.3 - 768 : 960 *

    *
  • *
  • *

    * 2 - 2000 : 2500 *

    *
  • *
  • *

    * 3 - 10000 : 12500 *

    *
  • *
  • *

    * 3.1 - 14000 : 17500 *

    *
  • *
  • *

    * 3.2 - 20000 : 25000 *

    *
  • *
  • *

    * 4 - 20000 : 25000 *

    *
  • *
  • *

    * 4.1 - 50000 : 62500 *

    *
  • *
* * @param bitRate * The bit rate of the video stream in the output file, in kilobits/second. Valid values depend on the values * of Level and Profile. If you specify auto, Elastic Transcoder uses * the detected bit rate of the input source. If you specify a value other than auto, we * recommend that you specify a value less than or equal to the maximum H.264-compliant value listed for your * level and profile:

*

* Level - Maximum video bit rate in kilobits/second (baseline and main Profile) : maximum video bit rate * in kilobits/second (high Profile) *

*
    *
  • *

    * 1 - 64 : 80 *

    *
  • *
  • *

    * 1b - 128 : 160 *

    *
  • *
  • *

    * 1.1 - 192 : 240 *

    *
  • *
  • *

    * 1.2 - 384 : 480 *

    *
  • *
  • *

    * 1.3 - 768 : 960 *

    *
  • *
  • *

    * 2 - 2000 : 2500 *

    *
  • *
  • *

    * 3 - 10000 : 12500 *

    *
  • *
  • *

    * 3.1 - 14000 : 17500 *

    *
  • *
  • *

    * 3.2 - 20000 : 25000 *

    *
  • *
  • *

    * 4 - 20000 : 25000 *

    *
  • *
  • *

    * 4.1 - 50000 : 62500 *

    *
  • */ public void setBitRate(String bitRate) { this.bitRate = bitRate; } /** *

    * The bit rate of the video stream in the output file, in kilobits/second. Valid values depend on the values of * Level and Profile. If you specify auto, Elastic Transcoder uses the * detected bit rate of the input source. If you specify a value other than auto, we recommend that you * specify a value less than or equal to the maximum H.264-compliant value listed for your level and profile: *

    *

    * Level - Maximum video bit rate in kilobits/second (baseline and main Profile) : maximum video bit rate in * kilobits/second (high Profile) *

    *
      *
    • *

      * 1 - 64 : 80 *

      *
    • *
    • *

      * 1b - 128 : 160 *

      *
    • *
    • *

      * 1.1 - 192 : 240 *

      *
    • *
    • *

      * 1.2 - 384 : 480 *

      *
    • *
    • *

      * 1.3 - 768 : 960 *

      *
    • *
    • *

      * 2 - 2000 : 2500 *

      *
    • *
    • *

      * 3 - 10000 : 12500 *

      *
    • *
    • *

      * 3.1 - 14000 : 17500 *

      *
    • *
    • *

      * 3.2 - 20000 : 25000 *

      *
    • *
    • *

      * 4 - 20000 : 25000 *

      *
    • *
    • *

      * 4.1 - 50000 : 62500 *

      *
    • *
    * * @return The bit rate of the video stream in the output file, in kilobits/second. Valid values depend on the * values of Level and Profile. If you specify auto, Elastic * Transcoder uses the detected bit rate of the input source. If you specify a value other than * auto, we recommend that you specify a value less than or equal to the maximum * H.264-compliant value listed for your level and profile:

    *

    * Level - Maximum video bit rate in kilobits/second (baseline and main Profile) : maximum video bit rate * in kilobits/second (high Profile) *

    *
      *
    • *

      * 1 - 64 : 80 *

      *
    • *
    • *

      * 1b - 128 : 160 *

      *
    • *
    • *

      * 1.1 - 192 : 240 *

      *
    • *
    • *

      * 1.2 - 384 : 480 *

      *
    • *
    • *

      * 1.3 - 768 : 960 *

      *
    • *
    • *

      * 2 - 2000 : 2500 *

      *
    • *
    • *

      * 3 - 10000 : 12500 *

      *
    • *
    • *

      * 3.1 - 14000 : 17500 *

      *
    • *
    • *

      * 3.2 - 20000 : 25000 *

      *
    • *
    • *

      * 4 - 20000 : 25000 *

      *
    • *
    • *

      * 4.1 - 50000 : 62500 *

      *
    • */ public String getBitRate() { return this.bitRate; } /** *

      * The bit rate of the video stream in the output file, in kilobits/second. Valid values depend on the values of * Level and Profile. If you specify auto, Elastic Transcoder uses the * detected bit rate of the input source. If you specify a value other than auto, we recommend that you * specify a value less than or equal to the maximum H.264-compliant value listed for your level and profile: *

      *

      * Level - Maximum video bit rate in kilobits/second (baseline and main Profile) : maximum video bit rate in * kilobits/second (high Profile) *

      *
        *
      • *

        * 1 - 64 : 80 *

        *
      • *
      • *

        * 1b - 128 : 160 *

        *
      • *
      • *

        * 1.1 - 192 : 240 *

        *
      • *
      • *

        * 1.2 - 384 : 480 *

        *
      • *
      • *

        * 1.3 - 768 : 960 *

        *
      • *
      • *

        * 2 - 2000 : 2500 *

        *
      • *
      • *

        * 3 - 10000 : 12500 *

        *
      • *
      • *

        * 3.1 - 14000 : 17500 *

        *
      • *
      • *

        * 3.2 - 20000 : 25000 *

        *
      • *
      • *

        * 4 - 20000 : 25000 *

        *
      • *
      • *

        * 4.1 - 50000 : 62500 *

        *
      • *
      * * @param bitRate * The bit rate of the video stream in the output file, in kilobits/second. Valid values depend on the values * of Level and Profile. If you specify auto, Elastic Transcoder uses * the detected bit rate of the input source. If you specify a value other than auto, we * recommend that you specify a value less than or equal to the maximum H.264-compliant value listed for your * level and profile:

      *

      * Level - Maximum video bit rate in kilobits/second (baseline and main Profile) : maximum video bit rate * in kilobits/second (high Profile) *

      *
        *
      • *

        * 1 - 64 : 80 *

        *
      • *
      • *

        * 1b - 128 : 160 *

        *
      • *
      • *

        * 1.1 - 192 : 240 *

        *
      • *
      • *

        * 1.2 - 384 : 480 *

        *
      • *
      • *

        * 1.3 - 768 : 960 *

        *
      • *
      • *

        * 2 - 2000 : 2500 *

        *
      • *
      • *

        * 3 - 10000 : 12500 *

        *
      • *
      • *

        * 3.1 - 14000 : 17500 *

        *
      • *
      • *

        * 3.2 - 20000 : 25000 *

        *
      • *
      • *

        * 4 - 20000 : 25000 *

        *
      • *
      • *

        * 4.1 - 50000 : 62500 *

        *
      • * @return Returns a reference to this object so that method calls can be chained together. */ public VideoParameters withBitRate(String bitRate) { setBitRate(bitRate); return this; } /** *

        * The frames per second for the video stream in the output file. Valid values include: *

        *

        * auto, 10, 15, 23.97, 24, 25, * 29.97, 30, 60 *

        *

        * If you specify auto, Elastic Transcoder uses the detected frame rate of the input source. If you * specify a frame rate, we recommend that you perform the following calculation: *

        *

        * Frame rate = maximum recommended decoding speed in luma samples/second / (width in pixels * height in pixels) *

        *

        * where: *

        *
          *
        • *

          * width in pixels and height in pixels represent the Resolution of the output video. *

          *
        • *
        • *

          * maximum recommended decoding speed in Luma samples/second is less than or equal to the maximum value * listed in the following table, based on the value that you specified for Level. *

          *
        • *
        *

        * The maximum recommended decoding speed in Luma samples/second for each level is described in the following list * (Level - Decoding speed): *

        *
          *
        • *

          * 1 - 380160 *

          *
        • *
        • *

          * 1b - 380160 *

          *
        • *
        • *

          * 1.1 - 76800 *

          *
        • *
        • *

          * 1.2 - 1536000 *

          *
        • *
        • *

          * 1.3 - 3041280 *

          *
        • *
        • *

          * 2 - 3041280 *

          *
        • *
        • *

          * 2.1 - 5068800 *

          *
        • *
        • *

          * 2.2 - 5184000 *

          *
        • *
        • *

          * 3 - 10368000 *

          *
        • *
        • *

          * 3.1 - 27648000 *

          *
        • *
        • *

          * 3.2 - 55296000 *

          *
        • *
        • *

          * 4 - 62914560 *

          *
        • *
        • *

          * 4.1 - 62914560 *

          *
        • *
        * * @param frameRate * The frames per second for the video stream in the output file. Valid values include:

        *

        * auto, 10, 15, 23.97, 24, 25, * 29.97, 30, 60 *

        *

        * If you specify auto, Elastic Transcoder uses the detected frame rate of the input source. If * you specify a frame rate, we recommend that you perform the following calculation: *

        *

        * Frame rate = maximum recommended decoding speed in luma samples/second / (width in pixels * height in pixels) *

        *

        * where: *

        *
          *
        • *

          * width in pixels and height in pixels represent the Resolution of the output video. *

          *
        • *
        • *

          * maximum recommended decoding speed in Luma samples/second is less than or equal to the maximum * value listed in the following table, based on the value that you specified for Level. *

          *
        • *
        *

        * The maximum recommended decoding speed in Luma samples/second for each level is described in the following * list (Level - Decoding speed): *

        *
          *
        • *

          * 1 - 380160 *

          *
        • *
        • *

          * 1b - 380160 *

          *
        • *
        • *

          * 1.1 - 76800 *

          *
        • *
        • *

          * 1.2 - 1536000 *

          *
        • *
        • *

          * 1.3 - 3041280 *

          *
        • *
        • *

          * 2 - 3041280 *

          *
        • *
        • *

          * 2.1 - 5068800 *

          *
        • *
        • *

          * 2.2 - 5184000 *

          *
        • *
        • *

          * 3 - 10368000 *

          *
        • *
        • *

          * 3.1 - 27648000 *

          *
        • *
        • *

          * 3.2 - 55296000 *

          *
        • *
        • *

          * 4 - 62914560 *

          *
        • *
        • *

          * 4.1 - 62914560 *

          *
        • */ public void setFrameRate(String frameRate) { this.frameRate = frameRate; } /** *

          * The frames per second for the video stream in the output file. Valid values include: *

          *

          * auto, 10, 15, 23.97, 24, 25, * 29.97, 30, 60 *

          *

          * If you specify auto, Elastic Transcoder uses the detected frame rate of the input source. If you * specify a frame rate, we recommend that you perform the following calculation: *

          *

          * Frame rate = maximum recommended decoding speed in luma samples/second / (width in pixels * height in pixels) *

          *

          * where: *

          *
            *
          • *

            * width in pixels and height in pixels represent the Resolution of the output video. *

            *
          • *
          • *

            * maximum recommended decoding speed in Luma samples/second is less than or equal to the maximum value * listed in the following table, based on the value that you specified for Level. *

            *
          • *
          *

          * The maximum recommended decoding speed in Luma samples/second for each level is described in the following list * (Level - Decoding speed): *

          *
            *
          • *

            * 1 - 380160 *

            *
          • *
          • *

            * 1b - 380160 *

            *
          • *
          • *

            * 1.1 - 76800 *

            *
          • *
          • *

            * 1.2 - 1536000 *

            *
          • *
          • *

            * 1.3 - 3041280 *

            *
          • *
          • *

            * 2 - 3041280 *

            *
          • *
          • *

            * 2.1 - 5068800 *

            *
          • *
          • *

            * 2.2 - 5184000 *

            *
          • *
          • *

            * 3 - 10368000 *

            *
          • *
          • *

            * 3.1 - 27648000 *

            *
          • *
          • *

            * 3.2 - 55296000 *

            *
          • *
          • *

            * 4 - 62914560 *

            *
          • *
          • *

            * 4.1 - 62914560 *

            *
          • *
          * * @return The frames per second for the video stream in the output file. Valid values include:

          *

          * auto, 10, 15, 23.97, 24, 25, 29.97, 30, 60 *

          *

          * If you specify auto, Elastic Transcoder uses the detected frame rate of the input source. If * you specify a frame rate, we recommend that you perform the following calculation: *

          *

          * Frame rate = maximum recommended decoding speed in luma samples/second / (width in pixels * height in pixels) *

          *

          * where: *

          *
            *
          • *

            * width in pixels and height in pixels represent the Resolution of the output video. *

            *
          • *
          • *

            * maximum recommended decoding speed in Luma samples/second is less than or equal to the maximum * value listed in the following table, based on the value that you specified for Level. *

            *
          • *
          *

          * The maximum recommended decoding speed in Luma samples/second for each level is described in the * following list (Level - Decoding speed): *

          *
            *
          • *

            * 1 - 380160 *

            *
          • *
          • *

            * 1b - 380160 *

            *
          • *
          • *

            * 1.1 - 76800 *

            *
          • *
          • *

            * 1.2 - 1536000 *

            *
          • *
          • *

            * 1.3 - 3041280 *

            *
          • *
          • *

            * 2 - 3041280 *

            *
          • *
          • *

            * 2.1 - 5068800 *

            *
          • *
          • *

            * 2.2 - 5184000 *

            *
          • *
          • *

            * 3 - 10368000 *

            *
          • *
          • *

            * 3.1 - 27648000 *

            *
          • *
          • *

            * 3.2 - 55296000 *

            *
          • *
          • *

            * 4 - 62914560 *

            *
          • *
          • *

            * 4.1 - 62914560 *

            *
          • */ public String getFrameRate() { return this.frameRate; } /** *

            * The frames per second for the video stream in the output file. Valid values include: *

            *

            * auto, 10, 15, 23.97, 24, 25, * 29.97, 30, 60 *

            *

            * If you specify auto, Elastic Transcoder uses the detected frame rate of the input source. If you * specify a frame rate, we recommend that you perform the following calculation: *

            *

            * Frame rate = maximum recommended decoding speed in luma samples/second / (width in pixels * height in pixels) *

            *

            * where: *

            *
              *
            • *

              * width in pixels and height in pixels represent the Resolution of the output video. *

              *
            • *
            • *

              * maximum recommended decoding speed in Luma samples/second is less than or equal to the maximum value * listed in the following table, based on the value that you specified for Level. *

              *
            • *
            *

            * The maximum recommended decoding speed in Luma samples/second for each level is described in the following list * (Level - Decoding speed): *

            *
              *
            • *

              * 1 - 380160 *

              *
            • *
            • *

              * 1b - 380160 *

              *
            • *
            • *

              * 1.1 - 76800 *

              *
            • *
            • *

              * 1.2 - 1536000 *

              *
            • *
            • *

              * 1.3 - 3041280 *

              *
            • *
            • *

              * 2 - 3041280 *

              *
            • *
            • *

              * 2.1 - 5068800 *

              *
            • *
            • *

              * 2.2 - 5184000 *

              *
            • *
            • *

              * 3 - 10368000 *

              *
            • *
            • *

              * 3.1 - 27648000 *

              *
            • *
            • *

              * 3.2 - 55296000 *

              *
            • *
            • *

              * 4 - 62914560 *

              *
            • *
            • *

              * 4.1 - 62914560 *

              *
            • *
            * * @param frameRate * The frames per second for the video stream in the output file. Valid values include:

            *

            * auto, 10, 15, 23.97, 24, 25, * 29.97, 30, 60 *

            *

            * If you specify auto, Elastic Transcoder uses the detected frame rate of the input source. If * you specify a frame rate, we recommend that you perform the following calculation: *

            *

            * Frame rate = maximum recommended decoding speed in luma samples/second / (width in pixels * height in pixels) *

            *

            * where: *

            *
              *
            • *

              * width in pixels and height in pixels represent the Resolution of the output video. *

              *
            • *
            • *

              * maximum recommended decoding speed in Luma samples/second is less than or equal to the maximum * value listed in the following table, based on the value that you specified for Level. *

              *
            • *
            *

            * The maximum recommended decoding speed in Luma samples/second for each level is described in the following * list (Level - Decoding speed): *

            *
              *
            • *

              * 1 - 380160 *

              *
            • *
            • *

              * 1b - 380160 *

              *
            • *
            • *

              * 1.1 - 76800 *

              *
            • *
            • *

              * 1.2 - 1536000 *

              *
            • *
            • *

              * 1.3 - 3041280 *

              *
            • *
            • *

              * 2 - 3041280 *

              *
            • *
            • *

              * 2.1 - 5068800 *

              *
            • *
            • *

              * 2.2 - 5184000 *

              *
            • *
            • *

              * 3 - 10368000 *

              *
            • *
            • *

              * 3.1 - 27648000 *

              *
            • *
            • *

              * 3.2 - 55296000 *

              *
            • *
            • *

              * 4 - 62914560 *

              *
            • *
            • *

              * 4.1 - 62914560 *

              *
            • * @return Returns a reference to this object so that method calls can be chained together. */ public VideoParameters withFrameRate(String frameRate) { setFrameRate(frameRate); return this; } /** *

              * If you specify auto for FrameRate, Elastic Transcoder uses the frame rate of the input * video for the frame rate of the output video. Specify the maximum frame rate that you want Elastic Transcoder to * use when the frame rate of the input video is greater than the desired maximum frame rate of the output video. * Valid values include: 10, 15, 23.97, 24, 25, * 29.97, 30, 60. *

              * * @param maxFrameRate * If you specify auto for FrameRate, Elastic Transcoder uses the frame rate of the * input video for the frame rate of the output video. Specify the maximum frame rate that you want Elastic * Transcoder to use when the frame rate of the input video is greater than the desired maximum frame rate of * the output video. Valid values include: 10, 15, 23.97, * 24, 25, 29.97, 30, 60. */ public void setMaxFrameRate(String maxFrameRate) { this.maxFrameRate = maxFrameRate; } /** *

              * If you specify auto for FrameRate, Elastic Transcoder uses the frame rate of the input * video for the frame rate of the output video. Specify the maximum frame rate that you want Elastic Transcoder to * use when the frame rate of the input video is greater than the desired maximum frame rate of the output video. * Valid values include: 10, 15, 23.97, 24, 25, * 29.97, 30, 60. *

              * * @return If you specify auto for FrameRate, Elastic Transcoder uses the frame rate of * the input video for the frame rate of the output video. Specify the maximum frame rate that you want * Elastic Transcoder to use when the frame rate of the input video is greater than the desired maximum * frame rate of the output video. Valid values include: 10, 15, * 23.97, 24, 25, 29.97, 30, * 60. */ public String getMaxFrameRate() { return this.maxFrameRate; } /** *

              * If you specify auto for FrameRate, Elastic Transcoder uses the frame rate of the input * video for the frame rate of the output video. Specify the maximum frame rate that you want Elastic Transcoder to * use when the frame rate of the input video is greater than the desired maximum frame rate of the output video. * Valid values include: 10, 15, 23.97, 24, 25, * 29.97, 30, 60. *

              * * @param maxFrameRate * If you specify auto for FrameRate, Elastic Transcoder uses the frame rate of the * input video for the frame rate of the output video. Specify the maximum frame rate that you want Elastic * Transcoder to use when the frame rate of the input video is greater than the desired maximum frame rate of * the output video. Valid values include: 10, 15, 23.97, * 24, 25, 29.97, 30, 60. * @return Returns a reference to this object so that method calls can be chained together. */ public VideoParameters withMaxFrameRate(String maxFrameRate) { setMaxFrameRate(maxFrameRate); return this; } /** * *

              * To better control resolution and aspect ratio of output videos, we recommend that you use the values * MaxWidth, MaxHeight, SizingPolicy, PaddingPolicy, and * DisplayAspectRatio instead of Resolution and AspectRatio. The two groups * of settings are mutually exclusive. Do not use them together. *

              *
              *

              * The width and height of the video in the output file, in pixels. Valid values are auto and * width x height: *

              *
                *
              • *

                * auto: Elastic Transcoder attempts to preserve the width and height of the input file, subject to the * following rules. *

                *
              • *
              • *

                * width x height : The width and height of the output video in pixels. *

                *
              • *
              *

              * Note the following about specifying the width and height: *

              *
                *
              • *

                * The width must be an even integer between 128 and 4096, inclusive. *

                *
              • *
              • *

                * The height must be an even integer between 96 and 3072, inclusive. *

                *
              • *
              • *

                * If you specify a resolution that is less than the resolution of the input file, Elastic Transcoder rescales the * output file to the lower resolution. *

                *
              • *
              • *

                * If you specify a resolution that is greater than the resolution of the input file, Elastic Transcoder rescales * the output to the higher resolution. *

                *
              • *
              • *

                * We recommend that you specify a resolution for which the product of width and height is less than or equal to the * applicable value in the following list (List - Max width x height value): *

                *
                  *
                • *

                  * 1 - 25344 *

                  *
                • *
                • *

                  * 1b - 25344 *

                  *
                • *
                • *

                  * 1.1 - 101376 *

                  *
                • *
                • *

                  * 1.2 - 101376 *

                  *
                • *
                • *

                  * 1.3 - 101376 *

                  *
                • *
                • *

                  * 2 - 101376 *

                  *
                • *
                • *

                  * 2.1 - 202752 *

                  *
                • *
                • *

                  * 2.2 - 404720 *

                  *
                • *
                • *

                  * 3 - 404720 *

                  *
                • *
                • *

                  * 3.1 - 921600 *

                  *
                • *
                • *

                  * 3.2 - 1310720 *

                  *
                • *
                • *

                  * 4 - 2097152 *

                  *
                • *
                • *

                  * 4.1 - 2097152 *

                  *
                • *
                *
              • *
              * * @param resolution *

              * To better control resolution and aspect ratio of output videos, we recommend that you use the values * MaxWidth, MaxHeight, SizingPolicy, PaddingPolicy, and * DisplayAspectRatio instead of Resolution and AspectRatio. The two * groups of settings are mutually exclusive. Do not use them together. *

              * *

              * The width and height of the video in the output file, in pixels. Valid values are auto and * width x height: *

              *
                *
              • *

                * auto: Elastic Transcoder attempts to preserve the width and height of the input file, subject * to the following rules. *

                *
              • *
              • *

                * width x height : The width and height of the output video in pixels. *

                *
              • *
              *

              * Note the following about specifying the width and height: *

              *
                *
              • *

                * The width must be an even integer between 128 and 4096, inclusive. *

                *
              • *
              • *

                * The height must be an even integer between 96 and 3072, inclusive. *

                *
              • *
              • *

                * If you specify a resolution that is less than the resolution of the input file, Elastic Transcoder * rescales the output file to the lower resolution. *

                *
              • *
              • *

                * If you specify a resolution that is greater than the resolution of the input file, Elastic Transcoder * rescales the output to the higher resolution. *

                *
              • *
              • *

                * We recommend that you specify a resolution for which the product of width and height is less than or equal * to the applicable value in the following list (List - Max width x height value): *

                *
                  *
                • *

                  * 1 - 25344 *

                  *
                • *
                • *

                  * 1b - 25344 *

                  *
                • *
                • *

                  * 1.1 - 101376 *

                  *
                • *
                • *

                  * 1.2 - 101376 *

                  *
                • *
                • *

                  * 1.3 - 101376 *

                  *
                • *
                • *

                  * 2 - 101376 *

                  *
                • *
                • *

                  * 2.1 - 202752 *

                  *
                • *
                • *

                  * 2.2 - 404720 *

                  *
                • *
                • *

                  * 3 - 404720 *

                  *
                • *
                • *

                  * 3.1 - 921600 *

                  *
                • *
                • *

                  * 3.2 - 1310720 *

                  *
                • *
                • *

                  * 4 - 2097152 *

                  *
                • *
                • *

                  * 4.1 - 2097152 *

                  *
                • *
                *
              • */ public void setResolution(String resolution) { this.resolution = resolution; } /** * *

                * To better control resolution and aspect ratio of output videos, we recommend that you use the values * MaxWidth, MaxHeight, SizingPolicy, PaddingPolicy, and * DisplayAspectRatio instead of Resolution and AspectRatio. The two groups * of settings are mutually exclusive. Do not use them together. *

                *
                *

                * The width and height of the video in the output file, in pixels. Valid values are auto and * width x height: *

                *
                  *
                • *

                  * auto: Elastic Transcoder attempts to preserve the width and height of the input file, subject to the * following rules. *

                  *
                • *
                • *

                  * width x height : The width and height of the output video in pixels. *

                  *
                • *
                *

                * Note the following about specifying the width and height: *

                *
                  *
                • *

                  * The width must be an even integer between 128 and 4096, inclusive. *

                  *
                • *
                • *

                  * The height must be an even integer between 96 and 3072, inclusive. *

                  *
                • *
                • *

                  * If you specify a resolution that is less than the resolution of the input file, Elastic Transcoder rescales the * output file to the lower resolution. *

                  *
                • *
                • *

                  * If you specify a resolution that is greater than the resolution of the input file, Elastic Transcoder rescales * the output to the higher resolution. *

                  *
                • *
                • *

                  * We recommend that you specify a resolution for which the product of width and height is less than or equal to the * applicable value in the following list (List - Max width x height value): *

                  *
                    *
                  • *

                    * 1 - 25344 *

                    *
                  • *
                  • *

                    * 1b - 25344 *

                    *
                  • *
                  • *

                    * 1.1 - 101376 *

                    *
                  • *
                  • *

                    * 1.2 - 101376 *

                    *
                  • *
                  • *

                    * 1.3 - 101376 *

                    *
                  • *
                  • *

                    * 2 - 101376 *

                    *
                  • *
                  • *

                    * 2.1 - 202752 *

                    *
                  • *
                  • *

                    * 2.2 - 404720 *

                    *
                  • *
                  • *

                    * 3 - 404720 *

                    *
                  • *
                  • *

                    * 3.1 - 921600 *

                    *
                  • *
                  • *

                    * 3.2 - 1310720 *

                    *
                  • *
                  • *

                    * 4 - 2097152 *

                    *
                  • *
                  • *

                    * 4.1 - 2097152 *

                    *
                  • *
                  *
                • *
                * * @return

                * To better control resolution and aspect ratio of output videos, we recommend that you use the values * MaxWidth, MaxHeight, SizingPolicy, PaddingPolicy, and * DisplayAspectRatio instead of Resolution and AspectRatio. The two * groups of settings are mutually exclusive. Do not use them together. *

                * *

                * The width and height of the video in the output file, in pixels. Valid values are auto and * width x height: *

                *
                  *
                • *

                  * auto: Elastic Transcoder attempts to preserve the width and height of the input file, * subject to the following rules. *

                  *
                • *
                • *

                  * width x height : The width and height of the output video in pixels. *

                  *
                • *
                *

                * Note the following about specifying the width and height: *

                *
                  *
                • *

                  * The width must be an even integer between 128 and 4096, inclusive. *

                  *
                • *
                • *

                  * The height must be an even integer between 96 and 3072, inclusive. *

                  *
                • *
                • *

                  * If you specify a resolution that is less than the resolution of the input file, Elastic Transcoder * rescales the output file to the lower resolution. *

                  *
                • *
                • *

                  * If you specify a resolution that is greater than the resolution of the input file, Elastic Transcoder * rescales the output to the higher resolution. *

                  *
                • *
                • *

                  * We recommend that you specify a resolution for which the product of width and height is less than or * equal to the applicable value in the following list (List - Max width x height value): *

                  *
                    *
                  • *

                    * 1 - 25344 *

                    *
                  • *
                  • *

                    * 1b - 25344 *

                    *
                  • *
                  • *

                    * 1.1 - 101376 *

                    *
                  • *
                  • *

                    * 1.2 - 101376 *

                    *
                  • *
                  • *

                    * 1.3 - 101376 *

                    *
                  • *
                  • *

                    * 2 - 101376 *

                    *
                  • *
                  • *

                    * 2.1 - 202752 *

                    *
                  • *
                  • *

                    * 2.2 - 404720 *

                    *
                  • *
                  • *

                    * 3 - 404720 *

                    *
                  • *
                  • *

                    * 3.1 - 921600 *

                    *
                  • *
                  • *

                    * 3.2 - 1310720 *

                    *
                  • *
                  • *

                    * 4 - 2097152 *

                    *
                  • *
                  • *

                    * 4.1 - 2097152 *

                    *
                  • *
                  *
                • */ public String getResolution() { return this.resolution; } /** * *

                  * To better control resolution and aspect ratio of output videos, we recommend that you use the values * MaxWidth, MaxHeight, SizingPolicy, PaddingPolicy, and * DisplayAspectRatio instead of Resolution and AspectRatio. The two groups * of settings are mutually exclusive. Do not use them together. *

                  *
                  *

                  * The width and height of the video in the output file, in pixels. Valid values are auto and * width x height: *

                  *
                    *
                  • *

                    * auto: Elastic Transcoder attempts to preserve the width and height of the input file, subject to the * following rules. *

                    *
                  • *
                  • *

                    * width x height : The width and height of the output video in pixels. *

                    *
                  • *
                  *

                  * Note the following about specifying the width and height: *

                  *
                    *
                  • *

                    * The width must be an even integer between 128 and 4096, inclusive. *

                    *
                  • *
                  • *

                    * The height must be an even integer between 96 and 3072, inclusive. *

                    *
                  • *
                  • *

                    * If you specify a resolution that is less than the resolution of the input file, Elastic Transcoder rescales the * output file to the lower resolution. *

                    *
                  • *
                  • *

                    * If you specify a resolution that is greater than the resolution of the input file, Elastic Transcoder rescales * the output to the higher resolution. *

                    *
                  • *
                  • *

                    * We recommend that you specify a resolution for which the product of width and height is less than or equal to the * applicable value in the following list (List - Max width x height value): *

                    *
                      *
                    • *

                      * 1 - 25344 *

                      *
                    • *
                    • *

                      * 1b - 25344 *

                      *
                    • *
                    • *

                      * 1.1 - 101376 *

                      *
                    • *
                    • *

                      * 1.2 - 101376 *

                      *
                    • *
                    • *

                      * 1.3 - 101376 *

                      *
                    • *
                    • *

                      * 2 - 101376 *

                      *
                    • *
                    • *

                      * 2.1 - 202752 *

                      *
                    • *
                    • *

                      * 2.2 - 404720 *

                      *
                    • *
                    • *

                      * 3 - 404720 *

                      *
                    • *
                    • *

                      * 3.1 - 921600 *

                      *
                    • *
                    • *

                      * 3.2 - 1310720 *

                      *
                    • *
                    • *

                      * 4 - 2097152 *

                      *
                    • *
                    • *

                      * 4.1 - 2097152 *

                      *
                    • *
                    *
                  • *
                  * * @param resolution *

                  * To better control resolution and aspect ratio of output videos, we recommend that you use the values * MaxWidth, MaxHeight, SizingPolicy, PaddingPolicy, and * DisplayAspectRatio instead of Resolution and AspectRatio. The two * groups of settings are mutually exclusive. Do not use them together. *

                  * *

                  * The width and height of the video in the output file, in pixels. Valid values are auto and * width x height: *

                  *
                    *
                  • *

                    * auto: Elastic Transcoder attempts to preserve the width and height of the input file, subject * to the following rules. *

                    *
                  • *
                  • *

                    * width x height : The width and height of the output video in pixels. *

                    *
                  • *
                  *

                  * Note the following about specifying the width and height: *

                  *
                    *
                  • *

                    * The width must be an even integer between 128 and 4096, inclusive. *

                    *
                  • *
                  • *

                    * The height must be an even integer between 96 and 3072, inclusive. *

                    *
                  • *
                  • *

                    * If you specify a resolution that is less than the resolution of the input file, Elastic Transcoder * rescales the output file to the lower resolution. *

                    *
                  • *
                  • *

                    * If you specify a resolution that is greater than the resolution of the input file, Elastic Transcoder * rescales the output to the higher resolution. *

                    *
                  • *
                  • *

                    * We recommend that you specify a resolution for which the product of width and height is less than or equal * to the applicable value in the following list (List - Max width x height value): *

                    *
                      *
                    • *

                      * 1 - 25344 *

                      *
                    • *
                    • *

                      * 1b - 25344 *

                      *
                    • *
                    • *

                      * 1.1 - 101376 *

                      *
                    • *
                    • *

                      * 1.2 - 101376 *

                      *
                    • *
                    • *

                      * 1.3 - 101376 *

                      *
                    • *
                    • *

                      * 2 - 101376 *

                      *
                    • *
                    • *

                      * 2.1 - 202752 *

                      *
                    • *
                    • *

                      * 2.2 - 404720 *

                      *
                    • *
                    • *

                      * 3 - 404720 *

                      *
                    • *
                    • *

                      * 3.1 - 921600 *

                      *
                    • *
                    • *

                      * 3.2 - 1310720 *

                      *
                    • *
                    • *

                      * 4 - 2097152 *

                      *
                    • *
                    • *

                      * 4.1 - 2097152 *

                      *
                    • *
                    *
                  • * @return Returns a reference to this object so that method calls can be chained together. */ public VideoParameters withResolution(String resolution) { setResolution(resolution); return this; } /** * *

                    * To better control resolution and aspect ratio of output videos, we recommend that you use the values * MaxWidth, MaxHeight, SizingPolicy, PaddingPolicy, and * DisplayAspectRatio instead of Resolution and AspectRatio. The two groups * of settings are mutually exclusive. Do not use them together. *

                    *
                    *

                    * The display aspect ratio of the video in the output file. Valid values include: *

                    *

                    * auto, 1:1, 4:3, 3:2, 16:9 *

                    *

                    * If you specify auto, Elastic Transcoder tries to preserve the aspect ratio of the input file. *

                    *

                    * If you specify an aspect ratio for the output file that differs from aspect ratio of the input file, Elastic * Transcoder adds pillarboxing (black bars on the sides) or letterboxing (black bars on the top and bottom) to * maintain the aspect ratio of the active region of the video. *

                    * * @param aspectRatio *

                    * To better control resolution and aspect ratio of output videos, we recommend that you use the values * MaxWidth, MaxHeight, SizingPolicy, PaddingPolicy, and * DisplayAspectRatio instead of Resolution and AspectRatio. The two * groups of settings are mutually exclusive. Do not use them together. *

                    * *

                    * The display aspect ratio of the video in the output file. Valid values include: *

                    *

                    * auto, 1:1, 4:3, 3:2, 16:9 *

                    *

                    * If you specify auto, Elastic Transcoder tries to preserve the aspect ratio of the input file. *

                    *

                    * If you specify an aspect ratio for the output file that differs from aspect ratio of the input file, * Elastic Transcoder adds pillarboxing (black bars on the sides) or letterboxing (black bars on the top and * bottom) to maintain the aspect ratio of the active region of the video. */ public void setAspectRatio(String aspectRatio) { this.aspectRatio = aspectRatio; } /** * *

                    * To better control resolution and aspect ratio of output videos, we recommend that you use the values * MaxWidth, MaxHeight, SizingPolicy, PaddingPolicy, and * DisplayAspectRatio instead of Resolution and AspectRatio. The two groups * of settings are mutually exclusive. Do not use them together. *

                    * *

                    * The display aspect ratio of the video in the output file. Valid values include: *

                    *

                    * auto, 1:1, 4:3, 3:2, 16:9 *

                    *

                    * If you specify auto, Elastic Transcoder tries to preserve the aspect ratio of the input file. *

                    *

                    * If you specify an aspect ratio for the output file that differs from aspect ratio of the input file, Elastic * Transcoder adds pillarboxing (black bars on the sides) or letterboxing (black bars on the top and bottom) to * maintain the aspect ratio of the active region of the video. *

                    * * @return

                    * To better control resolution and aspect ratio of output videos, we recommend that you use the values * MaxWidth, MaxHeight, SizingPolicy, PaddingPolicy, and * DisplayAspectRatio instead of Resolution and AspectRatio. The two * groups of settings are mutually exclusive. Do not use them together. *

                    * *

                    * The display aspect ratio of the video in the output file. Valid values include: *

                    *

                    * auto, 1:1, 4:3, 3:2, 16:9 *

                    *

                    * If you specify auto, Elastic Transcoder tries to preserve the aspect ratio of the input * file. *

                    *

                    * If you specify an aspect ratio for the output file that differs from aspect ratio of the input file, * Elastic Transcoder adds pillarboxing (black bars on the sides) or letterboxing (black bars on the top and * bottom) to maintain the aspect ratio of the active region of the video. */ public String getAspectRatio() { return this.aspectRatio; } /** * *

                    * To better control resolution and aspect ratio of output videos, we recommend that you use the values * MaxWidth, MaxHeight, SizingPolicy, PaddingPolicy, and * DisplayAspectRatio instead of Resolution and AspectRatio. The two groups * of settings are mutually exclusive. Do not use them together. *

                    * *

                    * The display aspect ratio of the video in the output file. Valid values include: *

                    *

                    * auto, 1:1, 4:3, 3:2, 16:9 *

                    *

                    * If you specify auto, Elastic Transcoder tries to preserve the aspect ratio of the input file. *

                    *

                    * If you specify an aspect ratio for the output file that differs from aspect ratio of the input file, Elastic * Transcoder adds pillarboxing (black bars on the sides) or letterboxing (black bars on the top and bottom) to * maintain the aspect ratio of the active region of the video. *

                    * * @param aspectRatio *

                    * To better control resolution and aspect ratio of output videos, we recommend that you use the values * MaxWidth, MaxHeight, SizingPolicy, PaddingPolicy, and * DisplayAspectRatio instead of Resolution and AspectRatio. The two * groups of settings are mutually exclusive. Do not use them together. *

                    * *

                    * The display aspect ratio of the video in the output file. Valid values include: *

                    *

                    * auto, 1:1, 4:3, 3:2, 16:9 *

                    *

                    * If you specify auto, Elastic Transcoder tries to preserve the aspect ratio of the input file. *

                    *

                    * If you specify an aspect ratio for the output file that differs from aspect ratio of the input file, * Elastic Transcoder adds pillarboxing (black bars on the sides) or letterboxing (black bars on the top and * bottom) to maintain the aspect ratio of the active region of the video. * @return Returns a reference to this object so that method calls can be chained together. */ public VideoParameters withAspectRatio(String aspectRatio) { setAspectRatio(aspectRatio); return this; } /** *

                    * The maximum width of the output video in pixels. If you specify auto, Elastic Transcoder uses 1920 * (Full HD) as the default value. If you specify a numeric value, enter an even integer between 128 and 4096. *

                    * * @param maxWidth * The maximum width of the output video in pixels. If you specify auto, Elastic Transcoder uses * 1920 (Full HD) as the default value. If you specify a numeric value, enter an even integer between 128 and * 4096. */ public void setMaxWidth(String maxWidth) { this.maxWidth = maxWidth; } /** *

                    * The maximum width of the output video in pixels. If you specify auto, Elastic Transcoder uses 1920 * (Full HD) as the default value. If you specify a numeric value, enter an even integer between 128 and 4096. *

                    * * @return The maximum width of the output video in pixels. If you specify auto, Elastic Transcoder * uses 1920 (Full HD) as the default value. If you specify a numeric value, enter an even integer between * 128 and 4096. */ public String getMaxWidth() { return this.maxWidth; } /** *

                    * The maximum width of the output video in pixels. If you specify auto, Elastic Transcoder uses 1920 * (Full HD) as the default value. If you specify a numeric value, enter an even integer between 128 and 4096. *

                    * * @param maxWidth * The maximum width of the output video in pixels. If you specify auto, Elastic Transcoder uses * 1920 (Full HD) as the default value. If you specify a numeric value, enter an even integer between 128 and * 4096. * @return Returns a reference to this object so that method calls can be chained together. */ public VideoParameters withMaxWidth(String maxWidth) { setMaxWidth(maxWidth); return this; } /** *

                    * The maximum height of the output video in pixels. If you specify auto, Elastic Transcoder uses 1080 * (Full HD) as the default value. If you specify a numeric value, enter an even integer between 96 and 3072. *

                    * * @param maxHeight * The maximum height of the output video in pixels. If you specify auto, Elastic Transcoder * uses 1080 (Full HD) as the default value. If you specify a numeric value, enter an even integer between 96 * and 3072. */ public void setMaxHeight(String maxHeight) { this.maxHeight = maxHeight; } /** *

                    * The maximum height of the output video in pixels. If you specify auto, Elastic Transcoder uses 1080 * (Full HD) as the default value. If you specify a numeric value, enter an even integer between 96 and 3072. *

                    * * @return The maximum height of the output video in pixels. If you specify auto, Elastic Transcoder * uses 1080 (Full HD) as the default value. If you specify a numeric value, enter an even integer between * 96 and 3072. */ public String getMaxHeight() { return this.maxHeight; } /** *

                    * The maximum height of the output video in pixels. If you specify auto, Elastic Transcoder uses 1080 * (Full HD) as the default value. If you specify a numeric value, enter an even integer between 96 and 3072. *

                    * * @param maxHeight * The maximum height of the output video in pixels. If you specify auto, Elastic Transcoder * uses 1080 (Full HD) as the default value. If you specify a numeric value, enter an even integer between 96 * and 3072. * @return Returns a reference to this object so that method calls can be chained together. */ public VideoParameters withMaxHeight(String maxHeight) { setMaxHeight(maxHeight); return this; } /** *

                    * The value that Elastic Transcoder adds to the metadata in the output file. *

                    * * @param displayAspectRatio * The value that Elastic Transcoder adds to the metadata in the output file. */ public void setDisplayAspectRatio(String displayAspectRatio) { this.displayAspectRatio = displayAspectRatio; } /** *

                    * The value that Elastic Transcoder adds to the metadata in the output file. *

                    * * @return The value that Elastic Transcoder adds to the metadata in the output file. */ public String getDisplayAspectRatio() { return this.displayAspectRatio; } /** *

                    * The value that Elastic Transcoder adds to the metadata in the output file. *

                    * * @param displayAspectRatio * The value that Elastic Transcoder adds to the metadata in the output file. * @return Returns a reference to this object so that method calls can be chained together. */ public VideoParameters withDisplayAspectRatio(String displayAspectRatio) { setDisplayAspectRatio(displayAspectRatio); return this; } /** *

                    * Specify one of the following values to control scaling of the output video: *

                    *
                      *
                    • *

                      * Fit: Elastic Transcoder scales the output video so it matches the value that you specified in either * MaxWidth or MaxHeight without exceeding the other value. *

                      *
                    • *
                    • *

                      * Fill: Elastic Transcoder scales the output video so it matches the value that you specified in * either MaxWidth or MaxHeight and matches or exceeds the other value. Elastic Transcoder * centers the output video and then crops it in the dimension (if any) that exceeds the maximum value. *

                      *
                    • *
                    • *

                      * Stretch: Elastic Transcoder stretches the output video to match the values that you specified for * MaxWidth and MaxHeight. If the relative proportions of the input video and the output * video are different, the output video will be distorted. *

                      *
                    • *
                    • *

                      * Keep: Elastic Transcoder does not scale the output video. If either dimension of the input video * exceeds the values that you specified for MaxWidth and MaxHeight, Elastic Transcoder * crops the output video. *

                      *
                    • *
                    • *

                      * ShrinkToFit: Elastic Transcoder scales the output video down so that its dimensions match the values * that you specified for at least one of MaxWidth and MaxHeight without exceeding either * value. If you specify this option, Elastic Transcoder does not scale the video up. *

                      *
                    • *
                    • *

                      * ShrinkToFill: Elastic Transcoder scales the output video down so that its dimensions match the * values that you specified for at least one of MaxWidth and MaxHeight without dropping * below either value. If you specify this option, Elastic Transcoder does not scale the video up. *

                      *
                    • *
                    * * @param sizingPolicy * Specify one of the following values to control scaling of the output video:

                    *
                      *
                    • *

                      * Fit: Elastic Transcoder scales the output video so it matches the value that you specified in * either MaxWidth or MaxHeight without exceeding the other value. *

                      *
                    • *
                    • *

                      * Fill: Elastic Transcoder scales the output video so it matches the value that you specified * in either MaxWidth or MaxHeight and matches or exceeds the other value. Elastic * Transcoder centers the output video and then crops it in the dimension (if any) that exceeds the maximum * value. *

                      *
                    • *
                    • *

                      * Stretch: Elastic Transcoder stretches the output video to match the values that you specified * for MaxWidth and MaxHeight. If the relative proportions of the input video and * the output video are different, the output video will be distorted. *

                      *
                    • *
                    • *

                      * Keep: Elastic Transcoder does not scale the output video. If either dimension of the input * video exceeds the values that you specified for MaxWidth and MaxHeight, Elastic * Transcoder crops the output video. *

                      *
                    • *
                    • *

                      * ShrinkToFit: Elastic Transcoder scales the output video down so that its dimensions match the * values that you specified for at least one of MaxWidth and MaxHeight without * exceeding either value. If you specify this option, Elastic Transcoder does not scale the video up. *

                      *
                    • *
                    • *

                      * ShrinkToFill: Elastic Transcoder scales the output video down so that its dimensions match * the values that you specified for at least one of MaxWidth and MaxHeight without * dropping below either value. If you specify this option, Elastic Transcoder does not scale the video up. *

                      *
                    • */ public void setSizingPolicy(String sizingPolicy) { this.sizingPolicy = sizingPolicy; } /** *

                      * Specify one of the following values to control scaling of the output video: *

                      *
                        *
                      • *

                        * Fit: Elastic Transcoder scales the output video so it matches the value that you specified in either * MaxWidth or MaxHeight without exceeding the other value. *

                        *
                      • *
                      • *

                        * Fill: Elastic Transcoder scales the output video so it matches the value that you specified in * either MaxWidth or MaxHeight and matches or exceeds the other value. Elastic Transcoder * centers the output video and then crops it in the dimension (if any) that exceeds the maximum value. *

                        *
                      • *
                      • *

                        * Stretch: Elastic Transcoder stretches the output video to match the values that you specified for * MaxWidth and MaxHeight. If the relative proportions of the input video and the output * video are different, the output video will be distorted. *

                        *
                      • *
                      • *

                        * Keep: Elastic Transcoder does not scale the output video. If either dimension of the input video * exceeds the values that you specified for MaxWidth and MaxHeight, Elastic Transcoder * crops the output video. *

                        *
                      • *
                      • *

                        * ShrinkToFit: Elastic Transcoder scales the output video down so that its dimensions match the values * that you specified for at least one of MaxWidth and MaxHeight without exceeding either * value. If you specify this option, Elastic Transcoder does not scale the video up. *

                        *
                      • *
                      • *

                        * ShrinkToFill: Elastic Transcoder scales the output video down so that its dimensions match the * values that you specified for at least one of MaxWidth and MaxHeight without dropping * below either value. If you specify this option, Elastic Transcoder does not scale the video up. *

                        *
                      • *
                      * * @return Specify one of the following values to control scaling of the output video:

                      *
                        *
                      • *

                        * Fit: Elastic Transcoder scales the output video so it matches the value that you specified * in either MaxWidth or MaxHeight without exceeding the other value. *

                        *
                      • *
                      • *

                        * Fill: Elastic Transcoder scales the output video so it matches the value that you specified * in either MaxWidth or MaxHeight and matches or exceeds the other value. Elastic * Transcoder centers the output video and then crops it in the dimension (if any) that exceeds the maximum * value. *

                        *
                      • *
                      • *

                        * Stretch: Elastic Transcoder stretches the output video to match the values that you * specified for MaxWidth and MaxHeight. If the relative proportions of the input * video and the output video are different, the output video will be distorted. *

                        *
                      • *
                      • *

                        * Keep: Elastic Transcoder does not scale the output video. If either dimension of the input * video exceeds the values that you specified for MaxWidth and MaxHeight, Elastic * Transcoder crops the output video. *

                        *
                      • *
                      • *

                        * ShrinkToFit: Elastic Transcoder scales the output video down so that its dimensions match * the values that you specified for at least one of MaxWidth and MaxHeight * without exceeding either value. If you specify this option, Elastic Transcoder does not scale the video * up. *

                        *
                      • *
                      • *

                        * ShrinkToFill: Elastic Transcoder scales the output video down so that its dimensions match * the values that you specified for at least one of MaxWidth and MaxHeight * without dropping below either value. If you specify this option, Elastic Transcoder does not scale the * video up. *

                        *
                      • */ public String getSizingPolicy() { return this.sizingPolicy; } /** *

                        * Specify one of the following values to control scaling of the output video: *

                        *
                          *
                        • *

                          * Fit: Elastic Transcoder scales the output video so it matches the value that you specified in either * MaxWidth or MaxHeight without exceeding the other value. *

                          *
                        • *
                        • *

                          * Fill: Elastic Transcoder scales the output video so it matches the value that you specified in * either MaxWidth or MaxHeight and matches or exceeds the other value. Elastic Transcoder * centers the output video and then crops it in the dimension (if any) that exceeds the maximum value. *

                          *
                        • *
                        • *

                          * Stretch: Elastic Transcoder stretches the output video to match the values that you specified for * MaxWidth and MaxHeight. If the relative proportions of the input video and the output * video are different, the output video will be distorted. *

                          *
                        • *
                        • *

                          * Keep: Elastic Transcoder does not scale the output video. If either dimension of the input video * exceeds the values that you specified for MaxWidth and MaxHeight, Elastic Transcoder * crops the output video. *

                          *
                        • *
                        • *

                          * ShrinkToFit: Elastic Transcoder scales the output video down so that its dimensions match the values * that you specified for at least one of MaxWidth and MaxHeight without exceeding either * value. If you specify this option, Elastic Transcoder does not scale the video up. *

                          *
                        • *
                        • *

                          * ShrinkToFill: Elastic Transcoder scales the output video down so that its dimensions match the * values that you specified for at least one of MaxWidth and MaxHeight without dropping * below either value. If you specify this option, Elastic Transcoder does not scale the video up. *

                          *
                        • *
                        * * @param sizingPolicy * Specify one of the following values to control scaling of the output video:

                        *
                          *
                        • *

                          * Fit: Elastic Transcoder scales the output video so it matches the value that you specified in * either MaxWidth or MaxHeight without exceeding the other value. *

                          *
                        • *
                        • *

                          * Fill: Elastic Transcoder scales the output video so it matches the value that you specified * in either MaxWidth or MaxHeight and matches or exceeds the other value. Elastic * Transcoder centers the output video and then crops it in the dimension (if any) that exceeds the maximum * value. *

                          *
                        • *
                        • *

                          * Stretch: Elastic Transcoder stretches the output video to match the values that you specified * for MaxWidth and MaxHeight. If the relative proportions of the input video and * the output video are different, the output video will be distorted. *

                          *
                        • *
                        • *

                          * Keep: Elastic Transcoder does not scale the output video. If either dimension of the input * video exceeds the values that you specified for MaxWidth and MaxHeight, Elastic * Transcoder crops the output video. *

                          *
                        • *
                        • *

                          * ShrinkToFit: Elastic Transcoder scales the output video down so that its dimensions match the * values that you specified for at least one of MaxWidth and MaxHeight without * exceeding either value. If you specify this option, Elastic Transcoder does not scale the video up. *

                          *
                        • *
                        • *

                          * ShrinkToFill: Elastic Transcoder scales the output video down so that its dimensions match * the values that you specified for at least one of MaxWidth and MaxHeight without * dropping below either value. If you specify this option, Elastic Transcoder does not scale the video up. *

                          *
                        • * @return Returns a reference to this object so that method calls can be chained together. */ public VideoParameters withSizingPolicy(String sizingPolicy) { setSizingPolicy(sizingPolicy); return this; } /** *

                          * When you set PaddingPolicy to Pad, Elastic Transcoder may add black bars to the top and * bottom and/or left and right sides of the output video to make the total size of the output video match the * values that you specified for MaxWidth and MaxHeight. *

                          * * @param paddingPolicy * When you set PaddingPolicy to Pad, Elastic Transcoder may add black bars to the * top and bottom and/or left and right sides of the output video to make the total size of the output video * match the values that you specified for MaxWidth and MaxHeight. */ public void setPaddingPolicy(String paddingPolicy) { this.paddingPolicy = paddingPolicy; } /** *

                          * When you set PaddingPolicy to Pad, Elastic Transcoder may add black bars to the top and * bottom and/or left and right sides of the output video to make the total size of the output video match the * values that you specified for MaxWidth and MaxHeight. *

                          * * @return When you set PaddingPolicy to Pad, Elastic Transcoder may add black bars to the * top and bottom and/or left and right sides of the output video to make the total size of the output video * match the values that you specified for MaxWidth and MaxHeight. */ public String getPaddingPolicy() { return this.paddingPolicy; } /** *

                          * When you set PaddingPolicy to Pad, Elastic Transcoder may add black bars to the top and * bottom and/or left and right sides of the output video to make the total size of the output video match the * values that you specified for MaxWidth and MaxHeight. *

                          * * @param paddingPolicy * When you set PaddingPolicy to Pad, Elastic Transcoder may add black bars to the * top and bottom and/or left and right sides of the output video to make the total size of the output video * match the values that you specified for MaxWidth and MaxHeight. * @return Returns a reference to this object so that method calls can be chained together. */ public VideoParameters withPaddingPolicy(String paddingPolicy) { setPaddingPolicy(paddingPolicy); return this; } /** *

                          * Settings for the size, location, and opacity of graphics that you want Elastic Transcoder to overlay over videos * that are transcoded using this preset. You can specify settings for up to four watermarks. Watermarks appear in * the specified size and location, and with the specified opacity for the duration of the transcoded video. *

                          *

                          * Watermarks can be in .png or .jpg format. If you want to display a watermark that is not rectangular, use the * .png format, which supports transparency. *

                          *

                          * When you create a job that uses this preset, you specify the .png or .jpg graphics that you want Elastic * Transcoder to include in the transcoded videos. You can specify fewer graphics in the job than you specify * watermark settings in the preset, which allows you to use the same preset for up to four watermarks that have * different dimensions. *

                          * * @return Settings for the size, location, and opacity of graphics that you want Elastic Transcoder to overlay over * videos that are transcoded using this preset. You can specify settings for up to four watermarks. * Watermarks appear in the specified size and location, and with the specified opacity for the duration of * the transcoded video.

                          *

                          * Watermarks can be in .png or .jpg format. If you want to display a watermark that is not rectangular, use * the .png format, which supports transparency. *

                          *

                          * When you create a job that uses this preset, you specify the .png or .jpg graphics that you want Elastic * Transcoder to include in the transcoded videos. You can specify fewer graphics in the job than you * specify watermark settings in the preset, which allows you to use the same preset for up to four * watermarks that have different dimensions. */ public java.util.List getWatermarks() { if (watermarks == null) { watermarks = new com.amazonaws.internal.SdkInternalList(); } return watermarks; } /** *

                          * Settings for the size, location, and opacity of graphics that you want Elastic Transcoder to overlay over videos * that are transcoded using this preset. You can specify settings for up to four watermarks. Watermarks appear in * the specified size and location, and with the specified opacity for the duration of the transcoded video. *

                          *

                          * Watermarks can be in .png or .jpg format. If you want to display a watermark that is not rectangular, use the * .png format, which supports transparency. *

                          *

                          * When you create a job that uses this preset, you specify the .png or .jpg graphics that you want Elastic * Transcoder to include in the transcoded videos. You can specify fewer graphics in the job than you specify * watermark settings in the preset, which allows you to use the same preset for up to four watermarks that have * different dimensions. *

                          * * @param watermarks * Settings for the size, location, and opacity of graphics that you want Elastic Transcoder to overlay over * videos that are transcoded using this preset. You can specify settings for up to four watermarks. * Watermarks appear in the specified size and location, and with the specified opacity for the duration of * the transcoded video.

                          *

                          * Watermarks can be in .png or .jpg format. If you want to display a watermark that is not rectangular, use * the .png format, which supports transparency. *

                          *

                          * When you create a job that uses this preset, you specify the .png or .jpg graphics that you want Elastic * Transcoder to include in the transcoded videos. You can specify fewer graphics in the job than you specify * watermark settings in the preset, which allows you to use the same preset for up to four watermarks that * have different dimensions. */ public void setWatermarks(java.util.Collection watermarks) { if (watermarks == null) { this.watermarks = null; return; } this.watermarks = new com.amazonaws.internal.SdkInternalList(watermarks); } /** *

                          * Settings for the size, location, and opacity of graphics that you want Elastic Transcoder to overlay over videos * that are transcoded using this preset. You can specify settings for up to four watermarks. Watermarks appear in * the specified size and location, and with the specified opacity for the duration of the transcoded video. *

                          *

                          * Watermarks can be in .png or .jpg format. If you want to display a watermark that is not rectangular, use the * .png format, which supports transparency. *

                          *

                          * When you create a job that uses this preset, you specify the .png or .jpg graphics that you want Elastic * Transcoder to include in the transcoded videos. You can specify fewer graphics in the job than you specify * watermark settings in the preset, which allows you to use the same preset for up to four watermarks that have * different dimensions. *

                          *

                          * NOTE: This method appends the values to the existing list (if any). Use * {@link #setWatermarks(java.util.Collection)} or {@link #withWatermarks(java.util.Collection)} if you want to * override the existing values. *

                          * * @param watermarks * Settings for the size, location, and opacity of graphics that you want Elastic Transcoder to overlay over * videos that are transcoded using this preset. You can specify settings for up to four watermarks. * Watermarks appear in the specified size and location, and with the specified opacity for the duration of * the transcoded video.

                          *

                          * Watermarks can be in .png or .jpg format. If you want to display a watermark that is not rectangular, use * the .png format, which supports transparency. *

                          *

                          * When you create a job that uses this preset, you specify the .png or .jpg graphics that you want Elastic * Transcoder to include in the transcoded videos. You can specify fewer graphics in the job than you specify * watermark settings in the preset, which allows you to use the same preset for up to four watermarks that * have different dimensions. * @return Returns a reference to this object so that method calls can be chained together. */ public VideoParameters withWatermarks(PresetWatermark... watermarks) { if (this.watermarks == null) { setWatermarks(new com.amazonaws.internal.SdkInternalList(watermarks.length)); } for (PresetWatermark ele : watermarks) { this.watermarks.add(ele); } return this; } /** *

                          * Settings for the size, location, and opacity of graphics that you want Elastic Transcoder to overlay over videos * that are transcoded using this preset. You can specify settings for up to four watermarks. Watermarks appear in * the specified size and location, and with the specified opacity for the duration of the transcoded video. *

                          *

                          * Watermarks can be in .png or .jpg format. If you want to display a watermark that is not rectangular, use the * .png format, which supports transparency. *

                          *

                          * When you create a job that uses this preset, you specify the .png or .jpg graphics that you want Elastic * Transcoder to include in the transcoded videos. You can specify fewer graphics in the job than you specify * watermark settings in the preset, which allows you to use the same preset for up to four watermarks that have * different dimensions. *

                          * * @param watermarks * Settings for the size, location, and opacity of graphics that you want Elastic Transcoder to overlay over * videos that are transcoded using this preset. You can specify settings for up to four watermarks. * Watermarks appear in the specified size and location, and with the specified opacity for the duration of * the transcoded video.

                          *

                          * Watermarks can be in .png or .jpg format. If you want to display a watermark that is not rectangular, use * the .png format, which supports transparency. *

                          *

                          * When you create a job that uses this preset, you specify the .png or .jpg graphics that you want Elastic * Transcoder to include in the transcoded videos. You can specify fewer graphics in the job than you specify * watermark settings in the preset, which allows you to use the same preset for up to four watermarks that * have different dimensions. * @return Returns a reference to this object so that method calls can be chained together. */ public VideoParameters withWatermarks(java.util.Collection watermarks) { setWatermarks(watermarks); return this; } /** * Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be * redacted from this string using a placeholder value. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getCodec() != null) sb.append("Codec: ").append(getCodec()).append(","); if (getCodecOptions() != null) sb.append("CodecOptions: ").append(getCodecOptions()).append(","); if (getKeyframesMaxDist() != null) sb.append("KeyframesMaxDist: ").append(getKeyframesMaxDist()).append(","); if (getFixedGOP() != null) sb.append("FixedGOP: ").append(getFixedGOP()).append(","); if (getBitRate() != null) sb.append("BitRate: ").append(getBitRate()).append(","); if (getFrameRate() != null) sb.append("FrameRate: ").append(getFrameRate()).append(","); if (getMaxFrameRate() != null) sb.append("MaxFrameRate: ").append(getMaxFrameRate()).append(","); if (getResolution() != null) sb.append("Resolution: ").append(getResolution()).append(","); if (getAspectRatio() != null) sb.append("AspectRatio: ").append(getAspectRatio()).append(","); if (getMaxWidth() != null) sb.append("MaxWidth: ").append(getMaxWidth()).append(","); if (getMaxHeight() != null) sb.append("MaxHeight: ").append(getMaxHeight()).append(","); if (getDisplayAspectRatio() != null) sb.append("DisplayAspectRatio: ").append(getDisplayAspectRatio()).append(","); if (getSizingPolicy() != null) sb.append("SizingPolicy: ").append(getSizingPolicy()).append(","); if (getPaddingPolicy() != null) sb.append("PaddingPolicy: ").append(getPaddingPolicy()).append(","); if (getWatermarks() != null) sb.append("Watermarks: ").append(getWatermarks()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof VideoParameters == false) return false; VideoParameters other = (VideoParameters) obj; if (other.getCodec() == null ^ this.getCodec() == null) return false; if (other.getCodec() != null && other.getCodec().equals(this.getCodec()) == false) return false; if (other.getCodecOptions() == null ^ this.getCodecOptions() == null) return false; if (other.getCodecOptions() != null && other.getCodecOptions().equals(this.getCodecOptions()) == false) return false; if (other.getKeyframesMaxDist() == null ^ this.getKeyframesMaxDist() == null) return false; if (other.getKeyframesMaxDist() != null && other.getKeyframesMaxDist().equals(this.getKeyframesMaxDist()) == false) return false; if (other.getFixedGOP() == null ^ this.getFixedGOP() == null) return false; if (other.getFixedGOP() != null && other.getFixedGOP().equals(this.getFixedGOP()) == false) return false; if (other.getBitRate() == null ^ this.getBitRate() == null) return false; if (other.getBitRate() != null && other.getBitRate().equals(this.getBitRate()) == false) return false; if (other.getFrameRate() == null ^ this.getFrameRate() == null) return false; if (other.getFrameRate() != null && other.getFrameRate().equals(this.getFrameRate()) == false) return false; if (other.getMaxFrameRate() == null ^ this.getMaxFrameRate() == null) return false; if (other.getMaxFrameRate() != null && other.getMaxFrameRate().equals(this.getMaxFrameRate()) == false) return false; if (other.getResolution() == null ^ this.getResolution() == null) return false; if (other.getResolution() != null && other.getResolution().equals(this.getResolution()) == false) return false; if (other.getAspectRatio() == null ^ this.getAspectRatio() == null) return false; if (other.getAspectRatio() != null && other.getAspectRatio().equals(this.getAspectRatio()) == false) return false; if (other.getMaxWidth() == null ^ this.getMaxWidth() == null) return false; if (other.getMaxWidth() != null && other.getMaxWidth().equals(this.getMaxWidth()) == false) return false; if (other.getMaxHeight() == null ^ this.getMaxHeight() == null) return false; if (other.getMaxHeight() != null && other.getMaxHeight().equals(this.getMaxHeight()) == false) return false; if (other.getDisplayAspectRatio() == null ^ this.getDisplayAspectRatio() == null) return false; if (other.getDisplayAspectRatio() != null && other.getDisplayAspectRatio().equals(this.getDisplayAspectRatio()) == false) return false; if (other.getSizingPolicy() == null ^ this.getSizingPolicy() == null) return false; if (other.getSizingPolicy() != null && other.getSizingPolicy().equals(this.getSizingPolicy()) == false) return false; if (other.getPaddingPolicy() == null ^ this.getPaddingPolicy() == null) return false; if (other.getPaddingPolicy() != null && other.getPaddingPolicy().equals(this.getPaddingPolicy()) == false) return false; if (other.getWatermarks() == null ^ this.getWatermarks() == null) return false; if (other.getWatermarks() != null && other.getWatermarks().equals(this.getWatermarks()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getCodec() == null) ? 0 : getCodec().hashCode()); hashCode = prime * hashCode + ((getCodecOptions() == null) ? 0 : getCodecOptions().hashCode()); hashCode = prime * hashCode + ((getKeyframesMaxDist() == null) ? 0 : getKeyframesMaxDist().hashCode()); hashCode = prime * hashCode + ((getFixedGOP() == null) ? 0 : getFixedGOP().hashCode()); hashCode = prime * hashCode + ((getBitRate() == null) ? 0 : getBitRate().hashCode()); hashCode = prime * hashCode + ((getFrameRate() == null) ? 0 : getFrameRate().hashCode()); hashCode = prime * hashCode + ((getMaxFrameRate() == null) ? 0 : getMaxFrameRate().hashCode()); hashCode = prime * hashCode + ((getResolution() == null) ? 0 : getResolution().hashCode()); hashCode = prime * hashCode + ((getAspectRatio() == null) ? 0 : getAspectRatio().hashCode()); hashCode = prime * hashCode + ((getMaxWidth() == null) ? 0 : getMaxWidth().hashCode()); hashCode = prime * hashCode + ((getMaxHeight() == null) ? 0 : getMaxHeight().hashCode()); hashCode = prime * hashCode + ((getDisplayAspectRatio() == null) ? 0 : getDisplayAspectRatio().hashCode()); hashCode = prime * hashCode + ((getSizingPolicy() == null) ? 0 : getSizingPolicy().hashCode()); hashCode = prime * hashCode + ((getPaddingPolicy() == null) ? 0 : getPaddingPolicy().hashCode()); hashCode = prime * hashCode + ((getWatermarks() == null) ? 0 : getWatermarks().hashCode()); return hashCode; } @Override public VideoParameters clone() { try { return (VideoParameters) super.clone(); } catch (CloneNotSupportedException e) { throw new IllegalStateException("Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e); } } @com.amazonaws.annotation.SdkInternalApi @Override public void marshall(ProtocolMarshaller protocolMarshaller) { com.amazonaws.services.elastictranscoder.model.transform.VideoParametersMarshaller.getInstance().marshall(this, protocolMarshaller); } }