1 /**
2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3 * SPDX-License-Identifier: Apache-2.0.
4 */
5
6 #include <aws/mediaconvert/model/Eac3AtmosSettings.h>
7 #include <aws/core/utils/json/JsonSerializer.h>
8
9 #include <utility>
10
11 using namespace Aws::Utils::Json;
12 using namespace Aws::Utils;
13
14 namespace Aws
15 {
16 namespace MediaConvert
17 {
18 namespace Model
19 {
20
Eac3AtmosSettings()21 Eac3AtmosSettings::Eac3AtmosSettings() :
22 m_bitrate(0),
23 m_bitrateHasBeenSet(false),
24 m_bitstreamMode(Eac3AtmosBitstreamMode::NOT_SET),
25 m_bitstreamModeHasBeenSet(false),
26 m_codingMode(Eac3AtmosCodingMode::NOT_SET),
27 m_codingModeHasBeenSet(false),
28 m_dialogueIntelligence(Eac3AtmosDialogueIntelligence::NOT_SET),
29 m_dialogueIntelligenceHasBeenSet(false),
30 m_downmixControl(Eac3AtmosDownmixControl::NOT_SET),
31 m_downmixControlHasBeenSet(false),
32 m_dynamicRangeCompressionLine(Eac3AtmosDynamicRangeCompressionLine::NOT_SET),
33 m_dynamicRangeCompressionLineHasBeenSet(false),
34 m_dynamicRangeCompressionRf(Eac3AtmosDynamicRangeCompressionRf::NOT_SET),
35 m_dynamicRangeCompressionRfHasBeenSet(false),
36 m_dynamicRangeControl(Eac3AtmosDynamicRangeControl::NOT_SET),
37 m_dynamicRangeControlHasBeenSet(false),
38 m_loRoCenterMixLevel(0.0),
39 m_loRoCenterMixLevelHasBeenSet(false),
40 m_loRoSurroundMixLevel(0.0),
41 m_loRoSurroundMixLevelHasBeenSet(false),
42 m_ltRtCenterMixLevel(0.0),
43 m_ltRtCenterMixLevelHasBeenSet(false),
44 m_ltRtSurroundMixLevel(0.0),
45 m_ltRtSurroundMixLevelHasBeenSet(false),
46 m_meteringMode(Eac3AtmosMeteringMode::NOT_SET),
47 m_meteringModeHasBeenSet(false),
48 m_sampleRate(0),
49 m_sampleRateHasBeenSet(false),
50 m_speechThreshold(0),
51 m_speechThresholdHasBeenSet(false),
52 m_stereoDownmix(Eac3AtmosStereoDownmix::NOT_SET),
53 m_stereoDownmixHasBeenSet(false),
54 m_surroundExMode(Eac3AtmosSurroundExMode::NOT_SET),
55 m_surroundExModeHasBeenSet(false)
56 {
57 }
58
Eac3AtmosSettings(JsonView jsonValue)59 Eac3AtmosSettings::Eac3AtmosSettings(JsonView jsonValue) :
60 m_bitrate(0),
61 m_bitrateHasBeenSet(false),
62 m_bitstreamMode(Eac3AtmosBitstreamMode::NOT_SET),
63 m_bitstreamModeHasBeenSet(false),
64 m_codingMode(Eac3AtmosCodingMode::NOT_SET),
65 m_codingModeHasBeenSet(false),
66 m_dialogueIntelligence(Eac3AtmosDialogueIntelligence::NOT_SET),
67 m_dialogueIntelligenceHasBeenSet(false),
68 m_downmixControl(Eac3AtmosDownmixControl::NOT_SET),
69 m_downmixControlHasBeenSet(false),
70 m_dynamicRangeCompressionLine(Eac3AtmosDynamicRangeCompressionLine::NOT_SET),
71 m_dynamicRangeCompressionLineHasBeenSet(false),
72 m_dynamicRangeCompressionRf(Eac3AtmosDynamicRangeCompressionRf::NOT_SET),
73 m_dynamicRangeCompressionRfHasBeenSet(false),
74 m_dynamicRangeControl(Eac3AtmosDynamicRangeControl::NOT_SET),
75 m_dynamicRangeControlHasBeenSet(false),
76 m_loRoCenterMixLevel(0.0),
77 m_loRoCenterMixLevelHasBeenSet(false),
78 m_loRoSurroundMixLevel(0.0),
79 m_loRoSurroundMixLevelHasBeenSet(false),
80 m_ltRtCenterMixLevel(0.0),
81 m_ltRtCenterMixLevelHasBeenSet(false),
82 m_ltRtSurroundMixLevel(0.0),
83 m_ltRtSurroundMixLevelHasBeenSet(false),
84 m_meteringMode(Eac3AtmosMeteringMode::NOT_SET),
85 m_meteringModeHasBeenSet(false),
86 m_sampleRate(0),
87 m_sampleRateHasBeenSet(false),
88 m_speechThreshold(0),
89 m_speechThresholdHasBeenSet(false),
90 m_stereoDownmix(Eac3AtmosStereoDownmix::NOT_SET),
91 m_stereoDownmixHasBeenSet(false),
92 m_surroundExMode(Eac3AtmosSurroundExMode::NOT_SET),
93 m_surroundExModeHasBeenSet(false)
94 {
95 *this = jsonValue;
96 }
97
operator =(JsonView jsonValue)98 Eac3AtmosSettings& Eac3AtmosSettings::operator =(JsonView jsonValue)
99 {
100 if(jsonValue.ValueExists("bitrate"))
101 {
102 m_bitrate = jsonValue.GetInteger("bitrate");
103
104 m_bitrateHasBeenSet = true;
105 }
106
107 if(jsonValue.ValueExists("bitstreamMode"))
108 {
109 m_bitstreamMode = Eac3AtmosBitstreamModeMapper::GetEac3AtmosBitstreamModeForName(jsonValue.GetString("bitstreamMode"));
110
111 m_bitstreamModeHasBeenSet = true;
112 }
113
114 if(jsonValue.ValueExists("codingMode"))
115 {
116 m_codingMode = Eac3AtmosCodingModeMapper::GetEac3AtmosCodingModeForName(jsonValue.GetString("codingMode"));
117
118 m_codingModeHasBeenSet = true;
119 }
120
121 if(jsonValue.ValueExists("dialogueIntelligence"))
122 {
123 m_dialogueIntelligence = Eac3AtmosDialogueIntelligenceMapper::GetEac3AtmosDialogueIntelligenceForName(jsonValue.GetString("dialogueIntelligence"));
124
125 m_dialogueIntelligenceHasBeenSet = true;
126 }
127
128 if(jsonValue.ValueExists("downmixControl"))
129 {
130 m_downmixControl = Eac3AtmosDownmixControlMapper::GetEac3AtmosDownmixControlForName(jsonValue.GetString("downmixControl"));
131
132 m_downmixControlHasBeenSet = true;
133 }
134
135 if(jsonValue.ValueExists("dynamicRangeCompressionLine"))
136 {
137 m_dynamicRangeCompressionLine = Eac3AtmosDynamicRangeCompressionLineMapper::GetEac3AtmosDynamicRangeCompressionLineForName(jsonValue.GetString("dynamicRangeCompressionLine"));
138
139 m_dynamicRangeCompressionLineHasBeenSet = true;
140 }
141
142 if(jsonValue.ValueExists("dynamicRangeCompressionRf"))
143 {
144 m_dynamicRangeCompressionRf = Eac3AtmosDynamicRangeCompressionRfMapper::GetEac3AtmosDynamicRangeCompressionRfForName(jsonValue.GetString("dynamicRangeCompressionRf"));
145
146 m_dynamicRangeCompressionRfHasBeenSet = true;
147 }
148
149 if(jsonValue.ValueExists("dynamicRangeControl"))
150 {
151 m_dynamicRangeControl = Eac3AtmosDynamicRangeControlMapper::GetEac3AtmosDynamicRangeControlForName(jsonValue.GetString("dynamicRangeControl"));
152
153 m_dynamicRangeControlHasBeenSet = true;
154 }
155
156 if(jsonValue.ValueExists("loRoCenterMixLevel"))
157 {
158 m_loRoCenterMixLevel = jsonValue.GetDouble("loRoCenterMixLevel");
159
160 m_loRoCenterMixLevelHasBeenSet = true;
161 }
162
163 if(jsonValue.ValueExists("loRoSurroundMixLevel"))
164 {
165 m_loRoSurroundMixLevel = jsonValue.GetDouble("loRoSurroundMixLevel");
166
167 m_loRoSurroundMixLevelHasBeenSet = true;
168 }
169
170 if(jsonValue.ValueExists("ltRtCenterMixLevel"))
171 {
172 m_ltRtCenterMixLevel = jsonValue.GetDouble("ltRtCenterMixLevel");
173
174 m_ltRtCenterMixLevelHasBeenSet = true;
175 }
176
177 if(jsonValue.ValueExists("ltRtSurroundMixLevel"))
178 {
179 m_ltRtSurroundMixLevel = jsonValue.GetDouble("ltRtSurroundMixLevel");
180
181 m_ltRtSurroundMixLevelHasBeenSet = true;
182 }
183
184 if(jsonValue.ValueExists("meteringMode"))
185 {
186 m_meteringMode = Eac3AtmosMeteringModeMapper::GetEac3AtmosMeteringModeForName(jsonValue.GetString("meteringMode"));
187
188 m_meteringModeHasBeenSet = true;
189 }
190
191 if(jsonValue.ValueExists("sampleRate"))
192 {
193 m_sampleRate = jsonValue.GetInteger("sampleRate");
194
195 m_sampleRateHasBeenSet = true;
196 }
197
198 if(jsonValue.ValueExists("speechThreshold"))
199 {
200 m_speechThreshold = jsonValue.GetInteger("speechThreshold");
201
202 m_speechThresholdHasBeenSet = true;
203 }
204
205 if(jsonValue.ValueExists("stereoDownmix"))
206 {
207 m_stereoDownmix = Eac3AtmosStereoDownmixMapper::GetEac3AtmosStereoDownmixForName(jsonValue.GetString("stereoDownmix"));
208
209 m_stereoDownmixHasBeenSet = true;
210 }
211
212 if(jsonValue.ValueExists("surroundExMode"))
213 {
214 m_surroundExMode = Eac3AtmosSurroundExModeMapper::GetEac3AtmosSurroundExModeForName(jsonValue.GetString("surroundExMode"));
215
216 m_surroundExModeHasBeenSet = true;
217 }
218
219 return *this;
220 }
221
Jsonize() const222 JsonValue Eac3AtmosSettings::Jsonize() const
223 {
224 JsonValue payload;
225
226 if(m_bitrateHasBeenSet)
227 {
228 payload.WithInteger("bitrate", m_bitrate);
229
230 }
231
232 if(m_bitstreamModeHasBeenSet)
233 {
234 payload.WithString("bitstreamMode", Eac3AtmosBitstreamModeMapper::GetNameForEac3AtmosBitstreamMode(m_bitstreamMode));
235 }
236
237 if(m_codingModeHasBeenSet)
238 {
239 payload.WithString("codingMode", Eac3AtmosCodingModeMapper::GetNameForEac3AtmosCodingMode(m_codingMode));
240 }
241
242 if(m_dialogueIntelligenceHasBeenSet)
243 {
244 payload.WithString("dialogueIntelligence", Eac3AtmosDialogueIntelligenceMapper::GetNameForEac3AtmosDialogueIntelligence(m_dialogueIntelligence));
245 }
246
247 if(m_downmixControlHasBeenSet)
248 {
249 payload.WithString("downmixControl", Eac3AtmosDownmixControlMapper::GetNameForEac3AtmosDownmixControl(m_downmixControl));
250 }
251
252 if(m_dynamicRangeCompressionLineHasBeenSet)
253 {
254 payload.WithString("dynamicRangeCompressionLine", Eac3AtmosDynamicRangeCompressionLineMapper::GetNameForEac3AtmosDynamicRangeCompressionLine(m_dynamicRangeCompressionLine));
255 }
256
257 if(m_dynamicRangeCompressionRfHasBeenSet)
258 {
259 payload.WithString("dynamicRangeCompressionRf", Eac3AtmosDynamicRangeCompressionRfMapper::GetNameForEac3AtmosDynamicRangeCompressionRf(m_dynamicRangeCompressionRf));
260 }
261
262 if(m_dynamicRangeControlHasBeenSet)
263 {
264 payload.WithString("dynamicRangeControl", Eac3AtmosDynamicRangeControlMapper::GetNameForEac3AtmosDynamicRangeControl(m_dynamicRangeControl));
265 }
266
267 if(m_loRoCenterMixLevelHasBeenSet)
268 {
269 payload.WithDouble("loRoCenterMixLevel", m_loRoCenterMixLevel);
270
271 }
272
273 if(m_loRoSurroundMixLevelHasBeenSet)
274 {
275 payload.WithDouble("loRoSurroundMixLevel", m_loRoSurroundMixLevel);
276
277 }
278
279 if(m_ltRtCenterMixLevelHasBeenSet)
280 {
281 payload.WithDouble("ltRtCenterMixLevel", m_ltRtCenterMixLevel);
282
283 }
284
285 if(m_ltRtSurroundMixLevelHasBeenSet)
286 {
287 payload.WithDouble("ltRtSurroundMixLevel", m_ltRtSurroundMixLevel);
288
289 }
290
291 if(m_meteringModeHasBeenSet)
292 {
293 payload.WithString("meteringMode", Eac3AtmosMeteringModeMapper::GetNameForEac3AtmosMeteringMode(m_meteringMode));
294 }
295
296 if(m_sampleRateHasBeenSet)
297 {
298 payload.WithInteger("sampleRate", m_sampleRate);
299
300 }
301
302 if(m_speechThresholdHasBeenSet)
303 {
304 payload.WithInteger("speechThreshold", m_speechThreshold);
305
306 }
307
308 if(m_stereoDownmixHasBeenSet)
309 {
310 payload.WithString("stereoDownmix", Eac3AtmosStereoDownmixMapper::GetNameForEac3AtmosStereoDownmix(m_stereoDownmix));
311 }
312
313 if(m_surroundExModeHasBeenSet)
314 {
315 payload.WithString("surroundExMode", Eac3AtmosSurroundExModeMapper::GetNameForEac3AtmosSurroundExMode(m_surroundExMode));
316 }
317
318 return payload;
319 }
320
321 } // namespace Model
322 } // namespace MediaConvert
323 } // namespace Aws
324