# Streaming to servers, CDNs, and other devices

Pearl Nexus can stream to CDNs, local media servers, and even to other Pearl Nexus devices that are acting as a streaming ingestion point. Pearl Nexus supports many streaming protocols. Use the Admin panel to set up individual channels for streaming.

### Set up an RTMP or RTMPS (push) stream

Real Time Messaging Protocol (RTMP) is the most common way to stream to a CDN, including to Facebook Live and YouTube.

Use Real Time Messaging Protocol Secure (RTMPS) on your Pearl Nexus to encrypt content before it's streamed over a TLS/SSL connection for secure live streaming. When enabled, Pearl Nexus will always attempt to validate the digital certificate it receives from the CDN to establish a secure RTMPS connection. The connection will fail if Pearl Nexus can't find the CA certificate of your CDN in it's list of certificates.

Pearl Nexus has the CA certificates for many of the major CDNs already installed. For RTMPS streaming to work for your particular CDN, or if you're using a proprietary RTMPS server, ensure that your streaming server's CA certificate is uploaded to Pearl Nexus.

**Set up an RTMP  stream using the Admin panel**

- Log in to the Admin panel as **admin**

-  From the **Channel(s)** menu, select the channel and click **Streaming**. The Streaming configuration page opens.

- Click **New stream** and choose **RTMP push**. The new stream is created using the default name *Stream 1*.

- Click the stream name to see the stream settings.

- Enter the **URL **of the ingestion point provided by the CDN or media server.

- For RTMP push, enter **rtmp** followed by the rest of the URL, for example: *rtmp://**<**server-ip-address**>**:**<**port**>**/etc...*

- Enter the stream name or stream key in the stream name / key field

- (Optional) Enter a **User name** and **Password**.

The CDN provider assigns a user name and password to authenticate the publisher. Contact the CDN provider for your log in credentials. Some CDNs, like YouTube and Facebook Live, do not require you to enter your log in credentials here.

- (Optional) Rename the stream. Click the current name and enter a different name, then press **Enter**.

Refresh your browser if the new stream name doesn't immediately display.

- Click **Apply**.

- To start streaming, click **Start** or click **Start all** to simultaneously start this stream and any other streams you have configured for this channel.

- Click **Delete this stream** at any time to delete the stream.

### Adjust latency and view the SRT stream status

Secure Reliable Transport (SRT) achieves high-quality, low-latency streaming across unreliable Internet connections via UDP packets. If packets are lost in transit to the SRT destination, a request to retransmit the lost packets is sent back to Pearl Nexus. Using the Admin panel, you can adjust the latency to improve the Quality of Service (QoS) of the stream and reduce the number of dropped packets.

During the SRT stream, you can view the stream statistics using the Admin panel and adjust the amount of latency based on the packet loss % and Round Trip Time (RTT). SRT stream statistics are provided on the streaming configuration page for a channel when Pearl Nexus is configured as an SRT source. If Pearl Nexus is configured as an SRT destination with an SRT input, then SRT statistics are available on the SRT input configuration page.

The following example shows SRT statistics for an SRT stream. The statistics section appears only while an SRT stream is active. It takes about 30 seconds for the statistics to appear after the SRT connection is established.

 You can add from 80 ms to 8000 ms of latency to the SRT stream. Increasing latency gives more time to buffer packets and resend any that got lost in transit to the destination. If the latency value set for the stream is too low and there is packet loss over the network, retransmission of lost packets will not be possible and the stream quality will suffer.

Latency can be configured at the source and at the destination. SRT uses the highest of the two latency values.

The formula to calculate latency is:

*SRT Latency* = *RTT Multiplier* ´ *RTT*

where the recommended range of the *RTT Multiplier* is a value from 3 to 20.

 The following table provides guidelines for what values to use when calculating latency. An RTT multiplier value less than 3 is too small for SRT to be effective and a value above 20 indicates a network with 100% packet loss. Ensure the measured **buffer** is less than or equal to the latency value you use.

**Table 50 Suggested SRT latency values**

| **Packet loss %** | **RTT multiplier** | **Recovery bandwidth overhead** | **Minimum SRT latency** **(for RTT ≤ 20 ms)** |
| --- | --- | --- | --- |
| % is ≤ 1 | 3 | 33 | 60 |
| % is ≤ 3 | 4 | 25 | 80 |
| % is ≤ 7 | 5 | 20 | 100 |
| % is ≤ 10 | 6 | 17 | 120 |

These values are from the SRT Deployment Guide. For up-to-date calculations, visit [www.srtalliance.org](https://www.srtalliance.org/).

For example, if the % of packet loss is 0.53 and the measured RTT is 16.506 ms, the latency calculation is: 49.518 = 3 ´ 16.506 ms or 50 ms of latency (rounded up).

**Adjust latency and recovery bandwidth overhead for an SRT stream using the Admin panel**

- Log in to the Admin panel as **admin**

- View the SRT statistics for the active stream. Do one of the following:

- To open the SRT statistics from the **Channel(s)** menu, select the channel with the SRT stream to configure and click **Streaming**. The Streaming configuration page opens. Then select the arrow beside the SRT stream to reveal the SRT stream statistics.

- To open the SRT statistics from the Inputs menu, select the SRT input. Then on the SRT input configuration page, select the arrow beside Statistics.

The statistics section only appears while an SRT stream is active.

- In the **Latency** field, enter a numerical value from 80 ms to 8000 ms.

- Click **Apply**.

We recommend testing your settings. Start the SRT stream and use the stream statistics to evaluate the effect the latency and recovery bandwidth overhead values have on the packet loss % of the stream.

### Set up an HLS (push) stream

HTTP Live Streaming (HLS) is an adaptive, HTTP-based streaming protocol that sends video and audio content over the network in small, media segments that get reassembled at the streaming destination. Media segments stream over HTTP port 80 or port 443 for HTTPS, which are typically open for network access. As such, the content can easily traverse firewalls with little to no IT involvement.

Pearl Nexus can send a single resolution and bitrate HLS stream as an HTTP POST (or HTTP PUT) to HLS ingestion servers and CDNs such as Akamai and YouTube. The default is HTTP POST. Your channels on Pearl Nexus must be configured for H.264  and AAC audio codec to stream using HLS. Pearl Nexus supports MD5, SHA-256, and SHA-512 hashing algorithms to authenticate the stream.

HLS uses an MPEG2-TS transport stream container with a configurable media segment duration, as well as a configurable playlist size for reassembling the media segments at the ingestion server. Because HLS favors Quality of Service (QoS) over low-latency, lag times that can be high. If a specific media segment size isn't required by the ingestion server, then you can shorten the duration of the media segment to decrease latency. The default segment duration is six seconds.

Using the Admin panel, you can add advanced features like a master manifest, which is an address applied to each individual media playlist in the stream. You can also assign the HLS stream a user name and password. If security and authentication credentials are required to stream to the ingestion server, consult the ingestion server provider.

**Important considerations**

- Only a single resolution and bitrate stream is supported.

- See Suggested stream settings for the best streaming settings for Pearl Nexus.

- Fragmented MP4 is not supported.

- If the HLS ingestion server requires a custom user-agent name, add that to the HLS stream in the Advanced settings using the Admin panel and ensure the agent-name is added to the HLS ingestion server's white list. Contact the IT administrator responsible for the ingestion server.

- If the HLS ingestion server requires a user name and password, you can get those credentials from the IT administrator responsible for the ingestion server.

**Set up an HLS (push) stream using the Admin panel**

- Log in to the Admin panel as **admin**

-  From the **Channel(s)** menu, select the channel and click **Streaming**. The Streaming configuration page opens.

- Click **New stream** and choose **HLS push**. The new stream is created using the default name *Stream 1*. To see the settings, click the stream name.

- In the **Media Playlist URL field**, enter the URL of the destination server that is ingesting the stream. For example: *http://p-ep721023.i.akamaientrypoin.net/722223/hlsQualification/my_video.m3u8*

- (Optional) In the **Segment template** field, enter the naming format used for the names of media segments. For example: *chunk-$Number%05d$.ts*

- (Optional) Enter a **Username** and **Password** if required for this stream. Get this from the ingestion server provider.

- In the **Method** field, select **POST** or **PUT**. This selection must match the requirements of the ingestion server.

- In the **Segment duration** field, enter the length of the media segment in seconds. The default duration is six seconds. Fractions and periods are not supported.

- In the **Playlist size** field, enter the number of .ts segment files in each segment. The default playlist size is six.

- (Optional) Under **Advanced settings**, you can set the following:

- **Master manifest**: Enter the URL (including the master playlist file name) of where Pearl Nexus will upload the master manifest file. The master playlist also provides the bitrate, resolution, and codec.

- **User-agent**: Enter a user-agent name using alphanumerical characters only if the ingestion server requires a specific value in the user-agent header to allow the incoming stream from this device.

- Click **Apply**.

- When you're ready to start streaming this channel, click **Start**.

### Set up an RTSP announce stream

Pearl Nexus can stream using RTSP announce. Viewers can copy and paste the URL of the RTSP stream into a media player and watch the stream on their local network.

**Setup an RTSP announce stream using the Admin panel**

- Log in to the Admin panel as **admin**

-  From the **Channel(s)** menu, select the channel and click **Streaming**. The Streaming configuration page opens.

- Click **New stream** and choose **RTSP announce**. The new stream is created using the default name Stream 1.

- Click the stream name to see the stream settings.

- (Optional) To rename the stream, click the current name and type a different name, then press **Enter**.

Refresh your browser if the new stream name doesn't immediately display.

- Enter the following parameters:

- The **URL **of the ingestion point provided by the CDN or media server.

- Select the **Transport type** as either UDP or TCP. Consult your CDN provider to find out which transport protocols the CDN supports.

- The CDN **User name** and **Password** (if required).

The CDN provider assigns a user name and password to authenticate the publisher. Contact the CDN provider for your log in credentials.

- Click **Apply**.

-  To start streaming, click **Start** or click **Start all** to simultaneously start this stream and any other streams you have configured for this channel.

- Click **Delete this stream** at any time to delete the stream.

### Start and stop streaming to a CDN

After your stream to a CDN is configured on the channel, you can start and stop streaming.

Start and stop your stream using:

- the admin panel

- Epiphan Edge

- Epiphan Live. For details to start and stop streaming using Epiphan Live, see Control streaming and recording using Epiphan Live in the Pearl Family shared guide.

**Start and stop streaming using the Admin panel**

- Log in to the Admin panel as **admin**

- From the **Channel(s)** menu, select a channel and click **Streaming**. The Streaming configuration page opens.

To set up a stream using the Admin panel, click **New stream** and follow the instructions for how to **Streaming to a CDN, multicasting, and streaming to multiple destinations**.

- Click **Start** at the top right corner to start that stream, or click **Start all** at the top of the page to start streaming all streams that are configured for the channel.

- Click **Stop** at the top right corner to stop that stream, or click **Stop all** at the top of the page to stop streaming for all streams that are configured for the channel.

> product: pearl-nexus · topic: streaming · source: pearl-nexus-userguide.md · updated: Oct 13, 2026
