nanoStream H5Live Low Latency FAQ

On May 2nd, we held a very fruitful roundtable discussion in cooperation with Streaming Media, around the question of how to best reduce latency in live streaming. We received a lot of interesting questions from the participants, showing that ultra-low latency is a fascinating new level in developing live streaming software.

Q) HD video is great and works great all over the world on all types of devices, but latency is the biggest issue, especially when live streaming sports. What are you going to do to fix it?

We picked up up the challenges of HTTP-based long-latency protocols like HLS and DASH and created our own nanoStream H5Live delivery and playback solution which works on all browsers.

Q) What is H5Live and how can it guarantee ultra-low latency live streaming and playback?

To respond to our customers’ needs for ultra-low latency use cases, the nanocosmos team invented the plugin-free nanoStream H5Live stream delivery and playback technology.

nanoStream H5Live is a client-server delivery and playback solution based on HTML5 technologies, including HLS on iOS, enabling ultra-low latency browser-based playout, plugin-free on all web browsers.

Yes and no. H5Live can connect to existing RTMP live streams, so you can keep using your live encoding setups. The H5Live delivery protocol itself is not based on RTMP but on WebSocket, fMP4 and HLS.

Q) How does nanoStream H5Live avoid the need for transcoding?

nanoStream H5Live is a low-latency packaging and multiplex technology only, working with H264 video and AAC audio formats. If you encode your live stream with these standard formats, no transcoding is required.

Q) When you decrease the latency, what is the effect on rebuffering?

The buffer control algorithm of nanoStream H5Live is optimized to avoid rebuffering as much as possible.

Q) What about WebRTC – is it used in H5Live?

WebRTC, the real-time communication technology promoted by Google was designed for peer-to-peer communication in small groups only and it does not scale well for large number of viewers, and it it missing CDN and vendor support (e.g. it is not 100% compatible across devices and browser like Apple Safari).

H5Live is much better scalable for large audiences and it is compatible to all HTML5 browsers on all devices, connects very well to existing live streaming environments based on RTMP and reduces complexity with it’s “runs everywhere” approach.

Together, nanoStream WebRTC.live and H5Live form a powerful end-to-end live streaming workflow. With no plugins needed, the workflow enables ultra-low latency live streaming from encoding, through streaming and playback – directly within web browsers.

Q) What are your thoughts on using WebRTC for low latency broadcast at scale?

Our nanoStream WebRTC.live broadcast solution can be used for large scale broadcast environments. By using H264 as a video codec everywhere, you can even reduce your server transcoding load a lot.

Q) What is the difference between FaceTime or Skype and live streaming? FaceTime looks good and is in sync with no or very low latency. Why do you need different technologies?

FaceTime and Skype are peer-to-peer technologies for small groups. Live streaming is always using a streaming server to potentially record and stream content to larger audiences. At nanocosmos, we combine our nanoStream WebRTC.live and H5Live technologies to create an end-to-end live streaming workflow that allows to stream in near real-time to large audiences, with latency around 1 second.

Q) What is the difference between Facebook Live, Youtube Live, Twitch, and other platforms and nanoStream Cloud and H5Live?

Facebook Live, Youtube Live and Twitch are social media platforms for specific use cases. The usually use standard HTTP based delivery formats like HLS which create long latency values of 6-10 seconds or more. Separate to the technical constraints, there are licensing and usage model restrictions as the content is completely hosted and under control of the vendor.
With nanoStream Cloud and H5Live you can create your own branded ultra-low-latency live streaming platform for your specific business case.

Q) What is the impact of the keyframe interval on reducing the chunk sizes? Are you able to create chunks without keyframes?

With the standard HTTP-based protocols HLS and DASH based on file segments, the keyframe interval has a high impact on chunk sizes.

Our unique nanoStream H5Live solution does not have this restriction and works independently from keyframe lengths by creating a continuous stream without files segments based on video frame segments.

Q) How do the low latency solutions work with adaptive bitrate streams? Does transcoding the stream introduce additional latency with your solution? How much?

Transcoding introduces additional latency only to a small part, depending on the transcoder buffer and load times. In any case, transcoding creates a high server load which highly affects server costs. nanoStream-based solutions try to avoid the transcoding load as much as possible.

Q) Do you see CDN vendor like Akamai supporting WebRTC in near future?

CDN vendors either do not care about latency or try to reduce latency down to around 6-10 seconds. nanoStream’s target latency is around 1 second end-to-end to achieve full interactive live streaming user experiences.

Q) Can I use any HLS player to play the stream in the browser?

H5Live on iOS Safari supports a fully HLS compatible live stream, based on a continuous stream without using the HLS restrictions of file segments groups. This enables true low latency use cases independent of video GOP sizes.

Q) How do you support websocket at scale? What is the max number of viewers supported?

As our server component is very light-weight, our cloud service can scale well for tens of thousands of viewers. There are no general technical limits.

Q) Are there hybrid protocol applications that utilize UDP (in addition to TCP) so as to improve performance?

Yes, we have: 1) installable software modules for both encoder and player, 2) WebRTC which is browser-based and using UDP if possible.
Q) If an I-Frame takes a large portion of the segment, how does breaking it into chunks help latency?

An I-Frame has the same time duration than other frames (40ms for 25 fps), so it does not directly affect the latency.

The overall bitrate of the live stream may not exceed the available player bandwidths of course.

Q) I use RTSP from IP cameras and an RTMP player getting sub 1 sec delay with Flash. Since all IP cameras use RTSP and not RTMP how is your software compatible with IP cameras?

You can keep using RTSP from your camera to ingest into your server. H5Live can connect to existing server setups and you can push or pull the live stream in low latency with RTMP.

Bonded cellular products are usually hardware devices using proprietary formats based on UDP + Error Correction, as a peer-to-peer connection between the cellular device and the end point. For software-based solutions in standard environments or plugin-free usage you need more.

For live broadcasting / ingest purposes we offer nanoStream WebRTC.live for browser/plugin-free apps and nanoStream Live EncoderSDKs for native apps

For live playback solutions, we offer our nanoStream H5Live Player for all browsers, or nanoStream Live Player SDKs for native apps