/* * 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; /** *

* Parameters required for transcoding audio. *

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

* The audio codec for the output file. Valid values include aac, flac, mp2, * mp3, pcm, and vorbis. *

*/ private String codec; /** *

* The sample rate of the audio stream in the output file, in Hertz. Valid values include: *

*

* auto, 22050, 32000, 44100, 48000, * 96000 *

*

* If you specify auto, Elastic Transcoder automatically detects the sample rate. *

*/ private String sampleRate; /** *

* The bit rate of the audio stream in the output file, in kilobits/second. Enter an integer between 64 and 320, * inclusive. *

*/ private String bitRate; /** *

* The number of audio channels in the output file. The following values are valid: *

*

* auto, 0, 1, 2 *

*

* One channel carries the information played by a single speaker. For example, a stereo track with two channels * sends one channel to the left speaker, and the other channel to the right speaker. The output channels are * organized into tracks. If you want Elastic Transcoder to automatically detect the number of audio channels in the * input file and use that value for the output file, select auto. *

*

* The output of a specific channel value and inputs are as follows: *

* *

* For more information about how Elastic Transcoder organizes channels and tracks, see * Audio:AudioPackingMode. *

*/ private String channels; /** *

* The method of organizing audio channels and tracks. Use Audio:Channels to specify the number of * channels in your output, and Audio:AudioPackingMode to specify the number of tracks and their * relation to the channels. If you do not specify an Audio:AudioPackingMode, Elastic Transcoder uses * SingleTrack. *

*

* The following values are valid: *

*

* SingleTrack, OneChannelPerTrack, and OneChannelPerTrackWithMosTo8Tracks *

*

* When you specify SingleTrack, Elastic Transcoder creates a single track for your output. The track * can have up to eight channels. Use SingleTrack for all non-mxf containers. *

*

* The outputs of SingleTrack for a specific channel value and inputs are as follows: *

* *

* When you specify OneChannelPerTrack, Elastic Transcoder creates a new track for every channel in * your output. Your output can have up to eight single-channel tracks. *

*

* The outputs of OneChannelPerTrack for a specific channel value and inputs are as follows: *

* *

* When you specify OneChannelPerTrackWithMosTo8Tracks, Elastic Transcoder creates eight single-channel * tracks for your output. All tracks that do not contain audio data from an input channel are MOS, or Mit Out * Sound, tracks. *

*

* The outputs of OneChannelPerTrackWithMosTo8Tracks for a specific channel value and inputs are as * follows: *

* */ private String audioPackingMode; /** *

* If you specified AAC for Audio:Codec, this is the AAC compression profile * to use. Valid values include: *

*

* auto, AAC-LC, HE-AAC, HE-AACv2 *

*

* If you specify auto, Elastic Transcoder chooses a profile based on the bit rate of the output file. *

*/ private AudioCodecOptions codecOptions; /** *

* The audio codec for the output file. Valid values include aac, flac, mp2, * mp3, pcm, and vorbis. *

* * @param codec * The audio codec for the output file. Valid values include aac, flac, * mp2, mp3, pcm, and vorbis. */ public void setCodec(String codec) { this.codec = codec; } /** *

* The audio codec for the output file. Valid values include aac, flac, mp2, * mp3, pcm, and vorbis. *

* * @return The audio codec for the output file. Valid values include aac, flac, * mp2, mp3, pcm, and vorbis. */ public String getCodec() { return this.codec; } /** *

* The audio codec for the output file. Valid values include aac, flac, mp2, * mp3, pcm, and vorbis. *

* * @param codec * The audio codec for the output file. Valid values include aac, flac, * mp2, mp3, pcm, and vorbis. * @return Returns a reference to this object so that method calls can be chained together. */ public AudioParameters withCodec(String codec) { setCodec(codec); return this; } /** *

* The sample rate of the audio stream in the output file, in Hertz. Valid values include: *

*

* auto, 22050, 32000, 44100, 48000, * 96000 *

*

* If you specify auto, Elastic Transcoder automatically detects the sample rate. *

* * @param sampleRate * The sample rate of the audio stream in the output file, in Hertz. Valid values include:

*

* auto, 22050, 32000, 44100, 48000, * 96000 *

*

* If you specify auto, Elastic Transcoder automatically detects the sample rate. */ public void setSampleRate(String sampleRate) { this.sampleRate = sampleRate; } /** *

* The sample rate of the audio stream in the output file, in Hertz. Valid values include: *

*

* auto, 22050, 32000, 44100, 48000, * 96000 *

*

* If you specify auto, Elastic Transcoder automatically detects the sample rate. *

* * @return The sample rate of the audio stream in the output file, in Hertz. Valid values include:

*

* auto, 22050, 32000, 44100, 48000, * 96000 *

*

* If you specify auto, Elastic Transcoder automatically detects the sample rate. */ public String getSampleRate() { return this.sampleRate; } /** *

* The sample rate of the audio stream in the output file, in Hertz. Valid values include: *

*

* auto, 22050, 32000, 44100, 48000, * 96000 *

*

* If you specify auto, Elastic Transcoder automatically detects the sample rate. *

* * @param sampleRate * The sample rate of the audio stream in the output file, in Hertz. Valid values include:

*

* auto, 22050, 32000, 44100, 48000, * 96000 *

*

* If you specify auto, Elastic Transcoder automatically detects the sample rate. * @return Returns a reference to this object so that method calls can be chained together. */ public AudioParameters withSampleRate(String sampleRate) { setSampleRate(sampleRate); return this; } /** *

* The bit rate of the audio stream in the output file, in kilobits/second. Enter an integer between 64 and 320, * inclusive. *

* * @param bitRate * The bit rate of the audio stream in the output file, in kilobits/second. Enter an integer between 64 and * 320, inclusive. */ public void setBitRate(String bitRate) { this.bitRate = bitRate; } /** *

* The bit rate of the audio stream in the output file, in kilobits/second. Enter an integer between 64 and 320, * inclusive. *

* * @return The bit rate of the audio stream in the output file, in kilobits/second. Enter an integer between 64 and * 320, inclusive. */ public String getBitRate() { return this.bitRate; } /** *

* The bit rate of the audio stream in the output file, in kilobits/second. Enter an integer between 64 and 320, * inclusive. *

* * @param bitRate * The bit rate of the audio stream in the output file, in kilobits/second. Enter an integer between 64 and * 320, inclusive. * @return Returns a reference to this object so that method calls can be chained together. */ public AudioParameters withBitRate(String bitRate) { setBitRate(bitRate); return this; } /** *

* The number of audio channels in the output file. The following values are valid: *

*

* auto, 0, 1, 2 *

*

* One channel carries the information played by a single speaker. For example, a stereo track with two channels * sends one channel to the left speaker, and the other channel to the right speaker. The output channels are * organized into tracks. If you want Elastic Transcoder to automatically detect the number of audio channels in the * input file and use that value for the output file, select auto. *

*

* The output of a specific channel value and inputs are as follows: *

* *

* For more information about how Elastic Transcoder organizes channels and tracks, see * Audio:AudioPackingMode. *

* * @param channels * The number of audio channels in the output file. The following values are valid:

*

* auto, 0, 1, 2 *

*

* One channel carries the information played by a single speaker. For example, a stereo track with two * channels sends one channel to the left speaker, and the other channel to the right speaker. The output * channels are organized into tracks. If you want Elastic Transcoder to automatically detect the number of * audio channels in the input file and use that value for the output file, select auto. *

*

* The output of a specific channel value and inputs are as follows: *

* *

* For more information about how Elastic Transcoder organizes channels and tracks, see * Audio:AudioPackingMode. */ public void setChannels(String channels) { this.channels = channels; } /** *

* The number of audio channels in the output file. The following values are valid: *

*

* auto, 0, 1, 2 *

*

* One channel carries the information played by a single speaker. For example, a stereo track with two channels * sends one channel to the left speaker, and the other channel to the right speaker. The output channels are * organized into tracks. If you want Elastic Transcoder to automatically detect the number of audio channels in the * input file and use that value for the output file, select auto. *

*

* The output of a specific channel value and inputs are as follows: *

* *

* For more information about how Elastic Transcoder organizes channels and tracks, see * Audio:AudioPackingMode. *

* * @return The number of audio channels in the output file. The following values are valid:

*

* auto, 0, 1, 2 *

*

* One channel carries the information played by a single speaker. For example, a stereo track with two * channels sends one channel to the left speaker, and the other channel to the right speaker. The output * channels are organized into tracks. If you want Elastic Transcoder to automatically detect the number of * audio channels in the input file and use that value for the output file, select auto. *

*

* The output of a specific channel value and inputs are as follows: *

* *

* For more information about how Elastic Transcoder organizes channels and tracks, see * Audio:AudioPackingMode. */ public String getChannels() { return this.channels; } /** *

* The number of audio channels in the output file. The following values are valid: *

*

* auto, 0, 1, 2 *

*

* One channel carries the information played by a single speaker. For example, a stereo track with two channels * sends one channel to the left speaker, and the other channel to the right speaker. The output channels are * organized into tracks. If you want Elastic Transcoder to automatically detect the number of audio channels in the * input file and use that value for the output file, select auto. *

*

* The output of a specific channel value and inputs are as follows: *

* *

* For more information about how Elastic Transcoder organizes channels and tracks, see * Audio:AudioPackingMode. *

* * @param channels * The number of audio channels in the output file. The following values are valid:

*

* auto, 0, 1, 2 *

*

* One channel carries the information played by a single speaker. For example, a stereo track with two * channels sends one channel to the left speaker, and the other channel to the right speaker. The output * channels are organized into tracks. If you want Elastic Transcoder to automatically detect the number of * audio channels in the input file and use that value for the output file, select auto. *

*

* The output of a specific channel value and inputs are as follows: *

* *

* For more information about how Elastic Transcoder organizes channels and tracks, see * Audio:AudioPackingMode. * @return Returns a reference to this object so that method calls can be chained together. */ public AudioParameters withChannels(String channels) { setChannels(channels); return this; } /** *

* The method of organizing audio channels and tracks. Use Audio:Channels to specify the number of * channels in your output, and Audio:AudioPackingMode to specify the number of tracks and their * relation to the channels. If you do not specify an Audio:AudioPackingMode, Elastic Transcoder uses * SingleTrack. *

*

* The following values are valid: *

*

* SingleTrack, OneChannelPerTrack, and OneChannelPerTrackWithMosTo8Tracks *

*

* When you specify SingleTrack, Elastic Transcoder creates a single track for your output. The track * can have up to eight channels. Use SingleTrack for all non-mxf containers. *

*

* The outputs of SingleTrack for a specific channel value and inputs are as follows: *

* *

* When you specify OneChannelPerTrack, Elastic Transcoder creates a new track for every channel in * your output. Your output can have up to eight single-channel tracks. *

*

* The outputs of OneChannelPerTrack for a specific channel value and inputs are as follows: *

* *

* When you specify OneChannelPerTrackWithMosTo8Tracks, Elastic Transcoder creates eight single-channel * tracks for your output. All tracks that do not contain audio data from an input channel are MOS, or Mit Out * Sound, tracks. *

*

* The outputs of OneChannelPerTrackWithMosTo8Tracks for a specific channel value and inputs are as * follows: *

* * * @param audioPackingMode * The method of organizing audio channels and tracks. Use Audio:Channels to specify the number * of channels in your output, and Audio:AudioPackingMode to specify the number of tracks and * their relation to the channels. If you do not specify an Audio:AudioPackingMode, Elastic * Transcoder uses SingleTrack.

*

* The following values are valid: *

*

* SingleTrack, OneChannelPerTrack, and * OneChannelPerTrackWithMosTo8Tracks *

*

* When you specify SingleTrack, Elastic Transcoder creates a single track for your output. The * track can have up to eight channels. Use SingleTrack for all non-mxf containers. *

*

* The outputs of SingleTrack for a specific channel value and inputs are as follows: *

* *

* When you specify OneChannelPerTrack, Elastic Transcoder creates a new track for every channel * in your output. Your output can have up to eight single-channel tracks. *

*

* The outputs of OneChannelPerTrack for a specific channel value and inputs are as follows: *

* *

* When you specify OneChannelPerTrackWithMosTo8Tracks, Elastic Transcoder creates eight * single-channel tracks for your output. All tracks that do not contain audio data from an input channel are * MOS, or Mit Out Sound, tracks. *

*

* The outputs of OneChannelPerTrackWithMosTo8Tracks for a specific channel value and inputs are * as follows: *

*