RTMP Endpoints for Kaltura Live Streaming

RTMP Endpoints

RTMP endpoints are the URLs that should be configured on your encoder for streaming live to Kaltura SaaS. 

The endpoint contains the following information:

  • Primary RTMP URL (mandatory) - This is the primary stream target URL.
  • Backup RTMP URL (optional) - This is the backup stream target URL. If it exists, your encoder will broadcast to both primary and backup endpoints for cases when redundancy is required.
  • Stream name - This is a unique identifier of different streams to the same endpoint. "Stream Name" is usually just the number '1' unless more than one video flavors or multiple soundtracks are being streamed simultaneously. If you are broadcasting multiple bit-rates or multiple audio tracks from your encoder, you will need to use different stream names for the different flavors. Check this article for further details. 

Primary to Backup switch is not always seamless and may require a browser refresh from the viewer. To get the "Seamless Failover" experience one should use Kaltura Player V7 with the "Live" plugin enabled. Also, in case of a primary stream failure, the backup stream VOD is not extracted automatically. Hence, a manual VOD restore request is needed.

RTMPS (RTMP over SSL)

RTMPS (RTMP over SSL) is the encrypted version of the RTMP protocol. This means you can send live content in an encrypted, secured and reliable way from your encoder to Kaltura cloud.
To use RTMPS, simply replace the rtmp:// prefix and port number of the RTSP endpoint.

For example:

RTMP endpoint: rtmp://1_gdrt137u.p.kpublish.kaltura.com:1935/kLive/?t=b9106yth4

RTMPS endpointrtmps://1_gdrt137u.p.kpublish.kaltura.com:443/kLive/?t=b9106yth4

Regenerating the RTMP stream token 

The RTMP token is unique per entry ID and ensures that the RTMP URL will not be manipulated.

if you try to broadcast with an incorrect token (or without one), your broadcast will be rejected.

To ensure that security requirements are met and to secure sensitive data, an option to regenerate the live stream token is provided. You can regenerate the stream token as often as required, however, please note that each time you regenerate the stream token you must update your encoder settings with the new token. Broadcasting with the previous token will be rejected.

A confirmation box is displayed notifying you of these changes if you choose to regenerate the stream token.

Sensitive information is blurred in the following graphic intentionally.

The confirmation box displayed:

Configuring RTMP endpoints in your encoder

There are 2 ways to configure the RTMP endpoints in your encoder:

Manually

Copy and paste the RTMP URLs and stream name from the entry page in the Kaltura Management Console (KMC). You can copy the URLs to your clipboard for later use.

Automatically

Kaltura can export the RTMP settings into an Adobe FMLE configuration XML that can be imported to several encoders (such as FMLE and Wirecast). If your encoder can import FMLE XML, click "Export XML for FMLE" and save the file on your computer, then import the file into your encoder.

RTMP URL structure

The RTMP URL structure is:

rtmp://[entryID].[p/b].kpublish.kaltura.com:1935/kLive/?t=[token]
  • entryID - the unique identifier of your live stream in Kaltura. The entryID is auto-generated by Kaltura servers when creating a live entry
  • p/b - "p" for primary, "b" for backup stream
  • token - an auto generated token which is used to secure your RTMP URL. Streaming will be possible only when the token is correct.

Example: rtmp://1_gdrt137u.p.kpublish.kaltura.com:1935/kLive/?t=b9106yth4

Geographical considerations - using regional RTMP endpoints

Kaltura Geo-redundant data-centers are located in the US (New York and Palo Alto), In some cases, when broadcasting to Kaltura from outside of the US, there may be bandwidth issues and fluctuation.

To overcome this issue, Kaltura has setup up regional RTMP endpoints that maintain persistent connections to our US data-centers to eliminate most of the bandwidth issues that occur due to geography.

The proxies serve the following regions:

  • EMEA (Frankfurt, Germany)

The regional proxies are fully redundant (primary/backup).

If you are broadcasting outside of the US and encounter connectivity or other issues, please contact Kaltura Customer Care and we will route you via a local regional RTMP endpoint.

We recommend testing your upload speed via https://speedtest.net

Make sure to:

- Select the server location that best fits your location in order to simulate to properly test the upload speed.

- Select Single from the connections options.

We recommend testing several times as bandwidth can fluctuate.

SRT ingestion

We also support Secure Reliable Transport (SRT) ingestion for Live broadcasts. SRT is an open source transport technology that optimizes streaming performance across unpredictable networks, such as the Internet. The SRT protocol brings several benefits in areas such as video quality, low latency, and end-to-end security.

Use KMC or liveStream.get API call to get endpoints URLs and stream IDs for the primary and the backup SRT streams.

To enable end to end AES-128 encryption for the stream, set a 10 to 79 alphanumeric passphrase from KMC or using the API.

How to stream using OBS encoder

  1. Use the streaming option.
  2. Use the URL as the Server Address. 
  3. Concatenate the stream ID string to the URL by adding ?streamid= between the URL and the stream ID. 
  4. Leave the Stream Key field empty.
    <URL>?streamid=<stream_ID>

Currently Supported:

  • Passthrough
  • Transcoding
  • Redundancy and Failover
  • DVR
  • Recording
Was this article helpful?
Thank you for your feedback!
In This Article
Related Articles
Back to top

Never miss a thing!

Subscribe to our customer newsletter and our release notes updates, so you always get the best out of Kaltura.
Newsletter