Low-latency broadcasting of a WebRTC video stream to iOS Safari via the Websockets protocol
iOS browsers do not support the WebRTC technology. The main way to deliver a live video stream to the Safari browser on iOS is HLS (HTTP Live Streaming). HLS downloads files via the HTTP and saves them, so the overall latency can easily exceed 15 seconds.
Web Call Server sends a video stream to iOS Safari via the Websocket protocol, which allows reducing latency to 1-3 seconds producing a nearly real-time broadcasting compared to HLS.
|iOS Safari playback technologies
||iOS Safari playback codecs
iOS Safari broadcasting
Web Call Server can receive a video stream via multiple protocols: WebRTC, RTMP, RTMFP, SIP / RTP, RTSP and can deliver it to the iOS Safari browser via Websocket.
iOS Safari playback step by step
- A WebRTC browser establishes connection to the server and invokes the publishStream API method.
- The server receives a video stream via the WebRTC technology.
- iOS Safari uses the playStream API method to play the stream.
- Web Call Server converts the WebRTC video stream to Websocket and sends it to the iOS Safari browser.
Example broadcasting of a WebRTC video stream
to iOS Safari
At first, we publish the video stream from the Google Chrome browser to the server using the WebRTC technology.
To receive the detailed information about the demo and testing of this solution, please see the Testing page.
Download Web Call Server 5
System requirements: Linux x86_64, 1 core CPU, 1 Gb RAM, Java
- wget http://flashphoner.com/download-wcs5-server.tar.gz
- Unpack and install using 'install.sh'
- Launch server using command 'service webcallserver start'
- Open the web interface https://host:8888 and activate your license
If you are using Amazon EC2, you don't need to download anything.