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.

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

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

Different sources where are you pulling in content from

Tranmission Systems

Production Equipment

Live Switching

Encoding/Transcoding/Transmixing

Managment

Security

Authentication

User Development and Management

MetaData capture

Live Captions

Engagement

UX and UI on all devices

Social

Distribution

CDN One or more

gepograpical

Which devices channels networks, publishers, campuses, etc.

Conversion and Monetization KPI

What does success look like

Business Intelligence

performance

engagement

revenue

 

 

 

 

 

 

 

Encoder Settings

R&D

To supply answers to these questions

Setup

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?

 

Framerate

Bitrate 

Flavors

Key Frame Interval

Codec

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%
  • Datarate 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.

 

link out to Wowza

 

 

http://support.brightcove.com/en/video-cloud/docs/live-module-guidelines-and-best-practices#encoders

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
Bandwidth
(Mbs)
ResolutionVideo
Bitrate Encoder Settingse
(Kbps)
Audio
Bitrate
(Kbps)
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