March 23, 2018

NVENC shared context usage

Our Live Transcoder has full support for NVidia GPU decoding and encoding. As you could see from our stress-test article and EC2 tests, Nimble works very good with NVENC.

Usually customers perform decoding and encoding of a relatively small number of streams for input and output and it doesn't affect the performance of neither GPU, nor CPU. However there are cases when our customers use full power of hardware acceleration to process dozens of streams. In this case, some additional performance tuning should be done.

Nimble Live Transcoder allows re-use shared context to optimize resource usage. You may enable it by adding this parameter into Nimble Streamer config (nimble.conf).
nvenc_context_share_enable = true
Nimble config control is described in this article.

Adding this parameter will enable NVENC context share which will increase the performance of Live Transcoder on high load.

You may also find useful our Nimble Streamer performance tuning guide.

Feel free to visit Live Transcoder webpage for other transcoding features description and contact us if you have any question.

Contact us if you have any other questions or issues with Live Transcoder.

Related documentation

Live Transcoder for Nimble StreamerNVidia GPU supportHEVC support in Nimble StreamerBuild streaming infrastructureLive Streaming features, Using Amazon EC2 for HEVC transcoding, Nimble Streamer performance tuning.

March 5, 2018

SRT for mobile streaming on Android and iOS

SRT (Secure Reliable Transport) is a UDP-based protocol that optimizes streaming performance on unreliable networks to deliver the best quality and lowest latency video at all times. The initial version was created by Haivision and now it's available as open source and it's maintained and promoted by SRT Alliance.

Softvelum streaming products have full support for SRT.
Softvelum products have full support for SRT technology. Nimble Streamer was the first software media server to support SRT protocol in all of its modes. Our customers actively use SRT for heavy duty projects which need media transmission across large networks across continents. Recent blog post called Reliable Low Latency Delivery with SRT+SLDP demonstrates SRT capabilities in action using the great combination of Haivision encoders and Nimble Streamer media server. Softvelum and Haivision partner to offer you reliable, low latency video streaming over the public internet with SRT. BTW, you can get 10% off SRT-enabled Haivision encoders with promo code SV18.

Mobile SRT streaming

Having SRT working perfectly on server side, we now introduce SRT streaming for our mobile products. SRT capabilities perfectly fit to solve the issues associated with mobile networks like jitters, bandwidth changes etc. So using that technology significantly improves your users' experience.

Larix mobile streaming SDK now allows streaming via SRT in Push mode. It supports all of its features including compensating for jitter by errors correction, AES encryption and more.
This is now available in addition to existing features such as

  • RTMP and RTSP streaming support.
  • Multiple simultaneous destinations for the same stream.
  • Full support for YouTube, Facebook Live, Twitch, Limelight CDN, Periscope and other services.

So you may have your own CDN taking SRT input stream and also send content to Limelight and Facebook - this all can be done simultaneously using the same application.

You can try that in action using Larix Broadcaster freeware app which demonstrates all features of our streaming library. App sources are included in the SDK package so you can easily create your own apps.

Check these links:

You can also refer to these screenshots as example of SRT setup in Larix, it's very simple.

Go to Setting dialog (the gear icon) then click on Connections and create new connection to see this dialog.

First you define your destination URL - it will start with "srt://" and will include the server address and the port which was set up to receive SRT.
If you use encryption, you an fill in SRT passphrase field.

If you need to set more options for your SRT connection, you need to save settings, then go to Manage connections menu and click on its details to see more.

When you have your connections ready to go, check those which you'd like to send your streams to as shown below.

Once you start transmission, you will have your stream being sent to multiple locations.

That's it. With those capabilities you can now have full power of SRT being applied to mobile streaming use cases.

This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit (
This product uses SRT library distributed under LGPL license. Library source code available at

Related documentation

Nimble StreamerNimble Streamer SRT protocol supportLarix mobile streaming SDK,  Larix SDK FAQLarix Broadcaster