AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
Av1Settings.h
1
6#pragma once
7#include <aws/mediaconvert/MediaConvert_EXPORTS.h>
8#include <aws/mediaconvert/model/Av1AdaptiveQuantization.h>
9#include <aws/mediaconvert/model/Av1BitDepth.h>
10#include <aws/mediaconvert/model/Av1FilmGrainSynthesis.h>
11#include <aws/mediaconvert/model/Av1FramerateControl.h>
12#include <aws/mediaconvert/model/Av1FramerateConversionAlgorithm.h>
13#include <aws/core/utils/memory/stl/AWSVector.h>
14#include <aws/mediaconvert/model/Av1QvbrSettings.h>
15#include <aws/mediaconvert/model/Av1RateControlMode.h>
16#include <aws/mediaconvert/model/Av1SpatialAdaptiveQuantization.h>
17#include <aws/mediaconvert/model/FrameMetricType.h>
18#include <utility>
19
20namespace Aws
21{
22namespace Utils
23{
24namespace Json
25{
26 class JsonValue;
27 class JsonView;
28} // namespace Json
29} // namespace Utils
30namespace MediaConvert
31{
32namespace Model
33{
34
42 {
43 public:
44 AWS_MEDIACONVERT_API Av1Settings() = default;
45 AWS_MEDIACONVERT_API Av1Settings(Aws::Utils::Json::JsonView jsonValue);
46 AWS_MEDIACONVERT_API Av1Settings& operator=(Aws::Utils::Json::JsonView jsonValue);
47 AWS_MEDIACONVERT_API Aws::Utils::Json::JsonValue Jsonize() const;
48
49
51
55 inline Av1AdaptiveQuantization GetAdaptiveQuantization() const { return m_adaptiveQuantization; }
56 inline bool AdaptiveQuantizationHasBeenSet() const { return m_adaptiveQuantizationHasBeenSet; }
57 inline void SetAdaptiveQuantization(Av1AdaptiveQuantization value) { m_adaptiveQuantizationHasBeenSet = true; m_adaptiveQuantization = value; }
60
62
65 inline Av1BitDepth GetBitDepth() const { return m_bitDepth; }
66 inline bool BitDepthHasBeenSet() const { return m_bitDepthHasBeenSet; }
67 inline void SetBitDepth(Av1BitDepth value) { m_bitDepthHasBeenSet = true; m_bitDepth = value; }
68 inline Av1Settings& WithBitDepth(Av1BitDepth value) { SetBitDepth(value); return *this;}
70
72
80 inline Av1FilmGrainSynthesis GetFilmGrainSynthesis() const { return m_filmGrainSynthesis; }
81 inline bool FilmGrainSynthesisHasBeenSet() const { return m_filmGrainSynthesisHasBeenSet; }
82 inline void SetFilmGrainSynthesis(Av1FilmGrainSynthesis value) { m_filmGrainSynthesisHasBeenSet = true; m_filmGrainSynthesis = value; }
85
87
95 inline Av1FramerateControl GetFramerateControl() const { return m_framerateControl; }
96 inline bool FramerateControlHasBeenSet() const { return m_framerateControlHasBeenSet; }
97 inline void SetFramerateControl(Av1FramerateControl value) { m_framerateControlHasBeenSet = true; m_framerateControl = value; }
100
102
120 inline Av1FramerateConversionAlgorithm GetFramerateConversionAlgorithm() const { return m_framerateConversionAlgorithm; }
121 inline bool FramerateConversionAlgorithmHasBeenSet() const { return m_framerateConversionAlgorithmHasBeenSet; }
122 inline void SetFramerateConversionAlgorithm(Av1FramerateConversionAlgorithm value) { m_framerateConversionAlgorithmHasBeenSet = true; m_framerateConversionAlgorithm = value; }
125
127
135 inline int GetFramerateDenominator() const { return m_framerateDenominator; }
136 inline bool FramerateDenominatorHasBeenSet() const { return m_framerateDenominatorHasBeenSet; }
137 inline void SetFramerateDenominator(int value) { m_framerateDenominatorHasBeenSet = true; m_framerateDenominator = value; }
138 inline Av1Settings& WithFramerateDenominator(int value) { SetFramerateDenominator(value); return *this;}
140
142
150 inline int GetFramerateNumerator() const { return m_framerateNumerator; }
151 inline bool FramerateNumeratorHasBeenSet() const { return m_framerateNumeratorHasBeenSet; }
152 inline void SetFramerateNumerator(int value) { m_framerateNumeratorHasBeenSet = true; m_framerateNumerator = value; }
153 inline Av1Settings& WithFramerateNumerator(int value) { SetFramerateNumerator(value); return *this;}
155
157
162 inline double GetGopSize() const { return m_gopSize; }
163 inline bool GopSizeHasBeenSet() const { return m_gopSizeHasBeenSet; }
164 inline void SetGopSize(double value) { m_gopSizeHasBeenSet = true; m_gopSize = value; }
165 inline Av1Settings& WithGopSize(double value) { SetGopSize(value); return *this;}
167
169
173 inline int GetMaxBitrate() const { return m_maxBitrate; }
174 inline bool MaxBitrateHasBeenSet() const { return m_maxBitrateHasBeenSet; }
175 inline void SetMaxBitrate(int value) { m_maxBitrateHasBeenSet = true; m_maxBitrate = value; }
176 inline Av1Settings& WithMaxBitrate(int value) { SetMaxBitrate(value); return *this;}
178
180
185 inline int GetNumberBFramesBetweenReferenceFrames() const { return m_numberBFramesBetweenReferenceFrames; }
186 inline bool NumberBFramesBetweenReferenceFramesHasBeenSet() const { return m_numberBFramesBetweenReferenceFramesHasBeenSet; }
187 inline void SetNumberBFramesBetweenReferenceFrames(int value) { m_numberBFramesBetweenReferenceFramesHasBeenSet = true; m_numberBFramesBetweenReferenceFrames = value; }
190
192
211 inline const Aws::Vector<FrameMetricType>& GetPerFrameMetrics() const { return m_perFrameMetrics; }
212 inline bool PerFrameMetricsHasBeenSet() const { return m_perFrameMetricsHasBeenSet; }
213 template<typename PerFrameMetricsT = Aws::Vector<FrameMetricType>>
214 void SetPerFrameMetrics(PerFrameMetricsT&& value) { m_perFrameMetricsHasBeenSet = true; m_perFrameMetrics = std::forward<PerFrameMetricsT>(value); }
215 template<typename PerFrameMetricsT = Aws::Vector<FrameMetricType>>
216 Av1Settings& WithPerFrameMetrics(PerFrameMetricsT&& value) { SetPerFrameMetrics(std::forward<PerFrameMetricsT>(value)); return *this;}
217 inline Av1Settings& AddPerFrameMetrics(FrameMetricType value) { m_perFrameMetricsHasBeenSet = true; m_perFrameMetrics.push_back(value); return *this; }
219
221
225 inline const Av1QvbrSettings& GetQvbrSettings() const { return m_qvbrSettings; }
226 inline bool QvbrSettingsHasBeenSet() const { return m_qvbrSettingsHasBeenSet; }
227 template<typename QvbrSettingsT = Av1QvbrSettings>
228 void SetQvbrSettings(QvbrSettingsT&& value) { m_qvbrSettingsHasBeenSet = true; m_qvbrSettings = std::forward<QvbrSettingsT>(value); }
229 template<typename QvbrSettingsT = Av1QvbrSettings>
230 Av1Settings& WithQvbrSettings(QvbrSettingsT&& value) { SetQvbrSettings(std::forward<QvbrSettingsT>(value)); return *this;}
232
234
238 inline Av1RateControlMode GetRateControlMode() const { return m_rateControlMode; }
239 inline bool RateControlModeHasBeenSet() const { return m_rateControlModeHasBeenSet; }
240 inline void SetRateControlMode(Av1RateControlMode value) { m_rateControlModeHasBeenSet = true; m_rateControlMode = value; }
243
245
251 inline int GetSlices() const { return m_slices; }
252 inline bool SlicesHasBeenSet() const { return m_slicesHasBeenSet; }
253 inline void SetSlices(int value) { m_slicesHasBeenSet = true; m_slices = value; }
254 inline Av1Settings& WithSlices(int value) { SetSlices(value); return *this;}
256
258
274 inline Av1SpatialAdaptiveQuantization GetSpatialAdaptiveQuantization() const { return m_spatialAdaptiveQuantization; }
275 inline bool SpatialAdaptiveQuantizationHasBeenSet() const { return m_spatialAdaptiveQuantizationHasBeenSet; }
276 inline void SetSpatialAdaptiveQuantization(Av1SpatialAdaptiveQuantization value) { m_spatialAdaptiveQuantizationHasBeenSet = true; m_spatialAdaptiveQuantization = value; }
279 private:
280
282 bool m_adaptiveQuantizationHasBeenSet = false;
283
285 bool m_bitDepthHasBeenSet = false;
286
288 bool m_filmGrainSynthesisHasBeenSet = false;
289
291 bool m_framerateControlHasBeenSet = false;
292
294 bool m_framerateConversionAlgorithmHasBeenSet = false;
295
296 int m_framerateDenominator{0};
297 bool m_framerateDenominatorHasBeenSet = false;
298
299 int m_framerateNumerator{0};
300 bool m_framerateNumeratorHasBeenSet = false;
301
302 double m_gopSize{0.0};
303 bool m_gopSizeHasBeenSet = false;
304
305 int m_maxBitrate{0};
306 bool m_maxBitrateHasBeenSet = false;
307
308 int m_numberBFramesBetweenReferenceFrames{0};
309 bool m_numberBFramesBetweenReferenceFramesHasBeenSet = false;
310
311 Aws::Vector<FrameMetricType> m_perFrameMetrics;
312 bool m_perFrameMetricsHasBeenSet = false;
313
314 Av1QvbrSettings m_qvbrSettings;
315 bool m_qvbrSettingsHasBeenSet = false;
316
318 bool m_rateControlModeHasBeenSet = false;
319
320 int m_slices{0};
321 bool m_slicesHasBeenSet = false;
322
324 bool m_spatialAdaptiveQuantizationHasBeenSet = false;
325 };
326
327} // namespace Model
328} // namespace MediaConvert
329} // namespace Aws
void SetQvbrSettings(QvbrSettingsT &&value)
Av1FramerateConversionAlgorithm GetFramerateConversionAlgorithm() const
AWS_MEDIACONVERT_API Av1Settings & operator=(Aws::Utils::Json::JsonView jsonValue)
Av1Settings & WithFramerateDenominator(int value)
const Aws::Vector< FrameMetricType > & GetPerFrameMetrics() const
AWS_MEDIACONVERT_API Av1Settings(Aws::Utils::Json::JsonView jsonValue)
Av1Settings & WithMaxBitrate(int value)
Av1FilmGrainSynthesis GetFilmGrainSynthesis() const
Definition Av1Settings.h:80
void SetBitDepth(Av1BitDepth value)
Definition Av1Settings.h:67
Av1Settings & WithBitDepth(Av1BitDepth value)
Definition Av1Settings.h:68
Av1Settings & WithRateControlMode(Av1RateControlMode value)
void SetFramerateConversionAlgorithm(Av1FramerateConversionAlgorithm value)
void SetAdaptiveQuantization(Av1AdaptiveQuantization value)
Definition Av1Settings.h:57
bool NumberBFramesBetweenReferenceFramesHasBeenSet() const
Av1Settings & WithGopSize(double value)
Av1AdaptiveQuantization GetAdaptiveQuantization() const
Definition Av1Settings.h:55
Av1FramerateControl GetFramerateControl() const
Definition Av1Settings.h:95
Av1Settings & WithAdaptiveQuantization(Av1AdaptiveQuantization value)
Definition Av1Settings.h:58
Av1Settings & WithPerFrameMetrics(PerFrameMetricsT &&value)
AWS_MEDIACONVERT_API Aws::Utils::Json::JsonValue Jsonize() const
void SetNumberBFramesBetweenReferenceFrames(int value)
Av1Settings & WithFramerateConversionAlgorithm(Av1FramerateConversionAlgorithm value)
void SetFramerateControl(Av1FramerateControl value)
Definition Av1Settings.h:97
Av1Settings & WithQvbrSettings(QvbrSettingsT &&value)
void SetPerFrameMetrics(PerFrameMetricsT &&value)
Av1Settings & WithFilmGrainSynthesis(Av1FilmGrainSynthesis value)
Definition Av1Settings.h:83
Av1Settings & WithFramerateControl(Av1FramerateControl value)
Definition Av1Settings.h:98
const Av1QvbrSettings & GetQvbrSettings() const
Av1Settings & WithNumberBFramesBetweenReferenceFrames(int value)
void SetSpatialAdaptiveQuantization(Av1SpatialAdaptiveQuantization value)
Av1Settings & WithSlices(int value)
Av1RateControlMode GetRateControlMode() const
void SetRateControlMode(Av1RateControlMode value)
Av1Settings & WithFramerateNumerator(int value)
AWS_MEDIACONVERT_API Av1Settings()=default
Av1Settings & AddPerFrameMetrics(FrameMetricType value)
Av1SpatialAdaptiveQuantization GetSpatialAdaptiveQuantization() const
Av1Settings & WithSpatialAdaptiveQuantization(Av1SpatialAdaptiveQuantization value)
void SetFilmGrainSynthesis(Av1FilmGrainSynthesis value)
Definition Av1Settings.h:82
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue