Web Call Server supports WebRTC technology. This means each client will establish WebRTC session with the server.
WebRTC uses SRTP transport protocol without any TCP-like retransmissions. Therefore the latency value will depend on the client jitter buffer and RTT. It is hard to predict particular vaues of the latency, but we can say that it will be pretty low. For now, WebRTC technology gives the lowest latency in comparison with other web streaming browser solutions like HTML5 video over HTTP or Flash RTMP/RTMFP.
Here you can see the latency diagramm.
Consider a network with RTT 100 ms. For example if you ping a server in Germany from USA, you can get the similar ping values.
This means:
- The first segment Publsher – Web Call Server will take about 50ms of latency.
- The second segment Web Call Server – Subscriber will take the same 50ms if we broadcast from Germany to USA or vice versa with the same RTT about 100ms.
- The third segment is jitter buffer of end-user’s browser, it will depend on network quality. If the quality is high, this additional latency will be minimal, because adaptive jitter buffer is designed to keep latency as low as possible if loss rate is low.
If network loss rate is high, jitter buffer will be automatically increased to save quality/latency ratio good enough for communication.
WebRTC is designed for low-latency communication, not video onDemand, that’s why low latency has higher priority than high quality here. VP8 video codec helps to keep quality good enough.
Finally, middle latency value should be about 2*RTT, where RTT is Round Trup Timer which can be measured by ‘ping’ command. It is about 200ms in our example.
Regarding to the size of group of subscribers,
It can be limited by bandwidth of the server and CPU resources. The bandwidth factor is more important.