Intel Collaboration Suite for WebRTC (Intel CS for WebRTC) Version 2.8 Released 30 September 2015 1. Disclaimer This release note as well as the software described in it is furnished under license and may only be used or copied in accordance with the terms of the license. The information in this manual is furnished for informational use only, is subject to change without notice, and should not be construed as a commitment by Intel Corporation. Intel Corporation assumes no responsibility or liability for any errors or inaccuracies that may appear in this document or any software that may be provided in association with this document. Except as permitted by such license, no part of this document may be reproduced, stored in a retrieval system, or transmitted in any form or by any means without the express written consent of Intel Corporation. 2. Introduction This is version 2.8 release of the Intel CS for WebRTC and it includes the following: Intel CS for WebRTC Conference Server enables not only P2P style communication, but also efficient WebRTC-based video conference. Intel CS for WebRTC Gateway Server for SIP provides the WebRTC connectivity into SIP conferences. Intel CS for WebRTC Client SDK allows you to develop WebRTC apps using JavaScript* APIs, Android* native apps using Java* APIs, or ios* native apps using Objective-C* APIs. 3. New Features
1. The Client SDK for ios now provides H.264 video codec support with hardware acceleration. 2. The Client SDK for JavaScript and Android provide APIs for developers to obtain real-time network statistics of the connection. 3. Added support for MCU multi-streaming, which outputs two or more types of mixed video streams with different resolutions, and adapts to different users or devices. 4. A flexible media recording with selective audio and video recording across streams. 5. Enhanced WebRTC Gateway for SIP with Intel Architecture based media codec acceleration. 4. Changes 1. Client SDK for Android: a. Added the method switchcamera in the class base.localcamerastream. b. Added the methods setmaximumaudiobandwidth and getmaximumaudiobandwidth in the class p2p.publishoptions. c. Added the methods getconnectionstats and getaudiolevels in the class p2p.peerclient. d. Added the method getsupportedresolutions in the class conference.remotemixedstream. e. Added the methods setmaximumaudiobandwidth and getmaximumaudiobandwidth in the class conference.publishoptions. f. Added the methods setresolution, getresolutionheight, getresolutionwidth, sethasvideo, sethasaudio, hasvideo and hasaudio in the class conference.subscribeoptions. g. Replaced the method setstreamid with two fine-grained methods setvideostreamid and setaudiostreamid in the class conference.recordoptions.
h. Added the methods getusers, getremotestreams, playvideo, pausevideo, playaudio and pauseaudio in the class conference.conferenceclient. 2. Client SDK for JavaScript a. Added one property bandwidth for PeerClient configuration. b. Added the methods getconnectionstats and getaudiolevels to PeerClient. c. Changed the method startrecorder parameter options from general streamid to separated videostreamid and audiostreamid in the class ConferenceClient. d. Added new class RemoteMixedStream derived from RemoteStream, with two additional methods ismixed and resolutions. e. Added new video option {width: xxx, height: xxx} for method subscribe in class ConferenceClient. 3. Client SDK for ios a. Added the methods enableaudio, disableaudio, enablevideo and disablevideo to the class RTCStream. b. Added the method send in the class RTCPeerClient. c. Added the member mediacodec to the class RTCPeerClientConfiguration. d. Added the methods onuserjoined, onuserleft and onmessagereceived to the class RTCConferenceClientObserver. e. Added the methods send, playaudio, pauseaudio, playvideo and pausevideo to the class RTCConferenceClient. f. Added the member mediacodec to the class RTCConferenceClientConfiguration. 5. Known Issues Client SDK for ios:
1. Not all the features found in the Client SDK for JavaScript and Android are yet available in the Client SDK for ios. This version only supports main functionality of P2P and conference chat. Client SDK for JavaScript: 2. JavaScript P2P SDK does not support Firefox* since current version of Firefox does not fully support peer connection renegotiation. Client SDK for Android: 1. Android SDK does not support P2P conference room. 2. Android SDK does not support room level configuration. 3. Android SDK can t get fine-grained user permission list for publish and subscribe. MCU Server: 1. Chrome* browser does not support audio-only scenario with mixed stream on GPU-accelerated MCU server. The workaround is the subscriber must explicitly specify the mix stream subscribe parameters as audio only, as follows: ConferenceClient.subscribe(stream, {video: false, audio: true});. 2. Current MCU server only supports media recording with VP8 video codec; H.264 is not supported. Gateway Server for SIP: 1. It only supports SIP devices that can decode video packets with non-interleaved packetization mode due to the H.264 encoding engine limitation on max slice size setting. 2. It does not support SIP devices that have been initialized with audio-only call and containing a video m line in its offer SDP to WebRTC client. Plugin for Internet Explorer* (IE): 1. The plugin only supports IE versions 9, 10 and 11 because of compatibility issues between the JavaScript SDK and earlier versions of IE.
2. The plugin does not support screen sharing. 6. Important Notes The Intel CS for WebRTC provides secure video conference experience, including secure WebSocket on signaling, secure Room Token on user authentication, SRTP/DTLS on media transportation, HTTPS/SSL on sample web app, etc. This may not be sufficient for specific end customer s deployment environments and Intel Corporation assumes no responsibility for potential security risks. The following notes explain some special conditions for using the APIs: a. Peer Server is deployed as reference implementation of signaling server for Peer to Peer Chat, which hasn t support scaled deployment solution yet. b. The default TURN/STUN server is set to our sample server. You should replace it with your own server since the sample server may not always work. * Other names and brands may be claimed as the property of others.