aws_sdk_mediaconvert/types/_eac3_settings.rs
1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2
3/// Required when you set Codec to the value EAC3.
4#[non_exhaustive]
5#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
6pub struct Eac3Settings {
7 /// If set to ATTENUATE_3_DB, applies a 3 dB attenuation to the surround channels. Only used for 3/2 coding mode.
8 pub attenuation_control: ::std::option::Option<crate::types::Eac3AttenuationControl>,
9 /// Specify the average bitrate in bits per second. The bitrate that you specify must be a multiple of 8000 within the allowed minimum and maximum values. Leave blank to use the default bitrate for the coding mode you select according ETSI TS 102 366. Valid bitrates for coding mode 1/0: Default: 96000. Minimum: 32000. Maximum: 3024000. Valid bitrates for coding mode 2/0: Default: 192000. Minimum: 96000. Maximum: 3024000. Valid bitrates for coding mode 3/2: Default: 384000. Minimum: 192000. Maximum: 3024000.
10 pub bitrate: ::std::option::Option<i32>,
11 /// Specify the bitstream mode for the E-AC-3 stream that the encoder emits. For more information about the EAC3 bitstream mode, see ATSC A/52-2012 (Annex E).
12 pub bitstream_mode: ::std::option::Option<crate::types::Eac3BitstreamMode>,
13 /// Dolby Digital Plus coding mode. Determines number of channels.
14 pub coding_mode: ::std::option::Option<crate::types::Eac3CodingMode>,
15 /// Activates a DC highpass filter for all input channels.
16 pub dc_filter: ::std::option::Option<crate::types::Eac3DcFilter>,
17 /// Sets the dialnorm for the output. If blank and input audio is Dolby Digital Plus, dialnorm will be passed through.
18 pub dialnorm: ::std::option::Option<i32>,
19 /// Choose the Dolby Digital dynamic range control (DRC) profile that MediaConvert uses when encoding the metadata in the Dolby Digital stream for the line operating mode. Related setting: When you use this setting, MediaConvert ignores any value you provide for Dynamic range compression profile. For information about the Dolby Digital DRC operating modes and profiles, see the Dynamic Range Control chapter of the Dolby Metadata Guide at https://developer.dolby.com/globalassets/professional/documents/dolby-metadata-guide.pdf.
20 pub dynamic_range_compression_line: ::std::option::Option<crate::types::Eac3DynamicRangeCompressionLine>,
21 /// Choose the Dolby Digital dynamic range control (DRC) profile that MediaConvert uses when encoding the metadata in the Dolby Digital stream for the RF operating mode. Related setting: When you use this setting, MediaConvert ignores any value you provide for Dynamic range compression profile. For information about the Dolby Digital DRC operating modes and profiles, see the Dynamic Range Control chapter of the Dolby Metadata Guide at https://developer.dolby.com/globalassets/professional/documents/dolby-metadata-guide.pdf.
22 pub dynamic_range_compression_rf: ::std::option::Option<crate::types::Eac3DynamicRangeCompressionRf>,
23 /// When encoding 3/2 audio, controls whether the LFE channel is enabled
24 pub lfe_control: ::std::option::Option<crate::types::Eac3LfeControl>,
25 /// Applies a 120Hz lowpass filter to the LFE channel prior to encoding. Only valid with 3_2_LFE coding mode.
26 pub lfe_filter: ::std::option::Option<crate::types::Eac3LfeFilter>,
27 /// Specify a value for the following Dolby Digital Plus setting: Left only/Right only center mix. MediaConvert uses this value for downmixing. How the service uses this value depends on the value that you choose for Stereo downmix. Valid values: 3.0, 1.5, 0.0, -1.5, -3.0, -4.5, -6.0, and -60. The value -60 mutes the channel. This setting applies only if you keep the default value of 3/2 - L, R, C, Ls, Rs for the setting Coding mode. If you choose a different value for Coding mode, the service ignores Left only/Right only center.
28 pub lo_ro_center_mix_level: ::std::option::Option<f64>,
29 /// Specify a value for the following Dolby Digital Plus setting: Left only/Right only. MediaConvert uses this value for downmixing. How the service uses this value depends on the value that you choose for Stereo downmix. Valid values: -1.5, -3.0, -4.5, -6.0, and -60. The value -60 mutes the channel. This setting applies only if you keep the default value of 3/2 - L, R, C, Ls, Rs for the setting Coding mode. If you choose a different value for Coding mode, the service ignores Left only/Right only surround.
30 pub lo_ro_surround_mix_level: ::std::option::Option<f64>,
31 /// Specify a value for the following Dolby Digital Plus setting: Left total/Right total center mix. MediaConvert uses this value for downmixing. How the service uses this value depends on the value that you choose for Stereo downmix. Valid values: 3.0, 1.5, 0.0, -1.5, -3.0, -4.5, -6.0, and -60. The value -60 mutes the channel. This setting applies only if you keep the default value of 3/2 - L, R, C, Ls, Rs for the setting Coding mode. If you choose a different value for Coding mode, the service ignores Left total/Right total center.
32 pub lt_rt_center_mix_level: ::std::option::Option<f64>,
33 /// Specify a value for the following Dolby Digital Plus setting: Left total/Right total surround mix. MediaConvert uses this value for downmixing. How the service uses this value depends on the value that you choose for Stereo downmix. Valid values: -1.5, -3.0, -4.5, -6.0, and -60. The value -60 mutes the channel. This setting applies only if you keep the default value of 3/2 - L, R, C, Ls, Rs for the setting Coding mode. If you choose a different value for Coding mode, the service ignores Left total/Right total surround.
34 pub lt_rt_surround_mix_level: ::std::option::Option<f64>,
35 /// When set to FOLLOW_INPUT, encoder metadata will be sourced from the DD, DD+, or DolbyE decoder that supplied this audio data. If audio was not supplied from one of these streams, then the static metadata settings will be used.
36 pub metadata_control: ::std::option::Option<crate::types::Eac3MetadataControl>,
37 /// When set to WHEN_POSSIBLE, input DD+ audio will be passed through if it is present on the input. this detection is dynamic over the life of the transcode. Inputs that alternate between DD+ and non-DD+ content will have a consistent DD+ output as the system alternates between passthrough and encoding.
38 pub passthrough_control: ::std::option::Option<crate::types::Eac3PassthroughControl>,
39 /// Controls the amount of phase-shift applied to the surround channels. Only used for 3/2 coding mode.
40 pub phase_control: ::std::option::Option<crate::types::Eac3PhaseControl>,
41 /// This value is always 48000. It represents the sample rate in Hz.
42 pub sample_rate: ::std::option::Option<i32>,
43 /// Choose how the service does stereo downmixing. This setting only applies if you keep the default value of 3/2 - L, R, C, Ls, Rs for the setting Coding mode. If you choose a different value for Coding mode, the service ignores Stereo downmix.
44 pub stereo_downmix: ::std::option::Option<crate::types::Eac3StereoDownmix>,
45 /// When encoding 3/2 audio, sets whether an extra center back surround channel is matrix encoded into the left and right surround channels.
46 pub surround_ex_mode: ::std::option::Option<crate::types::Eac3SurroundExMode>,
47 /// When encoding 2/0 audio, sets whether Dolby Surround is matrix encoded into the two channels.
48 pub surround_mode: ::std::option::Option<crate::types::Eac3SurroundMode>,
49}
50impl Eac3Settings {
51 /// If set to ATTENUATE_3_DB, applies a 3 dB attenuation to the surround channels. Only used for 3/2 coding mode.
52 pub fn attenuation_control(&self) -> ::std::option::Option<&crate::types::Eac3AttenuationControl> {
53 self.attenuation_control.as_ref()
54 }
55 /// Specify the average bitrate in bits per second. The bitrate that you specify must be a multiple of 8000 within the allowed minimum and maximum values. Leave blank to use the default bitrate for the coding mode you select according ETSI TS 102 366. Valid bitrates for coding mode 1/0: Default: 96000. Minimum: 32000. Maximum: 3024000. Valid bitrates for coding mode 2/0: Default: 192000. Minimum: 96000. Maximum: 3024000. Valid bitrates for coding mode 3/2: Default: 384000. Minimum: 192000. Maximum: 3024000.
56 pub fn bitrate(&self) -> ::std::option::Option<i32> {
57 self.bitrate
58 }
59 /// Specify the bitstream mode for the E-AC-3 stream that the encoder emits. For more information about the EAC3 bitstream mode, see ATSC A/52-2012 (Annex E).
60 pub fn bitstream_mode(&self) -> ::std::option::Option<&crate::types::Eac3BitstreamMode> {
61 self.bitstream_mode.as_ref()
62 }
63 /// Dolby Digital Plus coding mode. Determines number of channels.
64 pub fn coding_mode(&self) -> ::std::option::Option<&crate::types::Eac3CodingMode> {
65 self.coding_mode.as_ref()
66 }
67 /// Activates a DC highpass filter for all input channels.
68 pub fn dc_filter(&self) -> ::std::option::Option<&crate::types::Eac3DcFilter> {
69 self.dc_filter.as_ref()
70 }
71 /// Sets the dialnorm for the output. If blank and input audio is Dolby Digital Plus, dialnorm will be passed through.
72 pub fn dialnorm(&self) -> ::std::option::Option<i32> {
73 self.dialnorm
74 }
75 /// Choose the Dolby Digital dynamic range control (DRC) profile that MediaConvert uses when encoding the metadata in the Dolby Digital stream for the line operating mode. Related setting: When you use this setting, MediaConvert ignores any value you provide for Dynamic range compression profile. For information about the Dolby Digital DRC operating modes and profiles, see the Dynamic Range Control chapter of the Dolby Metadata Guide at https://developer.dolby.com/globalassets/professional/documents/dolby-metadata-guide.pdf.
76 pub fn dynamic_range_compression_line(&self) -> ::std::option::Option<&crate::types::Eac3DynamicRangeCompressionLine> {
77 self.dynamic_range_compression_line.as_ref()
78 }
79 /// Choose the Dolby Digital dynamic range control (DRC) profile that MediaConvert uses when encoding the metadata in the Dolby Digital stream for the RF operating mode. Related setting: When you use this setting, MediaConvert ignores any value you provide for Dynamic range compression profile. For information about the Dolby Digital DRC operating modes and profiles, see the Dynamic Range Control chapter of the Dolby Metadata Guide at https://developer.dolby.com/globalassets/professional/documents/dolby-metadata-guide.pdf.
80 pub fn dynamic_range_compression_rf(&self) -> ::std::option::Option<&crate::types::Eac3DynamicRangeCompressionRf> {
81 self.dynamic_range_compression_rf.as_ref()
82 }
83 /// When encoding 3/2 audio, controls whether the LFE channel is enabled
84 pub fn lfe_control(&self) -> ::std::option::Option<&crate::types::Eac3LfeControl> {
85 self.lfe_control.as_ref()
86 }
87 /// Applies a 120Hz lowpass filter to the LFE channel prior to encoding. Only valid with 3_2_LFE coding mode.
88 pub fn lfe_filter(&self) -> ::std::option::Option<&crate::types::Eac3LfeFilter> {
89 self.lfe_filter.as_ref()
90 }
91 /// Specify a value for the following Dolby Digital Plus setting: Left only/Right only center mix. MediaConvert uses this value for downmixing. How the service uses this value depends on the value that you choose for Stereo downmix. Valid values: 3.0, 1.5, 0.0, -1.5, -3.0, -4.5, -6.0, and -60. The value -60 mutes the channel. This setting applies only if you keep the default value of 3/2 - L, R, C, Ls, Rs for the setting Coding mode. If you choose a different value for Coding mode, the service ignores Left only/Right only center.
92 pub fn lo_ro_center_mix_level(&self) -> ::std::option::Option<f64> {
93 self.lo_ro_center_mix_level
94 }
95 /// Specify a value for the following Dolby Digital Plus setting: Left only/Right only. MediaConvert uses this value for downmixing. How the service uses this value depends on the value that you choose for Stereo downmix. Valid values: -1.5, -3.0, -4.5, -6.0, and -60. The value -60 mutes the channel. This setting applies only if you keep the default value of 3/2 - L, R, C, Ls, Rs for the setting Coding mode. If you choose a different value for Coding mode, the service ignores Left only/Right only surround.
96 pub fn lo_ro_surround_mix_level(&self) -> ::std::option::Option<f64> {
97 self.lo_ro_surround_mix_level
98 }
99 /// Specify a value for the following Dolby Digital Plus setting: Left total/Right total center mix. MediaConvert uses this value for downmixing. How the service uses this value depends on the value that you choose for Stereo downmix. Valid values: 3.0, 1.5, 0.0, -1.5, -3.0, -4.5, -6.0, and -60. The value -60 mutes the channel. This setting applies only if you keep the default value of 3/2 - L, R, C, Ls, Rs for the setting Coding mode. If you choose a different value for Coding mode, the service ignores Left total/Right total center.
100 pub fn lt_rt_center_mix_level(&self) -> ::std::option::Option<f64> {
101 self.lt_rt_center_mix_level
102 }
103 /// Specify a value for the following Dolby Digital Plus setting: Left total/Right total surround mix. MediaConvert uses this value for downmixing. How the service uses this value depends on the value that you choose for Stereo downmix. Valid values: -1.5, -3.0, -4.5, -6.0, and -60. The value -60 mutes the channel. This setting applies only if you keep the default value of 3/2 - L, R, C, Ls, Rs for the setting Coding mode. If you choose a different value for Coding mode, the service ignores Left total/Right total surround.
104 pub fn lt_rt_surround_mix_level(&self) -> ::std::option::Option<f64> {
105 self.lt_rt_surround_mix_level
106 }
107 /// When set to FOLLOW_INPUT, encoder metadata will be sourced from the DD, DD+, or DolbyE decoder that supplied this audio data. If audio was not supplied from one of these streams, then the static metadata settings will be used.
108 pub fn metadata_control(&self) -> ::std::option::Option<&crate::types::Eac3MetadataControl> {
109 self.metadata_control.as_ref()
110 }
111 /// When set to WHEN_POSSIBLE, input DD+ audio will be passed through if it is present on the input. this detection is dynamic over the life of the transcode. Inputs that alternate between DD+ and non-DD+ content will have a consistent DD+ output as the system alternates between passthrough and encoding.
112 pub fn passthrough_control(&self) -> ::std::option::Option<&crate::types::Eac3PassthroughControl> {
113 self.passthrough_control.as_ref()
114 }
115 /// Controls the amount of phase-shift applied to the surround channels. Only used for 3/2 coding mode.
116 pub fn phase_control(&self) -> ::std::option::Option<&crate::types::Eac3PhaseControl> {
117 self.phase_control.as_ref()
118 }
119 /// This value is always 48000. It represents the sample rate in Hz.
120 pub fn sample_rate(&self) -> ::std::option::Option<i32> {
121 self.sample_rate
122 }
123 /// Choose how the service does stereo downmixing. This setting only applies if you keep the default value of 3/2 - L, R, C, Ls, Rs for the setting Coding mode. If you choose a different value for Coding mode, the service ignores Stereo downmix.
124 pub fn stereo_downmix(&self) -> ::std::option::Option<&crate::types::Eac3StereoDownmix> {
125 self.stereo_downmix.as_ref()
126 }
127 /// When encoding 3/2 audio, sets whether an extra center back surround channel is matrix encoded into the left and right surround channels.
128 pub fn surround_ex_mode(&self) -> ::std::option::Option<&crate::types::Eac3SurroundExMode> {
129 self.surround_ex_mode.as_ref()
130 }
131 /// When encoding 2/0 audio, sets whether Dolby Surround is matrix encoded into the two channels.
132 pub fn surround_mode(&self) -> ::std::option::Option<&crate::types::Eac3SurroundMode> {
133 self.surround_mode.as_ref()
134 }
135}
136impl Eac3Settings {
137 /// Creates a new builder-style object to manufacture [`Eac3Settings`](crate::types::Eac3Settings).
138 pub fn builder() -> crate::types::builders::Eac3SettingsBuilder {
139 crate::types::builders::Eac3SettingsBuilder::default()
140 }
141}
142
143/// A builder for [`Eac3Settings`](crate::types::Eac3Settings).
144#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
145#[non_exhaustive]
146pub struct Eac3SettingsBuilder {
147 pub(crate) attenuation_control: ::std::option::Option<crate::types::Eac3AttenuationControl>,
148 pub(crate) bitrate: ::std::option::Option<i32>,
149 pub(crate) bitstream_mode: ::std::option::Option<crate::types::Eac3BitstreamMode>,
150 pub(crate) coding_mode: ::std::option::Option<crate::types::Eac3CodingMode>,
151 pub(crate) dc_filter: ::std::option::Option<crate::types::Eac3DcFilter>,
152 pub(crate) dialnorm: ::std::option::Option<i32>,
153 pub(crate) dynamic_range_compression_line: ::std::option::Option<crate::types::Eac3DynamicRangeCompressionLine>,
154 pub(crate) dynamic_range_compression_rf: ::std::option::Option<crate::types::Eac3DynamicRangeCompressionRf>,
155 pub(crate) lfe_control: ::std::option::Option<crate::types::Eac3LfeControl>,
156 pub(crate) lfe_filter: ::std::option::Option<crate::types::Eac3LfeFilter>,
157 pub(crate) lo_ro_center_mix_level: ::std::option::Option<f64>,
158 pub(crate) lo_ro_surround_mix_level: ::std::option::Option<f64>,
159 pub(crate) lt_rt_center_mix_level: ::std::option::Option<f64>,
160 pub(crate) lt_rt_surround_mix_level: ::std::option::Option<f64>,
161 pub(crate) metadata_control: ::std::option::Option<crate::types::Eac3MetadataControl>,
162 pub(crate) passthrough_control: ::std::option::Option<crate::types::Eac3PassthroughControl>,
163 pub(crate) phase_control: ::std::option::Option<crate::types::Eac3PhaseControl>,
164 pub(crate) sample_rate: ::std::option::Option<i32>,
165 pub(crate) stereo_downmix: ::std::option::Option<crate::types::Eac3StereoDownmix>,
166 pub(crate) surround_ex_mode: ::std::option::Option<crate::types::Eac3SurroundExMode>,
167 pub(crate) surround_mode: ::std::option::Option<crate::types::Eac3SurroundMode>,
168}
169impl Eac3SettingsBuilder {
170 /// If set to ATTENUATE_3_DB, applies a 3 dB attenuation to the surround channels. Only used for 3/2 coding mode.
171 pub fn attenuation_control(mut self, input: crate::types::Eac3AttenuationControl) -> Self {
172 self.attenuation_control = ::std::option::Option::Some(input);
173 self
174 }
175 /// If set to ATTENUATE_3_DB, applies a 3 dB attenuation to the surround channels. Only used for 3/2 coding mode.
176 pub fn set_attenuation_control(mut self, input: ::std::option::Option<crate::types::Eac3AttenuationControl>) -> Self {
177 self.attenuation_control = input;
178 self
179 }
180 /// If set to ATTENUATE_3_DB, applies a 3 dB attenuation to the surround channels. Only used for 3/2 coding mode.
181 pub fn get_attenuation_control(&self) -> &::std::option::Option<crate::types::Eac3AttenuationControl> {
182 &self.attenuation_control
183 }
184 /// Specify the average bitrate in bits per second. The bitrate that you specify must be a multiple of 8000 within the allowed minimum and maximum values. Leave blank to use the default bitrate for the coding mode you select according ETSI TS 102 366. Valid bitrates for coding mode 1/0: Default: 96000. Minimum: 32000. Maximum: 3024000. Valid bitrates for coding mode 2/0: Default: 192000. Minimum: 96000. Maximum: 3024000. Valid bitrates for coding mode 3/2: Default: 384000. Minimum: 192000. Maximum: 3024000.
185 pub fn bitrate(mut self, input: i32) -> Self {
186 self.bitrate = ::std::option::Option::Some(input);
187 self
188 }
189 /// Specify the average bitrate in bits per second. The bitrate that you specify must be a multiple of 8000 within the allowed minimum and maximum values. Leave blank to use the default bitrate for the coding mode you select according ETSI TS 102 366. Valid bitrates for coding mode 1/0: Default: 96000. Minimum: 32000. Maximum: 3024000. Valid bitrates for coding mode 2/0: Default: 192000. Minimum: 96000. Maximum: 3024000. Valid bitrates for coding mode 3/2: Default: 384000. Minimum: 192000. Maximum: 3024000.
190 pub fn set_bitrate(mut self, input: ::std::option::Option<i32>) -> Self {
191 self.bitrate = input;
192 self
193 }
194 /// Specify the average bitrate in bits per second. The bitrate that you specify must be a multiple of 8000 within the allowed minimum and maximum values. Leave blank to use the default bitrate for the coding mode you select according ETSI TS 102 366. Valid bitrates for coding mode 1/0: Default: 96000. Minimum: 32000. Maximum: 3024000. Valid bitrates for coding mode 2/0: Default: 192000. Minimum: 96000. Maximum: 3024000. Valid bitrates for coding mode 3/2: Default: 384000. Minimum: 192000. Maximum: 3024000.
195 pub fn get_bitrate(&self) -> &::std::option::Option<i32> {
196 &self.bitrate
197 }
198 /// Specify the bitstream mode for the E-AC-3 stream that the encoder emits. For more information about the EAC3 bitstream mode, see ATSC A/52-2012 (Annex E).
199 pub fn bitstream_mode(mut self, input: crate::types::Eac3BitstreamMode) -> Self {
200 self.bitstream_mode = ::std::option::Option::Some(input);
201 self
202 }
203 /// Specify the bitstream mode for the E-AC-3 stream that the encoder emits. For more information about the EAC3 bitstream mode, see ATSC A/52-2012 (Annex E).
204 pub fn set_bitstream_mode(mut self, input: ::std::option::Option<crate::types::Eac3BitstreamMode>) -> Self {
205 self.bitstream_mode = input;
206 self
207 }
208 /// Specify the bitstream mode for the E-AC-3 stream that the encoder emits. For more information about the EAC3 bitstream mode, see ATSC A/52-2012 (Annex E).
209 pub fn get_bitstream_mode(&self) -> &::std::option::Option<crate::types::Eac3BitstreamMode> {
210 &self.bitstream_mode
211 }
212 /// Dolby Digital Plus coding mode. Determines number of channels.
213 pub fn coding_mode(mut self, input: crate::types::Eac3CodingMode) -> Self {
214 self.coding_mode = ::std::option::Option::Some(input);
215 self
216 }
217 /// Dolby Digital Plus coding mode. Determines number of channels.
218 pub fn set_coding_mode(mut self, input: ::std::option::Option<crate::types::Eac3CodingMode>) -> Self {
219 self.coding_mode = input;
220 self
221 }
222 /// Dolby Digital Plus coding mode. Determines number of channels.
223 pub fn get_coding_mode(&self) -> &::std::option::Option<crate::types::Eac3CodingMode> {
224 &self.coding_mode
225 }
226 /// Activates a DC highpass filter for all input channels.
227 pub fn dc_filter(mut self, input: crate::types::Eac3DcFilter) -> Self {
228 self.dc_filter = ::std::option::Option::Some(input);
229 self
230 }
231 /// Activates a DC highpass filter for all input channels.
232 pub fn set_dc_filter(mut self, input: ::std::option::Option<crate::types::Eac3DcFilter>) -> Self {
233 self.dc_filter = input;
234 self
235 }
236 /// Activates a DC highpass filter for all input channels.
237 pub fn get_dc_filter(&self) -> &::std::option::Option<crate::types::Eac3DcFilter> {
238 &self.dc_filter
239 }
240 /// Sets the dialnorm for the output. If blank and input audio is Dolby Digital Plus, dialnorm will be passed through.
241 pub fn dialnorm(mut self, input: i32) -> Self {
242 self.dialnorm = ::std::option::Option::Some(input);
243 self
244 }
245 /// Sets the dialnorm for the output. If blank and input audio is Dolby Digital Plus, dialnorm will be passed through.
246 pub fn set_dialnorm(mut self, input: ::std::option::Option<i32>) -> Self {
247 self.dialnorm = input;
248 self
249 }
250 /// Sets the dialnorm for the output. If blank and input audio is Dolby Digital Plus, dialnorm will be passed through.
251 pub fn get_dialnorm(&self) -> &::std::option::Option<i32> {
252 &self.dialnorm
253 }
254 /// Choose the Dolby Digital dynamic range control (DRC) profile that MediaConvert uses when encoding the metadata in the Dolby Digital stream for the line operating mode. Related setting: When you use this setting, MediaConvert ignores any value you provide for Dynamic range compression profile. For information about the Dolby Digital DRC operating modes and profiles, see the Dynamic Range Control chapter of the Dolby Metadata Guide at https://developer.dolby.com/globalassets/professional/documents/dolby-metadata-guide.pdf.
255 pub fn dynamic_range_compression_line(mut self, input: crate::types::Eac3DynamicRangeCompressionLine) -> Self {
256 self.dynamic_range_compression_line = ::std::option::Option::Some(input);
257 self
258 }
259 /// Choose the Dolby Digital dynamic range control (DRC) profile that MediaConvert uses when encoding the metadata in the Dolby Digital stream for the line operating mode. Related setting: When you use this setting, MediaConvert ignores any value you provide for Dynamic range compression profile. For information about the Dolby Digital DRC operating modes and profiles, see the Dynamic Range Control chapter of the Dolby Metadata Guide at https://developer.dolby.com/globalassets/professional/documents/dolby-metadata-guide.pdf.
260 pub fn set_dynamic_range_compression_line(mut self, input: ::std::option::Option<crate::types::Eac3DynamicRangeCompressionLine>) -> Self {
261 self.dynamic_range_compression_line = input;
262 self
263 }
264 /// Choose the Dolby Digital dynamic range control (DRC) profile that MediaConvert uses when encoding the metadata in the Dolby Digital stream for the line operating mode. Related setting: When you use this setting, MediaConvert ignores any value you provide for Dynamic range compression profile. For information about the Dolby Digital DRC operating modes and profiles, see the Dynamic Range Control chapter of the Dolby Metadata Guide at https://developer.dolby.com/globalassets/professional/documents/dolby-metadata-guide.pdf.
265 pub fn get_dynamic_range_compression_line(&self) -> &::std::option::Option<crate::types::Eac3DynamicRangeCompressionLine> {
266 &self.dynamic_range_compression_line
267 }
268 /// Choose the Dolby Digital dynamic range control (DRC) profile that MediaConvert uses when encoding the metadata in the Dolby Digital stream for the RF operating mode. Related setting: When you use this setting, MediaConvert ignores any value you provide for Dynamic range compression profile. For information about the Dolby Digital DRC operating modes and profiles, see the Dynamic Range Control chapter of the Dolby Metadata Guide at https://developer.dolby.com/globalassets/professional/documents/dolby-metadata-guide.pdf.
269 pub fn dynamic_range_compression_rf(mut self, input: crate::types::Eac3DynamicRangeCompressionRf) -> Self {
270 self.dynamic_range_compression_rf = ::std::option::Option::Some(input);
271 self
272 }
273 /// Choose the Dolby Digital dynamic range control (DRC) profile that MediaConvert uses when encoding the metadata in the Dolby Digital stream for the RF operating mode. Related setting: When you use this setting, MediaConvert ignores any value you provide for Dynamic range compression profile. For information about the Dolby Digital DRC operating modes and profiles, see the Dynamic Range Control chapter of the Dolby Metadata Guide at https://developer.dolby.com/globalassets/professional/documents/dolby-metadata-guide.pdf.
274 pub fn set_dynamic_range_compression_rf(mut self, input: ::std::option::Option<crate::types::Eac3DynamicRangeCompressionRf>) -> Self {
275 self.dynamic_range_compression_rf = input;
276 self
277 }
278 /// Choose the Dolby Digital dynamic range control (DRC) profile that MediaConvert uses when encoding the metadata in the Dolby Digital stream for the RF operating mode. Related setting: When you use this setting, MediaConvert ignores any value you provide for Dynamic range compression profile. For information about the Dolby Digital DRC operating modes and profiles, see the Dynamic Range Control chapter of the Dolby Metadata Guide at https://developer.dolby.com/globalassets/professional/documents/dolby-metadata-guide.pdf.
279 pub fn get_dynamic_range_compression_rf(&self) -> &::std::option::Option<crate::types::Eac3DynamicRangeCompressionRf> {
280 &self.dynamic_range_compression_rf
281 }
282 /// When encoding 3/2 audio, controls whether the LFE channel is enabled
283 pub fn lfe_control(mut self, input: crate::types::Eac3LfeControl) -> Self {
284 self.lfe_control = ::std::option::Option::Some(input);
285 self
286 }
287 /// When encoding 3/2 audio, controls whether the LFE channel is enabled
288 pub fn set_lfe_control(mut self, input: ::std::option::Option<crate::types::Eac3LfeControl>) -> Self {
289 self.lfe_control = input;
290 self
291 }
292 /// When encoding 3/2 audio, controls whether the LFE channel is enabled
293 pub fn get_lfe_control(&self) -> &::std::option::Option<crate::types::Eac3LfeControl> {
294 &self.lfe_control
295 }
296 /// Applies a 120Hz lowpass filter to the LFE channel prior to encoding. Only valid with 3_2_LFE coding mode.
297 pub fn lfe_filter(mut self, input: crate::types::Eac3LfeFilter) -> Self {
298 self.lfe_filter = ::std::option::Option::Some(input);
299 self
300 }
301 /// Applies a 120Hz lowpass filter to the LFE channel prior to encoding. Only valid with 3_2_LFE coding mode.
302 pub fn set_lfe_filter(mut self, input: ::std::option::Option<crate::types::Eac3LfeFilter>) -> Self {
303 self.lfe_filter = input;
304 self
305 }
306 /// Applies a 120Hz lowpass filter to the LFE channel prior to encoding. Only valid with 3_2_LFE coding mode.
307 pub fn get_lfe_filter(&self) -> &::std::option::Option<crate::types::Eac3LfeFilter> {
308 &self.lfe_filter
309 }
310 /// Specify a value for the following Dolby Digital Plus setting: Left only/Right only center mix. MediaConvert uses this value for downmixing. How the service uses this value depends on the value that you choose for Stereo downmix. Valid values: 3.0, 1.5, 0.0, -1.5, -3.0, -4.5, -6.0, and -60. The value -60 mutes the channel. This setting applies only if you keep the default value of 3/2 - L, R, C, Ls, Rs for the setting Coding mode. If you choose a different value for Coding mode, the service ignores Left only/Right only center.
311 pub fn lo_ro_center_mix_level(mut self, input: f64) -> Self {
312 self.lo_ro_center_mix_level = ::std::option::Option::Some(input);
313 self
314 }
315 /// Specify a value for the following Dolby Digital Plus setting: Left only/Right only center mix. MediaConvert uses this value for downmixing. How the service uses this value depends on the value that you choose for Stereo downmix. Valid values: 3.0, 1.5, 0.0, -1.5, -3.0, -4.5, -6.0, and -60. The value -60 mutes the channel. This setting applies only if you keep the default value of 3/2 - L, R, C, Ls, Rs for the setting Coding mode. If you choose a different value for Coding mode, the service ignores Left only/Right only center.
316 pub fn set_lo_ro_center_mix_level(mut self, input: ::std::option::Option<f64>) -> Self {
317 self.lo_ro_center_mix_level = input;
318 self
319 }
320 /// Specify a value for the following Dolby Digital Plus setting: Left only/Right only center mix. MediaConvert uses this value for downmixing. How the service uses this value depends on the value that you choose for Stereo downmix. Valid values: 3.0, 1.5, 0.0, -1.5, -3.0, -4.5, -6.0, and -60. The value -60 mutes the channel. This setting applies only if you keep the default value of 3/2 - L, R, C, Ls, Rs for the setting Coding mode. If you choose a different value for Coding mode, the service ignores Left only/Right only center.
321 pub fn get_lo_ro_center_mix_level(&self) -> &::std::option::Option<f64> {
322 &self.lo_ro_center_mix_level
323 }
324 /// Specify a value for the following Dolby Digital Plus setting: Left only/Right only. MediaConvert uses this value for downmixing. How the service uses this value depends on the value that you choose for Stereo downmix. Valid values: -1.5, -3.0, -4.5, -6.0, and -60. The value -60 mutes the channel. This setting applies only if you keep the default value of 3/2 - L, R, C, Ls, Rs for the setting Coding mode. If you choose a different value for Coding mode, the service ignores Left only/Right only surround.
325 pub fn lo_ro_surround_mix_level(mut self, input: f64) -> Self {
326 self.lo_ro_surround_mix_level = ::std::option::Option::Some(input);
327 self
328 }
329 /// Specify a value for the following Dolby Digital Plus setting: Left only/Right only. MediaConvert uses this value for downmixing. How the service uses this value depends on the value that you choose for Stereo downmix. Valid values: -1.5, -3.0, -4.5, -6.0, and -60. The value -60 mutes the channel. This setting applies only if you keep the default value of 3/2 - L, R, C, Ls, Rs for the setting Coding mode. If you choose a different value for Coding mode, the service ignores Left only/Right only surround.
330 pub fn set_lo_ro_surround_mix_level(mut self, input: ::std::option::Option<f64>) -> Self {
331 self.lo_ro_surround_mix_level = input;
332 self
333 }
334 /// Specify a value for the following Dolby Digital Plus setting: Left only/Right only. MediaConvert uses this value for downmixing. How the service uses this value depends on the value that you choose for Stereo downmix. Valid values: -1.5, -3.0, -4.5, -6.0, and -60. The value -60 mutes the channel. This setting applies only if you keep the default value of 3/2 - L, R, C, Ls, Rs for the setting Coding mode. If you choose a different value for Coding mode, the service ignores Left only/Right only surround.
335 pub fn get_lo_ro_surround_mix_level(&self) -> &::std::option::Option<f64> {
336 &self.lo_ro_surround_mix_level
337 }
338 /// Specify a value for the following Dolby Digital Plus setting: Left total/Right total center mix. MediaConvert uses this value for downmixing. How the service uses this value depends on the value that you choose for Stereo downmix. Valid values: 3.0, 1.5, 0.0, -1.5, -3.0, -4.5, -6.0, and -60. The value -60 mutes the channel. This setting applies only if you keep the default value of 3/2 - L, R, C, Ls, Rs for the setting Coding mode. If you choose a different value for Coding mode, the service ignores Left total/Right total center.
339 pub fn lt_rt_center_mix_level(mut self, input: f64) -> Self {
340 self.lt_rt_center_mix_level = ::std::option::Option::Some(input);
341 self
342 }
343 /// Specify a value for the following Dolby Digital Plus setting: Left total/Right total center mix. MediaConvert uses this value for downmixing. How the service uses this value depends on the value that you choose for Stereo downmix. Valid values: 3.0, 1.5, 0.0, -1.5, -3.0, -4.5, -6.0, and -60. The value -60 mutes the channel. This setting applies only if you keep the default value of 3/2 - L, R, C, Ls, Rs for the setting Coding mode. If you choose a different value for Coding mode, the service ignores Left total/Right total center.
344 pub fn set_lt_rt_center_mix_level(mut self, input: ::std::option::Option<f64>) -> Self {
345 self.lt_rt_center_mix_level = input;
346 self
347 }
348 /// Specify a value for the following Dolby Digital Plus setting: Left total/Right total center mix. MediaConvert uses this value for downmixing. How the service uses this value depends on the value that you choose for Stereo downmix. Valid values: 3.0, 1.5, 0.0, -1.5, -3.0, -4.5, -6.0, and -60. The value -60 mutes the channel. This setting applies only if you keep the default value of 3/2 - L, R, C, Ls, Rs for the setting Coding mode. If you choose a different value for Coding mode, the service ignores Left total/Right total center.
349 pub fn get_lt_rt_center_mix_level(&self) -> &::std::option::Option<f64> {
350 &self.lt_rt_center_mix_level
351 }
352 /// Specify a value for the following Dolby Digital Plus setting: Left total/Right total surround mix. MediaConvert uses this value for downmixing. How the service uses this value depends on the value that you choose for Stereo downmix. Valid values: -1.5, -3.0, -4.5, -6.0, and -60. The value -60 mutes the channel. This setting applies only if you keep the default value of 3/2 - L, R, C, Ls, Rs for the setting Coding mode. If you choose a different value for Coding mode, the service ignores Left total/Right total surround.
353 pub fn lt_rt_surround_mix_level(mut self, input: f64) -> Self {
354 self.lt_rt_surround_mix_level = ::std::option::Option::Some(input);
355 self
356 }
357 /// Specify a value for the following Dolby Digital Plus setting: Left total/Right total surround mix. MediaConvert uses this value for downmixing. How the service uses this value depends on the value that you choose for Stereo downmix. Valid values: -1.5, -3.0, -4.5, -6.0, and -60. The value -60 mutes the channel. This setting applies only if you keep the default value of 3/2 - L, R, C, Ls, Rs for the setting Coding mode. If you choose a different value for Coding mode, the service ignores Left total/Right total surround.
358 pub fn set_lt_rt_surround_mix_level(mut self, input: ::std::option::Option<f64>) -> Self {
359 self.lt_rt_surround_mix_level = input;
360 self
361 }
362 /// Specify a value for the following Dolby Digital Plus setting: Left total/Right total surround mix. MediaConvert uses this value for downmixing. How the service uses this value depends on the value that you choose for Stereo downmix. Valid values: -1.5, -3.0, -4.5, -6.0, and -60. The value -60 mutes the channel. This setting applies only if you keep the default value of 3/2 - L, R, C, Ls, Rs for the setting Coding mode. If you choose a different value for Coding mode, the service ignores Left total/Right total surround.
363 pub fn get_lt_rt_surround_mix_level(&self) -> &::std::option::Option<f64> {
364 &self.lt_rt_surround_mix_level
365 }
366 /// When set to FOLLOW_INPUT, encoder metadata will be sourced from the DD, DD+, or DolbyE decoder that supplied this audio data. If audio was not supplied from one of these streams, then the static metadata settings will be used.
367 pub fn metadata_control(mut self, input: crate::types::Eac3MetadataControl) -> Self {
368 self.metadata_control = ::std::option::Option::Some(input);
369 self
370 }
371 /// When set to FOLLOW_INPUT, encoder metadata will be sourced from the DD, DD+, or DolbyE decoder that supplied this audio data. If audio was not supplied from one of these streams, then the static metadata settings will be used.
372 pub fn set_metadata_control(mut self, input: ::std::option::Option<crate::types::Eac3MetadataControl>) -> Self {
373 self.metadata_control = input;
374 self
375 }
376 /// When set to FOLLOW_INPUT, encoder metadata will be sourced from the DD, DD+, or DolbyE decoder that supplied this audio data. If audio was not supplied from one of these streams, then the static metadata settings will be used.
377 pub fn get_metadata_control(&self) -> &::std::option::Option<crate::types::Eac3MetadataControl> {
378 &self.metadata_control
379 }
380 /// When set to WHEN_POSSIBLE, input DD+ audio will be passed through if it is present on the input. this detection is dynamic over the life of the transcode. Inputs that alternate between DD+ and non-DD+ content will have a consistent DD+ output as the system alternates between passthrough and encoding.
381 pub fn passthrough_control(mut self, input: crate::types::Eac3PassthroughControl) -> Self {
382 self.passthrough_control = ::std::option::Option::Some(input);
383 self
384 }
385 /// When set to WHEN_POSSIBLE, input DD+ audio will be passed through if it is present on the input. this detection is dynamic over the life of the transcode. Inputs that alternate between DD+ and non-DD+ content will have a consistent DD+ output as the system alternates between passthrough and encoding.
386 pub fn set_passthrough_control(mut self, input: ::std::option::Option<crate::types::Eac3PassthroughControl>) -> Self {
387 self.passthrough_control = input;
388 self
389 }
390 /// When set to WHEN_POSSIBLE, input DD+ audio will be passed through if it is present on the input. this detection is dynamic over the life of the transcode. Inputs that alternate between DD+ and non-DD+ content will have a consistent DD+ output as the system alternates between passthrough and encoding.
391 pub fn get_passthrough_control(&self) -> &::std::option::Option<crate::types::Eac3PassthroughControl> {
392 &self.passthrough_control
393 }
394 /// Controls the amount of phase-shift applied to the surround channels. Only used for 3/2 coding mode.
395 pub fn phase_control(mut self, input: crate::types::Eac3PhaseControl) -> Self {
396 self.phase_control = ::std::option::Option::Some(input);
397 self
398 }
399 /// Controls the amount of phase-shift applied to the surround channels. Only used for 3/2 coding mode.
400 pub fn set_phase_control(mut self, input: ::std::option::Option<crate::types::Eac3PhaseControl>) -> Self {
401 self.phase_control = input;
402 self
403 }
404 /// Controls the amount of phase-shift applied to the surround channels. Only used for 3/2 coding mode.
405 pub fn get_phase_control(&self) -> &::std::option::Option<crate::types::Eac3PhaseControl> {
406 &self.phase_control
407 }
408 /// This value is always 48000. It represents the sample rate in Hz.
409 pub fn sample_rate(mut self, input: i32) -> Self {
410 self.sample_rate = ::std::option::Option::Some(input);
411 self
412 }
413 /// This value is always 48000. It represents the sample rate in Hz.
414 pub fn set_sample_rate(mut self, input: ::std::option::Option<i32>) -> Self {
415 self.sample_rate = input;
416 self
417 }
418 /// This value is always 48000. It represents the sample rate in Hz.
419 pub fn get_sample_rate(&self) -> &::std::option::Option<i32> {
420 &self.sample_rate
421 }
422 /// Choose how the service does stereo downmixing. This setting only applies if you keep the default value of 3/2 - L, R, C, Ls, Rs for the setting Coding mode. If you choose a different value for Coding mode, the service ignores Stereo downmix.
423 pub fn stereo_downmix(mut self, input: crate::types::Eac3StereoDownmix) -> Self {
424 self.stereo_downmix = ::std::option::Option::Some(input);
425 self
426 }
427 /// Choose how the service does stereo downmixing. This setting only applies if you keep the default value of 3/2 - L, R, C, Ls, Rs for the setting Coding mode. If you choose a different value for Coding mode, the service ignores Stereo downmix.
428 pub fn set_stereo_downmix(mut self, input: ::std::option::Option<crate::types::Eac3StereoDownmix>) -> Self {
429 self.stereo_downmix = input;
430 self
431 }
432 /// Choose how the service does stereo downmixing. This setting only applies if you keep the default value of 3/2 - L, R, C, Ls, Rs for the setting Coding mode. If you choose a different value for Coding mode, the service ignores Stereo downmix.
433 pub fn get_stereo_downmix(&self) -> &::std::option::Option<crate::types::Eac3StereoDownmix> {
434 &self.stereo_downmix
435 }
436 /// When encoding 3/2 audio, sets whether an extra center back surround channel is matrix encoded into the left and right surround channels.
437 pub fn surround_ex_mode(mut self, input: crate::types::Eac3SurroundExMode) -> Self {
438 self.surround_ex_mode = ::std::option::Option::Some(input);
439 self
440 }
441 /// When encoding 3/2 audio, sets whether an extra center back surround channel is matrix encoded into the left and right surround channels.
442 pub fn set_surround_ex_mode(mut self, input: ::std::option::Option<crate::types::Eac3SurroundExMode>) -> Self {
443 self.surround_ex_mode = input;
444 self
445 }
446 /// When encoding 3/2 audio, sets whether an extra center back surround channel is matrix encoded into the left and right surround channels.
447 pub fn get_surround_ex_mode(&self) -> &::std::option::Option<crate::types::Eac3SurroundExMode> {
448 &self.surround_ex_mode
449 }
450 /// When encoding 2/0 audio, sets whether Dolby Surround is matrix encoded into the two channels.
451 pub fn surround_mode(mut self, input: crate::types::Eac3SurroundMode) -> Self {
452 self.surround_mode = ::std::option::Option::Some(input);
453 self
454 }
455 /// When encoding 2/0 audio, sets whether Dolby Surround is matrix encoded into the two channels.
456 pub fn set_surround_mode(mut self, input: ::std::option::Option<crate::types::Eac3SurroundMode>) -> Self {
457 self.surround_mode = input;
458 self
459 }
460 /// When encoding 2/0 audio, sets whether Dolby Surround is matrix encoded into the two channels.
461 pub fn get_surround_mode(&self) -> &::std::option::Option<crate::types::Eac3SurroundMode> {
462 &self.surround_mode
463 }
464 /// Consumes the builder and constructs a [`Eac3Settings`](crate::types::Eac3Settings).
465 pub fn build(self) -> crate::types::Eac3Settings {
466 crate::types::Eac3Settings {
467 attenuation_control: self.attenuation_control,
468 bitrate: self.bitrate,
469 bitstream_mode: self.bitstream_mode,
470 coding_mode: self.coding_mode,
471 dc_filter: self.dc_filter,
472 dialnorm: self.dialnorm,
473 dynamic_range_compression_line: self.dynamic_range_compression_line,
474 dynamic_range_compression_rf: self.dynamic_range_compression_rf,
475 lfe_control: self.lfe_control,
476 lfe_filter: self.lfe_filter,
477 lo_ro_center_mix_level: self.lo_ro_center_mix_level,
478 lo_ro_surround_mix_level: self.lo_ro_surround_mix_level,
479 lt_rt_center_mix_level: self.lt_rt_center_mix_level,
480 lt_rt_surround_mix_level: self.lt_rt_surround_mix_level,
481 metadata_control: self.metadata_control,
482 passthrough_control: self.passthrough_control,
483 phase_control: self.phase_control,
484 sample_rate: self.sample_rate,
485 stereo_downmix: self.stereo_downmix,
486 surround_ex_mode: self.surround_ex_mode,
487 surround_mode: self.surround_mode,
488 }
489 }
490}