1 /** 2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. 3 * SPDX-License-Identifier: Apache-2.0. 4 */ 5 6 #pragma once 7 #include <aws/mediaconvert/MediaConvert_EXPORTS.h> 8 9 namespace Aws 10 { 11 namespace Utils 12 { 13 namespace Json 14 { 15 class JsonValue; 16 class JsonView; 17 } // namespace Json 18 } // namespace Utils 19 namespace MediaConvert 20 { 21 namespace Model 22 { 23 24 /** 25 * Required when you set Codec, under AudioDescriptions>CodecSettings, to the value 26 * Vorbis.<p><h3>See Also:</h3> <a 27 * href="http://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/VorbisSettings">AWS 28 * API Reference</a></p> 29 */ 30 class AWS_MEDIACONVERT_API VorbisSettings 31 { 32 public: 33 VorbisSettings(); 34 VorbisSettings(Aws::Utils::Json::JsonView jsonValue); 35 VorbisSettings& operator=(Aws::Utils::Json::JsonView jsonValue); 36 Aws::Utils::Json::JsonValue Jsonize() const; 37 38 39 /** 40 * Optional. Specify the number of channels in this output audio track. Choosing 41 * Mono on the console gives you 1 output channel; choosing Stereo gives you 2. In 42 * the API, valid values are 1 and 2. The default value is 2. 43 */ GetChannels()44 inline int GetChannels() const{ return m_channels; } 45 46 /** 47 * Optional. Specify the number of channels in this output audio track. Choosing 48 * Mono on the console gives you 1 output channel; choosing Stereo gives you 2. In 49 * the API, valid values are 1 and 2. The default value is 2. 50 */ ChannelsHasBeenSet()51 inline bool ChannelsHasBeenSet() const { return m_channelsHasBeenSet; } 52 53 /** 54 * Optional. Specify the number of channels in this output audio track. Choosing 55 * Mono on the console gives you 1 output channel; choosing Stereo gives you 2. In 56 * the API, valid values are 1 and 2. The default value is 2. 57 */ SetChannels(int value)58 inline void SetChannels(int value) { m_channelsHasBeenSet = true; m_channels = value; } 59 60 /** 61 * Optional. Specify the number of channels in this output audio track. Choosing 62 * Mono on the console gives you 1 output channel; choosing Stereo gives you 2. In 63 * the API, valid values are 1 and 2. The default value is 2. 64 */ WithChannels(int value)65 inline VorbisSettings& WithChannels(int value) { SetChannels(value); return *this;} 66 67 68 /** 69 * Optional. Specify the audio sample rate in Hz. Valid values are 22050, 32000, 70 * 44100, and 48000. The default value is 48000. 71 */ GetSampleRate()72 inline int GetSampleRate() const{ return m_sampleRate; } 73 74 /** 75 * Optional. Specify the audio sample rate in Hz. Valid values are 22050, 32000, 76 * 44100, and 48000. The default value is 48000. 77 */ SampleRateHasBeenSet()78 inline bool SampleRateHasBeenSet() const { return m_sampleRateHasBeenSet; } 79 80 /** 81 * Optional. Specify the audio sample rate in Hz. Valid values are 22050, 32000, 82 * 44100, and 48000. The default value is 48000. 83 */ SetSampleRate(int value)84 inline void SetSampleRate(int value) { m_sampleRateHasBeenSet = true; m_sampleRate = value; } 85 86 /** 87 * Optional. Specify the audio sample rate in Hz. Valid values are 22050, 32000, 88 * 44100, and 48000. The default value is 48000. 89 */ WithSampleRate(int value)90 inline VorbisSettings& WithSampleRate(int value) { SetSampleRate(value); return *this;} 91 92 93 /** 94 * Optional. Specify the variable audio quality of this Vorbis output from -1 95 * (lowest quality, ~45 kbit/s) to 10 (highest quality, ~500 kbit/s). The default 96 * value is 4 (~128 kbit/s). Values 5 and 6 are approximately 160 and 192 kbit/s, 97 * respectively. 98 */ GetVbrQuality()99 inline int GetVbrQuality() const{ return m_vbrQuality; } 100 101 /** 102 * Optional. Specify the variable audio quality of this Vorbis output from -1 103 * (lowest quality, ~45 kbit/s) to 10 (highest quality, ~500 kbit/s). The default 104 * value is 4 (~128 kbit/s). Values 5 and 6 are approximately 160 and 192 kbit/s, 105 * respectively. 106 */ VbrQualityHasBeenSet()107 inline bool VbrQualityHasBeenSet() const { return m_vbrQualityHasBeenSet; } 108 109 /** 110 * Optional. Specify the variable audio quality of this Vorbis output from -1 111 * (lowest quality, ~45 kbit/s) to 10 (highest quality, ~500 kbit/s). The default 112 * value is 4 (~128 kbit/s). Values 5 and 6 are approximately 160 and 192 kbit/s, 113 * respectively. 114 */ SetVbrQuality(int value)115 inline void SetVbrQuality(int value) { m_vbrQualityHasBeenSet = true; m_vbrQuality = value; } 116 117 /** 118 * Optional. Specify the variable audio quality of this Vorbis output from -1 119 * (lowest quality, ~45 kbit/s) to 10 (highest quality, ~500 kbit/s). The default 120 * value is 4 (~128 kbit/s). Values 5 and 6 are approximately 160 and 192 kbit/s, 121 * respectively. 122 */ WithVbrQuality(int value)123 inline VorbisSettings& WithVbrQuality(int value) { SetVbrQuality(value); return *this;} 124 125 private: 126 127 int m_channels; 128 bool m_channelsHasBeenSet; 129 130 int m_sampleRate; 131 bool m_sampleRateHasBeenSet; 132 133 int m_vbrQuality; 134 bool m_vbrQualityHasBeenSet; 135 }; 136 137 } // namespace Model 138 } // namespace MediaConvert 139 } // namespace Aws 140