Overview of Softvelum Low Delay Protocol (SLDP)
Softvelum Low Delay Protocol (SLDP) is aт innovative solution for the live streaming industry that prioritizes low latency. With the decline of RTMP and Flash, the need for a real-time delivery protocol that is supported on multiple platforms has become increasingly important. SLDP is designed to provide sub-second delay between media server output and user playback, making it ideal for use cases like security, online chats, gaming, bidding and more.
SLDP uses WebSockets for transmission over HTTP/HTTPS, allowing for up to one second delay between the origin and player. The protocol is codec-agnostic, meaning that you can stream a variety of video and audio codecs, including H.264, H.265/HEVC, AV1, VP8, VP9, AAC, MP3, and Opus, to platforms that support playback. Real-time adaptive bitrate (ABR) is also supported, which allows for near-instant channel switching and just one GOP time to start new rendition playback.
Whether you are looking to deliver low latency video to multiple devices, perform synchronized playback, or insert ads into your streams, Softvelum Low Delay Protocol (SLDP) has you covered.
More About Softvelum Low Delay Protocol (SLDP)
- SLDP is based on WebSockets for transmission over HTTP/HTTPS.
- Up to one second delay between origin and player.
- Codec-agnostic. You can stream H.264, H.265/HEVC, AV1, VP8, VP9 video and AAC, MP3, Opus audio to the platforms which support the playback.
- Real-time adaptive bitrate (ABR) is supported to allow switching channels nearly instantly. It takes just a GOP time to start new rendition playback.
- Simultaneous synchronized playback among multiple browsers and mobile devices.
- CEA-608/708 closed captions are supported with HTML5 Player SDK.
- Ads insertion support via Nimble Advertizer.
Take a look at our latest case study: LiveX and VVCR: Nimble Streamer Powers Cloud Production Innovator featuring SLDP used by the leading production company.
SLDP setup in Nimble Streamer
From scenarios setup perspective, SLDP is just one more protocol in our bundle.
Use this article as a setup reference and this FAQ for some specific details.
Please learn more about ABR streams setup for Nimble Streamer output and real-time ABR setup for SLDP.
Amazon CloudFront has full support for WebSockets which means SLDP can be delivered via CloudFront network seamlessly.
Please take a look at CloudFront setup for SLDP delivery to learn more about proper settings.
Transmuxing and transcoding for SLDP
Nimble Streamer takes most popular protocols as input for further processing.
These include RTMP, SRT, RTSP, WebRTC, MPEG-TS (UDP and TCP), HLS, Icecast and SHOUTcast.
Once the data is received it can be transmuxed into all supported live streaming protocols which include SLDP, among others. Server passes though the content without changes in case of transmuxing, so whatever the original protocol carries, it will be brought via SLDP to a client.
Live Transcoder can be used in workflows and in cases when some content transformation is needed. This might be downscaling for ABR, filtering, re-sampling, changing profile or whatever else is needed. Transcoder produces H.264 or H.265 (HEVC) video with AAC or MP3 audio so the target platform should be able to play that.
If the ABR SLDP stream is produced, each single bitrate stream within ABR stream may use its own codec or different profile of the same codec. So your FullHD streams may use high profile and other lower resolution streams will use H.264 baseline.
Users can play SLDP with Opus audio on iPhone in audio-only mode when taking WebRTC as a source without transcoding.
Browser support
SLDP can be played in HTML5 browsers with MSE on support using SLDP HTML5 player.
You can also add playback to your own players using JavaScript SDK.
You can also add DVR support into SLDP HTML5 Player by using HLS DVR streams. Read Adding DVR into SLDP HTML5 Player article for setup and usage details.
Mobile support
Mobile Larix Player SDKs for Android and iOS are available for adding playback capabilities to your own apps. This includes SLDP and RTMP support.
Visit our players page to see what you can use on client side.
Softvelum provides open source code for SLDP protocol library and Media3 DataSource that you can use for embedding SLDP playback in Android. The iOS open source playback is coming soon.
Read introduction blog post about this and other open source initiatives of our team.
Synchronized playback
SLDP also supports synchronized simultaneous playback among multiple browsers and mobile devices. This is ideal for applications like one big screen with audio on individual devices, a second screen application, or multiple screens with a single source of sound.
- One big screen with audio on individual devices.
- A second screen application.
- Multiple screens with single source of sound.
- Surveillance cameras shown on the same page.
This capability is supported in Nimble Streamer server, HTML5 SLDP player and Larix Player for Android/iOS.
Please read this article which explains the setup and usage.
SLDP demos
Take a look at the following demos showing SLDP-powered use cases:
- Mosaic videowall demo with 4 simultaneous players
- SLDP multi-device synchronization playback demo
- Nimble Advertizer Live Demo with SLDP streams
Free trial of WMSPanel included