AWS SDK for C++

AWS SDK for C++ Version 1.11.609

Loading...
Searching...
No Matches
VideoCodecSettings.h
1
6#pragma once
7#include <aws/medialive/MediaLive_EXPORTS.h>
8#include <aws/medialive/model/FrameCaptureSettings.h>
9#include <aws/medialive/model/H264Settings.h>
10#include <aws/medialive/model/H265Settings.h>
11#include <aws/medialive/model/Mpeg2Settings.h>
12#include <aws/medialive/model/Av1Settings.h>
13#include <utility>
14
15namespace Aws
16{
17namespace Utils
18{
19namespace Json
20{
21 class JsonValue;
22 class JsonView;
23} // namespace Json
24} // namespace Utils
25namespace MediaLive
26{
27namespace Model
28{
29
36 {
37 public:
38 AWS_MEDIALIVE_API VideoCodecSettings() = default;
39 AWS_MEDIALIVE_API VideoCodecSettings(Aws::Utils::Json::JsonView jsonValue);
41 AWS_MEDIALIVE_API Aws::Utils::Json::JsonValue Jsonize() const;
42
43
45
46 inline const FrameCaptureSettings& GetFrameCaptureSettings() const { return m_frameCaptureSettings; }
47 inline bool FrameCaptureSettingsHasBeenSet() const { return m_frameCaptureSettingsHasBeenSet; }
48 template<typename FrameCaptureSettingsT = FrameCaptureSettings>
49 void SetFrameCaptureSettings(FrameCaptureSettingsT&& value) { m_frameCaptureSettingsHasBeenSet = true; m_frameCaptureSettings = std::forward<FrameCaptureSettingsT>(value); }
50 template<typename FrameCaptureSettingsT = FrameCaptureSettings>
51 VideoCodecSettings& WithFrameCaptureSettings(FrameCaptureSettingsT&& value) { SetFrameCaptureSettings(std::forward<FrameCaptureSettingsT>(value)); return *this;}
53
55
56 inline const H264Settings& GetH264Settings() const { return m_h264Settings; }
57 inline bool H264SettingsHasBeenSet() const { return m_h264SettingsHasBeenSet; }
58 template<typename H264SettingsT = H264Settings>
59 void SetH264Settings(H264SettingsT&& value) { m_h264SettingsHasBeenSet = true; m_h264Settings = std::forward<H264SettingsT>(value); }
60 template<typename H264SettingsT = H264Settings>
61 VideoCodecSettings& WithH264Settings(H264SettingsT&& value) { SetH264Settings(std::forward<H264SettingsT>(value)); return *this;}
63
65
66 inline const H265Settings& GetH265Settings() const { return m_h265Settings; }
67 inline bool H265SettingsHasBeenSet() const { return m_h265SettingsHasBeenSet; }
68 template<typename H265SettingsT = H265Settings>
69 void SetH265Settings(H265SettingsT&& value) { m_h265SettingsHasBeenSet = true; m_h265Settings = std::forward<H265SettingsT>(value); }
70 template<typename H265SettingsT = H265Settings>
71 VideoCodecSettings& WithH265Settings(H265SettingsT&& value) { SetH265Settings(std::forward<H265SettingsT>(value)); return *this;}
73
75
76 inline const Mpeg2Settings& GetMpeg2Settings() const { return m_mpeg2Settings; }
77 inline bool Mpeg2SettingsHasBeenSet() const { return m_mpeg2SettingsHasBeenSet; }
78 template<typename Mpeg2SettingsT = Mpeg2Settings>
79 void SetMpeg2Settings(Mpeg2SettingsT&& value) { m_mpeg2SettingsHasBeenSet = true; m_mpeg2Settings = std::forward<Mpeg2SettingsT>(value); }
80 template<typename Mpeg2SettingsT = Mpeg2Settings>
81 VideoCodecSettings& WithMpeg2Settings(Mpeg2SettingsT&& value) { SetMpeg2Settings(std::forward<Mpeg2SettingsT>(value)); return *this;}
83
85
86 inline const Av1Settings& GetAv1Settings() const { return m_av1Settings; }
87 inline bool Av1SettingsHasBeenSet() const { return m_av1SettingsHasBeenSet; }
88 template<typename Av1SettingsT = Av1Settings>
89 void SetAv1Settings(Av1SettingsT&& value) { m_av1SettingsHasBeenSet = true; m_av1Settings = std::forward<Av1SettingsT>(value); }
90 template<typename Av1SettingsT = Av1Settings>
91 VideoCodecSettings& WithAv1Settings(Av1SettingsT&& value) { SetAv1Settings(std::forward<Av1SettingsT>(value)); return *this;}
93 private:
94
95 FrameCaptureSettings m_frameCaptureSettings;
96 bool m_frameCaptureSettingsHasBeenSet = false;
97
98 H264Settings m_h264Settings;
99 bool m_h264SettingsHasBeenSet = false;
100
101 H265Settings m_h265Settings;
102 bool m_h265SettingsHasBeenSet = false;
103
104 Mpeg2Settings m_mpeg2Settings;
105 bool m_mpeg2SettingsHasBeenSet = false;
106
107 Av1Settings m_av1Settings;
108 bool m_av1SettingsHasBeenSet = false;
109 };
110
111} // namespace Model
112} // namespace MediaLive
113} // namespace Aws
AWS_MEDIALIVE_API VideoCodecSettings(Aws::Utils::Json::JsonView jsonValue)
const H265Settings & GetH265Settings() const
AWS_MEDIALIVE_API VideoCodecSettings()=default
VideoCodecSettings & WithFrameCaptureSettings(FrameCaptureSettingsT &&value)
const H264Settings & GetH264Settings() const
VideoCodecSettings & WithMpeg2Settings(Mpeg2SettingsT &&value)
AWS_MEDIALIVE_API VideoCodecSettings & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_MEDIALIVE_API Aws::Utils::Json::JsonValue Jsonize() const
VideoCodecSettings & WithAv1Settings(Av1SettingsT &&value)
void SetH264Settings(H264SettingsT &&value)
const Mpeg2Settings & GetMpeg2Settings() const
VideoCodecSettings & WithH264Settings(H264SettingsT &&value)
VideoCodecSettings & WithH265Settings(H265SettingsT &&value)
const FrameCaptureSettings & GetFrameCaptureSettings() const
void SetFrameCaptureSettings(FrameCaptureSettingsT &&value)
void SetH265Settings(H265SettingsT &&value)
void SetMpeg2Settings(Mpeg2SettingsT &&value)
Aws::Utils::Json::JsonValue JsonValue