Re: [MMUSIC] Semantics of an "m=" line

Paul Kyzivat <pkyzivat@alum.mit.edu> Mon, 15 July 2013 20:01 UTC

Return-Path: <pkyzivat@alum.mit.edu>
X-Original-To: mmusic@ietfa.amsl.com
Delivered-To: mmusic@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 4591711E8238 for <mmusic@ietfa.amsl.com>; Mon, 15 Jul 2013 13:01:42 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.19
X-Spam-Level:
X-Spam-Status: No, score=-0.19 tagged_above=-999 required=5 tests=[AWL=0.247, BAYES_00=-2.599, FH_RELAY_NODNS=1.451, HELO_MISMATCH_NET=0.611, RDNS_NONE=0.1]
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 2IwcqjosmIce for <mmusic@ietfa.amsl.com>; Mon, 15 Jul 2013 13:01:36 -0700 (PDT)
Received: from qmta01.westchester.pa.mail.comcast.net (qmta01.westchester.pa.mail.comcast.net [IPv6:2001:558:fe14:43:76:96:62:16]) by ietfa.amsl.com (Postfix) with ESMTP id 4854D11E822E for <mmusic@ietf.org>; Mon, 15 Jul 2013 13:01:34 -0700 (PDT)
Received: from omta03.westchester.pa.mail.comcast.net ([76.96.62.27]) by qmta01.westchester.pa.mail.comcast.net with comcast id 0bn91m0030bG4ec51k1aNx; Mon, 15 Jul 2013 20:01:34 +0000
Received: from Paul-Kyzivats-MacBook-Pro.local ([50.138.229.164]) by omta03.westchester.pa.mail.comcast.net with comcast id 0k1Z1m01V3ZTu2S3Pk1aFz; Mon, 15 Jul 2013 20:01:34 +0000
Message-ID: <51E4551D.8030902@alum.mit.edu>
Date: Mon, 15 Jul 2013 16:01:33 -0400
From: Paul Kyzivat <pkyzivat@alum.mit.edu>
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:17.0) Gecko/20130620 Thunderbird/17.0.7
MIME-Version: 1.0
To: mmusic@ietf.org
References: <51E4430C.6020608@jitsi.org>
In-Reply-To: <51E4430C.6020608@jitsi.org>
Content-Type: text/plain; charset="ISO-8859-1"; format="flowed"
Content-Transfer-Encoding: 7bit
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=comcast.net; s=q20121106; t=1373918494; bh=8hEa70iQNnN35rNIeh0+e4fdlfWqKJiufCUN3mndb9o=; h=Received:Received:Message-ID:Date:From:MIME-Version:To:Subject: Content-Type; b=Ch94i/0bavHGTCfNhRKEEIUd0zc6wiFzZgoNJ0N/Yz50F0qU7karHyN2lS7WpvCEF xHEYq4oppvU8rqsxUeil93XjzIr20rL6rVNa3iA9HaNI4e/k6wBfwaC9+8WhNajR6K rwa0fZq6iKarX+X8Y2W1Ikn2HkzvnAefOSo5w320tjasHZ5utb7zPr7bmW75C/E5fb 41MZQg+XMVgtGs7yX4aBLjL3eD/qWsfqCEwj+Ve9EHiPRYJUFj+JRLmMMH94ah8iVh UTahxWUl7dIIpxExkLwGQbxEoMeHIFUtGfohn8A3fFTY94T7KrKR6ZyStNlNwEM93w QSonx4yrUPkGA==
Subject: Re: [MMUSIC] Semantics of an "m=" line
X-BeenThere: mmusic@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Multiparty Multimedia Session Control Working Group <mmusic.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/mmusic>, <mailto:mmusic-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/mmusic>
List-Post: <mailto:mmusic@ietf.org>
List-Help: <mailto:mmusic-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/mmusic>, <mailto:mmusic-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 15 Jul 2013 20:01:43 -0000

Emil,

This is a useful draft. It makes some good point. I have some 
comments/questions:

Section 1:

    o  the addition or removal of simulcast or layered streams must be
       possible without the need for Offer/Answer exchanges beyond the
       initial declaration of such capabilities for either direction.

ISTM that simulcast needs more discussion - it is nuanced. E.g. the 
following are all things one might like to say about simulcast:
- I am sending the same thing in multiple formats. You can pick
   the one(s) you want to receive. (Especially for broadcast/multicast)

- I am preparted to send the same thing in multiple formats.
   You can pick the one(s) you want me to send.

- I want to receive a single source in multiple formats.

Certainly there is need for the simulcast indication in SDP for the 
multicast case. And probably in some of the others. But I am not 
convinced it is always necessary for simulcast to be indicated in SDP. 
In some cases, there may be no need for the receiver to know that two 
streams it is receiving happen to be simulcasts on one another. And in 
other cases it will already know by some means. (Which is your point.)

Also Section 1:

    o  application specific signalling should be used to cover most
       semantics following call establishment, such as adding, removing
       or identifying SSRCs;

I think this is the controversial point. In *some* cases, where the 
semantics are complex and dynamic, this makes sense. But there are no 
doubt many cases that are relatively simple, where its much more 
convenient to do something in SDP than it is to define a new application 
channel to negotiate this.

Section 4: Demuxing and Identifying Streams

The demux based solely on PT is fine if bundling is only used to combine 
m-lines with different media types. In that case there will be at most 
one bundled m-line per top level mime type. And this satisfies my 
requirement that it always be possible to map a packet to an m-line.

But if bundling is used for any other reason, then the number of likely 
m-lines goes up, and the acceptability of unique PTs goes down. Then the 
discussion changes.

I don't think the description of what must be done is quite right. You 
don't quite say what a depacketizing/decoding/processing chain *is*. Do 
you intend this as a *type* of chain, or an *instance* of a chain? I 
think it has to be *instance*. E.g. there may be two VP8 chains, with 
all the same settings, but processing different flows. Simplistically, 
you might say that the *type* of chain can be determined by the PT, and 
the *instance* of that chain can be determined by the SSRC.

But typically such chains would be assigned based on where they are 
intended to be rendered. (Equal number of chains and renderers.) So when 
a new SSRC is received, and there is no matching chain, then either it 
must be dropped, or else some existing chain must be reconfigured to 
process this SSRC. This may need to happen without any additional out of 
band info to help. How do you imagine this being done? (In simple cases 
this might be done by *policy*. But I don't know if that is enough.) Is 
it your position that if this can't be done by policy then there must be 
some application-specific signaling mechanism to do it?

	Thanks,
	Paul

On 7/15/13 2:44 PM, Emil Ivov wrote:
> Hey all,
>
> Just submitted a new draft that should server as a basis for discussion
> on "m=" line semantics in offer answer:
>
> http://tools.ietf.org/html/draft-ivov-mmusic-multiple-sources-00
>
> The goal of the draft is to discuss the use of "m=" lines by
> Offer/Answer according to their original design in SDP: as envelopes for
> RTP sessions with any number of SSRCs.
>
> In many ways, this new document describes the basis of "No Plan" but in
> a generic way, not related to WebRTC.
>
> Feedback is welcome and hopefully we will be able to also discuss this
> in Berlin.
>
> Cheers,
> Emil