

# Creating a UDP output group
<a name="opg-udp"></a>

When you create a AWS Elemental MediaLive channel, you might want to include a UDP output group. For information about the use cases for a UDP output group, see [Containers, protocols, and downstream systems](outputs-supported-containers-downstream-systems.md).

**Topics**
+ [Organize encodes in a UDP output group](design-udp-package.md)
+ [Coordinate with the downstream system](downstream-system-udp.md)
+ [Creating a UDP output group](creating-udp-output-group.md)

# Organize encodes in a UDP output group
<a name="design-udp-package"></a>

A UDP output group can contain the following:
+ One or more outputs.

Each output can contain the following:
+ One video encode.
+ One or more audio encodes.
+ One or more captions encodes. The captions are either embedded or object-style captions. 

Each output represents one SPTS. Each output (SPTS) has its own destination..

This diagram illustrates a UDP output group with one output. The captions are embedded in the video encode.

![\[Output group diagram showing video encode with embedded captions and two audio outputs.\]](http://docs.aws.amazon.com/medialive/latest/ug/images/output3-nonABR-Ve-2A.png)


This diagram illustrates a UDP output group with one output. The captions are object-style captions.

![\[Output group diagram showing V, A, A, C, C as individual elements in sequence.\]](http://docs.aws.amazon.com/medialive/latest/ug/images/output4-nonABR-V-2A-2C.png)


# Coordinate with the downstream system
<a name="downstream-system-udp"></a>

You and the operator of the downstream system must agree about the destination for each output of the UDP output group.

A UDP output group requires one set of destination addresses for each output. 

1. Decide if you need two destinations for the output: 
   + If the MediaLive channel is a [standard channel](plan-redundancy.md), you need two destinations.
   + If the MediaLive channel is a single-pipeline channel, you need one destination. 

1. Speak to the operator who manages the downstream system that will receive UDP content. Make sure that the operator sets up to expect one or two MediaLive outputs, as appropriate. 

1. Obtain the following information from the operator:
   + Whether the protocol is UDP or RTP
   + The URLs
   + The port numbers

   Each URL will look like this, for example:

   `udp://203.0.113.28:5000`

   `udp://203.0.113.33:5005`

   Note that in this example, the port numbers are not sequential. These non-sequential numbers are important if you plan to enable FEC in the outputs (this field is in the **Output** pane of the UDP output group). With FEC, you must leave space between the port numbers for the two destinations. For example, if one destination is **rtp://203.0.113.28:5000**, assume that FEC also uses port 5002 and 5004. So the lowest possible port number for the other destination is 5005.

# Creating a UDP output group
<a name="creating-udp-output-group"></a>

When you [planned the workflow for your channel](identify-downstream-system.md), you might have determined that you want to include a UDP output group.

1. On the **Create channel** page, under **Output groups**, choose **Add**. 

1. In the **Add output group** section, choose **UDP**, and then choose **Confirm**. More sections appear: 
   + **UDP destination** – This section contains fields for the [output destination](udp-destinations.md).
   + **UDP settings** – This section contains fields for [setting up ID3](udp-other.md) and for [resiliency](udp-other.md). 
   + **UDP outputs** – This section shows the single output that is added by default. A UDP output can contain only one output, so don't click **Add output**. 

1. In **UDP outputs**, choose the **Settings** link to view the sections for the output:
   + **Output settings** – This section contains fields for the [transport](udp-destinations.md) and the [connection to the destination](udp-destinations.md). 
   + **Stream settings** – This section contains fields for the [output streams](udp-streams.md) (the video, audio, and captions).

1. (Optional) Enter names for the output group and the output:
   + In **UDP settings**, for **Name**, enter a name for the output group. This name is internal to MediaLive; it doesn't appear in the output. For example, **Sports Game**.
   + In **UDP output**, in **Output settings**, for **Output name**, enter a name for the output. This name is internal to MediaLive; it doesn't appear in the output.

1. To complete the other fields, see the topics listed after this procedure.

1. After you have finished setting up this output group and its single output, you can create another output group (of any type), if your plan requires it. Otherwise, go to [Save the channel](creating-a-channel-step9.md).

**Topics**
+ [Fields for the output destination](udp-destinations.md)
+ [Fields for the UDP transport](udp-container.md)
+ [Fields for the video, audio, and captions stream (encode)](udp-streams.md)
+ [Fields for other UDP features](udp-other.md)

# Fields for the output destination
<a name="udp-destinations"></a>

The following fields configure the destination of the output:
+ **Output group** – **UDP destination** sections
+ **Output** – **Output settings** – **Network settings** – **Buffer msec**

**To specify the destination for the output**

1. When you [discussed your requirements](origin-server-rtmp.md) with the operator who manages the downstream system that will receive UDP content, you should have obtained the following information:
   + The URLs
   + The port numbers

   For example:

   `udp://203.0.113.28:5000`

   `udp://203.0.113.33:5005`

1. Enter the URLs, including the port number, in one or both of the **URL** fields in the **UDP destinations** section. 

1. If you [enable FEC](udp-container.md), leave space between the port numbers for the two destinations. 

   For example, if one destination is **rtp://203.0.113.28:5000**, assume that FEC also uses port 5002 and 5004. So the lowest possible port number for the other destination is 5005: **rtp://203.0.113.33:5005**.

1. (Optional) In the **Output** section, complete the **Buffer msec** field as appropriate. For details, choose the **Info** link next to the field in the MediaLive console.

# Fields for the UDP transport
<a name="udp-container"></a>

The following fields configure the transport in each output:
+ **Output** – **Output settings** – **FEC output settings**, choose a value. 
+ **Output** – **Output settings** – **Network settings** – **Container settings** section.

Change any values as appropriate. For details about a field, choose the **Info** link next to the field in the MediaLive console.

# Fields for the video, audio, and captions stream (encode)
<a name="udp-streams"></a>

The following fields relate to the encoding of the video, audio, and captions streams (encodes) in the output. 
+ **Stream settings** section

For information about creating encodes, see the following sections:
+ [Set up the video encode](creating-a-channel-step6.md)
+ [Set up the audio encodes](creating-a-channel-step7.md)
+  [Set up the captions encodes](creating-a-channel-step8.md)

# Fields for other UDP features
<a name="udp-other"></a>

The following field relates to implementing resiliency in a UDP output:
+ **UDP settings** – **Input loss action** – For details about a field on the MediaLive console, choose the **Info** link next to the field. For more information, see [Handling loss of video input](feature-input-loss.md).

The following fields relate to implementing captions in a UDP output:
+ **UDP settings** –** Timed metadata ID3 frame type**
+ **UDP settings** –** Timed metadata ID3 period**

  Complete these fields if you want to insert timed ID3 metadata into all the outputs in this output group. For detailed instructions, see [Working with ID3 metadata](id3-metadata.md)and specifically [Inserting ID3 timed metadata when creating the MediaLive channel](insert-timed-metadata.md).