Re: [rtcweb] About the current JSEP-06 draft

"Martin Ekblom" <martin.ekblom@icewarp.com> Wed, 16 July 2014 10:20 UTC

Return-Path: <martin.ekblom@icewarp.com>
X-Original-To: rtcweb@ietfa.amsl.com
Delivered-To: rtcweb@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id D3F111B27F8 for <rtcweb@ietfa.amsl.com>; Wed, 16 Jul 2014 03:20:54 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.551
X-Spam-Level:
X-Spam-Status: No, score=-2.551 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RP_MATCHES_RCVD=-0.651, SPF_PASS=-0.001] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id yFxcRsOaAq0Y for <rtcweb@ietfa.amsl.com>; Wed, 16 Jul 2014 03:20:52 -0700 (PDT)
Received: from server.icewarp.com (server.icewarp.com [217.31.57.169]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 8B9A61B2B09 for <rtcweb@ietf.org>; Wed, 16 Jul 2014 03:20:50 -0700 (PDT)
Received: from icewarp.com [82.113.48.146] ([127.0.0.1]) by server.icewarp.com (IceWarp 11.1.0.0 (2014-07-07) x64) with ASMTP id 201407161220066695; Wed, 16 Jul 2014 12:20:06 +0200
Date: Wed, 16 Jul 2014 12:20:44 +0200
To: rtcweb@ietf.org, Justin Uberti <juberti@google.com>
From: Martin Ekblom <martin.ekblom@icewarp.com>
Message-ID: <435de87e335b8a0bfa6f843db575873b@icewarp.com>
X-Mailer: IceWarp Mailer 11.1.0.0 (2014-07-07) x64-Desktop
X-Priority: 3
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="b1_435de87e335b8a0bfa6f843db575873b"
Archived-At: http://mailarchive.ietf.org/arch/msg/rtcweb/QDnCKJotS-swHXKFL1WwuBxCUcU
X-Mailman-Approved-At: Wed, 16 Jul 2014 09:34:08 -0700
Subject: Re: [rtcweb] About the current JSEP-06 draft
X-BeenThere: rtcweb@ietf.org
X-Mailman-Version: 2.1.15
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: Wed, 16 Jul 2014 10:26:51 -0000

Hi Justin,

I entirely agree with you. Each media stream will have it's own m= line and extra m= lines with recvonly directional attributes should be added for extra streams wanted. This allows for accepting more streams than sending, which is entirely in line with the SDP RFCs.

However, the current JSEP draft misses one small fine point. Reversely, it should also (MUST if you read the relevant RFC) allow for sending more streams than it wants to receive, ie the opposite case of the above, and then send m= lines with the directional attribute set to sendonly. RFC 3264 is very clear with this: 'If the offerer wishes to only send media on a stream to its peer, it MUST mark the stream as sendonly with the "a=sendonly" attribute.'

Also as part of the SDP offer/answer exchange the medias that both agents agree not to use should have the m= line set to inactive, ie when the offerer states that it wants to receive a media stream with directional attribute recvonly and the answerer indicates that it is unable to send that media by setting the directional attribute to inactive (this media stream will not be sent in any direction). The ordering and the number of media lines should not change during the offer/answer exchange.

Thus I suggest the following changes. Add an item to the list in 4.1.2 (preferably in the middle):

To convey the intention of sending a media type which is not
      expected in return (e.g., a video presentation which does not wish
      to receive video).

Section 5.2.3.2. would be changed as follows:

If the "OfferToReceiveVideo" constraint is specified, with a value of
   "N", the offer MUST include N non-rejected m= sections with media
   type "video", even if fewer than N video MediaStreamTracks have been
   added to the PeerConnection. This allows the offerer to receive
   video, including multiple independent streams, even when not sending
   it; accordingly, the directional attribute on the video m= sections
   without associated MediaStreamTracks MUST be set to recvonly. If
   this constraint is specified in the case where at least N video
   MediaStreamTracks have already been added to the PeerConnection, or N
   non-rejected m= sections with media type "video" would otherwise be
   generated, the offer MUST set the directional attribute to sendonly
   for the MediaStreamTracks in the video m= section for the remaining
   MediaStreamTracks of type video beyond N. The directional attribute
   for MediaStreamTracks of type video not set to sendonly or recvonly
   SHOULD be set to sendrecv unless inactive. For backwards compatibility, 
   a value of "true" is interpreted as equivalent to N=1 and a value of 
   "false" is interpreted as equivalent to N=0.

The change in the paragraph above is mostly clarifying what previously was left unexplained with the words "it has no effect" and not touching on how to interpret a value of false. Section 5.2.3.1. would need to be changed in a similar way.

These changes would be make it comply with RFC 3264 and 4566 and also be in line with the somewhat unclear w3c spec on WebRTC.

Regards,
Martin Ekblom
Front-end Developer
www.icewarp.com
 

-----Original Message-----
From: "Justin Uberti" <juberti@google.com>
To: rtcweb@ietf.org, martin.ekblom@icewarp.com
Date: 14/07/2014 04:20
Subject: About the current JSEP-06 draft

   Adding rtcweb@ietf.org, the right mailing list for this.

This behavior (of OfferToReceiveAudio/Video) was added to be conformant with Unified Plan, where each media stream requires its own m= line, and therefore the offerer needs the ability to advertise additional m= lines if it needs to receive more media streams than it is offering.


I agree that the w3c spec's handling of this topic could be clarified.
 
 
On Wed, Jul 2, 2014 at 2:37 AM, Martin Ekblom <martin.ekblom@icewarp.com> wrote:
Hi,

I believe there is a conceptual misunderstanding in section 5.2.3.1. and 5.2.3.2. It seems to contradict the requirements of RFC 3264 / 4566 (SDP offers and answers) and not be in line with the WebRTC draft. I would like to contribute to improve or clarify this section, or in case I'm mistaken confirm this.

Is this the appropriate mailing list to disuss this?

Regards,
Martin Ekblom
Front-end Developer
www.icewarp.com