Re: [rtcweb] A problem with both A and B

Emil Ivov <emcho@jitsi.org> Mon, 20 May 2013 09:00 UTC

Return-Path: <emil@sip-communicator.org>
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 5E96921F843F for <rtcweb@ietfa.amsl.com>; Mon, 20 May 2013 02:00:06 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.699
X-Spam-Level:
X-Spam-Status: No, score=-1.699 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, J_CHICKENPOX_56=0.6, MIME_8BIT_HEADER=0.3]
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 m5mYNwuNmYKt for <rtcweb@ietfa.amsl.com>; Mon, 20 May 2013 02:00:05 -0700 (PDT)
Received: from mail-bk0-x22f.google.com (mail-bk0-x22f.google.com [IPv6:2a00:1450:4008:c01::22f]) by ietfa.amsl.com (Postfix) with ESMTP id 82BC721F8443 for <rtcweb@ietf.org>; Mon, 20 May 2013 01:29:54 -0700 (PDT)
Received: by mail-bk0-f47.google.com with SMTP id jg1so1117493bkc.20 for <rtcweb@ietf.org>; Mon, 20 May 2013 01:29:22 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=x-received:message-id:date:from:organization:user-agent :mime-version:to:cc:subject:references:in-reply-to:content-type :content-transfer-encoding:x-gm-message-state; bh=o4PK9VFbcOxkcZMXmYapS/nSHHyBHZAZ9aVwNvuOHsE=; b=CSFJi5YW2Lv3FFp24C5TLW2NCW+uPaTGm9FF2KCRSrE+oSA9HKC/HOoskUNBMS95dh VOfbiU4NUORGBW0cwnbesg79PKNG8AlInFmuhL5ySGV9dxrgWv018HGd8136cxN15brT iFulvZeEOm0lRJA1PVeij8c2HSUv8B0ivlbX+KW531Vzk0jhq1QF7tsdVROn45+n51uu rXSvAxbUZJA3ZVJLqsXA7I1CP1k8+MTnYbxNVxPJqaUiwwtft6igxBcQ+o3Mz1WfAQZN DCRjmhrJyq9rfudTqm6N9I/UhofHyG5w39TwaOkZ5ntUgP8SRatzKnKlUNyha+siEbdk JzzQ==
X-Received: by 10.204.228.79 with SMTP id jd15mr18591621bkb.42.1369038562436; Mon, 20 May 2013 01:29:22 -0700 (PDT)
Received: from camionet.local (77-85-165-231.btc-net.bg. [77.85.165.231]) by mx.google.com with ESMTPSA id f14sm5446168bky.16.2013.05.20.01.29.19 for <multiple recipients> (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Mon, 20 May 2013 01:29:21 -0700 (PDT)
Message-ID: <5199DEDE.2090207@jitsi.org>
Date: Mon, 20 May 2013 11:29:18 +0300
From: Emil Ivov <emcho@jitsi.org>
Organization: Jitsi
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:17.0) Gecko/20130509 Thunderbird/17.0.6
MIME-Version: 1.0
To: Stefan Håkansson LK <stefan.lk.hakansson@ericsson.com>
References: <51965506.7050008@jitsi.org> <1447FA0C20ED5147A1AA0EF02890A64B1C2CDEAC@ESESSMB209.ericsson.se>
In-Reply-To: <1447FA0C20ED5147A1AA0EF02890A64B1C2CDEAC@ESESSMB209.ericsson.se>
Content-Type: text/plain; charset="ISO-8859-1"
Content-Transfer-Encoding: quoted-printable
X-Gm-Message-State: ALoCoQn/5Pl9dnN6mwsMWMVTpvXIoyKnRoRYrflKJchMd/lk4omDYvpG+h3QDvuyPBATX3QPqDo3
Cc: "rtcweb@ietf.org" <rtcweb@ietf.org>
Subject: Re: [rtcweb] A problem with both A and B
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, 20 May 2013 09:00:06 -0000

On 19.05.13, 14:28, Stefan Håkansson LK wrote:
> On 5/17/13 6:04 PM, Emil Ivov wrote:
>> I've mentioned this in a couple of other threads but I think it's
>> important so I am also posting it separately.
>>
>> Both plan A and B currently describe semantics that would require O/A
>> exchanges every time a source is added or removed from a session.
>>
>> Whether it is about adding a second webcam, or a conference participant
>> that leaves or joins, both schemes suggest that the remote party should
>> be notified with an updated SDP.
>>
>> Plan A deals with this by manipulating m= lines, while plan B does it
>> with msid-s.
>>
>> We are nowhere near consensus and I think that this fact alone is a
>> strong argument in favour of the following:
>>
>> This is not a problem for rtcweb to solve.
>>
>> We all have our own preferences for a solution and those come from the
>> different use cases we are planning on addressing and the different apps
>> we are planning to build. The promise of WebRTC is that, by building on
>> the Web paradigm we would provide building blocks which can then be
>> assembled into specific solutions (rather than providing the solutions
>> themselves).
>>
>> In other words: it is not our job to try and implant a signalling
>> protocol into O/A. Signalling is the job of the application.
>>
>> Applications alone know the meaning of the stream that came from your
>> second web cam, or that of the tenth conference participant. They know
>> which conferencing topology they most care about. They have best
>> knowledge about what streams they are currently rendering and which ones
>> they don't need. They know that the names Adam and Justin should be
>> displayed to describe the streams they are currently getting.
>>
>> Most importantly however: they are best placed to know how they'd like
>> to communicate that information to their peers or IF they need to
>> communicate it at all.
>>
>> Currently neither Plan A nor Plan B would let the application do its
>> job. However I do believe Plan B is closer.
>>
>> If we agree that browsers would give applications the latitude that's
>> necessary to address these issues with app specific signalling, then the
>> SDP shouldn't change when they are doing it. Plan B is almost there and
>> the only remaining problem is its insistence on the pre-announcement of
>> SSRCs.
>>
>> If we get rid of that requirement then all we need would be for the W3C
>> to make sure that the APIs have everything they need to allow apps to
>> retrieve SSRC information, send it remotely then pass it down to the
>> browser again when they receive it.
>>
>> I acknowledge that the simulcasting and FEC cases might be a bit
>> different, which is normal because they are about the resolution of
>> transport problems. I still think they could be solved with app-specific
>> signalling and the proper APIs but in this case it would also be worth
>> investigating the options of doing this through RTP/RTCP.
>>
>> Does any of this make any sense?
> 
> There is a lot of sense AFAICU, but there are two things to point out:
> * There should be a standardized way for the receiver to say it can't 
> handle (parts of) the media the senders wants to send. Someone proposed 
> the max-ssrc draft

Certainly. I am not arguing against use of max-ssrc. Quite on the contrary.

> * There have been discussions about that there should be a standardized 
> way for the receiving app to reject - via an api - parts of what the 
> sending app wants to send

Well, perhaps we need to have these discussions again. If the browser
can't handle H.264 it makes perfect sense to refuse that in SDP.
Indicating a maximum supported resolution of 720p also seems fine.

However, if the receiving application wants to tell the sending
application that it would like to reject certain streams, that's up to
the applications to signal.

> offer+answer helps with the above.

I think one look at the discussions that are taking place on this list
is enough to see that this is exactly where Offer/Answer isn't helping.

Emil

-- 
https://jitsi.org