Re: [codec] #16: Multicast?

"Raymond (Juin-Hwey) Chen" <> Fri, 07 May 2010 20:12 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 147803A694A for <>; Fri, 7 May 2010 13:12:35 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -0.164
X-Spam-Status: No, score=-0.164 tagged_above=-999 required=5 tests=[AWL=-0.165, BAYES_50=0.001]
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id nU8uiZGJQr6z for <>; Fri, 7 May 2010 13:12:32 -0700 (PDT)
Received: from ( []) by (Postfix) with ESMTP id 85A153A6853 for <>; Fri, 7 May 2010 13:12:29 -0700 (PDT)
Received: from [] by with ESMTP (Broadcom SMTP Relay (Email Firewall v6.3.2)); Fri, 07 May 2010 13:11:59 -0700
X-Server-Uuid: D3C04415-6FA8-4F2C-93C1-920E106A2031
Received: from ([]) by ([]) with mapi; Fri, 7 May 2010 13:13:22 -0700
From: "Raymond (Juin-Hwey) Chen" <>
To: Christian Hoene <>
Date: Fri, 07 May 2010 13:11:58 -0700
Thread-Topic: [codec] #16: Multicast?
Thread-Index: AcrimhyNUh3NLsf5RvSfcmuOhmvRfwBUwYUAAVLFoDAApwRsUACBX9BgABAsmGA=
Message-ID: <>
References: <> <> <> <> <> <000001cae173$dba012f0$92e038d0$@de> <> <001101cae177$e8aa6780$b9ff3680$@de> <> <002d01cae188$a330b2c0$e9921840$@de> <> <> <> <002c01cae939$5c01f400$1405dc00$@de> <> <009901caede1$43f366d0$cbda3470$@de>
In-Reply-To: <009901caede1$43f366d0$cbda3470$@de>
Accept-Language: en-US
Content-Language: en-US
acceptlanguage: en-US
MIME-Version: 1.0
X-WSS-ID: 67FAAB8538O200290143-01-01
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
Cc: "" <>
Subject: Re: [codec] #16: Multicast?
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Codec WG <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Fri, 07 May 2010 20:12:35 -0000

Hi Christian,

> What are those specific codec requirements, then?
> - narrow-band?
> - 5ms or 10ms frame size?
> - low complexity
> - low memory footprint
> - transcoding robust ...

- For the foreseeable future, I think most of the VoIP gateway
voice channels will still be narrowband.  We may start to see
some wideband (16 kHz sampling).
- There are different VoIP gateway customers.  Some just want
the lowest possible cost of deployment and don't care too 
much about call quality or latency; they will probably 
use 20 ms packets. However, some want to compete seriously 
with the PSTN telephony offered by incumbent telcos. 
There they have to have good quality and low latency
since PSTN latency is very low. These customers will want to 
use 10 ms packets or even 5 ms packets if their hardware can 
handle it.
- Yes, relatively low complexity and low memory footprint are both important for VoIP gateway implementation of codecs.
- Good transcoding performance is also a plus, although 
generally if a codec's single encoding performance is already 
high, then it transcoding performance is usually good as well.

> And, are these requirements unique or are they covered by 
> existing codecs like G.711 and G.729 already? Is it likely 
> that gateways, which operate already on their limits, can 
> support yet another codec?

- G.729 has a 10 ms frame size, but its complexity is around 
20 MIPS or so.  G.729A can be optimized to around 10 MIPS, so 
it's better for gateways, but G.729A voice quality is somewhat 
lower than G.729.  The biggest issue with G.729 and G.729A, 
though, is that they are royalty-bearing.  G.711 has good 
quality, low delay, low complexity, and is royalty-free.  
However, at 8 bits/sample, G.711 is inefficient with the bit-
rate. A 16 kb/s codec will reduce the payload bit-rate by a 
factor of 4 and reduce the overall bit-rate (including packet 
header, without header compression) by a factor of about 2X 
and 1.6X for 10 ms and 5 ms packets, respectively, which are 
still significant saving in transmission bandwidth and I/O 
- Supporting yet another codec is not a problem for gateways 
because it just means a little additional storage of the codec 
program and data tables in ROM, which is cheap.  The gateways 
are already at or near their limits in terms of MIPS, RAM, and 
I/O bandwidth, not in terms of ROM. More importantly, you 
don't run the additional codec as additional voice channels; 
you simply replace some of the existing codecs already 
supported by the gateway in some (or all) of the channels. 
Therefore, as long as the new codec added does not require 
significantly more MHz or RAM than the existing supported 
codecs, it shouldn't be an issue.