Re: [rtcweb] Consensus vs. Voting (was Re: Call for Consensus Regarding Selecting Recommended Audio Codecs)

Roman Shpount <roman@telurix.com> Thu, 17 January 2013 10:31 UTC

Return-Path: <roman@telurix.com>
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 37ADE21F86CA for <rtcweb@ietfa.amsl.com>; Thu, 17 Jan 2013 02:31:50 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.778
X-Spam-Level:
X-Spam-Status: No, score=-3.778 tagged_above=-999 required=5 tests=[AWL=1.198, BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, GB_I_LETTER=-2, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-1]
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 cKMZcEwhqtGO for <rtcweb@ietfa.amsl.com>; Thu, 17 Jan 2013 02:31:49 -0800 (PST)
Received: from mail-wi0-x229.google.com (wi-in-x0229.1e100.net [IPv6:2a00:1450:400c:c05::229]) by ietfa.amsl.com (Postfix) with ESMTP id 0D9AA21F87C8 for <rtcweb@ietf.org>; Thu, 17 Jan 2013 02:31:48 -0800 (PST)
Received: by mail-wi0-f169.google.com with SMTP id hq12so4445222wib.2 for <rtcweb@ietf.org>; Thu, 17 Jan 2013 02:31:47 -0800 (PST)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=x-received:mime-version:x-received:in-reply-to:references:date :message-id:subject:from:to:cc:content-type:x-gm-message-state; bh=PTVfEzZZoL4OTi4PbXhDuL7cKCX2lbApol5i9w/YqD4=; b=b48x1IOwF01eGclLqGj8JjJyJ9h4qyGyozzcPwS/2gnJdi0R3dfPidHnUh8+CLyiG0 Oa7/etCO7zVmGPq2+ZM5atvp/1SGaaUNJu+dW8VC7Krg1DF3heGUKbsgEJEF4hBFtLm7 GbgKwzBLHxrJb7xNRuzMZuJn4iJKArATjnRhC9AeozELfRDK4HlCYPdl1TdHoN/94bIn X1/xudzqsP+lokEfAtc/NP1JATw36wzzz4J+cRaJImfWr2ZMCa34qlaxucjl34fsNkFW LiBgWuSX8ye5k+xrdAr29AJWQHy5bdP66H1YsJ+rvS5PXz106pozZFwPFN2wokO3NnvM FuUw==
X-Received: by 10.194.77.13 with SMTP id o13mr7288376wjw.58.1358418707772; Thu, 17 Jan 2013 02:31:47 -0800 (PST)
Received: from mail-wi0-f176.google.com (mail-wi0-f176.google.com [209.85.212.176]) by mx.google.com with ESMTPS id l5sm1634650wia.10.2013.01.17.02.31.46 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Thu, 17 Jan 2013 02:31:46 -0800 (PST)
Received: by mail-wi0-f176.google.com with SMTP id hm6so4347757wib.3 for <rtcweb@ietf.org>; Thu, 17 Jan 2013 02:31:45 -0800 (PST)
MIME-Version: 1.0
X-Received: by 10.181.13.75 with SMTP id ew11mr7301633wid.9.1358418705212; Thu, 17 Jan 2013 02:31:45 -0800 (PST)
Received: by 10.216.16.134 with HTTP; Thu, 17 Jan 2013 02:31:44 -0800 (PST)
In-Reply-To: <CABkgnnXRcFHj4gi6WEDDqU+S-adnjd91wQW4bL2S6pO8YtzE3w@mail.gmail.com>
References: <50D2CC6A.4090500@ericsson.com> <6515_1357907583_50F0067F_6515_1738_1_2842AD9A45C83B44B57635FD4831E60A0747CC@PEXCVZYM14.corporate.adroot.infra.ftgroup> <BLU0-SMTP880A602A311CE05C9DC39FD0290@phx.gbl> <A26C56D5-C501-4823-8099-62AF7910B8A4@ntt-at.com> <580BEA5E3B99744AB1F5BFF5E9A3C67D16813E56EC@HE111648.emea1.cds.t-internal.com> <50F41D97.1030508@nostrum.com> <CAD5OKxtsWMfAV=K4sM+zLXoyVCgihwujH2gG9ziA5GuEtsU0sQ@mail.gmail.com> <50F43ACA.80206@nostrum.com> <CAD5OKxug2qB+Xi_cp87Lt7BiPwJ1Eq1rNuioj+zDZFf=RRckPw@mail.gmail.com> <50F44AF0.4060304@nostrum.com> <CAD5OKxs7Ueto0k-5TWnQtgb+Pocp-SSu3ctr3qFs5qrcPgMtkQ@mail.gmail.com> <50F4619F.7040208@nostrum.com> <CAD5OKxu3_JJ3zS8hCeG-nHM72t=0j--ihUR8E5NvL9--wmmnEA@mail.gmail.com> <7CBFD4609D19C043A4AC4FD8381C6E2602386636@DEMUEXC014.nsn-intra.net> <50F5A74C.3030203@nostrum.com> <CABkgnnXRcFHj4gi6WEDDqU+S-adnjd91wQW4bL2S6pO8YtzE3w@mail.gmail.com>
Date: Thu, 17 Jan 2013 05:31:44 -0500
Message-ID: <CAD5OKxsz1AqsDG4_cZhGxbLbzmBYeYcqexbCR1LCe7Ecx0PQ9w@mail.gmail.com>
From: Roman Shpount <roman@telurix.com>
To: Martin Thomson <martin.thomson@gmail.com>
Content-Type: multipart/alternative; boundary="f46d04388e1b6166c804d379807b"
X-Gm-Message-State: ALoCoQnRqsuD68uRY8OSDd7gYMBhBP2s/89/HOdCIb4kWVZRih4Rey0d+hoFDInDy+8uegJjPhnh
Cc: "rtcweb@ietf.org" <rtcweb@ietf.org>
Subject: Re: [rtcweb] Consensus vs. Voting (was Re: Call for Consensus Regarding Selecting Recommended Audio Codecs)
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, 17 Jan 2013 10:31:50 -0000

On Wed, Jan 16, 2013 at 7:03 PM, Martin Thomson <martin.thomson@gmail.com>wrote:

> If we don't say "webrtc implementations SHOULD implement
> G.722/AMR/AMR-WB", what is the failure mode for your application?
> Keeping in mind that - because this isn't 2119 MUST - you have to
> expect that some non-negligible proportion of clients will not support
> this no matter how much extra ink we using in printing large letters,
> how much pain does this really cause you?
>
> I expect that the transcoding costs are what this come down to.  Does
> anyone care to quantify this?
>

If common codecs are not implemented in the browser this would mean
transcoding will need to be performed on some sort of server-side media
gateway. There are three distinct issues we need to take into account when
dealing with transcoding. I would list them in what, at least from my point
of view, is the order of importance:

1. If you need to do trancoding, you will need to implement a jitter buffer
on the transcoding media gateway. ICE processing and SRTP en/decoding can
be performed on out of order packets as they are received. You cannot
transcode out of order audio. This means audio packets would need to be
delayed by the jitter buffer size. In cases of good internet connection
this means 40 ms jitter buffer delay. In cases of consumer internet in US
(somebody sitting on a DSL connection at home behind a WiFi router) you are
typically looking at 60-80 ms jitter buffer delay. If you are dealing with
international internet connections jitter of 150 ms to 200 ms is not
unheard of. This means an additional delay due to jitter buffering of 40 ms
(best case) to 200 ms. This is in addition to any other delays that are
already present on the audio path. Adding an extra 100 ms of delay can make
audio conversions very awkward or unusable. On the other hand, if the
gateway were performing just ICE and SRTP, it would introduce 1-2 ms of
delay at most (In this case I am talking about a software based
implementation running on generic server hardware. A dedicated DSP solution
would probably be even faster).

2. Audio artifacts due to transcoding. Apart from usual audio degradation
due to transcoding (OPUS transcoded to AMR would sound worse then OPUS or
AMR), we would also deal with double packet loss concealment. Media gateway
will conceal lost packets when transcoding. Client will conceal lost packet
received from the gateway. This would actually sound worse then PLC
performed in one place.

3. Scalability of the transcoding gateway. Gateway which just deals with
ICE processing and SRTP en/decoding can handle from 2000 to 10000
concurrent call when running on a generic server CPU (different scalability
is due to differences in CPU performance and presence of AES specific
instructions). Gateway that would do G.722 to OPUS transcoding would most
likely handle from 500 to 1000 concurrent calls. We are looking at 10x
difference in performance. If we need to transcode AMR to OPUS the
difference would be even higher. This translates in 10x difference in
hardware, data center, power, and operations costs.
_____________
Roman Shpount