Skip to content
v2.276.0

Experimental

@aws-cdk/aws-mediaconnect-alpha is an experimental (alpha) package: its API may change in any release, without a major version bump.

PrimarySource Enum ​

Identifies which protocol in a failover configuration's protocols array is primary.

Example ​

ts
declare const stack: Stack;
declare const networkInterface: RouterNetworkInterface;

const input = new RouterInput(stack, 'FailoverInput', {
  routerInputName: 'failover-input',
  maximumBitrate: Bitrate.mbps(10),
  routingScope: RoutingScope.REGIONAL,
  tier: RouterInputTier.INPUT_20,
  configuration: RouterInputConfiguration.failover({
    networkInterface: networkInterface,
    protocols: [
      RouterInputProtocol.rist({
        port: 5000,
        recoveryLatency: Duration.millis(1000),
      }),
      RouterInputProtocol.rist({
        port: 5002, // Must not be consecutive with primary port
        recoveryLatency: Duration.millis(1000),
      }),
    ],
    sourcePriority: SourcePriorityConfig.primarySecondary(PrimarySource.FIRST_SOURCE),
  }),
});
python
# stack: Stack
# network_interface: RouterNetworkInterface


input = RouterInput(stack, "FailoverInput",
    router_input_name="failover-input",
    maximum_bitrate=Bitrate.mbps(10),
    routing_scope=RoutingScope.REGIONAL,
    tier=RouterInputTier.INPUT_20,
    configuration=RouterInputConfiguration.failover(
        network_interface=network_interface,
        protocols=[
            RouterInputProtocol.rist(
                port=5000,
                recovery_latency=Duration.millis(1000)
            ),
            RouterInputProtocol.rist(
                port=5002,  # Must not be consecutive with primary port
                recovery_latency=Duration.millis(1000)
            )
        ],
        source_priority=SourcePriorityConfig.primary_secondary(PrimarySource.FIRST_SOURCE)
    )
)
java
Stack stack;
RouterNetworkInterface networkInterface;


RouterInput input = RouterInput.Builder.create(stack, "FailoverInput")
        .routerInputName("failover-input")
        .maximumBitrate(Bitrate.mbps(10))
        .routingScope(RoutingScope.REGIONAL)
        .tier(RouterInputTier.INPUT_20)
        .configuration(RouterInputConfiguration.failover(FailoverConfigurationProps.builder()
                .networkInterface(networkInterface)
                .protocols(List.of(RouterInputProtocol.rist(RistProtocolProps.builder()
                        .port(5000)
                        .recoveryLatency(Duration.millis(1000))
                        .build()), RouterInputProtocol.rist(RistProtocolProps.builder()
                        .port(5002) // Must not be consecutive with primary port
                        .recoveryLatency(Duration.millis(1000))
                        .build())))
                .sourcePriority(SourcePriorityConfig.primarySecondary(PrimarySource.FIRST_SOURCE))
                .build()))
        .build();
csharp
// Install: dotnet add package Amazon.CDK.AWS.MediaConnect.Alpha
Stack stack;
RouterNetworkInterface networkInterface;


var input = new RouterInput(stack, "FailoverInput", new RouterInputProps {
    RouterInputName = "failover-input",
    MaximumBitrate = Bitrate.Mbps(10),
    RoutingScope = RoutingScope.REGIONAL,
    Tier = RouterInputTier.INPUT_20,
    Configuration = RouterInputConfiguration.Failover(new FailoverConfigurationProps {
        NetworkInterface = networkInterface,
        Protocols = new [] { RouterInputProtocol.Rist(new RistProtocolProps {
            Port = 5000,
            RecoveryLatency = Duration.Millis(1000)
        }), RouterInputProtocol.Rist(new RistProtocolProps {
            Port = 5002,  // Must not be consecutive with primary port
            RecoveryLatency = Duration.Millis(1000)
        }) },
        SourcePriority = SourcePriorityConfig.PrimarySecondary(PrimarySource.FIRST_SOURCE)
    })
});
go
// Install: go get github.com/aws/aws-cdk-go/awsmediaconnectalpha/v2
var stack Stack
var networkInterface RouterNetworkInterface


input := awsmediaconnectalpha.NewRouterInput(stack, jsii.String("FailoverInput"), &RouterInputProps{
	RouterInputName: jsii.String("failover-input"),
	MaximumBitrate: awscdk.Bitrate_Mbps(jsii.Number(10)),
	RoutingScope: awsmediaconnectalpha.RoutingScope_REGIONAL(),
	Tier: awsmediaconnectalpha.RouterInputTier_INPUT_20(),
	Configuration: awsmediaconnectalpha.RouterInputConfiguration_Failover(&FailoverConfigurationProps{
		NetworkInterface: networkInterface,
		Protocols: []RouterInputProtocol{
			awsmediaconnectalpha.RouterInputProtocol_Rist(&RistProtocolProps{
				Port: jsii.Number(5000),
				RecoveryLatency: awscdk.Duration_Millis(jsii.Number(1000)),
			}),
			awsmediaconnectalpha.RouterInputProtocol_*Rist(&RistProtocolProps{
				Port: jsii.Number(5002),
				 // Must not be consecutive with primary port
				RecoveryLatency: awscdk.Duration_*Millis(jsii.Number(1000)),
			}),
		},
		SourcePriority: awsmediaconnectalpha.SourcePriorityConfig_PrimarySecondary(awsmediaconnectalpha.PrimarySource_FIRST_SOURCE),
	}),
})

Members ​

MemberDescription
FIRST_SOURCEThe first protocol in the failover protocols array.
SECOND_SOURCEThe second protocol in the failover protocols array.