Re: [rtcweb] Reasons not to multiplex audio with video (Re: Fwd: I-D Action: draft-rosenberg-rtcweb-rtpmux-00.txt)

Harald Alvestrand <harald@alvestrand.no> Mon, 25 July 2011 12:30 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 B768F21F867E for <rtcweb@ietfa.amsl.com>; Mon, 25 Jul 2011 05:30:26 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.599
X-Spam-Level:
X-Spam-Status: No, score=-102.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([64.170.98.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id P3Gw2iB0qrHK for <rtcweb@ietfa.amsl.com>; Mon, 25 Jul 2011 05:30:26 -0700 (PDT)
Received: from eikenes.alvestrand.no (eikenes.alvestrand.no [158.38.152.233]) by ietfa.amsl.com (Postfix) with ESMTP id 1A55621F85EE for <rtcweb@ietf.org>; Mon, 25 Jul 2011 05:30:26 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1]) by eikenes.alvestrand.no (Postfix) with ESMTP id 5E11339E148; Mon, 25 Jul 2011 14:29:18 +0200 (CEST)
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 15eOii+W8Yl6; Mon, 25 Jul 2011 14:29:17 +0200 (CEST)
Received: from [10.255.254.216] (unknown [70.25.120.2]) by eikenes.alvestrand.no (Postfix) with ESMTPS id CE7B839E03C; Mon, 25 Jul 2011 14:29:16 +0200 (CEST)
Message-ID: <4E2D61DC.1040305@alvestrand.no>
Date: Mon, 25 Jul 2011 08:30:20 -0400
From: Harald Alvestrand <harald@alvestrand.no>
User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.18) Gecko/20110617 Thunderbird/3.1.11
MIME-Version: 1.0
To: Emil Ivov <emcho@jitsi.org>
References: <4E123C54.10405@jdrosen.net> <8785C0A3-31E5-44D7-8557-3BEEE4F95E3D@skype.net> <4E2D5C5D.6060402@alvestrand.no> <4E2D5ED5.5060706@jitsi.org>
In-Reply-To: <4E2D5ED5.5060706@jitsi.org>
Content-Type: text/plain; charset="UTF-8"; format="flowed"
Content-Transfer-Encoding: 8bit
Cc: rtcweb@ietf.org
Subject: Re: [rtcweb] Reasons not to multiplex audio with video (Re: Fwd: I-D Action: draft-rosenberg-rtcweb-rtpmux-00.txt)
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, 25 Jul 2011 12:30:26 -0000

On 07/25/11 08:17, Emil Ivov wrote:
> На 25.07.11 14:06, Harald Alvestrand написа:
>> On 07/24/11 16:44, Matthew Kaufman wrote:
>>> In all my reading today I have not been able to find anything more concrete than the "SHOULD NOT" in section 5.2 of RFC3550. PLEASE follow up if you are aware of any other relevant specifications that would argue against using SSRC to multiplex audio and video streams over a single RTP session between a pair of compatible endpoints that agree to do so.
>> I have found *one* reason not mentioned in the draft:
>>
>> An RTP session with both "audio" and "video" media types cannot be
>> represented by an SDP description, since SDP ties RTP sessions 1-1 to
>> the "m" line of the description, which contains the top-level type, and
>> the codec descriptions omit the top-level type in their codec naming.
> I am not sure I understand this. Why would one need to use the same "m"
> line? What would be the consequences of using two different "m" lines?
>
> Personally, I am still not convinced that multiplexing brings
> significant improvement over the status quo but if we accept it then it
> definitely needs to keep separate "m" lines for tons of reasons.
RFC 4566 section 5:

    An SDP session description consists of a session-level section
    followed by zero or more media-level sections.  The session-level
    part starts with a "v=" line and continues to the first media-level
    section.  Each media-level section starts with an "m=" line and
    continues to the next media-level section or end of the whole session
    description.

....

5.14.  Media Descriptions ("m=")

       m=<media> <port> <proto> <fmt> ...

    A session description may contain a number of media descriptions.
    Each media description starts with an "m=" field and is terminated by
    either the next "m=" field or by the end of the session description.
    A media field has several sub-fields:

<media> is the media type.  Currently defined media are "audio",
       "video", "text", "application", and "message", although this list
       may be extended in the future (see Section 8).

<port> is the transport port to which the media stream is sent.

In other words: an "m" line is tied to a port number, and (from RTP) the 
port number identifies the RTP session. The ICE parameters can override 
the port number, but they're carried within the "m" block, so they're 
tied to a single "m" line too.

I do not know what would happen if you used the same port number and ICE 
parameters with two "m" lines.