Class CfnFlowSource

java.lang.Object
software.amazon.jsii.JsiiObject
All Implemented Interfaces:
IConstruct, IDependable, IInspectable, software.amazon.jsii.JsiiSerializable, software.constructs.IConstruct

@Generated(value="jsii-pacmak/1.84.0 (build 5404dcf)", date="2023-06-19T16:29:59.893Z") @Stability(Stable) public class CfnFlowSource extends CfnResource implements IInspectable
A CloudFormation AWS::MediaConnect::FlowSource.

The AWS::MediaConnect::FlowSource resource is used to add additional sources to an existing flow. Adding an additional source requires Failover to be enabled. When you enable Failover, the additional source must use the same protocol as the existing source. A source is the external video content that includes configuration information (encryption and source type) and a network address. Each flow has at least one source. A standard source comes from a source other than another AWS Elemental MediaConnect flow, such as an on-premises encoder.

Example:

 // The code below shows an example of how to instantiate this type.
 // The values are placeholders you should change.
 import software.amazon.awscdk.services.mediaconnect.*;
 CfnFlowSource cfnFlowSource = CfnFlowSource.Builder.create(this, "MyCfnFlowSource")
         .description("description")
         .name("name")
         // the properties below are optional
         .decryption(EncryptionProperty.builder()
                 .roleArn("roleArn")
                 // the properties below are optional
                 .algorithm("algorithm")
                 .constantInitializationVector("constantInitializationVector")
                 .deviceId("deviceId")
                 .keyType("keyType")
                 .region("region")
                 .resourceId("resourceId")
                 .secretArn("secretArn")
                 .url("url")
                 .build())
         .entitlementArn("entitlementArn")
         .flowArn("flowArn")
         .ingestPort(123)
         .maxBitrate(123)
         .maxLatency(123)
         .minLatency(123)
         .protocol("protocol")
         .senderControlPort(123)
         .senderIpAddress("senderIpAddress")
         .sourceListenerAddress("sourceListenerAddress")
         .sourceListenerPort(123)
         .streamId("streamId")
         .vpcInterfaceName("vpcInterfaceName")
         .whitelistCidr("whitelistCidr")
         .build();
 
  • Field Details

    • CFN_RESOURCE_TYPE_NAME

      @Stability(Stable) public static final String CFN_RESOURCE_TYPE_NAME
      The CloudFormation resource type name for this resource class.
  • Constructor Details

    • CfnFlowSource

      protected CfnFlowSource(software.amazon.jsii.JsiiObjectRef objRef)
    • CfnFlowSource

      protected CfnFlowSource(software.amazon.jsii.JsiiObject.InitializationMode initializationMode)
    • CfnFlowSource

      @Stability(Stable) public CfnFlowSource(@NotNull Construct scope, @NotNull String id, @NotNull CfnFlowSourceProps props)
      Create a new AWS::MediaConnect::FlowSource.

      Parameters:
      scope -
      • scope in which this resource is defined.
      This parameter is required.
      id -
      • scoped id of the resource.
      This parameter is required.
      props -
      • resource properties.
      This parameter is required.
  • Method Details

    • inspect

      @Stability(Stable) public void inspect(@NotNull TreeInspector inspector)
      Examines the CloudFormation resource and discloses attributes.

      Specified by:
      inspect in interface IInspectable
      Parameters:
      inspector -
      • tree inspector to collect and process attributes.
      This parameter is required.
    • renderProperties

      @Stability(Stable) @NotNull protected Map<String,Object> renderProperties(@NotNull Map<String,Object> props)
      Overrides:
      renderProperties in class CfnResource
      Parameters:
      props - This parameter is required.
    • getAttrIngestIp

      @Stability(Stable) @NotNull public String getAttrIngestIp()
      The IP address that the flow listens on for incoming content.
    • getAttrSourceArn

      @Stability(Stable) @NotNull public String getAttrSourceArn()
      The ARN of the source.
    • getAttrSourceIngestPort

      @Stability(Stable) @NotNull public String getAttrSourceIngestPort()
    • getCfnProperties

      @Stability(Stable) @NotNull protected Map<String,Object> getCfnProperties()
      Overrides:
      getCfnProperties in class CfnResource
    • getDescription

      @Stability(Stable) @NotNull public String getDescription()
      A description of the source.

      This description is not visible outside of the current AWS account.

    • setDescription

      @Stability(Stable) public void setDescription(@NotNull String value)
      A description of the source.

      This description is not visible outside of the current AWS account.

    • getName

      @Stability(Stable) @NotNull public String getName()
      The name of the source.
    • setName

      @Stability(Stable) public void setName(@NotNull String value)
      The name of the source.
    • getDecryption

      @Stability(Stable) @Nullable public Object getDecryption()
      The type of encryption that is used on the content ingested from the source.
    • setDecryption

      @Stability(Stable) public void setDecryption(@Nullable IResolvable value)
      The type of encryption that is used on the content ingested from the source.
    • setDecryption

      @Stability(Stable) public void setDecryption(@Nullable CfnFlowSource.EncryptionProperty value)
      The type of encryption that is used on the content ingested from the source.
    • getEntitlementArn

      @Stability(Stable) @Nullable public String getEntitlementArn()
      The ARN of the entitlement that allows you to subscribe to the flow.

      The entitlement is set by the content originator, and the ARN is generated as part of the originator's flow.

    • setEntitlementArn

      @Stability(Stable) public void setEntitlementArn(@Nullable String value)
      The ARN of the entitlement that allows you to subscribe to the flow.

      The entitlement is set by the content originator, and the ARN is generated as part of the originator's flow.

    • getFlowArn

      @Stability(Stable) @Nullable public String getFlowArn()
      The Amazon Resource Name (ARN) of the flow this source is connected to.

      The flow must have Failover enabled to add an additional source.

    • setFlowArn

      @Stability(Stable) public void setFlowArn(@Nullable String value)
      The Amazon Resource Name (ARN) of the flow this source is connected to.

      The flow must have Failover enabled to add an additional source.

    • getIngestPort

      @Stability(Stable) @Nullable public Number getIngestPort()
      The port that the flow listens on for incoming content.

      If the protocol of the source is Zixi, the port must be set to 2088.

    • setIngestPort

      @Stability(Stable) public void setIngestPort(@Nullable Number value)
      The port that the flow listens on for incoming content.

      If the protocol of the source is Zixi, the port must be set to 2088.

    • getMaxBitrate

      @Stability(Stable) @Nullable public Number getMaxBitrate()
      The maximum bitrate for RIST, RTP, and RTP-FEC streams.
    • setMaxBitrate

      @Stability(Stable) public void setMaxBitrate(@Nullable Number value)
      The maximum bitrate for RIST, RTP, and RTP-FEC streams.
    • getMaxLatency

      @Stability(Stable) @Nullable public Number getMaxLatency()
      The maximum latency in milliseconds.

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

    • setMaxLatency

      @Stability(Stable) public void setMaxLatency(@Nullable Number value)
      The maximum latency in milliseconds.

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

    • getMinLatency

      @Stability(Stable) @Nullable public Number getMinLatency()
      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.

    • setMinLatency

      @Stability(Stable) public void setMinLatency(@Nullable Number value)
      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.

    • getProtocol

      @Stability(Stable) @Nullable public String getProtocol()
      The protocol that the source uses to deliver the content to MediaConnect.

      Adding additional sources to an existing flow requires Failover to be enabled. When you enable Failover, the additional source must use the same protocol as the existing source. Only the following protocols support failover: Zixi-push, RTP-FEC, RTP, RIST and SRT protocols.

      If you use failover with SRT caller or listener, the FailoverMode property must be set to FAILOVER . The FailoverMode property is found in the FailoverConfig resource of the same flow ARN you used for the source's FlowArn property. SRT caller/listener does not support merge mode failover.

    • setProtocol

      @Stability(Stable) public void setProtocol(@Nullable String value)
      The protocol that the source uses to deliver the content to MediaConnect.

      Adding additional sources to an existing flow requires Failover to be enabled. When you enable Failover, the additional source must use the same protocol as the existing source. Only the following protocols support failover: Zixi-push, RTP-FEC, RTP, RIST and SRT protocols.

      If you use failover with SRT caller or listener, the FailoverMode property must be set to FAILOVER . The FailoverMode property is found in the FailoverConfig resource of the same flow ARN you used for the source's FlowArn property. SRT caller/listener does not support merge mode failover.

    • getSenderControlPort

      @Stability(Stable) @Nullable public Number getSenderControlPort()
      The port that the flow uses to send outbound requests to initiate connection with the sender.
    • setSenderControlPort

      @Stability(Stable) public void setSenderControlPort(@Nullable Number value)
      The port that the flow uses to send outbound requests to initiate connection with the sender.
    • getSenderIpAddress

      @Stability(Stable) @Nullable public String getSenderIpAddress()
      The IP address that the flow communicates with to initiate connection with the sender.
    • setSenderIpAddress

      @Stability(Stable) public void setSenderIpAddress(@Nullable String value)
      The IP address that the flow communicates with to initiate connection with the sender.
    • getSourceListenerAddress

      @Stability(Stable) @Nullable public String getSourceListenerAddress()
      Source IP or domain name for SRT-caller protocol.
    • setSourceListenerAddress

      @Stability(Stable) public void setSourceListenerAddress(@Nullable String value)
      Source IP or domain name for SRT-caller protocol.
    • getSourceListenerPort

      @Stability(Stable) @Nullable public Number getSourceListenerPort()
      Source port for SRT-caller protocol.
    • setSourceListenerPort

      @Stability(Stable) public void setSourceListenerPort(@Nullable Number value)
      Source port for SRT-caller protocol.
    • getStreamId

      @Stability(Stable) @Nullable public String getStreamId()
      The stream ID that you want to use for this transport.

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

    • setStreamId

      @Stability(Stable) public void setStreamId(@Nullable String value)
      The stream ID that you want to use for this transport.

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

    • getVpcInterfaceName

      @Stability(Stable) @Nullable public String getVpcInterfaceName()
      The name of the VPC interface that you want to send your output to.
    • setVpcInterfaceName

      @Stability(Stable) public void setVpcInterfaceName(@Nullable String value)
      The name of the VPC interface that you want to send your output to.
    • getWhitelistCidr

      @Stability(Stable) @Nullable public String getWhitelistCidr()
      The range of IP addresses that are allowed to contribute content to your source.

      Format the IP addresses as a Classless Inter-Domain Routing (CIDR) block; for example, 10.0.0.0/16.

    • setWhitelistCidr

      @Stability(Stable) public void setWhitelistCidr(@Nullable String value)
      The range of IP addresses that are allowed to contribute content to your source.

      Format the IP addresses as a Classless Inter-Domain Routing (CIDR) block; for example, 10.0.0.0/16.