

# Setting up an SRT Caller input
SRT Caller inputWorking with SRT Caller input

The guide now includes information about working with SRT Caller inputs.

This section describes how to set up to ingest transport stream (TS) content that is sent from an upstream system that is set up as an SRT listener. This section describes how to set up the source content on the upstream system, and how to create an input that connects the upstream system to MediaLive. 

The transport stream source can be encrypted with AES. 

**Roles**

With an SRT input, MediaLive has two roles and the upstream system has two roles:
+ For the SRT connection handshake: MediaLive is the SRT caller (the party that initiates the handshake). The upstream system is the SRT listener. The upstream system waits for MediaLive to call and initiate the SRT connection handshake that precedes the transmission of the source content. 
+ For the transmission: After the connection is made, the upstream system is always the sender of the content. MediaLive is always the receiver of the content.

In terms of the categorization of inputs into push and pull, an SRT input is a pull input. You don't use an input security group with an SRT input.

**Topics**
+ [

# Get ready
](input-caller-srt-prereqs.md)
+ [

# Create an SRT input
](input-caller-srt-setup.md)
+ [

# Ensure correct setup in the upstream system
](setup-uss-srt-caller.md)
+ [

# Result of this procedure
](input-caller-srt-result.md)

# Get ready
Step 1: Get ready

1. Obtain the following information from the operator of the upstream system:
   + The IP address and port of the content, including the stream if the upstream system uses that. For example, **192.0.2.120:7001** with stream **mycontent**. 

     You need two addresses for a standard-class input, or one address for a single-class input. For information about input classes and their uses, see [Choosing the channel class and input class](class-channel-input.md).
   + Whether the content is encrypted. If it is encrypted, find out if encryption uses AES 128, AES 192, or AES 256.

     Obtain the passphrase from the operator of the upstream system.
   + The stream ID, if the upstream system uses this identifier. The upstream system might require a stream ID, in which case you must obtain it. Otherwise the SRT handshake between the caller and listener will probably fail.
   + The preferred latency (in milliseconds) for implementing packet loss and recovery. Packet recovery is a key feature of SRT.

1. If the content is encrypted, you must store the passphrase that the operator gave you. Someone in your organization must store the passphrase in a secret in AWS Secrets Manager. For more information, see [Create an AWS Secrets Manager secret](https://docs.aws.amazon.com/secretsmanager/latest/userguide/create_secret.html). Create a secret of type **Other type of secret**. The result of creating the secret is an ARN that looks like this:

   `arn:aws:secretsmanager:region:123456789012:secret:Sample-abcdef`

# Create an SRT input
Step 2: Set up the input

After you have obtained the necessary information from the upstream system, you can create the SRT input.

**To set up an SRT input**

1. Make sure that you have the information that you [obtained from the upstream system](input-caller-srt-prereqs.md).

1. Open the MediaLive console at [https://console.aws.amazon.com/medialive/](https://console.aws.amazon.com/medialive/).

1. In the navigation pane, choose **Inputs**. On the **Inputs** page, choose **Create input**. Then choose **SRT caller**.

1. In the **Input class** section, choose the class for this input:
   + STANDARD\$1INPUT
   + SINGLE\$1INPUT

1. In the **Source A** and **Source B** sections, enter the information that you obtained.

1. Complete the **Decryption** fields, if applicable:
   + **Enabled**: Check the box. More fields appear. 
   + Select the appropriate algorithm. 
   + If the list of ARNs is populated, select the ARN of the passphrase that you [created earlier](input-caller-srt-prereqs.md). If the list is empty, type the ARN into the entry field.

1. In the **Tags **section, create tags if you want to associate tags with this input. For more information, see [Tagging resources](tagging.md).

1. Choose **Create**. MediaLive creates the input and adds it to the list of inputs. The input specifies either one or two sources. The sources don't appear in the list, but if you choose the **Name** link, the details page shows them. 

# Ensure correct setup in the upstream system
Step 3: Set up upstream

An operator at the upstream server must set up the source content on the upstream system. Make sure that the operator sets up as follows:
+ They set up to deliver the correct number of sources:
  + If the MediaLive channel is a standard channel, set up two sources for the content. Make sure that the two source contents are identical in terms of video resolution and bitrate.
  + If the MediaLive channel is a single-pipeline channel, set up one source for the content. 
+ They set up to make the content available at the agreed URLs, and they use the agreed application names and instance names. These URLs are the URLs that you obtained [earlier in this section](setup-mp4-obtain-info.md), and that you configured into the RTMP input. They correspond to the URLs shown in [the diagram after this procedure](setup-result-rtmp-push.md). 

# Result of this procedure
Step 4: Result of this procedure

As a result of this setup, an SRT caller input exists that specifies one or two *source* URLs. These sources are the URLs for the source content on the upstream system. 

At runtime of the channel, MediaLive (the caller) will perform a handshake with the upstream system (the listener). MediaLive will connect to two URLs (for a standard channel) or one URL (for a single-pipeline channel), and pull the source content into the channel.

![\[Diagram showing data packets flowing from upstream systems to SRT caller inputs in MediaLive.\]](http://docs.aws.amazon.com/medialive/latest/ug/images\srt-pull-uss-input.png)
