Class: AWSCDK::MediaConnect::CfnFlowOutputProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
media_connect/cfn_flow_output_props.rb

Overview

Properties for defining a CfnFlowOutput.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(flow_arn:, cidr_allow_list: nil, description: nil, destination: nil, encryption: nil, max_latency: nil, media_stream_output_configurations: nil, min_latency: nil, name: nil, ndi_output_timecode_source: nil, ndi_program_name: nil, ndi_speed_hq_quality: nil, output_status: nil, port: nil, protocol: nil, remote_id: nil, router_integration_state: nil, router_integration_transit_encryption: nil, smoothing_latency: nil, stream_id: nil, tags: nil, vpc_interface_attachment: nil) ⇒ CfnFlowOutputProps

Returns a new instance of CfnFlowOutputProps.

Parameters:

  • flow_arn (String)

    The Amazon Resource Name (ARN) of the flow this output is attached to.

  • cidr_allow_list (Array<String>, nil) (defaults to: nil)

    The range of IP addresses that should be allowed to initiate output requests to this flow.

  • description (String, nil) (defaults to: nil)

    A description of the output.

  • destination (String, nil) (defaults to: nil)

    The IP address where you want to send the output.

  • encryption (AWSCDK::IResolvable, AWSCDK::MediaConnect::CfnFlowOutput::EncryptionProperty, nil) (defaults to: nil)

    The type of key used for the encryption.

  • max_latency (Numeric, nil) (defaults to: nil)

    The maximum latency in milliseconds.

  • media_stream_output_configurations (AWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::MediaConnect::CfnFlowOutput::MediaStreamOutputConfigurationProperty>, nil) (defaults to: nil)

    The media streams that are associated with the output, and the parameters for those associations.

  • min_latency (Numeric, nil) (defaults to: nil)

    The minimum latency in milliseconds for SRT-based streams.

  • name (String, nil) (defaults to: nil)

    The name of the bridge's output.

  • ndi_output_timecode_source (String, nil) (defaults to: nil)

    The timecode source for the NDI output.

  • ndi_program_name (String, nil) (defaults to: nil)

    A suffix for the names of the NDI sources that the flow creates.

  • ndi_speed_hq_quality (Numeric, nil) (defaults to: nil)

    A quality setting for the NDI Speed HQ encoder.

  • output_status (String, nil) (defaults to: nil)

    An indication of whether the output should transmit data or not.

  • port (Numeric, nil) (defaults to: nil)

    The port to use when content is distributed to this output.

  • protocol (String, nil) (defaults to: nil)

    The protocol to use for the output.

  • remote_id (String, nil) (defaults to: nil)

    The remote ID for the Zixi-pull stream.

  • router_integration_state (String, nil) (defaults to: nil)
  • router_integration_transit_encryption (AWSCDK::IResolvable, AWSCDK::MediaConnect::CfnFlowOutput::FlowTransitEncryptionProperty, nil) (defaults to: nil)

    Encryption information.

  • smoothing_latency (Numeric, nil) (defaults to: nil)

    The smoothing latency in milliseconds for RIST, RTP, and RTP-FEC streams.

  • stream_id (String, nil) (defaults to: nil)

    The stream ID that you want to use for this transport.

  • tags (Array<AWSCDK::CfnTag>, nil) (defaults to: nil)

    Key-value pairs that can be used to tag and organize this flow output.

  • vpc_interface_attachment (AWSCDK::IResolvable, AWSCDK::MediaConnect::CfnFlowOutput::VPCInterfaceAttachmentProperty, nil) (defaults to: nil)

    The name of the VPC interface attachment to use for this output.



31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
# File 'media_connect/cfn_flow_output_props.rb', line 31

def initialize(flow_arn:, cidr_allow_list: nil, description: nil, destination: nil, encryption: nil, max_latency: nil, media_stream_output_configurations: nil, min_latency: nil, name: nil, ndi_output_timecode_source: nil, ndi_program_name: nil, ndi_speed_hq_quality: nil, output_status: nil, port: nil, protocol: nil, remote_id: nil, router_integration_state: nil, router_integration_transit_encryption: nil, smoothing_latency: nil, stream_id: nil, tags: nil, vpc_interface_attachment: nil)
  @flow_arn = flow_arn
  Jsii::Type.check_type(@flow_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "flowArn")
  @cidr_allow_list = cidr_allow_list
  Jsii::Type.check_type(@cidr_allow_list, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "cidrAllowList") unless @cidr_allow_list.nil?
  @description = description
  Jsii::Type.check_type(@description, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "description") unless @description.nil?
  @destination = destination
  Jsii::Type.check_type(@destination, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "destination") unless @destination.nil?
  @encryption = encryption.is_a?(Hash) ? ::AWSCDK::MediaConnect::CfnFlowOutput::EncryptionProperty.new(**encryption.transform_keys(&:to_sym)) : encryption
  Jsii::Type.check_type(@encryption, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19tZWRpYWNvbm5lY3QuQ2ZuRmxvd091dHB1dC5FbmNyeXB0aW9uUHJvcGVydHkifV19fQ==")), "encryption") unless @encryption.nil?
  @max_latency = max_latency
  Jsii::Type.check_type(@max_latency, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "maxLatency") unless @max_latency.nil?
  @media_stream_output_configurations = media_stream_output_configurations
  Jsii::Type.check_type(@media_stream_output_configurations, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfbWVkaWFjb25uZWN0LkNmbkZsb3dPdXRwdXQuTWVkaWFTdHJlYW1PdXRwdXRDb25maWd1cmF0aW9uUHJvcGVydHkifV19fSwia2luZCI6ImFycmF5In19XX19")), "mediaStreamOutputConfigurations") unless @media_stream_output_configurations.nil?
  @min_latency = min_latency
  Jsii::Type.check_type(@min_latency, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "minLatency") unless @min_latency.nil?
  @name = name
  Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name") unless @name.nil?
  @ndi_output_timecode_source = ndi_output_timecode_source
  Jsii::Type.check_type(@ndi_output_timecode_source, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "ndiOutputTimecodeSource") unless @ndi_output_timecode_source.nil?
  @ndi_program_name = ndi_program_name
  Jsii::Type.check_type(@ndi_program_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "ndiProgramName") unless @ndi_program_name.nil?
  @ndi_speed_hq_quality = ndi_speed_hq_quality
  Jsii::Type.check_type(@ndi_speed_hq_quality, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "ndiSpeedHqQuality") unless @ndi_speed_hq_quality.nil?
  @output_status = output_status
  Jsii::Type.check_type(@output_status, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "outputStatus") unless @output_status.nil?
  @port = port
  Jsii::Type.check_type(@port, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "port") unless @port.nil?
  @protocol = protocol
  Jsii::Type.check_type(@protocol, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "protocol") unless @protocol.nil?
  @remote_id = remote_id
  Jsii::Type.check_type(@remote_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "remoteId") unless @remote_id.nil?
  @router_integration_state = router_integration_state
  Jsii::Type.check_type(@router_integration_state, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "routerIntegrationState") unless @router_integration_state.nil?
  @router_integration_transit_encryption = router_integration_transit_encryption.is_a?(Hash) ? ::AWSCDK::MediaConnect::CfnFlowOutput::FlowTransitEncryptionProperty.new(**router_integration_transit_encryption.transform_keys(&:to_sym)) : router_integration_transit_encryption
  Jsii::Type.check_type(@router_integration_transit_encryption, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19tZWRpYWNvbm5lY3QuQ2ZuRmxvd091dHB1dC5GbG93VHJhbnNpdEVuY3J5cHRpb25Qcm9wZXJ0eSJ9XX19")), "routerIntegrationTransitEncryption") unless @router_integration_transit_encryption.nil?
  @smoothing_latency = smoothing_latency
  Jsii::Type.check_type(@smoothing_latency, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "smoothingLatency") unless @smoothing_latency.nil?
  @stream_id = stream_id
  Jsii::Type.check_type(@stream_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "streamId") unless @stream_id.nil?
  @tags = tags.is_a?(Array) ? tags.map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : tags
  Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil?
  @vpc_interface_attachment = vpc_interface_attachment.is_a?(Hash) ? ::AWSCDK::MediaConnect::CfnFlowOutput::VPCInterfaceAttachmentProperty.new(**vpc_interface_attachment.transform_keys(&:to_sym)) : vpc_interface_attachment
  Jsii::Type.check_type(@vpc_interface_attachment, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19tZWRpYWNvbm5lY3QuQ2ZuRmxvd091dHB1dC5WcGNJbnRlcmZhY2VBdHRhY2htZW50UHJvcGVydHkifV19fQ==")), "vpcInterfaceAttachment") unless @vpc_interface_attachment.nil?
end

Instance Attribute Details

#cidr_allow_listArray<String>? (readonly)

The range of IP addresses that should be allowed to initiate output requests to this flow.

These IP addresses should be in the form of a Classless Inter-Domain Routing (CIDR) block; for example, 10.0.0.0/16.



89
90
91
# File 'media_connect/cfn_flow_output_props.rb', line 89

def cidr_allow_list
  @cidr_allow_list
end

#descriptionString? (readonly)

A description of the output.

This description appears only on the MediaConnect console and will not be seen by the end user.



96
97
98
# File 'media_connect/cfn_flow_output_props.rb', line 96

def description
  @description
end

#destinationString? (readonly)

The IP address where you want to send the output.



101
102
103
# File 'media_connect/cfn_flow_output_props.rb', line 101

def destination
  @destination
end

#encryptionAWSCDK::IResolvable, ... (readonly)

The type of key used for the encryption.

If no key_type is provided, the service will use the default setting (static-key). Allowable encryption types: static-key.



108
109
110
# File 'media_connect/cfn_flow_output_props.rb', line 108

def encryption
  @encryption
end

#flow_arnString (readonly)

The Amazon Resource Name (ARN) of the flow this output is attached to.



82
83
84
# File 'media_connect/cfn_flow_output_props.rb', line 82

def flow_arn
  @flow_arn
end

#max_latencyNumeric? (readonly)

The maximum latency in milliseconds.

This parameter applies only to RIST-based and Zixi-based streams.



115
116
117
# File 'media_connect/cfn_flow_output_props.rb', line 115

def max_latency
  @max_latency
end

#media_stream_output_configurationsAWSCDK::IResolvable, ... (readonly)

The media streams that are associated with the output, and the parameters for those associations.



120
121
122
# File 'media_connect/cfn_flow_output_props.rb', line 120

def media_stream_output_configurations
  @media_stream_output_configurations
end

#min_latencyNumeric? (readonly)

The minimum latency in milliseconds for SRT-based streams.

In streams that use the SRT protocol, this value that you set on your MediaConnect source or output represents the minimal potential latency of that connection. The latency of the stream is set to the highest number between the sender’s minimum latency and the receiver’s minimum latency.



127
128
129
# File 'media_connect/cfn_flow_output_props.rb', line 127

def min_latency
  @min_latency
end

#nameString? (readonly)

The name of the bridge's output.



132
133
134
# File 'media_connect/cfn_flow_output_props.rb', line 132

def name
  @name
end

#ndi_output_timecode_sourceString? (readonly)

The timecode source for the NDI output.



137
138
139
# File 'media_connect/cfn_flow_output_props.rb', line 137

def ndi_output_timecode_source
  @ndi_output_timecode_source
end

#ndi_program_nameString? (readonly)

A suffix for the names of the NDI sources that the flow creates.

If a custom name isn't specified, MediaConnect uses the output name.



144
145
146
# File 'media_connect/cfn_flow_output_props.rb', line 144

def ndi_program_name
  @ndi_program_name
end

#ndi_speed_hq_qualityNumeric? (readonly)

A quality setting for the NDI Speed HQ encoder.



149
150
151
# File 'media_connect/cfn_flow_output_props.rb', line 149

def ndi_speed_hq_quality
  @ndi_speed_hq_quality
end

#output_statusString? (readonly)

An indication of whether the output should transmit data or not.



154
155
156
# File 'media_connect/cfn_flow_output_props.rb', line 154

def output_status
  @output_status
end

#portNumeric? (readonly)

The port to use when content is distributed to this output.



159
160
161
# File 'media_connect/cfn_flow_output_props.rb', line 159

def port
  @port
end

#protocolString? (readonly)

The protocol to use for the output.

AWS Elemental MediaConnect no longer supports the Fujitsu QoS protocol. This reference is maintained for legacy purposes only.



166
167
168
# File 'media_connect/cfn_flow_output_props.rb', line 166

def protocol
  @protocol
end

#remote_idString? (readonly)

The remote ID for the Zixi-pull stream.



171
172
173
# File 'media_connect/cfn_flow_output_props.rb', line 171

def remote_id
  @remote_id
end

#router_integration_stateString? (readonly)



174
175
176
# File 'media_connect/cfn_flow_output_props.rb', line 174

def router_integration_state
  @router_integration_state
end

#router_integration_transit_encryptionAWSCDK::IResolvable, ... (readonly)

Encryption information.



179
180
181
# File 'media_connect/cfn_flow_output_props.rb', line 179

def router_integration_transit_encryption
  @router_integration_transit_encryption
end

#smoothing_latencyNumeric? (readonly)

The smoothing latency in milliseconds for RIST, RTP, and RTP-FEC streams.



184
185
186
# File 'media_connect/cfn_flow_output_props.rb', line 184

def smoothing_latency
  @smoothing_latency
end

#stream_idString? (readonly)

The stream ID that you want to use for this transport.

This parameter applies only to Zixi and SRT caller-based streams.



191
192
193
# File 'media_connect/cfn_flow_output_props.rb', line 191

def stream_id
  @stream_id
end

#tagsArray<AWSCDK::CfnTag>? (readonly)

Key-value pairs that can be used to tag and organize this flow output.



196
197
198
# File 'media_connect/cfn_flow_output_props.rb', line 196

def tags
  @tags
end

#vpc_interface_attachmentAWSCDK::IResolvable, ... (readonly)

The name of the VPC interface attachment to use for this output.



201
202
203
# File 'media_connect/cfn_flow_output_props.rb', line 201

def vpc_interface_attachment
  @vpc_interface_attachment
end

Class Method Details

.jsii_propertiesObject



203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
# File 'media_connect/cfn_flow_output_props.rb', line 203

def self.jsii_properties
  {
    :flow_arn => "flowArn",
    :cidr_allow_list => "cidrAllowList",
    :description => "description",
    :destination => "destination",
    :encryption => "encryption",
    :max_latency => "maxLatency",
    :media_stream_output_configurations => "mediaStreamOutputConfigurations",
    :min_latency => "minLatency",
    :name => "name",
    :ndi_output_timecode_source => "ndiOutputTimecodeSource",
    :ndi_program_name => "ndiProgramName",
    :ndi_speed_hq_quality => "ndiSpeedHqQuality",
    :output_status => "outputStatus",
    :port => "port",
    :protocol => "protocol",
    :remote_id => "remoteId",
    :router_integration_state => "routerIntegrationState",
    :router_integration_transit_encryption => "routerIntegrationTransitEncryption",
    :smoothing_latency => "smoothingLatency",
    :stream_id => "streamId",
    :tags => "tags",
    :vpc_interface_attachment => "vpcInterfaceAttachment",
  }
end

Instance Method Details

#to_jsiiObject



230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
# File 'media_connect/cfn_flow_output_props.rb', line 230

def to_jsii
  result = {}
  result.merge!({
    "flowArn" => @flow_arn,
    "cidrAllowList" => @cidr_allow_list,
    "description" => @description,
    "destination" => @destination,
    "encryption" => @encryption,
    "maxLatency" => @max_latency,
    "mediaStreamOutputConfigurations" => @media_stream_output_configurations,
    "minLatency" => @min_latency,
    "name" => @name,
    "ndiOutputTimecodeSource" => @ndi_output_timecode_source,
    "ndiProgramName" => @ndi_program_name,
    "ndiSpeedHqQuality" => @ndi_speed_hq_quality,
    "outputStatus" => @output_status,
    "port" => @port,
    "protocol" => @protocol,
    "remoteId" => @remote_id,
    "routerIntegrationState" => @router_integration_state,
    "routerIntegrationTransitEncryption" => @router_integration_transit_encryption,
    "smoothingLatency" => @smoothing_latency,
    "streamId" => @stream_id,
    "tags" => @tags,
    "vpcInterfaceAttachment" => @vpc_interface_attachment,
  })
  result.compact
end