Subject: Re: [rtcweb] ROAP Example Application
From: Hadriel Kaplan <[email-masked]>
To: Randell Jesup <[email-masked]>
Cc: "<[email-masked]>" <[email-masked]>
Date: Sun, 23 Oct 2011 04:33:30 +0000
List-Id: Real-Time Communication in WEB-browsers working group list <rtcweb.ietf.org>

On Oct 21, 2011, at 11:25 PM, Randell Jesup wrote:

>> I think though you can sort of emulate the separation in RTCWeb, even with the SDP offer/answer and ROAP.  You create a MediaStream with a track of "data" type, put it in a PeerConnection, and issue the SDP Offer.  Then when the data connection is open to the peer Browser/device, you create your audio/video tracks/streams and add them in, and when the new Offer is issued by the Browser you send the ROAP over the data connection to the peer, who does likewise for the Answer.  That might work.
> 
> This isn't what Matthew was thinking of - he wanted to know if with these tools, it would ease negotiating codecs that didn't exist when the web-app was written (especially with a low-level API to the browser and its codecs).
> 
> What you describe is simply a way for the JS App to do "renegotiations" without using the "high path" through the servers.  Eminently doable, but not fundamentally different.  It may make renegotiations faster.  No reason an app can't do that, and I have some services built on WebRTC in mind that may depend on this usage.

Well one really good reason to do it would be to be able to get a session on/off-hold (ie, start/stop RTP using SDP direction attributes), or add/remove streams, without clipping and without loading the Web Server down passing ROAP messages back/forth.  That might be almost necessary in some applications.  For example one where you have a lot of separate video sessions up on a screen and change which one is active at any given time by a mouseover/click.  Or a game application, where you might have a direct data channel open between all participants anyway, and want to do audio/video whenever the users are in the same area of the game or by team-commands or whatever.

-hadriel