130 likes | 141 Views
This draft defines use-cases and requirements for real-time communication, focusing on audio and video streams, browser and web app functionality, and API requirements.
E N D
WEB REAL-TIME CommunicationUse-cases & Requirementsdraft-holmberg-rtcweb-ucreqs Christer Holmberg Stefan Håkansson Göran AP Eriksson
PURPOSE of the draft • DEFINE USE-CASES • DERIVE REQUIREMENTS, BASED ON THE USE-CASES
SCOPE of the draft • CURRENT FOCUS: • Real-Time Media Streams requirements • Audio and video • Browser/web-app functional separation • Browser requirements • Browser/Web-app API requirements • CURRENTLY NOT COVERED: • Privacy requirements • Web server/browser signalling • Datagram traffic
scope OF THE DRAFT WEB SERVER SERVER/BROWSER SIGNALLING WEB APP (JS) NAT/FW API/BROWSER API RTP WEB BROWSER
USE-CASE: Simple Video Communication Service • Users have loaded, and logged into, a video communication web application into their browsers, provided by the same service provider. • Web service publishes information about user login status, by pushing updates to the web application in the browsers. • By selecting an online peer user, a 1-1 video communication session between the browsers of the peers is initiated. • Self-view, remote video, display size, mute/pause.
USE-CASE: Multiparty video communication • Simple video communication service (see previous slide) is extended by allowing multiparty sessions. • No central server. • Web application pans the audio from different participants differently when rendering the audio. • Users can change how the different participants are placed in the (virtual) room. • Each video stream received is by default displayed in a thumbnail frame within the browser,
USE-CASE: Multiparty on-line game with voice communication • Voice part of the multiparty video communication application is used in the context of an on-line game. • Received voice and audio media rendered together with game sound objects (possibly from different source than voice and audio).
USE-CASE: Video conferencing system with central server • System supporting establishment of multiparty video sessions using a central conference server. • Participants send an audio stream to central server. • Central server mixes the audio streams and sends towards participants a mixed stereo stream. • Participants send two video streams towards server, one low resolution and one high resolution, to be displayed in main window resp thumbnail. • Server selects what video streams to be forwarded as main- and thumbnail videos, based on speech activity. • Users can not can establish a Virtual Private Network (VPN) to access service, if not physically connected to the network where service is located.
USE-CASE: Hockey game viewer • Ice-hockey club uses application that enables talent scouts to, in real-time, show and discuss games and players with the club manager. • Talent scouts use mobile phone with two cameras, one front-facing and one rear facing. • Club manager uses a desktop for viewing the game and discussing with the talent scout. • Desktop screen covered with video captured by front facing camera of mobile phone, with overlaid thumbnail with video captured by rear facing camera. • Mobile phone screen covered by a self view of the front facing camera, with overlaid thumbnail rear facing cameras view.
USE-CASE: Telephony terminal • Mobile telephony operator allows customers to use web browser to access operator services. • Web user can place and receive calls in the same way as when using a normal mobile phone. • When call is received or placed, identity of remote user will be shown in the same manner as when a mobile phone used.
BROWSER REQS IN A NUTSHELL • ACCESS TO MEDIA INPUT DEVICES • Camera, microphone,… • MEDIA STREAM DETECTION, PROCESSING & TRANSMITING • MEDIA STREAM QUALITY • Rate, jitter, packet loss, echo control • AUDIO/VIDEO SYNCHRONIZATION • MIXING OF STREAMS FROM DIFFERENT SOURCES • CODECS • NAT/FW TRAVERSAL SUPPORT FOR MEDIA STREAMS • LEGACY INTEROPERABILITY
API REQS IN a NUTSHELL • USE & CONTROL BROWSER FUNCTIONS • Start/stop sending/receiving of media streams • Mute/pause media streams • Stream layout • Media format (codec) • BROWSER EVENTS • Status of media stream • Media streams no more received • QUERY BROWSER FUNCTIONS (input devices, stream capabilities, codecs…)
THANK YOU FOR LISTENING! CHRISTER.HOLMBERG@ERICSSON.COM