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/medialive/MediaLive_EXPORTS.h> 8 #include <aws/medialive/model/InputLocation.h> 9 #include <aws/medialive/model/BlackoutSlateNetworkEndBlackout.h> 10 #include <aws/core/utils/memory/stl/AWSString.h> 11 #include <aws/medialive/model/BlackoutSlateState.h> 12 #include <utility> 13 14 namespace Aws 15 { 16 namespace Utils 17 { 18 namespace Json 19 { 20 class JsonValue; 21 class JsonView; 22 } // namespace Json 23 } // namespace Utils 24 namespace MediaLive 25 { 26 namespace Model 27 { 28 29 /** 30 * Blackout Slate<p><h3>See Also:</h3> <a 31 * href="http://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/BlackoutSlate">AWS 32 * API Reference</a></p> 33 */ 34 class AWS_MEDIALIVE_API BlackoutSlate 35 { 36 public: 37 BlackoutSlate(); 38 BlackoutSlate(Aws::Utils::Json::JsonView jsonValue); 39 BlackoutSlate& operator=(Aws::Utils::Json::JsonView jsonValue); 40 Aws::Utils::Json::JsonValue Jsonize() const; 41 42 43 /** 44 * Blackout slate image to be used. Leave empty for solid black. Only bmp and png 45 * images are supported. 46 */ GetBlackoutSlateImage()47 inline const InputLocation& GetBlackoutSlateImage() const{ return m_blackoutSlateImage; } 48 49 /** 50 * Blackout slate image to be used. Leave empty for solid black. Only bmp and png 51 * images are supported. 52 */ BlackoutSlateImageHasBeenSet()53 inline bool BlackoutSlateImageHasBeenSet() const { return m_blackoutSlateImageHasBeenSet; } 54 55 /** 56 * Blackout slate image to be used. Leave empty for solid black. Only bmp and png 57 * images are supported. 58 */ SetBlackoutSlateImage(const InputLocation & value)59 inline void SetBlackoutSlateImage(const InputLocation& value) { m_blackoutSlateImageHasBeenSet = true; m_blackoutSlateImage = value; } 60 61 /** 62 * Blackout slate image to be used. Leave empty for solid black. Only bmp and png 63 * images are supported. 64 */ SetBlackoutSlateImage(InputLocation && value)65 inline void SetBlackoutSlateImage(InputLocation&& value) { m_blackoutSlateImageHasBeenSet = true; m_blackoutSlateImage = std::move(value); } 66 67 /** 68 * Blackout slate image to be used. Leave empty for solid black. Only bmp and png 69 * images are supported. 70 */ WithBlackoutSlateImage(const InputLocation & value)71 inline BlackoutSlate& WithBlackoutSlateImage(const InputLocation& value) { SetBlackoutSlateImage(value); return *this;} 72 73 /** 74 * Blackout slate image to be used. Leave empty for solid black. Only bmp and png 75 * images are supported. 76 */ WithBlackoutSlateImage(InputLocation && value)77 inline BlackoutSlate& WithBlackoutSlateImage(InputLocation&& value) { SetBlackoutSlateImage(std::move(value)); return *this;} 78 79 80 /** 81 * Setting to enabled causes the encoder to blackout the video, audio, and 82 * captions, and raise the "Network Blackout Image" slate when an SCTE104/35 83 * Network End Segmentation Descriptor is encountered. The blackout will be lifted 84 * when the Network Start Segmentation Descriptor is encountered. The Network End 85 * and Network Start descriptors must contain a network ID that matches the value 86 * entered in "Network ID". 87 */ GetNetworkEndBlackout()88 inline const BlackoutSlateNetworkEndBlackout& GetNetworkEndBlackout() const{ return m_networkEndBlackout; } 89 90 /** 91 * Setting to enabled causes the encoder to blackout the video, audio, and 92 * captions, and raise the "Network Blackout Image" slate when an SCTE104/35 93 * Network End Segmentation Descriptor is encountered. The blackout will be lifted 94 * when the Network Start Segmentation Descriptor is encountered. The Network End 95 * and Network Start descriptors must contain a network ID that matches the value 96 * entered in "Network ID". 97 */ NetworkEndBlackoutHasBeenSet()98 inline bool NetworkEndBlackoutHasBeenSet() const { return m_networkEndBlackoutHasBeenSet; } 99 100 /** 101 * Setting to enabled causes the encoder to blackout the video, audio, and 102 * captions, and raise the "Network Blackout Image" slate when an SCTE104/35 103 * Network End Segmentation Descriptor is encountered. The blackout will be lifted 104 * when the Network Start Segmentation Descriptor is encountered. The Network End 105 * and Network Start descriptors must contain a network ID that matches the value 106 * entered in "Network ID". 107 */ SetNetworkEndBlackout(const BlackoutSlateNetworkEndBlackout & value)108 inline void SetNetworkEndBlackout(const BlackoutSlateNetworkEndBlackout& value) { m_networkEndBlackoutHasBeenSet = true; m_networkEndBlackout = value; } 109 110 /** 111 * Setting to enabled causes the encoder to blackout the video, audio, and 112 * captions, and raise the "Network Blackout Image" slate when an SCTE104/35 113 * Network End Segmentation Descriptor is encountered. The blackout will be lifted 114 * when the Network Start Segmentation Descriptor is encountered. The Network End 115 * and Network Start descriptors must contain a network ID that matches the value 116 * entered in "Network ID". 117 */ SetNetworkEndBlackout(BlackoutSlateNetworkEndBlackout && value)118 inline void SetNetworkEndBlackout(BlackoutSlateNetworkEndBlackout&& value) { m_networkEndBlackoutHasBeenSet = true; m_networkEndBlackout = std::move(value); } 119 120 /** 121 * Setting to enabled causes the encoder to blackout the video, audio, and 122 * captions, and raise the "Network Blackout Image" slate when an SCTE104/35 123 * Network End Segmentation Descriptor is encountered. The blackout will be lifted 124 * when the Network Start Segmentation Descriptor is encountered. The Network End 125 * and Network Start descriptors must contain a network ID that matches the value 126 * entered in "Network ID". 127 */ WithNetworkEndBlackout(const BlackoutSlateNetworkEndBlackout & value)128 inline BlackoutSlate& WithNetworkEndBlackout(const BlackoutSlateNetworkEndBlackout& value) { SetNetworkEndBlackout(value); return *this;} 129 130 /** 131 * Setting to enabled causes the encoder to blackout the video, audio, and 132 * captions, and raise the "Network Blackout Image" slate when an SCTE104/35 133 * Network End Segmentation Descriptor is encountered. The blackout will be lifted 134 * when the Network Start Segmentation Descriptor is encountered. The Network End 135 * and Network Start descriptors must contain a network ID that matches the value 136 * entered in "Network ID". 137 */ WithNetworkEndBlackout(BlackoutSlateNetworkEndBlackout && value)138 inline BlackoutSlate& WithNetworkEndBlackout(BlackoutSlateNetworkEndBlackout&& value) { SetNetworkEndBlackout(std::move(value)); return *this;} 139 140 141 /** 142 * Path to local file to use as Network End Blackout image. Image will be scaled to 143 * fill the entire output raster. 144 */ GetNetworkEndBlackoutImage()145 inline const InputLocation& GetNetworkEndBlackoutImage() const{ return m_networkEndBlackoutImage; } 146 147 /** 148 * Path to local file to use as Network End Blackout image. Image will be scaled to 149 * fill the entire output raster. 150 */ NetworkEndBlackoutImageHasBeenSet()151 inline bool NetworkEndBlackoutImageHasBeenSet() const { return m_networkEndBlackoutImageHasBeenSet; } 152 153 /** 154 * Path to local file to use as Network End Blackout image. Image will be scaled to 155 * fill the entire output raster. 156 */ SetNetworkEndBlackoutImage(const InputLocation & value)157 inline void SetNetworkEndBlackoutImage(const InputLocation& value) { m_networkEndBlackoutImageHasBeenSet = true; m_networkEndBlackoutImage = value; } 158 159 /** 160 * Path to local file to use as Network End Blackout image. Image will be scaled to 161 * fill the entire output raster. 162 */ SetNetworkEndBlackoutImage(InputLocation && value)163 inline void SetNetworkEndBlackoutImage(InputLocation&& value) { m_networkEndBlackoutImageHasBeenSet = true; m_networkEndBlackoutImage = std::move(value); } 164 165 /** 166 * Path to local file to use as Network End Blackout image. Image will be scaled to 167 * fill the entire output raster. 168 */ WithNetworkEndBlackoutImage(const InputLocation & value)169 inline BlackoutSlate& WithNetworkEndBlackoutImage(const InputLocation& value) { SetNetworkEndBlackoutImage(value); return *this;} 170 171 /** 172 * Path to local file to use as Network End Blackout image. Image will be scaled to 173 * fill the entire output raster. 174 */ WithNetworkEndBlackoutImage(InputLocation && value)175 inline BlackoutSlate& WithNetworkEndBlackoutImage(InputLocation&& value) { SetNetworkEndBlackoutImage(std::move(value)); return *this;} 176 177 178 /** 179 * Provides Network ID that matches EIDR ID format (e.g., 180 * "10.XXXX/XXXX-XXXX-XXXX-XXXX-XXXX-C"). 181 */ GetNetworkId()182 inline const Aws::String& GetNetworkId() const{ return m_networkId; } 183 184 /** 185 * Provides Network ID that matches EIDR ID format (e.g., 186 * "10.XXXX/XXXX-XXXX-XXXX-XXXX-XXXX-C"). 187 */ NetworkIdHasBeenSet()188 inline bool NetworkIdHasBeenSet() const { return m_networkIdHasBeenSet; } 189 190 /** 191 * Provides Network ID that matches EIDR ID format (e.g., 192 * "10.XXXX/XXXX-XXXX-XXXX-XXXX-XXXX-C"). 193 */ SetNetworkId(const Aws::String & value)194 inline void SetNetworkId(const Aws::String& value) { m_networkIdHasBeenSet = true; m_networkId = value; } 195 196 /** 197 * Provides Network ID that matches EIDR ID format (e.g., 198 * "10.XXXX/XXXX-XXXX-XXXX-XXXX-XXXX-C"). 199 */ SetNetworkId(Aws::String && value)200 inline void SetNetworkId(Aws::String&& value) { m_networkIdHasBeenSet = true; m_networkId = std::move(value); } 201 202 /** 203 * Provides Network ID that matches EIDR ID format (e.g., 204 * "10.XXXX/XXXX-XXXX-XXXX-XXXX-XXXX-C"). 205 */ SetNetworkId(const char * value)206 inline void SetNetworkId(const char* value) { m_networkIdHasBeenSet = true; m_networkId.assign(value); } 207 208 /** 209 * Provides Network ID that matches EIDR ID format (e.g., 210 * "10.XXXX/XXXX-XXXX-XXXX-XXXX-XXXX-C"). 211 */ WithNetworkId(const Aws::String & value)212 inline BlackoutSlate& WithNetworkId(const Aws::String& value) { SetNetworkId(value); return *this;} 213 214 /** 215 * Provides Network ID that matches EIDR ID format (e.g., 216 * "10.XXXX/XXXX-XXXX-XXXX-XXXX-XXXX-C"). 217 */ WithNetworkId(Aws::String && value)218 inline BlackoutSlate& WithNetworkId(Aws::String&& value) { SetNetworkId(std::move(value)); return *this;} 219 220 /** 221 * Provides Network ID that matches EIDR ID format (e.g., 222 * "10.XXXX/XXXX-XXXX-XXXX-XXXX-XXXX-C"). 223 */ WithNetworkId(const char * value)224 inline BlackoutSlate& WithNetworkId(const char* value) { SetNetworkId(value); return *this;} 225 226 227 /** 228 * When set to enabled, causes video, audio and captions to be blanked when 229 * indicated by program metadata. 230 */ GetState()231 inline const BlackoutSlateState& GetState() const{ return m_state; } 232 233 /** 234 * When set to enabled, causes video, audio and captions to be blanked when 235 * indicated by program metadata. 236 */ StateHasBeenSet()237 inline bool StateHasBeenSet() const { return m_stateHasBeenSet; } 238 239 /** 240 * When set to enabled, causes video, audio and captions to be blanked when 241 * indicated by program metadata. 242 */ SetState(const BlackoutSlateState & value)243 inline void SetState(const BlackoutSlateState& value) { m_stateHasBeenSet = true; m_state = value; } 244 245 /** 246 * When set to enabled, causes video, audio and captions to be blanked when 247 * indicated by program metadata. 248 */ SetState(BlackoutSlateState && value)249 inline void SetState(BlackoutSlateState&& value) { m_stateHasBeenSet = true; m_state = std::move(value); } 250 251 /** 252 * When set to enabled, causes video, audio and captions to be blanked when 253 * indicated by program metadata. 254 */ WithState(const BlackoutSlateState & value)255 inline BlackoutSlate& WithState(const BlackoutSlateState& value) { SetState(value); return *this;} 256 257 /** 258 * When set to enabled, causes video, audio and captions to be blanked when 259 * indicated by program metadata. 260 */ WithState(BlackoutSlateState && value)261 inline BlackoutSlate& WithState(BlackoutSlateState&& value) { SetState(std::move(value)); return *this;} 262 263 private: 264 265 InputLocation m_blackoutSlateImage; 266 bool m_blackoutSlateImageHasBeenSet; 267 268 BlackoutSlateNetworkEndBlackout m_networkEndBlackout; 269 bool m_networkEndBlackoutHasBeenSet; 270 271 InputLocation m_networkEndBlackoutImage; 272 bool m_networkEndBlackoutImageHasBeenSet; 273 274 Aws::String m_networkId; 275 bool m_networkIdHasBeenSet; 276 277 BlackoutSlateState m_state; 278 bool m_stateHasBeenSet; 279 }; 280 281 } // namespace Model 282 } // namespace MediaLive 283 } // namespace Aws 284