Kaltura Live Streaming Guidelines and Best Practices

This article describes the recommended practices for preparing and deploying your media for use with Kaltura Live Streaming. Kaltura Live Streaming allows you to send live or prerecorded audio and video to mobile devices as well as desktop computers.

The article on Live Streaming Using Kaltura Live Streaming (HDS / HLS / DASH) should be considered a prerequisite because it introduces the Kaltura Live Streaming technology.

The following Kaltura Webinar provides information and guidelines and can be viewed here.

Live Creation

The production and management workflows are different.

The point is to push content thru that has time relevancy. For example sport, news, weather.

How to package content to make it relevant. What content you plan to bring out to a broadcast that is interesting to watch.

Different sources where are you pulling in content from

Tranmission Systems

Production Equipment

Live Switching





User Development and Management

MetaData capture

Live Captions


UX and UI on all devices



CDN One or more


Which devices channels networks, publishers, campuses, etc.

Conversion and Monetization KPI

What does success look like

Business Intelligence




Encoder Settings


To supply answers to these questions


Encoder Setup

  • What encoder are you using? (WireCast and FLMLE ) What version?
  • How many streams within a single entry do you usually stream? input hack.
    • Which bitrates?
    • And which input size? 
  • What is your configuration for 'Frame Per Second rate'?
  • What is your configuration for 'Key Frame frequency' / 'GOP size'?
  • What is your audio stream format? AAC, MP3, Other 
  • What profile are you using for H264 encoding profile? Main / Baseline/ High/Other
  • Are you streaming to Primary and Backup or Primary only?




Key Frame Interval 


Using Primary and Secondary

Determining Encoder Capabilities

Understanding the capabilities of the software and hardware used to encode the live stream and send it to the Live module is also important. There may be plenty of bitrate to send a high-quality, 1080p input stream, but the hardware also needs to be able to encode in faster-than-realtime speeds. Some encoding tools display information about the total CPU usage and bandwidth being used. For example, Telestream Wirecast has an option to enable Output Statistics (under the view menu), which includes the number of frames per second encoded, CPU usage, Datarate and Flash Queue, all of which are extremely useful when determining the most stable, highest quality stream that is possible on given hardware.

Things to watch in Wirecast:

  • CPU should be less than 80%
  • Data rate should be near the target bitrate
  • FPS should be at the rate of the input stream settings
  • Flash Queue should be empty

Determining Encoder Settings

After set your settings you have to make sure your machine is capable of encoding at the relevant capacity.

Encoder Machine Setup 

  • If you are using a software based encoder (Wirecast, FMLE, KRecord), what is the machine type are you streaming from? How many cores and how much memory?
  • What is the operating system type and version? Mac, Windows, Linux. What version?
  • What is the network type? (wired/wireless)
  • Is the encoder running alone, or are there any other processes running simultaneously
  • What audio/video devices are you using? External microphone, Headset.

Player Configuration 

  • What devices? IOS devices, Laptops, Macs, Windows, Android, smart TV, OTT devices
  • UI-conf id

Conversion Profile 

  • Do you use custom conversion profile?
  • Usually - Passthrough / Cloud Transcode / Source only
  • Conversion Profile Id

List of Supported Encoders 

FMLE and WireCast.

Validating Available Bandwidth

The first step towards arriving at the appropriate settings for the input stream is to determine the available bandwidth on site. There are a few tools that can help:

  • SpeedTest.com (http://www.speedtest.net/) - Determining the total bandwidth available for HTTP connections is a good first step. However, since the input feed will be streamed to the Live module over RTMP instead of HTTP, the actual bandwidth available for RTMP connections will be significantly less.
  • Xsplit RTMP Speedtest (http://www.xsplit.com/download) - Xsplit is a free to download encoding tool with built in bandwidth measurement. Windows support only.

Input Stream Recommendations

Encoder SettingsAvailable
Bitrate Encoder Settings
Profile: 4.1
Level: High
24-30 fps
Keyframe rate: 60
3 - 101920x10802500 - 5000128
Profile: 3.1
Level: High
24-30 fps
Keyframe rate: 60
2 - 351280x7201500 - 3000128
Profile: 3.1
Level: Main
>24-30 fps
Keyframe rate: 60
1.5 - 2.51024x5761000 - 200096
Profile: 3.1
Level: Main
>24-30 fps
Keyframe rate: 60
1 - 2854x480750 - 150096
Profile: 3.0
Level: Main
24-30 fps
Keyframe rate: 60
.75 - 1.5640x360500 - 100064
In This Article
Was this article helpful?
Thank you for your feedback!