Re: [codec] comparitive quality testing
Roman Shpount <roman@telurix.com> Wed, 20 April 2011 01:30 UTC
Return-Path: <roman@telurix.com>
X-Original-To: codec@ietfc.amsl.com
Delivered-To: codec@ietfc.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfc.amsl.com (Postfix) with ESMTP id A2CCAE081D for <codec@ietfc.amsl.com>; Tue, 19 Apr 2011 18:30:02 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.977
X-Spam-Level:
X-Spam-Status: No, score=-2.977 tagged_above=-999 required=5 tests=[AWL=0.000, BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, RCVD_IN_DNSWL_LOW=-1]
Received: from mail.ietf.org ([208.66.40.236]) by localhost (ietfc.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id avkkz8QBIdkd for <codec@ietfc.amsl.com>; Tue, 19 Apr 2011 18:30:01 -0700 (PDT)
Received: from mail-ey0-f172.google.com (mail-ey0-f172.google.com [209.85.215.172]) by ietfc.amsl.com (Postfix) with ESMTP id 46C87E0720 for <codec@ietf.org>; Tue, 19 Apr 2011 18:30:01 -0700 (PDT)
Received: by eye13 with SMTP id 13so89471eye.31 for <codec@ietf.org>; Tue, 19 Apr 2011 18:30:00 -0700 (PDT)
Received: by 10.14.50.73 with SMTP id y49mr2343160eeb.22.1303263000542; Tue, 19 Apr 2011 18:30:00 -0700 (PDT)
Received: from mail-ey0-f172.google.com (mail-ey0-f172.google.com [209.85.215.172]) by mx.google.com with ESMTPS id k51sm296477eei.24.2011.04.19.18.29.59 (version=TLSv1/SSLv3 cipher=OTHER); Tue, 19 Apr 2011 18:29:59 -0700 (PDT)
Received: by eye13 with SMTP id 13so89469eye.31 for <codec@ietf.org>; Tue, 19 Apr 2011 18:29:59 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.213.14.129 with SMTP id g1mr56172eba.93.1303262999090; Tue, 19 Apr 2011 18:29:59 -0700 (PDT)
Received: by 10.213.98.83 with HTTP; Tue, 19 Apr 2011 18:29:59 -0700 (PDT)
In-Reply-To: <4DAE3315.3060901@coppice.org>
References: <BCB3F026FAC4C145A4A3330806FEFDA93BA8B64643@EMBX01-HQ.jnpr.net> <BANLkTimE6EzGY76Lm+-wtWtRTQgOjqhAEw@mail.gmail.com> <DB4DD197-97D2-492C-B896-A720347D3533@cisco.com> <BANLkTin53-nu9XzNi76KRV6npcWHUx4ptA@mail.gmail.com> <6261291B-0CB8-4719-910E-2ED7A7767D82@telio.no> <BANLkTik1DhJjUPYFtNL08gbSjqUB0KkLbQ@mail.gmail.com> <4DAE3315.3060901@coppice.org>
Date: Tue, 19 Apr 2011 21:29:59 -0400
Message-ID: <BANLkTinq_kO5+xa8h3g12=NbGW90pXJ21A@mail.gmail.com>
From: Roman Shpount <roman@telurix.com>
To: Steve Underwood <steveu@coppice.org>
Content-Type: text/plain; charset="ISO-8859-1"
Cc: codec@ietf.org
Subject: Re: [codec] comparitive quality testing
X-BeenThere: codec@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Codec WG <codec.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/codec>, <mailto:codec-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/codec>
List-Post: <mailto:codec@ietf.org>
List-Help: <mailto:codec-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/codec>, <mailto:codec-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 20 Apr 2011 01:30:02 -0000
Steve, I've seen your version of this and other codec. Great work! I have actually done the optimization of iLBC for Intel platform and can testify that you can get about 10x performance boost. I guess the ironic part is that I actually support couple of sizable projects that use iLBC. This being said, I would love to have something better quality, less CPU intensive to replace iLBC. As far as patents are concerned, I guess we are not suppose to discuss them here, but I have some concerns about iLBC that I would be happy to discuss offline. _____________ Roman Shpount On Tue, Apr 19, 2011 at 9:12 PM, Steve Underwood <steveu@coppice.org> wrote: > On 04/20/2011 07:08 AM, Roman Shpount wrote: >> >> [...] >> >> Where iLBC seemed to thrive is in soft-phones and various types of desktop >> based software VoIP products. In such products the benefits of not having a >> per instance license are probably the greatest. iLBC is also universally >> supported by open source projects such as Asterisk, Freeswitch, PJ-SIP, >> OpenH323 descendents, and so on. iLBC is also present in Android and iOS. >> What is interesting about all of those products (and I did check pretty much >> all the open source projects I can find) that the iLBC implementation in >> these products are essentially the reference code from the RFC. This code is >> extremely inefficient. What I mean by this it consumes more then 10 times >> the CPU resources of Voiceage or IPP optimized G.729A. With Freeswitch or >> Asterisk you cannot get more the 50-100 channels of iLBC per modern dual CPU >> server. On the other hand running over 500 channels of G.729A is fairly >> normal. What was interesting for me that no one spent any time optimizing >> any of the open source versions of the codec even though this is fairly >> trivial. On the other hand, such high CPU requirements on server and mobile >> platforms make iLBC almost unusable. If anyone on this list knows the open >> source optimized or fixed point implementation, please point it out to me. > > As someone who adapted the iLBC reference code into a packaged library that > it easy to use, I can comment on this. I produced a library with a nice > clean API, consistent with other codecs I have implemented, as a first step. > This went into projects like FreeSwitch, and I waited for the demand for a > faster version for servers, and a fixed point version for embedded users. > The call has yet to come. I have no idea how much faster you can make iLBC. > I haven't even been pushed to do that analysis. There are certainly people > using iLBC with the various open source projects, but its mostly small scale > users. Most big users either go for G.711 where they have sufficient > bandwidth, or G.729A where they don't. Because of the points below, I am > somewhat happy about this. >> >> There is also a question of ILBC Freeware license. Based on IETF rules, >> all the code released as a part of IETF RFC should be covered by BSD >> license. The reasoning and applicability of iLBC Freeware license in this >> context is unclear. > > Correct. The copyright situation for the floating point reference code is > vague. The right to adapt that code to highly optimised floating point, > fixed point code, or other implementations is vaguer. Nobody appears > interested in clarifying things. The development of RFC3951 seems quite > unlike most IETF work. >> >> IPR disclosure for iLBC RFC was not updated when RFC was finalized and >> only has provisional patent applications, not the final granted patent >> numbers. > > Correct. We have little idea which GIPS patents might apply, and nobody ever > seems to have seriously considered who else might have relevant patents. > > iLBC isn't a great codec, but it didn't have to be. Pretty good and > unencumbered is clearly a winning combination these days - look at how much > wideband VoIP is G.722 vs anything more modern, more advanced, and more > encumbered. With a clear legal position it might have been a winner, but > today its an also ran. > > Steve > > _______________________________________________ > codec mailing list > codec@ietf.org > https://www.ietf.org/mailman/listinfo/codec >
- [codec] comparitive quality testing Gregory Maxwell
- Re: [codec] comparitive quality testing Roman Shpount
- Re: [codec] comparitive quality testing Cullen Jennings
- Re: [codec] comparitive quality testing Roman Shpount
- Re: [codec] comparitive quality testing David Virette
- Re: [codec] comparitive quality testing Roman Shpount
- Re: [codec] comparitive quality testing Steve Underwood
- Re: [codec] comparitive quality testing Roman Shpount
- Re: [codec] comparitive quality testing Cullen Jennings
- Re: [codec] comparitive quality testing Alan Duric
- Re: [codec] comparitive quality testing Anisse Taleb
- Re: [codec] comparitive quality testing Monty Montgomery
- Re: [codec] comparitive quality testing Roman Shpount
- Re: [codec] comparitive quality testing Stephan Wenger
- Re: [codec] comparitive quality testing Steve Underwood
- Re: [codec] comparitive quality testing Roman Shpount
- Re: [codec] comparitive quality testing Roman Shpount
- Re: [codec] comparitive quality testing Cullen Jennings
- Re: [codec] comparitive quality testing Alan Duric
- Re: [codec] comparitive quality testing Roman Shpount
- Re: [codec] comparitive quality testing Roman Shpount
- [codec] iLBC deployment statistics (Re: compariti… Harald Alvestrand
- [codec] Deployment of iLBC Re: comparitive qualit… Cullen Jennings
- Re: [codec] comparitive quality testing: vote to … Jean-Francois Mule
- Re: [codec] comparitive quality testing: vote to … Roman Shpount