aws_sdk_medialive/operation/create_input/
_create_input_input.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2
3/// The name of the input
4#[non_exhaustive]
5#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
6pub struct CreateInputInput {
7    /// Destination settings for PUSH type inputs.
8    pub destinations: ::std::option::Option<::std::vec::Vec<crate::types::InputDestinationRequest>>,
9    /// Settings for the devices.
10    pub input_devices: ::std::option::Option<::std::vec::Vec<crate::types::InputDeviceSettings>>,
11    /// A list of security groups referenced by IDs to attach to the input.
12    pub input_security_groups: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
13    /// A list of the MediaConnect Flows that you want to use in this input. You can specify as few as one Flow and presently, as many as two. The only requirement is when you have more than one is that each Flow is in a separate Availability Zone as this ensures your EML input is redundant to AZ issues.
14    pub media_connect_flows: ::std::option::Option<::std::vec::Vec<crate::types::MediaConnectFlowRequest>>,
15    /// Name of the input.
16    pub name: ::std::option::Option<::std::string::String>,
17    /// Unique identifier of the request to ensure the request is handled exactly once in case of retries.
18    pub request_id: ::std::option::Option<::std::string::String>,
19    /// The Amazon Resource Name (ARN) of the role this input assumes during and after creation.
20    pub role_arn: ::std::option::Option<::std::string::String>,
21    /// The source URLs for a PULL-type input. Every PULL type input needs exactly two source URLs for redundancy. Only specify sources for PULL type Inputs. Leave Destinations empty.
22    pub sources: ::std::option::Option<::std::vec::Vec<crate::types::InputSourceRequest>>,
23    /// A collection of key-value pairs.
24    pub tags: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>,
25    /// The different types of inputs that AWS Elemental MediaLive supports.
26    pub r#type: ::std::option::Option<crate::types::InputType>,
27    /// Settings for a private VPC Input. When this property is specified, the input destination addresses will be created in a VPC rather than with public Internet addresses. This property requires setting the roleArn property on Input creation. Not compatible with the inputSecurityGroups property.
28    pub vpc: ::std::option::Option<crate::types::InputVpcRequest>,
29    /// The settings associated with an SRT input.
30    pub srt_settings: ::std::option::Option<crate::types::SrtSettingsRequest>,
31    /// The location of this input. AWS, for an input existing in the AWS Cloud, On-Prem for an input in a customer network.
32    pub input_network_location: ::std::option::Option<crate::types::InputNetworkLocation>,
33    /// Multicast Input settings.
34    pub multicast_settings: ::std::option::Option<crate::types::MulticastSettingsCreateRequest>,
35    /// Include this parameter if the input is a SMPTE 2110 input, to identify the stream sources for this input.
36    pub smpte2110_receiver_group_settings: ::std::option::Option<crate::types::Smpte2110ReceiverGroupSettings>,
37    /// SDI Sources for this Input.
38    pub sdi_sources: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
39}
40impl CreateInputInput {
41    /// Destination settings for PUSH type inputs.
42    ///
43    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.destinations.is_none()`.
44    pub fn destinations(&self) -> &[crate::types::InputDestinationRequest] {
45        self.destinations.as_deref().unwrap_or_default()
46    }
47    /// Settings for the devices.
48    ///
49    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.input_devices.is_none()`.
50    pub fn input_devices(&self) -> &[crate::types::InputDeviceSettings] {
51        self.input_devices.as_deref().unwrap_or_default()
52    }
53    /// A list of security groups referenced by IDs to attach to the input.
54    ///
55    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.input_security_groups.is_none()`.
56    pub fn input_security_groups(&self) -> &[::std::string::String] {
57        self.input_security_groups.as_deref().unwrap_or_default()
58    }
59    /// A list of the MediaConnect Flows that you want to use in this input. You can specify as few as one Flow and presently, as many as two. The only requirement is when you have more than one is that each Flow is in a separate Availability Zone as this ensures your EML input is redundant to AZ issues.
60    ///
61    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.media_connect_flows.is_none()`.
62    pub fn media_connect_flows(&self) -> &[crate::types::MediaConnectFlowRequest] {
63        self.media_connect_flows.as_deref().unwrap_or_default()
64    }
65    /// Name of the input.
66    pub fn name(&self) -> ::std::option::Option<&str> {
67        self.name.as_deref()
68    }
69    /// Unique identifier of the request to ensure the request is handled exactly once in case of retries.
70    pub fn request_id(&self) -> ::std::option::Option<&str> {
71        self.request_id.as_deref()
72    }
73    /// The Amazon Resource Name (ARN) of the role this input assumes during and after creation.
74    pub fn role_arn(&self) -> ::std::option::Option<&str> {
75        self.role_arn.as_deref()
76    }
77    /// The source URLs for a PULL-type input. Every PULL type input needs exactly two source URLs for redundancy. Only specify sources for PULL type Inputs. Leave Destinations empty.
78    ///
79    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.sources.is_none()`.
80    pub fn sources(&self) -> &[crate::types::InputSourceRequest] {
81        self.sources.as_deref().unwrap_or_default()
82    }
83    /// A collection of key-value pairs.
84    pub fn tags(&self) -> ::std::option::Option<&::std::collections::HashMap<::std::string::String, ::std::string::String>> {
85        self.tags.as_ref()
86    }
87    /// The different types of inputs that AWS Elemental MediaLive supports.
88    pub fn r#type(&self) -> ::std::option::Option<&crate::types::InputType> {
89        self.r#type.as_ref()
90    }
91    /// Settings for a private VPC Input. When this property is specified, the input destination addresses will be created in a VPC rather than with public Internet addresses. This property requires setting the roleArn property on Input creation. Not compatible with the inputSecurityGroups property.
92    pub fn vpc(&self) -> ::std::option::Option<&crate::types::InputVpcRequest> {
93        self.vpc.as_ref()
94    }
95    /// The settings associated with an SRT input.
96    pub fn srt_settings(&self) -> ::std::option::Option<&crate::types::SrtSettingsRequest> {
97        self.srt_settings.as_ref()
98    }
99    /// The location of this input. AWS, for an input existing in the AWS Cloud, On-Prem for an input in a customer network.
100    pub fn input_network_location(&self) -> ::std::option::Option<&crate::types::InputNetworkLocation> {
101        self.input_network_location.as_ref()
102    }
103    /// Multicast Input settings.
104    pub fn multicast_settings(&self) -> ::std::option::Option<&crate::types::MulticastSettingsCreateRequest> {
105        self.multicast_settings.as_ref()
106    }
107    /// Include this parameter if the input is a SMPTE 2110 input, to identify the stream sources for this input.
108    pub fn smpte2110_receiver_group_settings(&self) -> ::std::option::Option<&crate::types::Smpte2110ReceiverGroupSettings> {
109        self.smpte2110_receiver_group_settings.as_ref()
110    }
111    /// SDI Sources for this Input.
112    ///
113    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.sdi_sources.is_none()`.
114    pub fn sdi_sources(&self) -> &[::std::string::String] {
115        self.sdi_sources.as_deref().unwrap_or_default()
116    }
117}
118impl CreateInputInput {
119    /// Creates a new builder-style object to manufacture [`CreateInputInput`](crate::operation::create_input::CreateInputInput).
120    pub fn builder() -> crate::operation::create_input::builders::CreateInputInputBuilder {
121        crate::operation::create_input::builders::CreateInputInputBuilder::default()
122    }
123}
124
125/// A builder for [`CreateInputInput`](crate::operation::create_input::CreateInputInput).
126#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
127#[non_exhaustive]
128pub struct CreateInputInputBuilder {
129    pub(crate) destinations: ::std::option::Option<::std::vec::Vec<crate::types::InputDestinationRequest>>,
130    pub(crate) input_devices: ::std::option::Option<::std::vec::Vec<crate::types::InputDeviceSettings>>,
131    pub(crate) input_security_groups: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
132    pub(crate) media_connect_flows: ::std::option::Option<::std::vec::Vec<crate::types::MediaConnectFlowRequest>>,
133    pub(crate) name: ::std::option::Option<::std::string::String>,
134    pub(crate) request_id: ::std::option::Option<::std::string::String>,
135    pub(crate) role_arn: ::std::option::Option<::std::string::String>,
136    pub(crate) sources: ::std::option::Option<::std::vec::Vec<crate::types::InputSourceRequest>>,
137    pub(crate) tags: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>,
138    pub(crate) r#type: ::std::option::Option<crate::types::InputType>,
139    pub(crate) vpc: ::std::option::Option<crate::types::InputVpcRequest>,
140    pub(crate) srt_settings: ::std::option::Option<crate::types::SrtSettingsRequest>,
141    pub(crate) input_network_location: ::std::option::Option<crate::types::InputNetworkLocation>,
142    pub(crate) multicast_settings: ::std::option::Option<crate::types::MulticastSettingsCreateRequest>,
143    pub(crate) smpte2110_receiver_group_settings: ::std::option::Option<crate::types::Smpte2110ReceiverGroupSettings>,
144    pub(crate) sdi_sources: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
145}
146impl CreateInputInputBuilder {
147    /// Appends an item to `destinations`.
148    ///
149    /// To override the contents of this collection use [`set_destinations`](Self::set_destinations).
150    ///
151    /// Destination settings for PUSH type inputs.
152    pub fn destinations(mut self, input: crate::types::InputDestinationRequest) -> Self {
153        let mut v = self.destinations.unwrap_or_default();
154        v.push(input);
155        self.destinations = ::std::option::Option::Some(v);
156        self
157    }
158    /// Destination settings for PUSH type inputs.
159    pub fn set_destinations(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::InputDestinationRequest>>) -> Self {
160        self.destinations = input;
161        self
162    }
163    /// Destination settings for PUSH type inputs.
164    pub fn get_destinations(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::InputDestinationRequest>> {
165        &self.destinations
166    }
167    /// Appends an item to `input_devices`.
168    ///
169    /// To override the contents of this collection use [`set_input_devices`](Self::set_input_devices).
170    ///
171    /// Settings for the devices.
172    pub fn input_devices(mut self, input: crate::types::InputDeviceSettings) -> Self {
173        let mut v = self.input_devices.unwrap_or_default();
174        v.push(input);
175        self.input_devices = ::std::option::Option::Some(v);
176        self
177    }
178    /// Settings for the devices.
179    pub fn set_input_devices(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::InputDeviceSettings>>) -> Self {
180        self.input_devices = input;
181        self
182    }
183    /// Settings for the devices.
184    pub fn get_input_devices(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::InputDeviceSettings>> {
185        &self.input_devices
186    }
187    /// Appends an item to `input_security_groups`.
188    ///
189    /// To override the contents of this collection use [`set_input_security_groups`](Self::set_input_security_groups).
190    ///
191    /// A list of security groups referenced by IDs to attach to the input.
192    pub fn input_security_groups(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
193        let mut v = self.input_security_groups.unwrap_or_default();
194        v.push(input.into());
195        self.input_security_groups = ::std::option::Option::Some(v);
196        self
197    }
198    /// A list of security groups referenced by IDs to attach to the input.
199    pub fn set_input_security_groups(mut self, input: ::std::option::Option<::std::vec::Vec<::std::string::String>>) -> Self {
200        self.input_security_groups = input;
201        self
202    }
203    /// A list of security groups referenced by IDs to attach to the input.
204    pub fn get_input_security_groups(&self) -> &::std::option::Option<::std::vec::Vec<::std::string::String>> {
205        &self.input_security_groups
206    }
207    /// Appends an item to `media_connect_flows`.
208    ///
209    /// To override the contents of this collection use [`set_media_connect_flows`](Self::set_media_connect_flows).
210    ///
211    /// A list of the MediaConnect Flows that you want to use in this input. You can specify as few as one Flow and presently, as many as two. The only requirement is when you have more than one is that each Flow is in a separate Availability Zone as this ensures your EML input is redundant to AZ issues.
212    pub fn media_connect_flows(mut self, input: crate::types::MediaConnectFlowRequest) -> Self {
213        let mut v = self.media_connect_flows.unwrap_or_default();
214        v.push(input);
215        self.media_connect_flows = ::std::option::Option::Some(v);
216        self
217    }
218    /// A list of the MediaConnect Flows that you want to use in this input. You can specify as few as one Flow and presently, as many as two. The only requirement is when you have more than one is that each Flow is in a separate Availability Zone as this ensures your EML input is redundant to AZ issues.
219    pub fn set_media_connect_flows(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::MediaConnectFlowRequest>>) -> Self {
220        self.media_connect_flows = input;
221        self
222    }
223    /// A list of the MediaConnect Flows that you want to use in this input. You can specify as few as one Flow and presently, as many as two. The only requirement is when you have more than one is that each Flow is in a separate Availability Zone as this ensures your EML input is redundant to AZ issues.
224    pub fn get_media_connect_flows(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::MediaConnectFlowRequest>> {
225        &self.media_connect_flows
226    }
227    /// Name of the input.
228    pub fn name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
229        self.name = ::std::option::Option::Some(input.into());
230        self
231    }
232    /// Name of the input.
233    pub fn set_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
234        self.name = input;
235        self
236    }
237    /// Name of the input.
238    pub fn get_name(&self) -> &::std::option::Option<::std::string::String> {
239        &self.name
240    }
241    /// Unique identifier of the request to ensure the request is handled exactly once in case of retries.
242    pub fn request_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
243        self.request_id = ::std::option::Option::Some(input.into());
244        self
245    }
246    /// Unique identifier of the request to ensure the request is handled exactly once in case of retries.
247    pub fn set_request_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
248        self.request_id = input;
249        self
250    }
251    /// Unique identifier of the request to ensure the request is handled exactly once in case of retries.
252    pub fn get_request_id(&self) -> &::std::option::Option<::std::string::String> {
253        &self.request_id
254    }
255    /// The Amazon Resource Name (ARN) of the role this input assumes during and after creation.
256    pub fn role_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
257        self.role_arn = ::std::option::Option::Some(input.into());
258        self
259    }
260    /// The Amazon Resource Name (ARN) of the role this input assumes during and after creation.
261    pub fn set_role_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
262        self.role_arn = input;
263        self
264    }
265    /// The Amazon Resource Name (ARN) of the role this input assumes during and after creation.
266    pub fn get_role_arn(&self) -> &::std::option::Option<::std::string::String> {
267        &self.role_arn
268    }
269    /// Appends an item to `sources`.
270    ///
271    /// To override the contents of this collection use [`set_sources`](Self::set_sources).
272    ///
273    /// The source URLs for a PULL-type input. Every PULL type input needs exactly two source URLs for redundancy. Only specify sources for PULL type Inputs. Leave Destinations empty.
274    pub fn sources(mut self, input: crate::types::InputSourceRequest) -> Self {
275        let mut v = self.sources.unwrap_or_default();
276        v.push(input);
277        self.sources = ::std::option::Option::Some(v);
278        self
279    }
280    /// The source URLs for a PULL-type input. Every PULL type input needs exactly two source URLs for redundancy. Only specify sources for PULL type Inputs. Leave Destinations empty.
281    pub fn set_sources(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::InputSourceRequest>>) -> Self {
282        self.sources = input;
283        self
284    }
285    /// The source URLs for a PULL-type input. Every PULL type input needs exactly two source URLs for redundancy. Only specify sources for PULL type Inputs. Leave Destinations empty.
286    pub fn get_sources(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::InputSourceRequest>> {
287        &self.sources
288    }
289    /// Adds a key-value pair to `tags`.
290    ///
291    /// To override the contents of this collection use [`set_tags`](Self::set_tags).
292    ///
293    /// A collection of key-value pairs.
294    pub fn tags(mut self, k: impl ::std::convert::Into<::std::string::String>, v: impl ::std::convert::Into<::std::string::String>) -> Self {
295        let mut hash_map = self.tags.unwrap_or_default();
296        hash_map.insert(k.into(), v.into());
297        self.tags = ::std::option::Option::Some(hash_map);
298        self
299    }
300    /// A collection of key-value pairs.
301    pub fn set_tags(mut self, input: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>) -> Self {
302        self.tags = input;
303        self
304    }
305    /// A collection of key-value pairs.
306    pub fn get_tags(&self) -> &::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>> {
307        &self.tags
308    }
309    /// The different types of inputs that AWS Elemental MediaLive supports.
310    pub fn r#type(mut self, input: crate::types::InputType) -> Self {
311        self.r#type = ::std::option::Option::Some(input);
312        self
313    }
314    /// The different types of inputs that AWS Elemental MediaLive supports.
315    pub fn set_type(mut self, input: ::std::option::Option<crate::types::InputType>) -> Self {
316        self.r#type = input;
317        self
318    }
319    /// The different types of inputs that AWS Elemental MediaLive supports.
320    pub fn get_type(&self) -> &::std::option::Option<crate::types::InputType> {
321        &self.r#type
322    }
323    /// Settings for a private VPC Input. When this property is specified, the input destination addresses will be created in a VPC rather than with public Internet addresses. This property requires setting the roleArn property on Input creation. Not compatible with the inputSecurityGroups property.
324    pub fn vpc(mut self, input: crate::types::InputVpcRequest) -> Self {
325        self.vpc = ::std::option::Option::Some(input);
326        self
327    }
328    /// Settings for a private VPC Input. When this property is specified, the input destination addresses will be created in a VPC rather than with public Internet addresses. This property requires setting the roleArn property on Input creation. Not compatible with the inputSecurityGroups property.
329    pub fn set_vpc(mut self, input: ::std::option::Option<crate::types::InputVpcRequest>) -> Self {
330        self.vpc = input;
331        self
332    }
333    /// Settings for a private VPC Input. When this property is specified, the input destination addresses will be created in a VPC rather than with public Internet addresses. This property requires setting the roleArn property on Input creation. Not compatible with the inputSecurityGroups property.
334    pub fn get_vpc(&self) -> &::std::option::Option<crate::types::InputVpcRequest> {
335        &self.vpc
336    }
337    /// The settings associated with an SRT input.
338    pub fn srt_settings(mut self, input: crate::types::SrtSettingsRequest) -> Self {
339        self.srt_settings = ::std::option::Option::Some(input);
340        self
341    }
342    /// The settings associated with an SRT input.
343    pub fn set_srt_settings(mut self, input: ::std::option::Option<crate::types::SrtSettingsRequest>) -> Self {
344        self.srt_settings = input;
345        self
346    }
347    /// The settings associated with an SRT input.
348    pub fn get_srt_settings(&self) -> &::std::option::Option<crate::types::SrtSettingsRequest> {
349        &self.srt_settings
350    }
351    /// The location of this input. AWS, for an input existing in the AWS Cloud, On-Prem for an input in a customer network.
352    pub fn input_network_location(mut self, input: crate::types::InputNetworkLocation) -> Self {
353        self.input_network_location = ::std::option::Option::Some(input);
354        self
355    }
356    /// The location of this input. AWS, for an input existing in the AWS Cloud, On-Prem for an input in a customer network.
357    pub fn set_input_network_location(mut self, input: ::std::option::Option<crate::types::InputNetworkLocation>) -> Self {
358        self.input_network_location = input;
359        self
360    }
361    /// The location of this input. AWS, for an input existing in the AWS Cloud, On-Prem for an input in a customer network.
362    pub fn get_input_network_location(&self) -> &::std::option::Option<crate::types::InputNetworkLocation> {
363        &self.input_network_location
364    }
365    /// Multicast Input settings.
366    pub fn multicast_settings(mut self, input: crate::types::MulticastSettingsCreateRequest) -> Self {
367        self.multicast_settings = ::std::option::Option::Some(input);
368        self
369    }
370    /// Multicast Input settings.
371    pub fn set_multicast_settings(mut self, input: ::std::option::Option<crate::types::MulticastSettingsCreateRequest>) -> Self {
372        self.multicast_settings = input;
373        self
374    }
375    /// Multicast Input settings.
376    pub fn get_multicast_settings(&self) -> &::std::option::Option<crate::types::MulticastSettingsCreateRequest> {
377        &self.multicast_settings
378    }
379    /// Include this parameter if the input is a SMPTE 2110 input, to identify the stream sources for this input.
380    pub fn smpte2110_receiver_group_settings(mut self, input: crate::types::Smpte2110ReceiverGroupSettings) -> Self {
381        self.smpte2110_receiver_group_settings = ::std::option::Option::Some(input);
382        self
383    }
384    /// Include this parameter if the input is a SMPTE 2110 input, to identify the stream sources for this input.
385    pub fn set_smpte2110_receiver_group_settings(mut self, input: ::std::option::Option<crate::types::Smpte2110ReceiverGroupSettings>) -> Self {
386        self.smpte2110_receiver_group_settings = input;
387        self
388    }
389    /// Include this parameter if the input is a SMPTE 2110 input, to identify the stream sources for this input.
390    pub fn get_smpte2110_receiver_group_settings(&self) -> &::std::option::Option<crate::types::Smpte2110ReceiverGroupSettings> {
391        &self.smpte2110_receiver_group_settings
392    }
393    /// Appends an item to `sdi_sources`.
394    ///
395    /// To override the contents of this collection use [`set_sdi_sources`](Self::set_sdi_sources).
396    ///
397    /// SDI Sources for this Input.
398    pub fn sdi_sources(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
399        let mut v = self.sdi_sources.unwrap_or_default();
400        v.push(input.into());
401        self.sdi_sources = ::std::option::Option::Some(v);
402        self
403    }
404    /// SDI Sources for this Input.
405    pub fn set_sdi_sources(mut self, input: ::std::option::Option<::std::vec::Vec<::std::string::String>>) -> Self {
406        self.sdi_sources = input;
407        self
408    }
409    /// SDI Sources for this Input.
410    pub fn get_sdi_sources(&self) -> &::std::option::Option<::std::vec::Vec<::std::string::String>> {
411        &self.sdi_sources
412    }
413    /// Consumes the builder and constructs a [`CreateInputInput`](crate::operation::create_input::CreateInputInput).
414    pub fn build(self) -> ::std::result::Result<crate::operation::create_input::CreateInputInput, ::aws_smithy_types::error::operation::BuildError> {
415        ::std::result::Result::Ok(crate::operation::create_input::CreateInputInput {
416            destinations: self.destinations,
417            input_devices: self.input_devices,
418            input_security_groups: self.input_security_groups,
419            media_connect_flows: self.media_connect_flows,
420            name: self.name,
421            request_id: self.request_id,
422            role_arn: self.role_arn,
423            sources: self.sources,
424            tags: self.tags,
425            r#type: self.r#type,
426            vpc: self.vpc,
427            srt_settings: self.srt_settings,
428            input_network_location: self.input_network_location,
429            multicast_settings: self.multicast_settings,
430            smpte2110_receiver_group_settings: self.smpte2110_receiver_group_settings,
431            sdi_sources: self.sdi_sources,
432        })
433    }
434}