> **Experimental**
>
> `@aws-cdk/aws-mediaconnect-alpha` is an [**experimental**](/stability) (alpha) package: its API may change in any release, without a major version bump.
# RouterInputConfiguration

Factory class for creating Router Input configurations.

- Stability: [Experimental](/cdk/api/stability.html)
- Source: [`lib/router-input.ts`](https://github.com/aws/aws-cdk/blob/v2.275.0-alpha.0/packages/@aws-cdk/aws-mediaconnect-alpha/lib/router-input.ts#L848)

## Example

```ts
declare const stack: Stack;
declare const mediaLiveChannel: medialive.IChannel;

const input = new RouterInput(stack, 'ChannelInput', {
  routerInputName: 'channel-input',
  maximumBitrate: Bitrate.mbps(20),
  routingScope: RoutingScope.REGIONAL,
  tier: RouterInputTier.INPUT_20,
  configuration: RouterInputConfiguration.mediaLiveChannel({
    channel: mediaLiveChannel,
    outputName: 'router-ts',
    pipeline: MediaLivePipeline.PIPELINE_0,
  }),
});
```

## Initializer

```ts
new RouterInputConfiguration()
```

## Methods

- `failover(props: FailoverConfigurationProps): RouterInputConfiguration // chainable` (static) — Create a failover Router Input configuration with two matching protocols.

  **Parameters**

  - `props` — Failover configuration properties.

  **Returns:** RouterInputConfiguration instance for failover setup

- `mediaConnectFlow(props: MediaConnectFlowConfigurationProps): RouterInputConfiguration // chainable` (static) — Create a MediaConnect Flow Router Input configuration.

  Use this when the source flow already exists and you want to connect immediately.

  **Parameters**

  - `props` — MediaConnect Flow configuration properties.

  **Returns:** RouterInputConfiguration instance for MediaConnect Flow setup

- `mediaConnectFlowWithoutConnection(props: MediaConnectFlowConfigurationWithoutConnectionProps): RouterInputConfiguration // chainable` (static) — Create a MediaConnect Flow Router Input configuration without connecting to a specific flow Use this when you want to prepare the router input for a flow connection later.

  **Parameters**

  - `props` — MediaConnect Flow configuration properties without connection.

  **Returns:** RouterInputConfiguration instance for MediaConnect Flow setup without connection

- `mediaLiveChannel(props: MediaLiveChannelConfigurationProps): RouterInputConfiguration // chainable` (static) — Create a MediaLive Channel Router Input configuration.

  Use this when the source MediaLive channel already exists and you want to
  ingest from one of its outputs immediately.

  **Parameters**

  - `props` — MediaLive channel configuration properties.

  **Returns:** RouterInputConfiguration instance for MediaLive channel setup

- `mediaLiveChannelWithoutConnection(props: MediaLiveChannelConfigurationWithoutConnectionProps): RouterInputConfiguration // chainable` (static) — Create a MediaLive Channel Router Input configuration without a specific channel connection.

  Use this when you want to set up the router input before the target MediaLive channel exists.

  **Parameters**

  - `props` — MediaLive channel no-connection properties.

  **Returns:** RouterInputConfiguration instance for MediaLive channel setup without connection

- `merge(props: MergeConfigurationProps): RouterInputConfiguration // chainable` (static) — Create a merge Router Input configuration with two matching non-SRT protocols.

  **Parameters**

  - `props` — Merge configuration properties.

  **Returns:** RouterInputConfiguration instance for merge setup

- `standard(props: StandardConfigurationProps): RouterInputConfiguration // chainable` (static) — Create a standard Router Input configuration with a single protocol.

  **Parameters**

  - `props` — Standard configuration properties.

  **Returns:** RouterInputConfiguration instance for standard setup
