Re: [MMUSIC] What is an m-line?

Colin Perkins <csp@csperkins.org> Wed, 15 May 2013 11:03 UTC

Return-Path: <csp@csperkins.org>
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 2D9F421F8FA5 for <mmusic@ietfa.amsl.com>; Wed, 15 May 2013 04:03:07 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -105.299
X-Spam-Level:
X-Spam-Status: No, score=-105.299 tagged_above=-999 required=5 tests=[AWL=-1.000, BAYES_00=-2.599, MANGLED_FORM=2.3, RCVD_IN_DNSWL_MED=-4, 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 VpQ2ceDILFRg for <mmusic@ietfa.amsl.com>; Wed, 15 May 2013 04:03:02 -0700 (PDT)
Received: from haggis.mythic-beasts.com (haggis.mythic-beasts.com [93.93.131.52]) by ietfa.amsl.com (Postfix) with ESMTP id 7FC7D21F856D for <mmusic@ietf.org>; Wed, 15 May 2013 04:03:02 -0700 (PDT)
Received: from [130.209.247.112] (port=65535 helo=mangole.dcs.gla.ac.uk) by haggis.mythic-beasts.com with esmtpsa (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.72) (envelope-from <csp@csperkins.org>) id 1UcZU4-00074F-M0; Wed, 15 May 2013 12:03:01 +0100
Mime-Version: 1.0 (Apple Message framework v1283)
Content-Type: text/plain; charset="us-ascii"
From: Colin Perkins <csp@csperkins.org>
In-Reply-To: <CABkgnnWPWMLEecfqksGJrWrqvsu44gts48igUiLyiVV0iPhwQQ@mail.gmail.com>
Date: Wed, 15 May 2013 12:02:59 +0100
Content-Transfer-Encoding: quoted-printable
Message-Id: <2BB39401-29DC-4648-BB7F-51F0FE934082@csperkins.org>
References: <CABkgnnWPWMLEecfqksGJrWrqvsu44gts48igUiLyiVV0iPhwQQ@mail.gmail.com>
To: Martin Thomson <martin.thomson@gmail.com>
X-Mailer: Apple Mail (2.1283)
X-BlackCat-Spam-Score: -28
X-Mythic-Debug: Threshold = On =
Cc: "mmusic@ietf.org" <mmusic@ietf.org>
Subject: Re: [MMUSIC] What is 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: Wed, 15 May 2013 11:03:07 -0000

On 13 May 2013, at 19:42, Martin Thomson wrote:
> We've had a great deal of discussion about plan A and B and the
> various interactions of these proposals with bundling.  But I still
> don't get a good sense that there is a working consensus on what an
> m-line actually represents.
> 
> I think that we've each reached our own conclusions, but they
> definitely are not consistent.  We need a well-understood semantic for
> m-lines if we have any chance of resolving these issues; Plan A/B
> being only the first RTCWEB problem to address.
> 
> RFC 4566 is helpfully devoid of detail, so we are free to come up with
> any interpretation we choose.  Here are the ones that I have seen:
> 
> 1. an m-line represents a single RTP session
>    (or at least the part of the session that touches the client)
>    This appears to be consistent with the Plan B approach

This is closest to my understanding, although an RTP session is defined by a shared SSRC space that can span multiple transport connections, so I don't think it's quite right. Perhaps "an m-line refers to one transport endpoint of a single RTP session"? 

(For example, in a simple two-party voice-only call with RTCP there are distinct m-lines, with different transport endpoints, in the offer and the answer. But, since there is a shared SSRC space across the sending and receiving RTP flows - which there has to be for RTCP to work - you have one RTP session.)


> 2. an m-line represents the set of RTP streams that decode into a
> single rendering, including layers, simulcast and FEC
> 
> 3. an m-line represents a single RTP stream; multiple m-lines might
> be required to obtain a single rendering if it uses layers, simulcast,
> FEC or FID groupings
>    This appears to be consistent with the Plan A approach
> 
> In the first instance, an m-line can be multiple "things".  In the
> latter two cases, an m-line is consistently one "thing" (or part
> thereof).
> 
> The first interpretation has a natural advantage in terms of signaling
> economy and natural bundling.  The latter interpretations seem to have
> advantages in dealing with call transfer and SSRC renumbering.
> 
> So, which is correct?
> _______________________________________________
> mmusic mailing list
> mmusic@ietf.org
> https://www.ietf.org/mailman/listinfo/mmusic



-- 
Colin Perkins
http://csperkins.org/