aws_sdk_medialive/types/
_encoder_settings.rs1#[non_exhaustive]
5#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
6pub struct EncoderSettings {
7 pub audio_descriptions: ::std::option::Option<::std::vec::Vec<crate::types::AudioDescription>>,
9 pub avail_blanking: ::std::option::Option<crate::types::AvailBlanking>,
11 pub avail_configuration: ::std::option::Option<crate::types::AvailConfiguration>,
13 pub blackout_slate: ::std::option::Option<crate::types::BlackoutSlate>,
15 pub caption_descriptions: ::std::option::Option<::std::vec::Vec<crate::types::CaptionDescription>>,
17 pub feature_activations: ::std::option::Option<crate::types::FeatureActivations>,
19 pub global_configuration: ::std::option::Option<crate::types::GlobalConfiguration>,
21 pub motion_graphics_configuration: ::std::option::Option<crate::types::MotionGraphicsConfiguration>,
23 pub nielsen_configuration: ::std::option::Option<crate::types::NielsenConfiguration>,
25 pub output_groups: ::std::option::Option<::std::vec::Vec<crate::types::OutputGroup>>,
27 pub timecode_config: ::std::option::Option<crate::types::TimecodeConfig>,
29 pub video_descriptions: ::std::option::Option<::std::vec::Vec<crate::types::VideoDescription>>,
31 pub thumbnail_configuration: ::std::option::Option<crate::types::ThumbnailConfiguration>,
33 pub color_correction_settings: ::std::option::Option<crate::types::ColorCorrectionSettings>,
35}
36impl EncoderSettings {
37 pub fn audio_descriptions(&self) -> &[crate::types::AudioDescription] {
41 self.audio_descriptions.as_deref().unwrap_or_default()
42 }
43 pub fn avail_blanking(&self) -> ::std::option::Option<&crate::types::AvailBlanking> {
45 self.avail_blanking.as_ref()
46 }
47 pub fn avail_configuration(&self) -> ::std::option::Option<&crate::types::AvailConfiguration> {
49 self.avail_configuration.as_ref()
50 }
51 pub fn blackout_slate(&self) -> ::std::option::Option<&crate::types::BlackoutSlate> {
53 self.blackout_slate.as_ref()
54 }
55 pub fn caption_descriptions(&self) -> &[crate::types::CaptionDescription] {
59 self.caption_descriptions.as_deref().unwrap_or_default()
60 }
61 pub fn feature_activations(&self) -> ::std::option::Option<&crate::types::FeatureActivations> {
63 self.feature_activations.as_ref()
64 }
65 pub fn global_configuration(&self) -> ::std::option::Option<&crate::types::GlobalConfiguration> {
67 self.global_configuration.as_ref()
68 }
69 pub fn motion_graphics_configuration(&self) -> ::std::option::Option<&crate::types::MotionGraphicsConfiguration> {
71 self.motion_graphics_configuration.as_ref()
72 }
73 pub fn nielsen_configuration(&self) -> ::std::option::Option<&crate::types::NielsenConfiguration> {
75 self.nielsen_configuration.as_ref()
76 }
77 pub fn output_groups(&self) -> &[crate::types::OutputGroup] {
81 self.output_groups.as_deref().unwrap_or_default()
82 }
83 pub fn timecode_config(&self) -> ::std::option::Option<&crate::types::TimecodeConfig> {
85 self.timecode_config.as_ref()
86 }
87 pub fn video_descriptions(&self) -> &[crate::types::VideoDescription] {
91 self.video_descriptions.as_deref().unwrap_or_default()
92 }
93 pub fn thumbnail_configuration(&self) -> ::std::option::Option<&crate::types::ThumbnailConfiguration> {
95 self.thumbnail_configuration.as_ref()
96 }
97 pub fn color_correction_settings(&self) -> ::std::option::Option<&crate::types::ColorCorrectionSettings> {
99 self.color_correction_settings.as_ref()
100 }
101}
102impl EncoderSettings {
103 pub fn builder() -> crate::types::builders::EncoderSettingsBuilder {
105 crate::types::builders::EncoderSettingsBuilder::default()
106 }
107}
108
109#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
111#[non_exhaustive]
112pub struct EncoderSettingsBuilder {
113 pub(crate) audio_descriptions: ::std::option::Option<::std::vec::Vec<crate::types::AudioDescription>>,
114 pub(crate) avail_blanking: ::std::option::Option<crate::types::AvailBlanking>,
115 pub(crate) avail_configuration: ::std::option::Option<crate::types::AvailConfiguration>,
116 pub(crate) blackout_slate: ::std::option::Option<crate::types::BlackoutSlate>,
117 pub(crate) caption_descriptions: ::std::option::Option<::std::vec::Vec<crate::types::CaptionDescription>>,
118 pub(crate) feature_activations: ::std::option::Option<crate::types::FeatureActivations>,
119 pub(crate) global_configuration: ::std::option::Option<crate::types::GlobalConfiguration>,
120 pub(crate) motion_graphics_configuration: ::std::option::Option<crate::types::MotionGraphicsConfiguration>,
121 pub(crate) nielsen_configuration: ::std::option::Option<crate::types::NielsenConfiguration>,
122 pub(crate) output_groups: ::std::option::Option<::std::vec::Vec<crate::types::OutputGroup>>,
123 pub(crate) timecode_config: ::std::option::Option<crate::types::TimecodeConfig>,
124 pub(crate) video_descriptions: ::std::option::Option<::std::vec::Vec<crate::types::VideoDescription>>,
125 pub(crate) thumbnail_configuration: ::std::option::Option<crate::types::ThumbnailConfiguration>,
126 pub(crate) color_correction_settings: ::std::option::Option<crate::types::ColorCorrectionSettings>,
127}
128impl EncoderSettingsBuilder {
129 pub fn audio_descriptions(mut self, input: crate::types::AudioDescription) -> Self {
135 let mut v = self.audio_descriptions.unwrap_or_default();
136 v.push(input);
137 self.audio_descriptions = ::std::option::Option::Some(v);
138 self
139 }
140 pub fn set_audio_descriptions(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::AudioDescription>>) -> Self {
142 self.audio_descriptions = input;
143 self
144 }
145 pub fn get_audio_descriptions(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::AudioDescription>> {
147 &self.audio_descriptions
148 }
149 pub fn avail_blanking(mut self, input: crate::types::AvailBlanking) -> Self {
151 self.avail_blanking = ::std::option::Option::Some(input);
152 self
153 }
154 pub fn set_avail_blanking(mut self, input: ::std::option::Option<crate::types::AvailBlanking>) -> Self {
156 self.avail_blanking = input;
157 self
158 }
159 pub fn get_avail_blanking(&self) -> &::std::option::Option<crate::types::AvailBlanking> {
161 &self.avail_blanking
162 }
163 pub fn avail_configuration(mut self, input: crate::types::AvailConfiguration) -> Self {
165 self.avail_configuration = ::std::option::Option::Some(input);
166 self
167 }
168 pub fn set_avail_configuration(mut self, input: ::std::option::Option<crate::types::AvailConfiguration>) -> Self {
170 self.avail_configuration = input;
171 self
172 }
173 pub fn get_avail_configuration(&self) -> &::std::option::Option<crate::types::AvailConfiguration> {
175 &self.avail_configuration
176 }
177 pub fn blackout_slate(mut self, input: crate::types::BlackoutSlate) -> Self {
179 self.blackout_slate = ::std::option::Option::Some(input);
180 self
181 }
182 pub fn set_blackout_slate(mut self, input: ::std::option::Option<crate::types::BlackoutSlate>) -> Self {
184 self.blackout_slate = input;
185 self
186 }
187 pub fn get_blackout_slate(&self) -> &::std::option::Option<crate::types::BlackoutSlate> {
189 &self.blackout_slate
190 }
191 pub fn caption_descriptions(mut self, input: crate::types::CaptionDescription) -> Self {
197 let mut v = self.caption_descriptions.unwrap_or_default();
198 v.push(input);
199 self.caption_descriptions = ::std::option::Option::Some(v);
200 self
201 }
202 pub fn set_caption_descriptions(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::CaptionDescription>>) -> Self {
204 self.caption_descriptions = input;
205 self
206 }
207 pub fn get_caption_descriptions(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::CaptionDescription>> {
209 &self.caption_descriptions
210 }
211 pub fn feature_activations(mut self, input: crate::types::FeatureActivations) -> Self {
213 self.feature_activations = ::std::option::Option::Some(input);
214 self
215 }
216 pub fn set_feature_activations(mut self, input: ::std::option::Option<crate::types::FeatureActivations>) -> Self {
218 self.feature_activations = input;
219 self
220 }
221 pub fn get_feature_activations(&self) -> &::std::option::Option<crate::types::FeatureActivations> {
223 &self.feature_activations
224 }
225 pub fn global_configuration(mut self, input: crate::types::GlobalConfiguration) -> Self {
227 self.global_configuration = ::std::option::Option::Some(input);
228 self
229 }
230 pub fn set_global_configuration(mut self, input: ::std::option::Option<crate::types::GlobalConfiguration>) -> Self {
232 self.global_configuration = input;
233 self
234 }
235 pub fn get_global_configuration(&self) -> &::std::option::Option<crate::types::GlobalConfiguration> {
237 &self.global_configuration
238 }
239 pub fn motion_graphics_configuration(mut self, input: crate::types::MotionGraphicsConfiguration) -> Self {
241 self.motion_graphics_configuration = ::std::option::Option::Some(input);
242 self
243 }
244 pub fn set_motion_graphics_configuration(mut self, input: ::std::option::Option<crate::types::MotionGraphicsConfiguration>) -> Self {
246 self.motion_graphics_configuration = input;
247 self
248 }
249 pub fn get_motion_graphics_configuration(&self) -> &::std::option::Option<crate::types::MotionGraphicsConfiguration> {
251 &self.motion_graphics_configuration
252 }
253 pub fn nielsen_configuration(mut self, input: crate::types::NielsenConfiguration) -> Self {
255 self.nielsen_configuration = ::std::option::Option::Some(input);
256 self
257 }
258 pub fn set_nielsen_configuration(mut self, input: ::std::option::Option<crate::types::NielsenConfiguration>) -> Self {
260 self.nielsen_configuration = input;
261 self
262 }
263 pub fn get_nielsen_configuration(&self) -> &::std::option::Option<crate::types::NielsenConfiguration> {
265 &self.nielsen_configuration
266 }
267 pub fn output_groups(mut self, input: crate::types::OutputGroup) -> Self {
273 let mut v = self.output_groups.unwrap_or_default();
274 v.push(input);
275 self.output_groups = ::std::option::Option::Some(v);
276 self
277 }
278 pub fn set_output_groups(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::OutputGroup>>) -> Self {
280 self.output_groups = input;
281 self
282 }
283 pub fn get_output_groups(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::OutputGroup>> {
285 &self.output_groups
286 }
287 pub fn timecode_config(mut self, input: crate::types::TimecodeConfig) -> Self {
290 self.timecode_config = ::std::option::Option::Some(input);
291 self
292 }
293 pub fn set_timecode_config(mut self, input: ::std::option::Option<crate::types::TimecodeConfig>) -> Self {
295 self.timecode_config = input;
296 self
297 }
298 pub fn get_timecode_config(&self) -> &::std::option::Option<crate::types::TimecodeConfig> {
300 &self.timecode_config
301 }
302 pub fn video_descriptions(mut self, input: crate::types::VideoDescription) -> Self {
308 let mut v = self.video_descriptions.unwrap_or_default();
309 v.push(input);
310 self.video_descriptions = ::std::option::Option::Some(v);
311 self
312 }
313 pub fn set_video_descriptions(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::VideoDescription>>) -> Self {
315 self.video_descriptions = input;
316 self
317 }
318 pub fn get_video_descriptions(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::VideoDescription>> {
320 &self.video_descriptions
321 }
322 pub fn thumbnail_configuration(mut self, input: crate::types::ThumbnailConfiguration) -> Self {
324 self.thumbnail_configuration = ::std::option::Option::Some(input);
325 self
326 }
327 pub fn set_thumbnail_configuration(mut self, input: ::std::option::Option<crate::types::ThumbnailConfiguration>) -> Self {
329 self.thumbnail_configuration = input;
330 self
331 }
332 pub fn get_thumbnail_configuration(&self) -> &::std::option::Option<crate::types::ThumbnailConfiguration> {
334 &self.thumbnail_configuration
335 }
336 pub fn color_correction_settings(mut self, input: crate::types::ColorCorrectionSettings) -> Self {
338 self.color_correction_settings = ::std::option::Option::Some(input);
339 self
340 }
341 pub fn set_color_correction_settings(mut self, input: ::std::option::Option<crate::types::ColorCorrectionSettings>) -> Self {
343 self.color_correction_settings = input;
344 self
345 }
346 pub fn get_color_correction_settings(&self) -> &::std::option::Option<crate::types::ColorCorrectionSettings> {
348 &self.color_correction_settings
349 }
350 pub fn build(self) -> crate::types::EncoderSettings {
352 crate::types::EncoderSettings {
353 audio_descriptions: self.audio_descriptions,
354 avail_blanking: self.avail_blanking,
355 avail_configuration: self.avail_configuration,
356 blackout_slate: self.blackout_slate,
357 caption_descriptions: self.caption_descriptions,
358 feature_activations: self.feature_activations,
359 global_configuration: self.global_configuration,
360 motion_graphics_configuration: self.motion_graphics_configuration,
361 nielsen_configuration: self.nielsen_configuration,
362 output_groups: self.output_groups,
363 timecode_config: self.timecode_config,
364 video_descriptions: self.video_descriptions,
365 thumbnail_configuration: self.thumbnail_configuration,
366 color_correction_settings: self.color_correction_settings,
367 }
368 }
369}