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 #include <aws/mediaconvert/model/Eac3AtmosBitstreamMode.h>
9 #include <aws/mediaconvert/model/Eac3AtmosCodingMode.h>
10 #include <aws/mediaconvert/model/Eac3AtmosDialogueIntelligence.h>
11 #include <aws/mediaconvert/model/Eac3AtmosDownmixControl.h>
12 #include <aws/mediaconvert/model/Eac3AtmosDynamicRangeCompressionLine.h>
13 #include <aws/mediaconvert/model/Eac3AtmosDynamicRangeCompressionRf.h>
14 #include <aws/mediaconvert/model/Eac3AtmosDynamicRangeControl.h>
15 #include <aws/mediaconvert/model/Eac3AtmosMeteringMode.h>
16 #include <aws/mediaconvert/model/Eac3AtmosStereoDownmix.h>
17 #include <aws/mediaconvert/model/Eac3AtmosSurroundExMode.h>
18 #include <utility>
19 
20 namespace Aws
21 {
22 namespace Utils
23 {
24 namespace Json
25 {
26   class JsonValue;
27   class JsonView;
28 } // namespace Json
29 } // namespace Utils
30 namespace MediaConvert
31 {
32 namespace Model
33 {
34 
35   /**
36    * Required when you set (Codec) under (AudioDescriptions)>(CodecSettings) to the
37    * value EAC3_ATMOS.<p><h3>See Also:</h3>   <a
38    * href="http://docs.aws.amazon.com/goto/WebAPI/mediaconvert-2017-08-29/Eac3AtmosSettings">AWS
39    * API Reference</a></p>
40    */
41   class AWS_MEDIACONVERT_API Eac3AtmosSettings
42   {
43   public:
44     Eac3AtmosSettings();
45     Eac3AtmosSettings(Aws::Utils::Json::JsonView jsonValue);
46     Eac3AtmosSettings& operator=(Aws::Utils::Json::JsonView jsonValue);
47     Aws::Utils::Json::JsonValue Jsonize() const;
48 
49 
50     /**
51      * Specify the average bitrate for this output in bits per second. Valid values:
52      * 384k, 448k, 576k, 640k, 768k, 1024k Default value: 448k Note that MediaConvert
53      * supports 384k only with channel-based immersive (CBI) 7.1.4 and 5.1.4 inputs.
54      * For CBI 9.1.6 and other input types, MediaConvert automatically increases your
55      * output bitrate to 448k.
56      */
GetBitrate()57     inline int GetBitrate() const{ return m_bitrate; }
58 
59     /**
60      * Specify the average bitrate for this output in bits per second. Valid values:
61      * 384k, 448k, 576k, 640k, 768k, 1024k Default value: 448k Note that MediaConvert
62      * supports 384k only with channel-based immersive (CBI) 7.1.4 and 5.1.4 inputs.
63      * For CBI 9.1.6 and other input types, MediaConvert automatically increases your
64      * output bitrate to 448k.
65      */
BitrateHasBeenSet()66     inline bool BitrateHasBeenSet() const { return m_bitrateHasBeenSet; }
67 
68     /**
69      * Specify the average bitrate for this output in bits per second. Valid values:
70      * 384k, 448k, 576k, 640k, 768k, 1024k Default value: 448k Note that MediaConvert
71      * supports 384k only with channel-based immersive (CBI) 7.1.4 and 5.1.4 inputs.
72      * For CBI 9.1.6 and other input types, MediaConvert automatically increases your
73      * output bitrate to 448k.
74      */
SetBitrate(int value)75     inline void SetBitrate(int value) { m_bitrateHasBeenSet = true; m_bitrate = value; }
76 
77     /**
78      * Specify the average bitrate for this output in bits per second. Valid values:
79      * 384k, 448k, 576k, 640k, 768k, 1024k Default value: 448k Note that MediaConvert
80      * supports 384k only with channel-based immersive (CBI) 7.1.4 and 5.1.4 inputs.
81      * For CBI 9.1.6 and other input types, MediaConvert automatically increases your
82      * output bitrate to 448k.
83      */
WithBitrate(int value)84     inline Eac3AtmosSettings& WithBitrate(int value) { SetBitrate(value); return *this;}
85 
86 
87     /**
88      * Specify the bitstream mode for the E-AC-3 stream that the encoder emits. For
89      * more information about the EAC3 bitstream mode, see ATSC A/52-2012 (Annex E).
90      */
GetBitstreamMode()91     inline const Eac3AtmosBitstreamMode& GetBitstreamMode() const{ return m_bitstreamMode; }
92 
93     /**
94      * Specify the bitstream mode for the E-AC-3 stream that the encoder emits. For
95      * more information about the EAC3 bitstream mode, see ATSC A/52-2012 (Annex E).
96      */
BitstreamModeHasBeenSet()97     inline bool BitstreamModeHasBeenSet() const { return m_bitstreamModeHasBeenSet; }
98 
99     /**
100      * Specify the bitstream mode for the E-AC-3 stream that the encoder emits. For
101      * more information about the EAC3 bitstream mode, see ATSC A/52-2012 (Annex E).
102      */
SetBitstreamMode(const Eac3AtmosBitstreamMode & value)103     inline void SetBitstreamMode(const Eac3AtmosBitstreamMode& value) { m_bitstreamModeHasBeenSet = true; m_bitstreamMode = value; }
104 
105     /**
106      * Specify the bitstream mode for the E-AC-3 stream that the encoder emits. For
107      * more information about the EAC3 bitstream mode, see ATSC A/52-2012 (Annex E).
108      */
SetBitstreamMode(Eac3AtmosBitstreamMode && value)109     inline void SetBitstreamMode(Eac3AtmosBitstreamMode&& value) { m_bitstreamModeHasBeenSet = true; m_bitstreamMode = std::move(value); }
110 
111     /**
112      * Specify the bitstream mode for the E-AC-3 stream that the encoder emits. For
113      * more information about the EAC3 bitstream mode, see ATSC A/52-2012 (Annex E).
114      */
WithBitstreamMode(const Eac3AtmosBitstreamMode & value)115     inline Eac3AtmosSettings& WithBitstreamMode(const Eac3AtmosBitstreamMode& value) { SetBitstreamMode(value); return *this;}
116 
117     /**
118      * Specify the bitstream mode for the E-AC-3 stream that the encoder emits. For
119      * more information about the EAC3 bitstream mode, see ATSC A/52-2012 (Annex E).
120      */
WithBitstreamMode(Eac3AtmosBitstreamMode && value)121     inline Eac3AtmosSettings& WithBitstreamMode(Eac3AtmosBitstreamMode&& value) { SetBitstreamMode(std::move(value)); return *this;}
122 
123 
124     /**
125      * The coding mode for Dolby Digital Plus JOC (Atmos).
126      */
GetCodingMode()127     inline const Eac3AtmosCodingMode& GetCodingMode() const{ return m_codingMode; }
128 
129     /**
130      * The coding mode for Dolby Digital Plus JOC (Atmos).
131      */
CodingModeHasBeenSet()132     inline bool CodingModeHasBeenSet() const { return m_codingModeHasBeenSet; }
133 
134     /**
135      * The coding mode for Dolby Digital Plus JOC (Atmos).
136      */
SetCodingMode(const Eac3AtmosCodingMode & value)137     inline void SetCodingMode(const Eac3AtmosCodingMode& value) { m_codingModeHasBeenSet = true; m_codingMode = value; }
138 
139     /**
140      * The coding mode for Dolby Digital Plus JOC (Atmos).
141      */
SetCodingMode(Eac3AtmosCodingMode && value)142     inline void SetCodingMode(Eac3AtmosCodingMode&& value) { m_codingModeHasBeenSet = true; m_codingMode = std::move(value); }
143 
144     /**
145      * The coding mode for Dolby Digital Plus JOC (Atmos).
146      */
WithCodingMode(const Eac3AtmosCodingMode & value)147     inline Eac3AtmosSettings& WithCodingMode(const Eac3AtmosCodingMode& value) { SetCodingMode(value); return *this;}
148 
149     /**
150      * The coding mode for Dolby Digital Plus JOC (Atmos).
151      */
WithCodingMode(Eac3AtmosCodingMode && value)152     inline Eac3AtmosSettings& WithCodingMode(Eac3AtmosCodingMode&& value) { SetCodingMode(std::move(value)); return *this;}
153 
154 
155     /**
156      * Enable Dolby Dialogue Intelligence to adjust loudness based on dialogue
157      * analysis.
158      */
GetDialogueIntelligence()159     inline const Eac3AtmosDialogueIntelligence& GetDialogueIntelligence() const{ return m_dialogueIntelligence; }
160 
161     /**
162      * Enable Dolby Dialogue Intelligence to adjust loudness based on dialogue
163      * analysis.
164      */
DialogueIntelligenceHasBeenSet()165     inline bool DialogueIntelligenceHasBeenSet() const { return m_dialogueIntelligenceHasBeenSet; }
166 
167     /**
168      * Enable Dolby Dialogue Intelligence to adjust loudness based on dialogue
169      * analysis.
170      */
SetDialogueIntelligence(const Eac3AtmosDialogueIntelligence & value)171     inline void SetDialogueIntelligence(const Eac3AtmosDialogueIntelligence& value) { m_dialogueIntelligenceHasBeenSet = true; m_dialogueIntelligence = value; }
172 
173     /**
174      * Enable Dolby Dialogue Intelligence to adjust loudness based on dialogue
175      * analysis.
176      */
SetDialogueIntelligence(Eac3AtmosDialogueIntelligence && value)177     inline void SetDialogueIntelligence(Eac3AtmosDialogueIntelligence&& value) { m_dialogueIntelligenceHasBeenSet = true; m_dialogueIntelligence = std::move(value); }
178 
179     /**
180      * Enable Dolby Dialogue Intelligence to adjust loudness based on dialogue
181      * analysis.
182      */
WithDialogueIntelligence(const Eac3AtmosDialogueIntelligence & value)183     inline Eac3AtmosSettings& WithDialogueIntelligence(const Eac3AtmosDialogueIntelligence& value) { SetDialogueIntelligence(value); return *this;}
184 
185     /**
186      * Enable Dolby Dialogue Intelligence to adjust loudness based on dialogue
187      * analysis.
188      */
WithDialogueIntelligence(Eac3AtmosDialogueIntelligence && value)189     inline Eac3AtmosSettings& WithDialogueIntelligence(Eac3AtmosDialogueIntelligence&& value) { SetDialogueIntelligence(std::move(value)); return *this;}
190 
191 
192     /**
193      * Specify whether MediaConvert should use any downmix metadata from your input
194      * file. Keep the default value, Custom (SPECIFIED) to provide downmix values in
195      * your job settings. Choose Follow source (INITIALIZE_FROM_SOURCE) to use the
196      * metadata from your input. Related settings--Use these settings to specify your
197      * downmix values: Left only/Right only surround (LoRoSurroundMixLevel), Left
198      * total/Right total surround (LtRtSurroundMixLevel), Left total/Right total center
199      * (LtRtCenterMixLevel), Left only/Right only center (LoRoCenterMixLevel),  and
200      * Stereo downmix (StereoDownmix). When you keep Custom (SPECIFIED) for Downmix
201      * control (DownmixControl) and you don't specify values for the related settings,
202      * MediaConvert uses default values for those settings.
203      */
GetDownmixControl()204     inline const Eac3AtmosDownmixControl& GetDownmixControl() const{ return m_downmixControl; }
205 
206     /**
207      * Specify whether MediaConvert should use any downmix metadata from your input
208      * file. Keep the default value, Custom (SPECIFIED) to provide downmix values in
209      * your job settings. Choose Follow source (INITIALIZE_FROM_SOURCE) to use the
210      * metadata from your input. Related settings--Use these settings to specify your
211      * downmix values: Left only/Right only surround (LoRoSurroundMixLevel), Left
212      * total/Right total surround (LtRtSurroundMixLevel), Left total/Right total center
213      * (LtRtCenterMixLevel), Left only/Right only center (LoRoCenterMixLevel),  and
214      * Stereo downmix (StereoDownmix). When you keep Custom (SPECIFIED) for Downmix
215      * control (DownmixControl) and you don't specify values for the related settings,
216      * MediaConvert uses default values for those settings.
217      */
DownmixControlHasBeenSet()218     inline bool DownmixControlHasBeenSet() const { return m_downmixControlHasBeenSet; }
219 
220     /**
221      * Specify whether MediaConvert should use any downmix metadata from your input
222      * file. Keep the default value, Custom (SPECIFIED) to provide downmix values in
223      * your job settings. Choose Follow source (INITIALIZE_FROM_SOURCE) to use the
224      * metadata from your input. Related settings--Use these settings to specify your
225      * downmix values: Left only/Right only surround (LoRoSurroundMixLevel), Left
226      * total/Right total surround (LtRtSurroundMixLevel), Left total/Right total center
227      * (LtRtCenterMixLevel), Left only/Right only center (LoRoCenterMixLevel),  and
228      * Stereo downmix (StereoDownmix). When you keep Custom (SPECIFIED) for Downmix
229      * control (DownmixControl) and you don't specify values for the related settings,
230      * MediaConvert uses default values for those settings.
231      */
SetDownmixControl(const Eac3AtmosDownmixControl & value)232     inline void SetDownmixControl(const Eac3AtmosDownmixControl& value) { m_downmixControlHasBeenSet = true; m_downmixControl = value; }
233 
234     /**
235      * Specify whether MediaConvert should use any downmix metadata from your input
236      * file. Keep the default value, Custom (SPECIFIED) to provide downmix values in
237      * your job settings. Choose Follow source (INITIALIZE_FROM_SOURCE) to use the
238      * metadata from your input. Related settings--Use these settings to specify your
239      * downmix values: Left only/Right only surround (LoRoSurroundMixLevel), Left
240      * total/Right total surround (LtRtSurroundMixLevel), Left total/Right total center
241      * (LtRtCenterMixLevel), Left only/Right only center (LoRoCenterMixLevel),  and
242      * Stereo downmix (StereoDownmix). When you keep Custom (SPECIFIED) for Downmix
243      * control (DownmixControl) and you don't specify values for the related settings,
244      * MediaConvert uses default values for those settings.
245      */
SetDownmixControl(Eac3AtmosDownmixControl && value)246     inline void SetDownmixControl(Eac3AtmosDownmixControl&& value) { m_downmixControlHasBeenSet = true; m_downmixControl = std::move(value); }
247 
248     /**
249      * Specify whether MediaConvert should use any downmix metadata from your input
250      * file. Keep the default value, Custom (SPECIFIED) to provide downmix values in
251      * your job settings. Choose Follow source (INITIALIZE_FROM_SOURCE) to use the
252      * metadata from your input. Related settings--Use these settings to specify your
253      * downmix values: Left only/Right only surround (LoRoSurroundMixLevel), Left
254      * total/Right total surround (LtRtSurroundMixLevel), Left total/Right total center
255      * (LtRtCenterMixLevel), Left only/Right only center (LoRoCenterMixLevel),  and
256      * Stereo downmix (StereoDownmix). When you keep Custom (SPECIFIED) for Downmix
257      * control (DownmixControl) and you don't specify values for the related settings,
258      * MediaConvert uses default values for those settings.
259      */
WithDownmixControl(const Eac3AtmosDownmixControl & value)260     inline Eac3AtmosSettings& WithDownmixControl(const Eac3AtmosDownmixControl& value) { SetDownmixControl(value); return *this;}
261 
262     /**
263      * Specify whether MediaConvert should use any downmix metadata from your input
264      * file. Keep the default value, Custom (SPECIFIED) to provide downmix values in
265      * your job settings. Choose Follow source (INITIALIZE_FROM_SOURCE) to use the
266      * metadata from your input. Related settings--Use these settings to specify your
267      * downmix values: Left only/Right only surround (LoRoSurroundMixLevel), Left
268      * total/Right total surround (LtRtSurroundMixLevel), Left total/Right total center
269      * (LtRtCenterMixLevel), Left only/Right only center (LoRoCenterMixLevel),  and
270      * Stereo downmix (StereoDownmix). When you keep Custom (SPECIFIED) for Downmix
271      * control (DownmixControl) and you don't specify values for the related settings,
272      * MediaConvert uses default values for those settings.
273      */
WithDownmixControl(Eac3AtmosDownmixControl && value)274     inline Eac3AtmosSettings& WithDownmixControl(Eac3AtmosDownmixControl&& value) { SetDownmixControl(std::move(value)); return *this;}
275 
276 
277     /**
278      * Choose the Dolby dynamic range control (DRC) profile that MediaConvert uses when
279      * encoding the metadata in the Dolby stream for the line operating mode. Default
280      * value: Film light (ATMOS_STORAGE_DDP_COMPR_FILM_LIGHT) Related setting: To have
281      * MediaConvert use the value you specify here, keep the default value, Custom
282      * (SPECIFIED) for the setting Dynamic range control (DynamicRangeControl).
283      * Otherwise, MediaConvert ignores Dynamic range compression line
284      * (DynamicRangeCompressionLine). For information about the Dolby DRC operating
285      * modes and profiles, see the Dynamic Range Control chapter of the Dolby Metadata
286      * Guide at
287      * https://developer.dolby.com/globalassets/professional/documents/dolby-metadata-guide.pdf.
288      */
GetDynamicRangeCompressionLine()289     inline const Eac3AtmosDynamicRangeCompressionLine& GetDynamicRangeCompressionLine() const{ return m_dynamicRangeCompressionLine; }
290 
291     /**
292      * Choose the Dolby dynamic range control (DRC) profile that MediaConvert uses when
293      * encoding the metadata in the Dolby stream for the line operating mode. Default
294      * value: Film light (ATMOS_STORAGE_DDP_COMPR_FILM_LIGHT) Related setting: To have
295      * MediaConvert use the value you specify here, keep the default value, Custom
296      * (SPECIFIED) for the setting Dynamic range control (DynamicRangeControl).
297      * Otherwise, MediaConvert ignores Dynamic range compression line
298      * (DynamicRangeCompressionLine). For information about the Dolby DRC operating
299      * modes and profiles, see the Dynamic Range Control chapter of the Dolby Metadata
300      * Guide at
301      * https://developer.dolby.com/globalassets/professional/documents/dolby-metadata-guide.pdf.
302      */
DynamicRangeCompressionLineHasBeenSet()303     inline bool DynamicRangeCompressionLineHasBeenSet() const { return m_dynamicRangeCompressionLineHasBeenSet; }
304 
305     /**
306      * Choose the Dolby dynamic range control (DRC) profile that MediaConvert uses when
307      * encoding the metadata in the Dolby stream for the line operating mode. Default
308      * value: Film light (ATMOS_STORAGE_DDP_COMPR_FILM_LIGHT) Related setting: To have
309      * MediaConvert use the value you specify here, keep the default value, Custom
310      * (SPECIFIED) for the setting Dynamic range control (DynamicRangeControl).
311      * Otherwise, MediaConvert ignores Dynamic range compression line
312      * (DynamicRangeCompressionLine). For information about the Dolby DRC operating
313      * modes and profiles, see the Dynamic Range Control chapter of the Dolby Metadata
314      * Guide at
315      * https://developer.dolby.com/globalassets/professional/documents/dolby-metadata-guide.pdf.
316      */
SetDynamicRangeCompressionLine(const Eac3AtmosDynamicRangeCompressionLine & value)317     inline void SetDynamicRangeCompressionLine(const Eac3AtmosDynamicRangeCompressionLine& value) { m_dynamicRangeCompressionLineHasBeenSet = true; m_dynamicRangeCompressionLine = value; }
318 
319     /**
320      * Choose the Dolby dynamic range control (DRC) profile that MediaConvert uses when
321      * encoding the metadata in the Dolby stream for the line operating mode. Default
322      * value: Film light (ATMOS_STORAGE_DDP_COMPR_FILM_LIGHT) Related setting: To have
323      * MediaConvert use the value you specify here, keep the default value, Custom
324      * (SPECIFIED) for the setting Dynamic range control (DynamicRangeControl).
325      * Otherwise, MediaConvert ignores Dynamic range compression line
326      * (DynamicRangeCompressionLine). For information about the Dolby DRC operating
327      * modes and profiles, see the Dynamic Range Control chapter of the Dolby Metadata
328      * Guide at
329      * https://developer.dolby.com/globalassets/professional/documents/dolby-metadata-guide.pdf.
330      */
SetDynamicRangeCompressionLine(Eac3AtmosDynamicRangeCompressionLine && value)331     inline void SetDynamicRangeCompressionLine(Eac3AtmosDynamicRangeCompressionLine&& value) { m_dynamicRangeCompressionLineHasBeenSet = true; m_dynamicRangeCompressionLine = std::move(value); }
332 
333     /**
334      * Choose the Dolby dynamic range control (DRC) profile that MediaConvert uses when
335      * encoding the metadata in the Dolby stream for the line operating mode. Default
336      * value: Film light (ATMOS_STORAGE_DDP_COMPR_FILM_LIGHT) Related setting: To have
337      * MediaConvert use the value you specify here, keep the default value, Custom
338      * (SPECIFIED) for the setting Dynamic range control (DynamicRangeControl).
339      * Otherwise, MediaConvert ignores Dynamic range compression line
340      * (DynamicRangeCompressionLine). For information about the Dolby DRC operating
341      * modes and profiles, see the Dynamic Range Control chapter of the Dolby Metadata
342      * Guide at
343      * https://developer.dolby.com/globalassets/professional/documents/dolby-metadata-guide.pdf.
344      */
WithDynamicRangeCompressionLine(const Eac3AtmosDynamicRangeCompressionLine & value)345     inline Eac3AtmosSettings& WithDynamicRangeCompressionLine(const Eac3AtmosDynamicRangeCompressionLine& value) { SetDynamicRangeCompressionLine(value); return *this;}
346 
347     /**
348      * Choose the Dolby dynamic range control (DRC) profile that MediaConvert uses when
349      * encoding the metadata in the Dolby stream for the line operating mode. Default
350      * value: Film light (ATMOS_STORAGE_DDP_COMPR_FILM_LIGHT) Related setting: To have
351      * MediaConvert use the value you specify here, keep the default value, Custom
352      * (SPECIFIED) for the setting Dynamic range control (DynamicRangeControl).
353      * Otherwise, MediaConvert ignores Dynamic range compression line
354      * (DynamicRangeCompressionLine). For information about the Dolby DRC operating
355      * modes and profiles, see the Dynamic Range Control chapter of the Dolby Metadata
356      * Guide at
357      * https://developer.dolby.com/globalassets/professional/documents/dolby-metadata-guide.pdf.
358      */
WithDynamicRangeCompressionLine(Eac3AtmosDynamicRangeCompressionLine && value)359     inline Eac3AtmosSettings& WithDynamicRangeCompressionLine(Eac3AtmosDynamicRangeCompressionLine&& value) { SetDynamicRangeCompressionLine(std::move(value)); return *this;}
360 
361 
362     /**
363      * Choose the Dolby dynamic range control (DRC) profile that MediaConvert uses when
364      * encoding the metadata in the Dolby stream for the RF operating mode. Default
365      * value: Film light (ATMOS_STORAGE_DDP_COMPR_FILM_LIGHT) Related setting: To have
366      * MediaConvert use the value you specify here, keep the default value, Custom
367      * (SPECIFIED) for the setting Dynamic range control (DynamicRangeControl).
368      * Otherwise, MediaConvert ignores Dynamic range compression RF
369      * (DynamicRangeCompressionRf). For information about the Dolby DRC operating modes
370      * and profiles, see the Dynamic Range Control chapter of the Dolby Metadata Guide
371      * at
372      * https://developer.dolby.com/globalassets/professional/documents/dolby-metadata-guide.pdf.
373      */
GetDynamicRangeCompressionRf()374     inline const Eac3AtmosDynamicRangeCompressionRf& GetDynamicRangeCompressionRf() const{ return m_dynamicRangeCompressionRf; }
375 
376     /**
377      * Choose the Dolby dynamic range control (DRC) profile that MediaConvert uses when
378      * encoding the metadata in the Dolby stream for the RF operating mode. Default
379      * value: Film light (ATMOS_STORAGE_DDP_COMPR_FILM_LIGHT) Related setting: To have
380      * MediaConvert use the value you specify here, keep the default value, Custom
381      * (SPECIFIED) for the setting Dynamic range control (DynamicRangeControl).
382      * Otherwise, MediaConvert ignores Dynamic range compression RF
383      * (DynamicRangeCompressionRf). For information about the Dolby DRC operating modes
384      * and profiles, see the Dynamic Range Control chapter of the Dolby Metadata Guide
385      * at
386      * https://developer.dolby.com/globalassets/professional/documents/dolby-metadata-guide.pdf.
387      */
DynamicRangeCompressionRfHasBeenSet()388     inline bool DynamicRangeCompressionRfHasBeenSet() const { return m_dynamicRangeCompressionRfHasBeenSet; }
389 
390     /**
391      * Choose the Dolby dynamic range control (DRC) profile that MediaConvert uses when
392      * encoding the metadata in the Dolby stream for the RF operating mode. Default
393      * value: Film light (ATMOS_STORAGE_DDP_COMPR_FILM_LIGHT) Related setting: To have
394      * MediaConvert use the value you specify here, keep the default value, Custom
395      * (SPECIFIED) for the setting Dynamic range control (DynamicRangeControl).
396      * Otherwise, MediaConvert ignores Dynamic range compression RF
397      * (DynamicRangeCompressionRf). For information about the Dolby DRC operating modes
398      * and profiles, see the Dynamic Range Control chapter of the Dolby Metadata Guide
399      * at
400      * https://developer.dolby.com/globalassets/professional/documents/dolby-metadata-guide.pdf.
401      */
SetDynamicRangeCompressionRf(const Eac3AtmosDynamicRangeCompressionRf & value)402     inline void SetDynamicRangeCompressionRf(const Eac3AtmosDynamicRangeCompressionRf& value) { m_dynamicRangeCompressionRfHasBeenSet = true; m_dynamicRangeCompressionRf = value; }
403 
404     /**
405      * Choose the Dolby dynamic range control (DRC) profile that MediaConvert uses when
406      * encoding the metadata in the Dolby stream for the RF operating mode. Default
407      * value: Film light (ATMOS_STORAGE_DDP_COMPR_FILM_LIGHT) Related setting: To have
408      * MediaConvert use the value you specify here, keep the default value, Custom
409      * (SPECIFIED) for the setting Dynamic range control (DynamicRangeControl).
410      * Otherwise, MediaConvert ignores Dynamic range compression RF
411      * (DynamicRangeCompressionRf). For information about the Dolby DRC operating modes
412      * and profiles, see the Dynamic Range Control chapter of the Dolby Metadata Guide
413      * at
414      * https://developer.dolby.com/globalassets/professional/documents/dolby-metadata-guide.pdf.
415      */
SetDynamicRangeCompressionRf(Eac3AtmosDynamicRangeCompressionRf && value)416     inline void SetDynamicRangeCompressionRf(Eac3AtmosDynamicRangeCompressionRf&& value) { m_dynamicRangeCompressionRfHasBeenSet = true; m_dynamicRangeCompressionRf = std::move(value); }
417 
418     /**
419      * Choose the Dolby dynamic range control (DRC) profile that MediaConvert uses when
420      * encoding the metadata in the Dolby stream for the RF operating mode. Default
421      * value: Film light (ATMOS_STORAGE_DDP_COMPR_FILM_LIGHT) Related setting: To have
422      * MediaConvert use the value you specify here, keep the default value, Custom
423      * (SPECIFIED) for the setting Dynamic range control (DynamicRangeControl).
424      * Otherwise, MediaConvert ignores Dynamic range compression RF
425      * (DynamicRangeCompressionRf). For information about the Dolby DRC operating modes
426      * and profiles, see the Dynamic Range Control chapter of the Dolby Metadata Guide
427      * at
428      * https://developer.dolby.com/globalassets/professional/documents/dolby-metadata-guide.pdf.
429      */
WithDynamicRangeCompressionRf(const Eac3AtmosDynamicRangeCompressionRf & value)430     inline Eac3AtmosSettings& WithDynamicRangeCompressionRf(const Eac3AtmosDynamicRangeCompressionRf& value) { SetDynamicRangeCompressionRf(value); return *this;}
431 
432     /**
433      * Choose the Dolby dynamic range control (DRC) profile that MediaConvert uses when
434      * encoding the metadata in the Dolby stream for the RF operating mode. Default
435      * value: Film light (ATMOS_STORAGE_DDP_COMPR_FILM_LIGHT) Related setting: To have
436      * MediaConvert use the value you specify here, keep the default value, Custom
437      * (SPECIFIED) for the setting Dynamic range control (DynamicRangeControl).
438      * Otherwise, MediaConvert ignores Dynamic range compression RF
439      * (DynamicRangeCompressionRf). For information about the Dolby DRC operating modes
440      * and profiles, see the Dynamic Range Control chapter of the Dolby Metadata Guide
441      * at
442      * https://developer.dolby.com/globalassets/professional/documents/dolby-metadata-guide.pdf.
443      */
WithDynamicRangeCompressionRf(Eac3AtmosDynamicRangeCompressionRf && value)444     inline Eac3AtmosSettings& WithDynamicRangeCompressionRf(Eac3AtmosDynamicRangeCompressionRf&& value) { SetDynamicRangeCompressionRf(std::move(value)); return *this;}
445 
446 
447     /**
448      * Specify whether MediaConvert should use any dynamic range control metadata from
449      * your input file. Keep the default value, Custom (SPECIFIED), to provide dynamic
450      * range control values in your job settings. Choose Follow source
451      * (INITIALIZE_FROM_SOURCE) to use the metadata from your input. Related
452      * settings--Use these settings to specify your dynamic range control values:
453      * Dynamic range compression line (DynamicRangeCompressionLine) and Dynamic range
454      * compression RF (DynamicRangeCompressionRf). When you keep the value Custom
455      * (SPECIFIED) for Dynamic range control (DynamicRangeControl) and you don't
456      * specify values for the related settings, MediaConvert uses default values for
457      * those settings.
458      */
GetDynamicRangeControl()459     inline const Eac3AtmosDynamicRangeControl& GetDynamicRangeControl() const{ return m_dynamicRangeControl; }
460 
461     /**
462      * Specify whether MediaConvert should use any dynamic range control metadata from
463      * your input file. Keep the default value, Custom (SPECIFIED), to provide dynamic
464      * range control values in your job settings. Choose Follow source
465      * (INITIALIZE_FROM_SOURCE) to use the metadata from your input. Related
466      * settings--Use these settings to specify your dynamic range control values:
467      * Dynamic range compression line (DynamicRangeCompressionLine) and Dynamic range
468      * compression RF (DynamicRangeCompressionRf). When you keep the value Custom
469      * (SPECIFIED) for Dynamic range control (DynamicRangeControl) and you don't
470      * specify values for the related settings, MediaConvert uses default values for
471      * those settings.
472      */
DynamicRangeControlHasBeenSet()473     inline bool DynamicRangeControlHasBeenSet() const { return m_dynamicRangeControlHasBeenSet; }
474 
475     /**
476      * Specify whether MediaConvert should use any dynamic range control metadata from
477      * your input file. Keep the default value, Custom (SPECIFIED), to provide dynamic
478      * range control values in your job settings. Choose Follow source
479      * (INITIALIZE_FROM_SOURCE) to use the metadata from your input. Related
480      * settings--Use these settings to specify your dynamic range control values:
481      * Dynamic range compression line (DynamicRangeCompressionLine) and Dynamic range
482      * compression RF (DynamicRangeCompressionRf). When you keep the value Custom
483      * (SPECIFIED) for Dynamic range control (DynamicRangeControl) and you don't
484      * specify values for the related settings, MediaConvert uses default values for
485      * those settings.
486      */
SetDynamicRangeControl(const Eac3AtmosDynamicRangeControl & value)487     inline void SetDynamicRangeControl(const Eac3AtmosDynamicRangeControl& value) { m_dynamicRangeControlHasBeenSet = true; m_dynamicRangeControl = value; }
488 
489     /**
490      * Specify whether MediaConvert should use any dynamic range control metadata from
491      * your input file. Keep the default value, Custom (SPECIFIED), to provide dynamic
492      * range control values in your job settings. Choose Follow source
493      * (INITIALIZE_FROM_SOURCE) to use the metadata from your input. Related
494      * settings--Use these settings to specify your dynamic range control values:
495      * Dynamic range compression line (DynamicRangeCompressionLine) and Dynamic range
496      * compression RF (DynamicRangeCompressionRf). When you keep the value Custom
497      * (SPECIFIED) for Dynamic range control (DynamicRangeControl) and you don't
498      * specify values for the related settings, MediaConvert uses default values for
499      * those settings.
500      */
SetDynamicRangeControl(Eac3AtmosDynamicRangeControl && value)501     inline void SetDynamicRangeControl(Eac3AtmosDynamicRangeControl&& value) { m_dynamicRangeControlHasBeenSet = true; m_dynamicRangeControl = std::move(value); }
502 
503     /**
504      * Specify whether MediaConvert should use any dynamic range control metadata from
505      * your input file. Keep the default value, Custom (SPECIFIED), to provide dynamic
506      * range control values in your job settings. Choose Follow source
507      * (INITIALIZE_FROM_SOURCE) to use the metadata from your input. Related
508      * settings--Use these settings to specify your dynamic range control values:
509      * Dynamic range compression line (DynamicRangeCompressionLine) and Dynamic range
510      * compression RF (DynamicRangeCompressionRf). When you keep the value Custom
511      * (SPECIFIED) for Dynamic range control (DynamicRangeControl) and you don't
512      * specify values for the related settings, MediaConvert uses default values for
513      * those settings.
514      */
WithDynamicRangeControl(const Eac3AtmosDynamicRangeControl & value)515     inline Eac3AtmosSettings& WithDynamicRangeControl(const Eac3AtmosDynamicRangeControl& value) { SetDynamicRangeControl(value); return *this;}
516 
517     /**
518      * Specify whether MediaConvert should use any dynamic range control metadata from
519      * your input file. Keep the default value, Custom (SPECIFIED), to provide dynamic
520      * range control values in your job settings. Choose Follow source
521      * (INITIALIZE_FROM_SOURCE) to use the metadata from your input. Related
522      * settings--Use these settings to specify your dynamic range control values:
523      * Dynamic range compression line (DynamicRangeCompressionLine) and Dynamic range
524      * compression RF (DynamicRangeCompressionRf). When you keep the value Custom
525      * (SPECIFIED) for Dynamic range control (DynamicRangeControl) and you don't
526      * specify values for the related settings, MediaConvert uses default values for
527      * those settings.
528      */
WithDynamicRangeControl(Eac3AtmosDynamicRangeControl && value)529     inline Eac3AtmosSettings& WithDynamicRangeControl(Eac3AtmosDynamicRangeControl&& value) { SetDynamicRangeControl(std::move(value)); return *this;}
530 
531 
532     /**
533      * Specify a value for the following Dolby Atmos setting: Left only/Right only
534      * center mix (Lo/Ro center). MediaConvert uses this value for downmixing. Default
535      * value: -3 dB (ATMOS_STORAGE_DDP_MIXLEV_MINUS_3_DB). Valid values: 3.0, 1.5, 0.0,
536      * -1.5, -3.0, -4.5, and -6.0. Related setting: How the service uses this value
537      * depends on the value that you choose for Stereo downmix
538      * (Eac3AtmosStereoDownmix). Related setting: To have MediaConvert use this value,
539      * keep the default value, Custom (SPECIFIED) for the setting Downmix control
540      * (DownmixControl). Otherwise, MediaConvert ignores Left only/Right only center
541      * (LoRoCenterMixLevel).
542      */
GetLoRoCenterMixLevel()543     inline double GetLoRoCenterMixLevel() const{ return m_loRoCenterMixLevel; }
544 
545     /**
546      * Specify a value for the following Dolby Atmos setting: Left only/Right only
547      * center mix (Lo/Ro center). MediaConvert uses this value for downmixing. Default
548      * value: -3 dB (ATMOS_STORAGE_DDP_MIXLEV_MINUS_3_DB). Valid values: 3.0, 1.5, 0.0,
549      * -1.5, -3.0, -4.5, and -6.0. Related setting: How the service uses this value
550      * depends on the value that you choose for Stereo downmix
551      * (Eac3AtmosStereoDownmix). Related setting: To have MediaConvert use this value,
552      * keep the default value, Custom (SPECIFIED) for the setting Downmix control
553      * (DownmixControl). Otherwise, MediaConvert ignores Left only/Right only center
554      * (LoRoCenterMixLevel).
555      */
LoRoCenterMixLevelHasBeenSet()556     inline bool LoRoCenterMixLevelHasBeenSet() const { return m_loRoCenterMixLevelHasBeenSet; }
557 
558     /**
559      * Specify a value for the following Dolby Atmos setting: Left only/Right only
560      * center mix (Lo/Ro center). MediaConvert uses this value for downmixing. Default
561      * value: -3 dB (ATMOS_STORAGE_DDP_MIXLEV_MINUS_3_DB). Valid values: 3.0, 1.5, 0.0,
562      * -1.5, -3.0, -4.5, and -6.0. Related setting: How the service uses this value
563      * depends on the value that you choose for Stereo downmix
564      * (Eac3AtmosStereoDownmix). Related setting: To have MediaConvert use this value,
565      * keep the default value, Custom (SPECIFIED) for the setting Downmix control
566      * (DownmixControl). Otherwise, MediaConvert ignores Left only/Right only center
567      * (LoRoCenterMixLevel).
568      */
SetLoRoCenterMixLevel(double value)569     inline void SetLoRoCenterMixLevel(double value) { m_loRoCenterMixLevelHasBeenSet = true; m_loRoCenterMixLevel = value; }
570 
571     /**
572      * Specify a value for the following Dolby Atmos setting: Left only/Right only
573      * center mix (Lo/Ro center). MediaConvert uses this value for downmixing. Default
574      * value: -3 dB (ATMOS_STORAGE_DDP_MIXLEV_MINUS_3_DB). Valid values: 3.0, 1.5, 0.0,
575      * -1.5, -3.0, -4.5, and -6.0. Related setting: How the service uses this value
576      * depends on the value that you choose for Stereo downmix
577      * (Eac3AtmosStereoDownmix). Related setting: To have MediaConvert use this value,
578      * keep the default value, Custom (SPECIFIED) for the setting Downmix control
579      * (DownmixControl). Otherwise, MediaConvert ignores Left only/Right only center
580      * (LoRoCenterMixLevel).
581      */
WithLoRoCenterMixLevel(double value)582     inline Eac3AtmosSettings& WithLoRoCenterMixLevel(double value) { SetLoRoCenterMixLevel(value); return *this;}
583 
584 
585     /**
586      * Specify a value for the following Dolby Atmos setting: Left only/Right only
587      * (Lo/Ro surround). MediaConvert uses this value for downmixing. Default value: -3
588      * dB (ATMOS_STORAGE_DDP_MIXLEV_MINUS_3_DB). Valid values: -1.5, -3.0, -4.5, -6.0,
589      * and -60. The value -60 mutes the channel. Related setting: How the service uses
590      * this value depends on the value that you choose for Stereo downmix
591      * (Eac3AtmosStereoDownmix). Related setting: To have MediaConvert use this value,
592      * keep the default value, Custom (SPECIFIED) for the setting Downmix control
593      * (DownmixControl). Otherwise, MediaConvert ignores Left only/Right only surround
594      * (LoRoSurroundMixLevel).
595      */
GetLoRoSurroundMixLevel()596     inline double GetLoRoSurroundMixLevel() const{ return m_loRoSurroundMixLevel; }
597 
598     /**
599      * Specify a value for the following Dolby Atmos setting: Left only/Right only
600      * (Lo/Ro surround). MediaConvert uses this value for downmixing. Default value: -3
601      * dB (ATMOS_STORAGE_DDP_MIXLEV_MINUS_3_DB). Valid values: -1.5, -3.0, -4.5, -6.0,
602      * and -60. The value -60 mutes the channel. Related setting: How the service uses
603      * this value depends on the value that you choose for Stereo downmix
604      * (Eac3AtmosStereoDownmix). Related setting: To have MediaConvert use this value,
605      * keep the default value, Custom (SPECIFIED) for the setting Downmix control
606      * (DownmixControl). Otherwise, MediaConvert ignores Left only/Right only surround
607      * (LoRoSurroundMixLevel).
608      */
LoRoSurroundMixLevelHasBeenSet()609     inline bool LoRoSurroundMixLevelHasBeenSet() const { return m_loRoSurroundMixLevelHasBeenSet; }
610 
611     /**
612      * Specify a value for the following Dolby Atmos setting: Left only/Right only
613      * (Lo/Ro surround). MediaConvert uses this value for downmixing. Default value: -3
614      * dB (ATMOS_STORAGE_DDP_MIXLEV_MINUS_3_DB). Valid values: -1.5, -3.0, -4.5, -6.0,
615      * and -60. The value -60 mutes the channel. Related setting: How the service uses
616      * this value depends on the value that you choose for Stereo downmix
617      * (Eac3AtmosStereoDownmix). Related setting: To have MediaConvert use this value,
618      * keep the default value, Custom (SPECIFIED) for the setting Downmix control
619      * (DownmixControl). Otherwise, MediaConvert ignores Left only/Right only surround
620      * (LoRoSurroundMixLevel).
621      */
SetLoRoSurroundMixLevel(double value)622     inline void SetLoRoSurroundMixLevel(double value) { m_loRoSurroundMixLevelHasBeenSet = true; m_loRoSurroundMixLevel = value; }
623 
624     /**
625      * Specify a value for the following Dolby Atmos setting: Left only/Right only
626      * (Lo/Ro surround). MediaConvert uses this value for downmixing. Default value: -3
627      * dB (ATMOS_STORAGE_DDP_MIXLEV_MINUS_3_DB). Valid values: -1.5, -3.0, -4.5, -6.0,
628      * and -60. The value -60 mutes the channel. Related setting: How the service uses
629      * this value depends on the value that you choose for Stereo downmix
630      * (Eac3AtmosStereoDownmix). Related setting: To have MediaConvert use this value,
631      * keep the default value, Custom (SPECIFIED) for the setting Downmix control
632      * (DownmixControl). Otherwise, MediaConvert ignores Left only/Right only surround
633      * (LoRoSurroundMixLevel).
634      */
WithLoRoSurroundMixLevel(double value)635     inline Eac3AtmosSettings& WithLoRoSurroundMixLevel(double value) { SetLoRoSurroundMixLevel(value); return *this;}
636 
637 
638     /**
639      * Specify a value for the following Dolby Atmos setting: Left total/Right total
640      * center mix (Lt/Rt center). MediaConvert uses this value for downmixing. Default
641      * value: -3 dB (ATMOS_STORAGE_DDP_MIXLEV_MINUS_3_DB) Valid values: 3.0, 1.5, 0.0,
642      * -1.5, -3.0, -4.5, and -6.0. Related setting: How the service uses this value
643      * depends on the value that you choose for Stereo downmix
644      * (Eac3AtmosStereoDownmix). Related setting: To have MediaConvert use this value,
645      * keep the default value, Custom (SPECIFIED) for the setting Downmix control
646      * (DownmixControl). Otherwise, MediaConvert ignores Left total/Right total center
647      * (LtRtCenterMixLevel).
648      */
GetLtRtCenterMixLevel()649     inline double GetLtRtCenterMixLevel() const{ return m_ltRtCenterMixLevel; }
650 
651     /**
652      * Specify a value for the following Dolby Atmos setting: Left total/Right total
653      * center mix (Lt/Rt center). MediaConvert uses this value for downmixing. Default
654      * value: -3 dB (ATMOS_STORAGE_DDP_MIXLEV_MINUS_3_DB) Valid values: 3.0, 1.5, 0.0,
655      * -1.5, -3.0, -4.5, and -6.0. Related setting: How the service uses this value
656      * depends on the value that you choose for Stereo downmix
657      * (Eac3AtmosStereoDownmix). Related setting: To have MediaConvert use this value,
658      * keep the default value, Custom (SPECIFIED) for the setting Downmix control
659      * (DownmixControl). Otherwise, MediaConvert ignores Left total/Right total center
660      * (LtRtCenterMixLevel).
661      */
LtRtCenterMixLevelHasBeenSet()662     inline bool LtRtCenterMixLevelHasBeenSet() const { return m_ltRtCenterMixLevelHasBeenSet; }
663 
664     /**
665      * Specify a value for the following Dolby Atmos setting: Left total/Right total
666      * center mix (Lt/Rt center). MediaConvert uses this value for downmixing. Default
667      * value: -3 dB (ATMOS_STORAGE_DDP_MIXLEV_MINUS_3_DB) Valid values: 3.0, 1.5, 0.0,
668      * -1.5, -3.0, -4.5, and -6.0. Related setting: How the service uses this value
669      * depends on the value that you choose for Stereo downmix
670      * (Eac3AtmosStereoDownmix). Related setting: To have MediaConvert use this value,
671      * keep the default value, Custom (SPECIFIED) for the setting Downmix control
672      * (DownmixControl). Otherwise, MediaConvert ignores Left total/Right total center
673      * (LtRtCenterMixLevel).
674      */
SetLtRtCenterMixLevel(double value)675     inline void SetLtRtCenterMixLevel(double value) { m_ltRtCenterMixLevelHasBeenSet = true; m_ltRtCenterMixLevel = value; }
676 
677     /**
678      * Specify a value for the following Dolby Atmos setting: Left total/Right total
679      * center mix (Lt/Rt center). MediaConvert uses this value for downmixing. Default
680      * value: -3 dB (ATMOS_STORAGE_DDP_MIXLEV_MINUS_3_DB) Valid values: 3.0, 1.5, 0.0,
681      * -1.5, -3.0, -4.5, and -6.0. Related setting: How the service uses this value
682      * depends on the value that you choose for Stereo downmix
683      * (Eac3AtmosStereoDownmix). Related setting: To have MediaConvert use this value,
684      * keep the default value, Custom (SPECIFIED) for the setting Downmix control
685      * (DownmixControl). Otherwise, MediaConvert ignores Left total/Right total center
686      * (LtRtCenterMixLevel).
687      */
WithLtRtCenterMixLevel(double value)688     inline Eac3AtmosSettings& WithLtRtCenterMixLevel(double value) { SetLtRtCenterMixLevel(value); return *this;}
689 
690 
691     /**
692      * Specify a value for the following Dolby Atmos setting: Left total/Right total
693      * surround mix (Lt/Rt surround). MediaConvert uses this value for downmixing.
694      * Default value: -3 dB (ATMOS_STORAGE_DDP_MIXLEV_MINUS_3_DB) Valid values: -1.5,
695      * -3.0, -4.5, -6.0, and -60. The value -60 mutes the channel. Related setting: How
696      * the service uses this value depends on the value that you choose for Stereo
697      * downmix (Eac3AtmosStereoDownmix). Related setting: To have MediaConvert use this
698      * value, keep the default value, Custom (SPECIFIED) for the setting Downmix
699      * control (DownmixControl). Otherwise, the service ignores Left total/Right total
700      * surround (LtRtSurroundMixLevel).
701      */
GetLtRtSurroundMixLevel()702     inline double GetLtRtSurroundMixLevel() const{ return m_ltRtSurroundMixLevel; }
703 
704     /**
705      * Specify a value for the following Dolby Atmos setting: Left total/Right total
706      * surround mix (Lt/Rt surround). MediaConvert uses this value for downmixing.
707      * Default value: -3 dB (ATMOS_STORAGE_DDP_MIXLEV_MINUS_3_DB) Valid values: -1.5,
708      * -3.0, -4.5, -6.0, and -60. The value -60 mutes the channel. Related setting: How
709      * the service uses this value depends on the value that you choose for Stereo
710      * downmix (Eac3AtmosStereoDownmix). Related setting: To have MediaConvert use this
711      * value, keep the default value, Custom (SPECIFIED) for the setting Downmix
712      * control (DownmixControl). Otherwise, the service ignores Left total/Right total
713      * surround (LtRtSurroundMixLevel).
714      */
LtRtSurroundMixLevelHasBeenSet()715     inline bool LtRtSurroundMixLevelHasBeenSet() const { return m_ltRtSurroundMixLevelHasBeenSet; }
716 
717     /**
718      * Specify a value for the following Dolby Atmos setting: Left total/Right total
719      * surround mix (Lt/Rt surround). MediaConvert uses this value for downmixing.
720      * Default value: -3 dB (ATMOS_STORAGE_DDP_MIXLEV_MINUS_3_DB) Valid values: -1.5,
721      * -3.0, -4.5, -6.0, and -60. The value -60 mutes the channel. Related setting: How
722      * the service uses this value depends on the value that you choose for Stereo
723      * downmix (Eac3AtmosStereoDownmix). Related setting: To have MediaConvert use this
724      * value, keep the default value, Custom (SPECIFIED) for the setting Downmix
725      * control (DownmixControl). Otherwise, the service ignores Left total/Right total
726      * surround (LtRtSurroundMixLevel).
727      */
SetLtRtSurroundMixLevel(double value)728     inline void SetLtRtSurroundMixLevel(double value) { m_ltRtSurroundMixLevelHasBeenSet = true; m_ltRtSurroundMixLevel = value; }
729 
730     /**
731      * Specify a value for the following Dolby Atmos setting: Left total/Right total
732      * surround mix (Lt/Rt surround). MediaConvert uses this value for downmixing.
733      * Default value: -3 dB (ATMOS_STORAGE_DDP_MIXLEV_MINUS_3_DB) Valid values: -1.5,
734      * -3.0, -4.5, -6.0, and -60. The value -60 mutes the channel. Related setting: How
735      * the service uses this value depends on the value that you choose for Stereo
736      * downmix (Eac3AtmosStereoDownmix). Related setting: To have MediaConvert use this
737      * value, keep the default value, Custom (SPECIFIED) for the setting Downmix
738      * control (DownmixControl). Otherwise, the service ignores Left total/Right total
739      * surround (LtRtSurroundMixLevel).
740      */
WithLtRtSurroundMixLevel(double value)741     inline Eac3AtmosSettings& WithLtRtSurroundMixLevel(double value) { SetLtRtSurroundMixLevel(value); return *this;}
742 
743 
744     /**
745      * Choose how the service meters the loudness of your audio.
746      */
GetMeteringMode()747     inline const Eac3AtmosMeteringMode& GetMeteringMode() const{ return m_meteringMode; }
748 
749     /**
750      * Choose how the service meters the loudness of your audio.
751      */
MeteringModeHasBeenSet()752     inline bool MeteringModeHasBeenSet() const { return m_meteringModeHasBeenSet; }
753 
754     /**
755      * Choose how the service meters the loudness of your audio.
756      */
SetMeteringMode(const Eac3AtmosMeteringMode & value)757     inline void SetMeteringMode(const Eac3AtmosMeteringMode& value) { m_meteringModeHasBeenSet = true; m_meteringMode = value; }
758 
759     /**
760      * Choose how the service meters the loudness of your audio.
761      */
SetMeteringMode(Eac3AtmosMeteringMode && value)762     inline void SetMeteringMode(Eac3AtmosMeteringMode&& value) { m_meteringModeHasBeenSet = true; m_meteringMode = std::move(value); }
763 
764     /**
765      * Choose how the service meters the loudness of your audio.
766      */
WithMeteringMode(const Eac3AtmosMeteringMode & value)767     inline Eac3AtmosSettings& WithMeteringMode(const Eac3AtmosMeteringMode& value) { SetMeteringMode(value); return *this;}
768 
769     /**
770      * Choose how the service meters the loudness of your audio.
771      */
WithMeteringMode(Eac3AtmosMeteringMode && value)772     inline Eac3AtmosSettings& WithMeteringMode(Eac3AtmosMeteringMode&& value) { SetMeteringMode(std::move(value)); return *this;}
773 
774 
775     /**
776      * This value is always 48000. It represents the sample rate in Hz.
777      */
GetSampleRate()778     inline int GetSampleRate() const{ return m_sampleRate; }
779 
780     /**
781      * This value is always 48000. It represents the sample rate in Hz.
782      */
SampleRateHasBeenSet()783     inline bool SampleRateHasBeenSet() const { return m_sampleRateHasBeenSet; }
784 
785     /**
786      * This value is always 48000. It represents the sample rate in Hz.
787      */
SetSampleRate(int value)788     inline void SetSampleRate(int value) { m_sampleRateHasBeenSet = true; m_sampleRate = value; }
789 
790     /**
791      * This value is always 48000. It represents the sample rate in Hz.
792      */
WithSampleRate(int value)793     inline Eac3AtmosSettings& WithSampleRate(int value) { SetSampleRate(value); return *this;}
794 
795 
796     /**
797      * Specify the percentage of audio content, from 0% to 100%, that must be speech in
798      * order for the encoder to use the measured speech loudness as the overall program
799      * loudness. Default value: 15%
800      */
GetSpeechThreshold()801     inline int GetSpeechThreshold() const{ return m_speechThreshold; }
802 
803     /**
804      * Specify the percentage of audio content, from 0% to 100%, that must be speech in
805      * order for the encoder to use the measured speech loudness as the overall program
806      * loudness. Default value: 15%
807      */
SpeechThresholdHasBeenSet()808     inline bool SpeechThresholdHasBeenSet() const { return m_speechThresholdHasBeenSet; }
809 
810     /**
811      * Specify the percentage of audio content, from 0% to 100%, that must be speech in
812      * order for the encoder to use the measured speech loudness as the overall program
813      * loudness. Default value: 15%
814      */
SetSpeechThreshold(int value)815     inline void SetSpeechThreshold(int value) { m_speechThresholdHasBeenSet = true; m_speechThreshold = value; }
816 
817     /**
818      * Specify the percentage of audio content, from 0% to 100%, that must be speech in
819      * order for the encoder to use the measured speech loudness as the overall program
820      * loudness. Default value: 15%
821      */
WithSpeechThreshold(int value)822     inline Eac3AtmosSettings& WithSpeechThreshold(int value) { SetSpeechThreshold(value); return *this;}
823 
824 
825     /**
826      * Choose how the service does stereo downmixing. Default value: Not indicated
827      * (ATMOS_STORAGE_DDP_DMIXMOD_NOT_INDICATED) Related setting: To have MediaConvert
828      * use this value, keep the default value, Custom (SPECIFIED) for the setting
829      * Downmix control (DownmixControl). Otherwise, MediaConvert ignores Stereo downmix
830      * (StereoDownmix).
831      */
GetStereoDownmix()832     inline const Eac3AtmosStereoDownmix& GetStereoDownmix() const{ return m_stereoDownmix; }
833 
834     /**
835      * Choose how the service does stereo downmixing. Default value: Not indicated
836      * (ATMOS_STORAGE_DDP_DMIXMOD_NOT_INDICATED) Related setting: To have MediaConvert
837      * use this value, keep the default value, Custom (SPECIFIED) for the setting
838      * Downmix control (DownmixControl). Otherwise, MediaConvert ignores Stereo downmix
839      * (StereoDownmix).
840      */
StereoDownmixHasBeenSet()841     inline bool StereoDownmixHasBeenSet() const { return m_stereoDownmixHasBeenSet; }
842 
843     /**
844      * Choose how the service does stereo downmixing. Default value: Not indicated
845      * (ATMOS_STORAGE_DDP_DMIXMOD_NOT_INDICATED) Related setting: To have MediaConvert
846      * use this value, keep the default value, Custom (SPECIFIED) for the setting
847      * Downmix control (DownmixControl). Otherwise, MediaConvert ignores Stereo downmix
848      * (StereoDownmix).
849      */
SetStereoDownmix(const Eac3AtmosStereoDownmix & value)850     inline void SetStereoDownmix(const Eac3AtmosStereoDownmix& value) { m_stereoDownmixHasBeenSet = true; m_stereoDownmix = value; }
851 
852     /**
853      * Choose how the service does stereo downmixing. Default value: Not indicated
854      * (ATMOS_STORAGE_DDP_DMIXMOD_NOT_INDICATED) Related setting: To have MediaConvert
855      * use this value, keep the default value, Custom (SPECIFIED) for the setting
856      * Downmix control (DownmixControl). Otherwise, MediaConvert ignores Stereo downmix
857      * (StereoDownmix).
858      */
SetStereoDownmix(Eac3AtmosStereoDownmix && value)859     inline void SetStereoDownmix(Eac3AtmosStereoDownmix&& value) { m_stereoDownmixHasBeenSet = true; m_stereoDownmix = std::move(value); }
860 
861     /**
862      * Choose how the service does stereo downmixing. Default value: Not indicated
863      * (ATMOS_STORAGE_DDP_DMIXMOD_NOT_INDICATED) Related setting: To have MediaConvert
864      * use this value, keep the default value, Custom (SPECIFIED) for the setting
865      * Downmix control (DownmixControl). Otherwise, MediaConvert ignores Stereo downmix
866      * (StereoDownmix).
867      */
WithStereoDownmix(const Eac3AtmosStereoDownmix & value)868     inline Eac3AtmosSettings& WithStereoDownmix(const Eac3AtmosStereoDownmix& value) { SetStereoDownmix(value); return *this;}
869 
870     /**
871      * Choose how the service does stereo downmixing. Default value: Not indicated
872      * (ATMOS_STORAGE_DDP_DMIXMOD_NOT_INDICATED) Related setting: To have MediaConvert
873      * use this value, keep the default value, Custom (SPECIFIED) for the setting
874      * Downmix control (DownmixControl). Otherwise, MediaConvert ignores Stereo downmix
875      * (StereoDownmix).
876      */
WithStereoDownmix(Eac3AtmosStereoDownmix && value)877     inline Eac3AtmosSettings& WithStereoDownmix(Eac3AtmosStereoDownmix&& value) { SetStereoDownmix(std::move(value)); return *this;}
878 
879 
880     /**
881      * Specify whether your input audio has an additional center rear surround channel
882      * matrix encoded into your left and right surround channels.
883      */
GetSurroundExMode()884     inline const Eac3AtmosSurroundExMode& GetSurroundExMode() const{ return m_surroundExMode; }
885 
886     /**
887      * Specify whether your input audio has an additional center rear surround channel
888      * matrix encoded into your left and right surround channels.
889      */
SurroundExModeHasBeenSet()890     inline bool SurroundExModeHasBeenSet() const { return m_surroundExModeHasBeenSet; }
891 
892     /**
893      * Specify whether your input audio has an additional center rear surround channel
894      * matrix encoded into your left and right surround channels.
895      */
SetSurroundExMode(const Eac3AtmosSurroundExMode & value)896     inline void SetSurroundExMode(const Eac3AtmosSurroundExMode& value) { m_surroundExModeHasBeenSet = true; m_surroundExMode = value; }
897 
898     /**
899      * Specify whether your input audio has an additional center rear surround channel
900      * matrix encoded into your left and right surround channels.
901      */
SetSurroundExMode(Eac3AtmosSurroundExMode && value)902     inline void SetSurroundExMode(Eac3AtmosSurroundExMode&& value) { m_surroundExModeHasBeenSet = true; m_surroundExMode = std::move(value); }
903 
904     /**
905      * Specify whether your input audio has an additional center rear surround channel
906      * matrix encoded into your left and right surround channels.
907      */
WithSurroundExMode(const Eac3AtmosSurroundExMode & value)908     inline Eac3AtmosSettings& WithSurroundExMode(const Eac3AtmosSurroundExMode& value) { SetSurroundExMode(value); return *this;}
909 
910     /**
911      * Specify whether your input audio has an additional center rear surround channel
912      * matrix encoded into your left and right surround channels.
913      */
WithSurroundExMode(Eac3AtmosSurroundExMode && value)914     inline Eac3AtmosSettings& WithSurroundExMode(Eac3AtmosSurroundExMode&& value) { SetSurroundExMode(std::move(value)); return *this;}
915 
916   private:
917 
918     int m_bitrate;
919     bool m_bitrateHasBeenSet;
920 
921     Eac3AtmosBitstreamMode m_bitstreamMode;
922     bool m_bitstreamModeHasBeenSet;
923 
924     Eac3AtmosCodingMode m_codingMode;
925     bool m_codingModeHasBeenSet;
926 
927     Eac3AtmosDialogueIntelligence m_dialogueIntelligence;
928     bool m_dialogueIntelligenceHasBeenSet;
929 
930     Eac3AtmosDownmixControl m_downmixControl;
931     bool m_downmixControlHasBeenSet;
932 
933     Eac3AtmosDynamicRangeCompressionLine m_dynamicRangeCompressionLine;
934     bool m_dynamicRangeCompressionLineHasBeenSet;
935 
936     Eac3AtmosDynamicRangeCompressionRf m_dynamicRangeCompressionRf;
937     bool m_dynamicRangeCompressionRfHasBeenSet;
938 
939     Eac3AtmosDynamicRangeControl m_dynamicRangeControl;
940     bool m_dynamicRangeControlHasBeenSet;
941 
942     double m_loRoCenterMixLevel;
943     bool m_loRoCenterMixLevelHasBeenSet;
944 
945     double m_loRoSurroundMixLevel;
946     bool m_loRoSurroundMixLevelHasBeenSet;
947 
948     double m_ltRtCenterMixLevel;
949     bool m_ltRtCenterMixLevelHasBeenSet;
950 
951     double m_ltRtSurroundMixLevel;
952     bool m_ltRtSurroundMixLevelHasBeenSet;
953 
954     Eac3AtmosMeteringMode m_meteringMode;
955     bool m_meteringModeHasBeenSet;
956 
957     int m_sampleRate;
958     bool m_sampleRateHasBeenSet;
959 
960     int m_speechThreshold;
961     bool m_speechThresholdHasBeenSet;
962 
963     Eac3AtmosStereoDownmix m_stereoDownmix;
964     bool m_stereoDownmixHasBeenSet;
965 
966     Eac3AtmosSurroundExMode m_surroundExMode;
967     bool m_surroundExModeHasBeenSet;
968   };
969 
970 } // namespace Model
971 } // namespace MediaConvert
972 } // namespace Aws
973