[rtcweb] Mute implementations (Re: More Comments on draft-ietf-rtcweb-use-cases-and-requirements-07)

Harald Alvestrand <harald@alvestrand.no> Thu, 14 June 2012 09:21 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 0E68621F8555 for <rtcweb@ietfa.amsl.com>; Thu, 14 Jun 2012 02:21:38 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -110.299
X-Spam-Level:
X-Spam-Status: No, score=-110.299 tagged_above=-999 required=5 tests=[AWL=-0.300, BAYES_00=-2.599, J_CHICKENPOX_41=0.6, RCVD_IN_DNSWL_HI=-8, 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 2-UuqBCsA3+8 for <rtcweb@ietfa.amsl.com>; Thu, 14 Jun 2012 02:21:37 -0700 (PDT)
Received: from eikenes.alvestrand.no (eikenes.alvestrand.no [158.38.152.233]) by ietfa.amsl.com (Postfix) with ESMTP id E6F0A21F846A for <rtcweb@ietf.org>; Thu, 14 Jun 2012 02:21:36 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1]) by eikenes.alvestrand.no (Postfix) with ESMTP id 133EB39E091 for <rtcweb@ietf.org>; Thu, 14 Jun 2012 11:22:02 +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 rXPhFafDevt5 for <rtcweb@ietf.org>; Thu, 14 Jun 2012 11:22:01 +0200 (CEST)
Received: from hta-dell.lul.corp.google.com (unknown [IPv6:2620:0:1043:1:be30:5bff:fede:bcdc]) by eikenes.alvestrand.no (Postfix) with ESMTPSA id D226E39E058 for <rtcweb@ietf.org>; Thu, 14 Jun 2012 11:22:00 +0200 (CEST)
Message-ID: <4FD9AD1E.6060504@alvestrand.no>
Date: Thu, 14 Jun 2012 11:21:34 +0200
From: Harald Alvestrand <harald@alvestrand.no>
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:12.0) Gecko/20120430 Thunderbird/12.0.1
MIME-Version: 1.0
To: rtcweb@ietf.org
References: <5A2F246E-9D77-4B72-B3F1-681B00FA99FD@cisco.com> <F3D4ABD6AB47084B84337CF4F3446A464B2F11B52E@ESESSCMS0362.eemea.ericsson.se> <AAB6A6B6-BEC7-436C-B1EB-2C117596C7C6@cisco.com> <F3D4ABD6AB47084B84337CF4F3446A464B2F2631AC@ESESSCMS0362.eemea.ericsson.se> <9F33F40F6F2CD847824537F3C4E37DDF021B53@MCHP04MSX.global-ad.net> <CA+9kkMCL1k3x2hYi632nDU2g6CtOq3O7risDi38+7FTeWkxcGA@mail.gmail.com> <9F33F40F6F2CD847824537F3C4E37DDF0223ED@MCHP04MSX.global-ad.net> <4FD89773.3090506@ericsson.com> <9F33F40F6F2CD847824537F3C4E37DDF02594D@MCHP04MSX.global-ad.net>
In-Reply-To: <9F33F40F6F2CD847824537F3C4E37DDF02594D@MCHP04MSX.global-ad.net>
Content-Type: text/plain; charset="ISO-8859-1"; format="flowed"
Content-Transfer-Encoding: 7bit
Subject: [rtcweb] Mute implementations (Re: More Comments on draft-ietf-rtcweb-use-cases-and-requirements-07)
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: Thu, 14 Jun 2012 09:21:38 -0000

Changing the subject line again, since we're discussing how to do mute, 
not whether to do it.....

On 06/14/2012 11:15 AM, Hutton, Andrew wrote:
> On 13 June 2012 15:37 Stefan Hakansson wrote:
>
>> This is my personal understanding:
>>
>> - the API (and this part has been there for a long time) allows the
>> application to disable/enable individual tracks of MediaStreams
>> - So say you have a MediaStream (one audio track, one video track in
>> this example) that is rendered using a video element; disabling audio
>> would lead to silence, disabling video to that the video stops
>> - The question is: what should happen if the MediaStream is connected
>> to
>> a PeerConnection and sent to a peer?
>> - using recvonly does not seem appropriate as that would stop all
>> ssrc:s
>> belonging to the same m-line - and the app only disabled one
>> - one option could be to simply stop sending the RTP packets for this
>> track. I don't know how reliable that would be.
> In the case of outgoing media then I think mute should simply disconnect the source (e.g. microphone) and there is no impact on RTP other than depending on the codec silence will be transmitted or SID frame etc. There is also no impact on RTCP which continues.
>
> This is different to setting the direction to be recvonly which would completely stop the outgoing RTP packets and would normally be signaled to the remote party. This should of course be achieved using setLocalDescription.

Just to add to the complexity of the "mute" case:

When an audio stream is muted, should there be comfort noise sent?
If yes, what should determine the noise level?

(people who've never had to deal with comfort noise can safely tune out 
at this point)

>
>
>> - I think there has been proposals signaling this in SDP or in RTCP,
>> but
>> I don't think there was ever any conclusion
> If we are talking about a local mute then I don't see any need to signal this but again this is different to changing the direction attribute in SDP.
>
>> For the other part, muting incoming media, this is simple: the app (at
>> receiving browser) could just disable the tracks it wants in the
>> incoming MediaStreams. A related question is if this should be signaled
>> back to the sender (so it could stop sending). This is essentially a
>> question of efficiency/optimization, and nothing stops the app from
>> signaling that now using an app specific protocol (perhaps carried over
>> the data channel), but perhaps this should be brought into SDP or RTCP.
>>
> If the application wants to ask the remote party to pause sending of RTP then it should surely do this in SDP by setting the direction attribute appropriately (i.e. sendonly or inactive).
>
> Regards
> Andy
>
> _______________________________________________
> rtcweb mailing list
> rtcweb@ietf.org
> https://www.ietf.org/mailman/listinfo/rtcweb