Broadcasting of a WebRTC video stream over Websocket
Websocket is used to play the video stream if the client browser does not support WebRTC, and at the same time it is necessary to ensure minimal delays
Support for playing video streams on the WebRTC appeared only in version 10 of the iOS. Therefore, before the main way to deliver Live video to Safari for iOS was HLS (HTTP Live Streaming). HLS uses writing files to disk and downloading via HTTP, which gives a delay of more than 15 seconds.
Web Call Server sends the video stream to the iOS Safari browser using the Websocket protocol, which reduces the delay to 1-3 seconds and gives real-time video comparable to HLS.
Specifications
Broadcasting platforms |
Broadcasting technologies |
iOS Safari playback technologies |
iOS Safari playback codecs |
|
|
|
|
- Chrome
- Firefox
- Opera
- Safari, Mac OS
- IE
- Edge
- iOS SDK
- Android SDK
- RTMP encoders
- WebRTC
- Flash, RTMP, RTMFP
- RTMP encoders
- HTML5 Canvas
- Websocket
- MPEG
- G.711
Scheme of broadcasting to iOS Safari
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.
Step-by-step scheme of playback in iOS Safari
- The browser establishes a connection to the WCS and publishes a audio-video stream;
- The WCS receives the audio-video stream from the WebRTC browser;
- iOS Safari requests playback of the stream;
- The WCS server converts the WebRTC video stream to Websocket and sends it to the iOS Safari browser.
For more information, go to Testing
Download Web Call Server 5
System requirements: Linux x86_64, 1 core CPU, 2 Gb RAM, Java
Installation:
- wget https://flashphoner.com/download-wcs5.2-server.tar.gz
- Unpack and install using 'install.sh'
- Launch server using command 'service webcallserver start'
- Open the web interface https://host:8444 and activate your license
If you are using Amazon EC2, you don't need to download anything.