#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
pub struct EncoderSettings {
pub audio_descriptions: ::std::option::Option<::std::vec::Vec<crate::types::AudioDescription>>,
pub avail_blanking: ::std::option::Option<crate::types::AvailBlanking>,
pub avail_configuration: ::std::option::Option<crate::types::AvailConfiguration>,
pub blackout_slate: ::std::option::Option<crate::types::BlackoutSlate>,
pub caption_descriptions: ::std::option::Option<::std::vec::Vec<crate::types::CaptionDescription>>,
pub feature_activations: ::std::option::Option<crate::types::FeatureActivations>,
pub global_configuration: ::std::option::Option<crate::types::GlobalConfiguration>,
pub motion_graphics_configuration: ::std::option::Option<crate::types::MotionGraphicsConfiguration>,
pub nielsen_configuration: ::std::option::Option<crate::types::NielsenConfiguration>,
pub output_groups: ::std::option::Option<::std::vec::Vec<crate::types::OutputGroup>>,
pub timecode_config: ::std::option::Option<crate::types::TimecodeConfig>,
pub video_descriptions: ::std::option::Option<::std::vec::Vec<crate::types::VideoDescription>>,
pub thumbnail_configuration: ::std::option::Option<crate::types::ThumbnailConfiguration>,
}
impl EncoderSettings {
pub fn audio_descriptions(&self) -> ::std::option::Option<&[crate::types::AudioDescription]> {
self.audio_descriptions.as_deref()
}
pub fn avail_blanking(&self) -> ::std::option::Option<&crate::types::AvailBlanking> {
self.avail_blanking.as_ref()
}
pub fn avail_configuration(&self) -> ::std::option::Option<&crate::types::AvailConfiguration> {
self.avail_configuration.as_ref()
}
pub fn blackout_slate(&self) -> ::std::option::Option<&crate::types::BlackoutSlate> {
self.blackout_slate.as_ref()
}
pub fn caption_descriptions(&self) -> ::std::option::Option<&[crate::types::CaptionDescription]> {
self.caption_descriptions.as_deref()
}
pub fn feature_activations(&self) -> ::std::option::Option<&crate::types::FeatureActivations> {
self.feature_activations.as_ref()
}
pub fn global_configuration(&self) -> ::std::option::Option<&crate::types::GlobalConfiguration> {
self.global_configuration.as_ref()
}
pub fn motion_graphics_configuration(&self) -> ::std::option::Option<&crate::types::MotionGraphicsConfiguration> {
self.motion_graphics_configuration.as_ref()
}
pub fn nielsen_configuration(&self) -> ::std::option::Option<&crate::types::NielsenConfiguration> {
self.nielsen_configuration.as_ref()
}
pub fn output_groups(&self) -> ::std::option::Option<&[crate::types::OutputGroup]> {
self.output_groups.as_deref()
}
pub fn timecode_config(&self) -> ::std::option::Option<&crate::types::TimecodeConfig> {
self.timecode_config.as_ref()
}
pub fn video_descriptions(&self) -> ::std::option::Option<&[crate::types::VideoDescription]> {
self.video_descriptions.as_deref()
}
pub fn thumbnail_configuration(&self) -> ::std::option::Option<&crate::types::ThumbnailConfiguration> {
self.thumbnail_configuration.as_ref()
}
}
impl EncoderSettings {
pub fn builder() -> crate::types::builders::EncoderSettingsBuilder {
crate::types::builders::EncoderSettingsBuilder::default()
}
}
#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
pub struct EncoderSettingsBuilder {
pub(crate) audio_descriptions: ::std::option::Option<::std::vec::Vec<crate::types::AudioDescription>>,
pub(crate) avail_blanking: ::std::option::Option<crate::types::AvailBlanking>,
pub(crate) avail_configuration: ::std::option::Option<crate::types::AvailConfiguration>,
pub(crate) blackout_slate: ::std::option::Option<crate::types::BlackoutSlate>,
pub(crate) caption_descriptions: ::std::option::Option<::std::vec::Vec<crate::types::CaptionDescription>>,
pub(crate) feature_activations: ::std::option::Option<crate::types::FeatureActivations>,
pub(crate) global_configuration: ::std::option::Option<crate::types::GlobalConfiguration>,
pub(crate) motion_graphics_configuration: ::std::option::Option<crate::types::MotionGraphicsConfiguration>,
pub(crate) nielsen_configuration: ::std::option::Option<crate::types::NielsenConfiguration>,
pub(crate) output_groups: ::std::option::Option<::std::vec::Vec<crate::types::OutputGroup>>,
pub(crate) timecode_config: ::std::option::Option<crate::types::TimecodeConfig>,
pub(crate) video_descriptions: ::std::option::Option<::std::vec::Vec<crate::types::VideoDescription>>,
pub(crate) thumbnail_configuration: ::std::option::Option<crate::types::ThumbnailConfiguration>,
}
impl EncoderSettingsBuilder {
pub fn audio_descriptions(mut self, input: crate::types::AudioDescription) -> Self {
let mut v = self.audio_descriptions.unwrap_or_default();
v.push(input);
self.audio_descriptions = ::std::option::Option::Some(v);
self
}
pub fn set_audio_descriptions(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::AudioDescription>>) -> Self {
self.audio_descriptions = input;
self
}
pub fn get_audio_descriptions(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::AudioDescription>> {
&self.audio_descriptions
}
pub fn avail_blanking(mut self, input: crate::types::AvailBlanking) -> Self {
self.avail_blanking = ::std::option::Option::Some(input);
self
}
pub fn set_avail_blanking(mut self, input: ::std::option::Option<crate::types::AvailBlanking>) -> Self {
self.avail_blanking = input;
self
}
pub fn get_avail_blanking(&self) -> &::std::option::Option<crate::types::AvailBlanking> {
&self.avail_blanking
}
pub fn avail_configuration(mut self, input: crate::types::AvailConfiguration) -> Self {
self.avail_configuration = ::std::option::Option::Some(input);
self
}
pub fn set_avail_configuration(mut self, input: ::std::option::Option<crate::types::AvailConfiguration>) -> Self {
self.avail_configuration = input;
self
}
pub fn get_avail_configuration(&self) -> &::std::option::Option<crate::types::AvailConfiguration> {
&self.avail_configuration
}
pub fn blackout_slate(mut self, input: crate::types::BlackoutSlate) -> Self {
self.blackout_slate = ::std::option::Option::Some(input);
self
}
pub fn set_blackout_slate(mut self, input: ::std::option::Option<crate::types::BlackoutSlate>) -> Self {
self.blackout_slate = input;
self
}
pub fn get_blackout_slate(&self) -> &::std::option::Option<crate::types::BlackoutSlate> {
&self.blackout_slate
}
pub fn caption_descriptions(mut self, input: crate::types::CaptionDescription) -> Self {
let mut v = self.caption_descriptions.unwrap_or_default();
v.push(input);
self.caption_descriptions = ::std::option::Option::Some(v);
self
}
pub fn set_caption_descriptions(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::CaptionDescription>>) -> Self {
self.caption_descriptions = input;
self
}
pub fn get_caption_descriptions(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::CaptionDescription>> {
&self.caption_descriptions
}
pub fn feature_activations(mut self, input: crate::types::FeatureActivations) -> Self {
self.feature_activations = ::std::option::Option::Some(input);
self
}
pub fn set_feature_activations(mut self, input: ::std::option::Option<crate::types::FeatureActivations>) -> Self {
self.feature_activations = input;
self
}
pub fn get_feature_activations(&self) -> &::std::option::Option<crate::types::FeatureActivations> {
&self.feature_activations
}
pub fn global_configuration(mut self, input: crate::types::GlobalConfiguration) -> Self {
self.global_configuration = ::std::option::Option::Some(input);
self
}
pub fn set_global_configuration(mut self, input: ::std::option::Option<crate::types::GlobalConfiguration>) -> Self {
self.global_configuration = input;
self
}
pub fn get_global_configuration(&self) -> &::std::option::Option<crate::types::GlobalConfiguration> {
&self.global_configuration
}
pub fn motion_graphics_configuration(mut self, input: crate::types::MotionGraphicsConfiguration) -> Self {
self.motion_graphics_configuration = ::std::option::Option::Some(input);
self
}
pub fn set_motion_graphics_configuration(mut self, input: ::std::option::Option<crate::types::MotionGraphicsConfiguration>) -> Self {
self.motion_graphics_configuration = input;
self
}
pub fn get_motion_graphics_configuration(&self) -> &::std::option::Option<crate::types::MotionGraphicsConfiguration> {
&self.motion_graphics_configuration
}
pub fn nielsen_configuration(mut self, input: crate::types::NielsenConfiguration) -> Self {
self.nielsen_configuration = ::std::option::Option::Some(input);
self
}
pub fn set_nielsen_configuration(mut self, input: ::std::option::Option<crate::types::NielsenConfiguration>) -> Self {
self.nielsen_configuration = input;
self
}
pub fn get_nielsen_configuration(&self) -> &::std::option::Option<crate::types::NielsenConfiguration> {
&self.nielsen_configuration
}
pub fn output_groups(mut self, input: crate::types::OutputGroup) -> Self {
let mut v = self.output_groups.unwrap_or_default();
v.push(input);
self.output_groups = ::std::option::Option::Some(v);
self
}
pub fn set_output_groups(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::OutputGroup>>) -> Self {
self.output_groups = input;
self
}
pub fn get_output_groups(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::OutputGroup>> {
&self.output_groups
}
pub fn timecode_config(mut self, input: crate::types::TimecodeConfig) -> Self {
self.timecode_config = ::std::option::Option::Some(input);
self
}
pub fn set_timecode_config(mut self, input: ::std::option::Option<crate::types::TimecodeConfig>) -> Self {
self.timecode_config = input;
self
}
pub fn get_timecode_config(&self) -> &::std::option::Option<crate::types::TimecodeConfig> {
&self.timecode_config
}
pub fn video_descriptions(mut self, input: crate::types::VideoDescription) -> Self {
let mut v = self.video_descriptions.unwrap_or_default();
v.push(input);
self.video_descriptions = ::std::option::Option::Some(v);
self
}
pub fn set_video_descriptions(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::VideoDescription>>) -> Self {
self.video_descriptions = input;
self
}
pub fn get_video_descriptions(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::VideoDescription>> {
&self.video_descriptions
}
pub fn thumbnail_configuration(mut self, input: crate::types::ThumbnailConfiguration) -> Self {
self.thumbnail_configuration = ::std::option::Option::Some(input);
self
}
pub fn set_thumbnail_configuration(mut self, input: ::std::option::Option<crate::types::ThumbnailConfiguration>) -> Self {
self.thumbnail_configuration = input;
self
}
pub fn get_thumbnail_configuration(&self) -> &::std::option::Option<crate::types::ThumbnailConfiguration> {
&self.thumbnail_configuration
}
pub fn build(self) -> crate::types::EncoderSettings {
crate::types::EncoderSettings {
audio_descriptions: self.audio_descriptions,
avail_blanking: self.avail_blanking,
avail_configuration: self.avail_configuration,
blackout_slate: self.blackout_slate,
caption_descriptions: self.caption_descriptions,
feature_activations: self.feature_activations,
global_configuration: self.global_configuration,
motion_graphics_configuration: self.motion_graphics_configuration,
nielsen_configuration: self.nielsen_configuration,
output_groups: self.output_groups,
timecode_config: self.timecode_config,
video_descriptions: self.video_descriptions,
thumbnail_configuration: self.thumbnail_configuration,
}
}
}