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 * OPUS.<p><h3>See Also:</h3> <a 27 * href="http://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/OpusSettings">AWS 28 * API Reference</a></p> 29 */ 30 class AWS_MEDIACONVERT_API OpusSettings 31 { 32 public: 33 OpusSettings(); 34 OpusSettings(Aws::Utils::Json::JsonView jsonValue); 35 OpusSettings& operator=(Aws::Utils::Json::JsonView jsonValue); 36 Aws::Utils::Json::JsonValue Jsonize() const; 37 38 39 /** 40 * Optional. Specify the average bitrate in bits per second. Valid values are 41 * multiples of 8000, from 32000 through 192000. The default value is 96000, which 42 * we recommend for quality and bandwidth. 43 */ GetBitrate()44 inline int GetBitrate() const{ return m_bitrate; } 45 46 /** 47 * Optional. Specify the average bitrate in bits per second. Valid values are 48 * multiples of 8000, from 32000 through 192000. The default value is 96000, which 49 * we recommend for quality and bandwidth. 50 */ BitrateHasBeenSet()51 inline bool BitrateHasBeenSet() const { return m_bitrateHasBeenSet; } 52 53 /** 54 * Optional. Specify the average bitrate in bits per second. Valid values are 55 * multiples of 8000, from 32000 through 192000. The default value is 96000, which 56 * we recommend for quality and bandwidth. 57 */ SetBitrate(int value)58 inline void SetBitrate(int value) { m_bitrateHasBeenSet = true; m_bitrate = value; } 59 60 /** 61 * Optional. Specify the average bitrate in bits per second. Valid values are 62 * multiples of 8000, from 32000 through 192000. The default value is 96000, which 63 * we recommend for quality and bandwidth. 64 */ WithBitrate(int value)65 inline OpusSettings& WithBitrate(int value) { SetBitrate(value); return *this;} 66 67 68 /** 69 * Specify the number of channels in this output audio track. Choosing Mono on the 70 * console gives you 1 output channel; choosing Stereo gives you 2. In the API, 71 * valid values are 1 and 2. 72 */ GetChannels()73 inline int GetChannels() const{ return m_channels; } 74 75 /** 76 * Specify the number of channels in this output audio track. Choosing Mono on the 77 * console gives you 1 output channel; choosing Stereo gives you 2. In the API, 78 * valid values are 1 and 2. 79 */ ChannelsHasBeenSet()80 inline bool ChannelsHasBeenSet() const { return m_channelsHasBeenSet; } 81 82 /** 83 * Specify the number of channels in this output audio track. Choosing Mono on the 84 * console gives you 1 output channel; choosing Stereo gives you 2. In the API, 85 * valid values are 1 and 2. 86 */ SetChannels(int value)87 inline void SetChannels(int value) { m_channelsHasBeenSet = true; m_channels = value; } 88 89 /** 90 * Specify the number of channels in this output audio track. Choosing Mono on the 91 * console gives you 1 output channel; choosing Stereo gives you 2. In the API, 92 * valid values are 1 and 2. 93 */ WithChannels(int value)94 inline OpusSettings& WithChannels(int value) { SetChannels(value); return *this;} 95 96 97 /** 98 * Optional. Sample rate in hz. Valid values are 16000, 24000, and 48000. The 99 * default value is 48000. 100 */ GetSampleRate()101 inline int GetSampleRate() const{ return m_sampleRate; } 102 103 /** 104 * Optional. Sample rate in hz. Valid values are 16000, 24000, and 48000. The 105 * default value is 48000. 106 */ SampleRateHasBeenSet()107 inline bool SampleRateHasBeenSet() const { return m_sampleRateHasBeenSet; } 108 109 /** 110 * Optional. Sample rate in hz. Valid values are 16000, 24000, and 48000. The 111 * default value is 48000. 112 */ SetSampleRate(int value)113 inline void SetSampleRate(int value) { m_sampleRateHasBeenSet = true; m_sampleRate = value; } 114 115 /** 116 * Optional. Sample rate in hz. Valid values are 16000, 24000, and 48000. The 117 * default value is 48000. 118 */ WithSampleRate(int value)119 inline OpusSettings& WithSampleRate(int value) { SetSampleRate(value); return *this;} 120 121 private: 122 123 int m_bitrate; 124 bool m_bitrateHasBeenSet; 125 126 int m_channels; 127 bool m_channelsHasBeenSet; 128 129 int m_sampleRate; 130 bool m_sampleRateHasBeenSet; 131 }; 132 133 } // namespace Model 134 } // namespace MediaConvert 135 } // namespace Aws 136