Re: [rtcweb] New usecase & requirement for media forking in browser

Harald Alvestrand <harald@alvestrand.no> Mon, 31 October 2011 16:00 UTC

Return-Path: <harald@alvestrand.no>
X-Original-To: rtcweb@ietfa.amsl.com
Delivered-To: rtcweb@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id C8B5D11E80CA for <rtcweb@ietfa.amsl.com>; Mon, 31 Oct 2011 09:00:14 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -110.599
X-Spam-Level:
X-Spam-Status: No, score=-110.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, RCVD_IN_DNSWL_HI=-8, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id CKwECSPE4-9k for <rtcweb@ietfa.amsl.com>; Mon, 31 Oct 2011 09:00:13 -0700 (PDT)
Received: from eikenes.alvestrand.no (eikenes.alvestrand.no [158.38.152.233]) by ietfa.amsl.com (Postfix) with ESMTP id 6D9ED21F8E31 for <rtcweb@ietf.org>; Mon, 31 Oct 2011 09:00:12 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1]) by eikenes.alvestrand.no (Postfix) with ESMTP id 7040B39E13F; Mon, 31 Oct 2011 17:00:09 +0100 (CET)
X-Virus-Scanned: Debian amavisd-new at eikenes.alvestrand.no
Received: from eikenes.alvestrand.no ([127.0.0.1]) by localhost (eikenes.alvestrand.no [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id ck8qJaJkvJSH; Mon, 31 Oct 2011 17:00:08 +0100 (CET)
Received: from [172.20.78.134] (63-145-238-4.dia.static.qwest.net [63.145.238.4]) by eikenes.alvestrand.no (Postfix) with ESMTPS id BD51D39E13B; Mon, 31 Oct 2011 17:00:07 +0100 (CET)
Message-ID: <4EAEC609.1040707@alvestrand.no>
Date: Mon, 31 Oct 2011 09:00:09 -0700
From: Harald Alvestrand <harald@alvestrand.no>
User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.23) Gecko/20110921 Thunderbird/3.1.15
MIME-Version: 1.0
To: Ravindran Parthasarathi <pravindran@sonusnet.com>
References: <20111024224257.28459.65554.idtracker@ietfa.amsl.com><6EB8679A-13D5-4AD7-97F2-BC35FC0966F0@acmepacket.com><2E239D6FCD033C4BAF15F386A979BF51159C32@sonusinmail02.sonusnet.com><CALiegfnVaZjh1K+brd180Z9Ufheau3v6OJe6Ejv8P7wzw6ROQw@mail.gmail.com> <2E239D6FCD033C4BAF15F386A979BF51159D7A@sonusinmail02.sonusnet.com> <4EAAF413.8030501@alvestrand.no> <2E239D6FCD033C4BAF15F386A979BF51159D7B@sonusinmail02.sonusnet.com> <247FFE2C-DB2C-4280-A219-BE1503662F92@acmepacket.com> <387F9047F55E8C42850AD6B3A7A03C6CB953@inba-mail01.sonusnet.com>
In-Reply-To: <387F9047F55E8C42850AD6B3A7A03C6CB953@inba-mail01.sonusnet.com>
Content-Type: text/plain; charset="ISO-8859-1"; format="flowed"
Content-Transfer-Encoding: 8bit
Cc: "<rtcweb@ietf.org>" <rtcweb@ietf.org>
Subject: Re: [rtcweb] New usecase & requirement for media forking in browser
X-BeenThere: rtcweb@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Real-Time Communication in WEB-browsers working group list <rtcweb.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/rtcweb>, <mailto:rtcweb-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/rtcweb>
List-Post: <mailto:rtcweb@ietf.org>
List-Help: <mailto:rtcweb-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/rtcweb>, <mailto:rtcweb-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 31 Oct 2011 16:00:15 -0000

On 10/31/2011 06:23 AM, Ravindran Parthasarathi wrote:
> Usecase:  Media forking in browser
>
> Description: User forks local stream/stream components to multiple peers simultaneously and able to receive multiple streams from multiple peers.
Ravindran,

I see this as an implementation description, and not an use case.

Could you rephrase this in terms that make it clear what the user will 
be trying to do, and that this technology (forking) is the appropriate 
solution for that problem?

That will also help uncover more requirements that the use case will 
imply. For instance, if the idea is that the user talks to multiple 
persons simultaneously, and they are able to hear each other without a 
direct connection to each other, there is an added requirement that the 
user be able to mix audio from local and remote sources.

Thank you!

      Harald Alvestrand

> Functional requirement: F11, F12, (any new requirement has to be added ?)
>
> API requirement:   The Web API MUST provide means for the web application to initiate sending/receiving of stream/stream components to a multiple peer simultaneously and relate each of these streams individually by web application.
>
> Having said that, I'm not very sure whether this usecase falls under the category of remote-recording by John.
>
> Hadriel,
>
> Thanks for the clarification on the current status and practical usecases.
>
> Thanks
> Partha
>
>
>> -----Original Message-----
>> From: Hadriel Kaplan [mailto:HKaplan@acmepacket.com]
>> Sent: Saturday, October 29, 2011 1:58 AM
>> To: Ravindran Parthasarathi
>> Cc: Harald Alvestrand; Iñaki Baz Castillo;<rtcweb@ietf.org>
>> Subject: Re: [rtcweb] RTCWeb Forking usecase [was RE:draft-kaplan-
>> rtcweb-sip-interworking-requirements-00]
>>
>>
>> We've debated serial and parallel forking a number of times but I don't
>> know if there's been consensus.
>>
>> But your email is really two different questions/topics:
>> 1) Is there a use-case for forking within WebRTC?
>> 2) Does supporting SIP forking mean the Browser has to handle the
>> SDP/media behavior of it, vs. the Web-server/Interworking-function
>> handling it?
>>
>> For the first question, I can certainly envision a Web-app wanting to
>> let Alice press a single button on her Browser and end up communicating
>> with Bob no matter where he may be, or letting her single button-press
>> end up communicating with Bob first and then Charlie, or letting her
>> single button-press end up communicating with Bob and Charlie at the
>> same time.  But I think such things can be accomplished through clever
>> Web-app code without needing the Browser to be aware it's a forked
>> ROAP/SDP scenario.
>> [Note: though this may depend on what W3C decides the user-consent UI
>> model is relative to PeerConnections, MediaStreams and ROAP]
>>
>> With regards to the second question, there was a long email thread on
>> this which started here I think:
>> http://www.ietf.org/mail-archive/web/rtcweb/current/msg01354.html
>>
>> -hadriel
>>
>>
>> On Oct 28, 2011, at 3:14 PM, Ravindran Parthasarathi wrote:
>>
>>> Harald,
>>>
>>> Thanks for the clarification. "Fedex IVR" usecase is under browser to
>> GW/server section (sec 4.3) which is a SIP based forking requirement. If
>> you look at carefully, "Fedex IVR non-final response" scenario could
>> have be achieved cleanly using two separate offer/answer exchange&  two
>> final responses (INVITE/200/ACK, RE-INVITE/200/ACK) :
>>> 1) customer - fedex IVR offer/answer exchange
>>> 2) fedex agent - Customer offer/answer exchange
>>>
>>> but it may be avoided in legacy for billing reasons which should not
>> be major concern for RTCWeb. In case of SIP forking, it is assumed that
>> 2nd answer override the 1st answer in the media plane.
>>> As I mentioned earlier, SIP (serial) forking requirement shall be met
>> by gateway signaling and no extra requirement for browser. Also,
>> switching media stream from one responder to other responder in Fedex
>> IVR usecase is not so easy because of legacy media handling (ICE, RTCP)
>> differences as mentioned in draft-kaplan-rtcweb-sip-interworking-
>> requirements-00.
>>> ISTM, we don't have RTCWeb specific forking usecase till now.
>>>
>>> Thanks
>>> Partha
>>>
>>>> -----Original Message-----
>>>> From: Harald Alvestrand [mailto:harald@alvestrand.no]
>>>> Sent: Friday, October 28, 2011 11:58 PM
>>>> To: Ravindran Parthasarathi
>>>> Cc: Iñaki Baz Castillo; rtcweb@ietf.org; Hadriel Kaplan
>>>> Subject: Re: [rtcweb] RTCWeb Forking usecase [was RE: draft-kaplan-
>>>> rtcweb-sip-interworking-requirements-00]
>>>>
>>>> On 10/28/2011 10:56 AM, Ravindran Parthasarathi wrote:
>>>>> By looking at draft-ietf-rtcweb-use-cases-and-requirements-06, I
>> could
>>>> not see any specific requirement for RTCWeb forking. In case SIP
>> forking
>>>> is the only requirement for RTCWeb and also, RTCWeb does not have any
>>>> specific forking requirement, then the gateway between RTCWeb&   SIP
>>>> shall take care of the functionality. I'm asking this question to get
>>>> the clarity on whether SIP forking feature has to impact RTCWeb
>> client
>>>> requirement or not.
>>>> I believe the "Fedex IVR" case was specifically intended to surface
>> the
>>>> requirement for "non-final responses" (switching a media stream from
>> the
>>>> initial responder to a next responder).
>>>> That's one form of forking ("serial fork"?)
>>>>
>>>> I haven't understood forking to be a requirement in any other use
>> case.
>