[Speex-dev] SPEEX tech specs

B. Mitchell Loebel multinode at earthlink.net
Thu May 3 04:44:14 PDT 2007


Thank you Jean-Marc.

My understanding is that G.729 is a telephone 
codec, so there must have been some reason why 
its developers went to 10ms/frame. Do you know why that might be?

 From a recent post on this list I saw somebody 
talking about your decoded sample rate being 
8KHZ/sec. and then he mentioned that being 160 
bytes at 20ms/frame. That said, I take it that 
your decoded samples are 1 byte wide ... is that 
correct? We're using G.729 and we'd like to 
consider SPEEX at sometime in the future. That's 
why I asked you about the quality comparison. Of 
course, G.729's decoded samples are 16 bits wide 
so that's another quality consideration.


At 09:30 PM 5/3/2007 +1000, Jean-Marc Valin wrote:
>B. Mitchell Loebel a écrit :
> > Thank you. You're right ... my error ... I meant to say 12 bytes
> > (including the 2 bytes for VAD). And it is 10ms/frame. No matter ...
> > thank you for the SPEEX specs. In terms of quality, what SPEEX bit rate
> > compares with G.729 at 8kbps data rate please?
>
>Haven't done formal testing and it depends on whether it's G.729 or
>G.729A. I'd say probably 8 kbps or 11 kbps.
>
> > Is there some reason why
> > you chose the 20ms frame rate?
>
>It's a good value I think. Speex is designed for VoIP, so 10 ms is
>pretty much useless because you'd be sending about 32 kbps worth of
>overhead (each packet has 40 bytes for IP+UDP+RTP headers).
>
> > Do you keep that same frame rate for the
> > different bit rates?
>
>Yes.
>
> > The faster frame rate would seem to better adapt to
> > multiple speakers cutting in and out ... yes/no?
>
>I don't think we should really worry about speakers interrupting each
>other at 10 ms interval. If that happens, you've got much more important
>problems than the codec :-)
>
> > Btw, 6 bytes/frame at 50 frames/second seems to be 2.4kbps so I'm
> > guessing that the lower rate you mentioned is because of some overhead
> > for VAD in your 6 bytes.
>
>Well, technically 2.15 kbps would mean 5.375 bytes/frame, but then you
>need to round up to the next whole byte -- unless you put multiple
>frames in a packet, in which case it matters.
>
>         Jean-Marc
>
> > At 07:11 PM 5/3/2007 +1000, Jean-Marc Valin wrote:
> >> B. Mitchell Loebel a écrit :
> >> > How many bits do you have in a frame please and what is your frame
> >> rate?
> >> > For example, G.729 (ACELP) has 12 bits/frame including VAD and the
> >> frame
> >> > rate is 100/second ... I'm looking for the comparable figures for
> >> SPEEX.
> >>
> >> I'm sorry but if G.729 used 12 bits/frame at 100 frames/second, it would
> >> have a bit-rate of 1.2 kbps. G.729 actually uses 10 *bytes* (i.e. 80
> >> bits) per frame. Speex has 20 ms frames (50 frames per second) and
> >> supports bit-rates that range from 2.15 kbps (6 bytes per frame) to 44
> >> kbps (110 bytes per frame).
> >>
> >>         Jean-Marc
> >
> >
> > ---
> > B. Mitchell Loebel, CEO, VP Engineering                              408
> > 425-9920
> > InstaFlash International Corporation
> > (formerly Minute-Tape International Corporation)
> >

---
B. Mitchell Loebel, Executive 
Director                              408 425-9920

The Tech Startup Connection
(formerly The PARALLEL Processing Connection) 



More information about the Speex-dev mailing list