[Speex-dev] Speex and Builder

Jean-Marc Valin Jean-Marc.Valin at USherbrooke.ca
Wed Sep 21 19:17:36 PDT 2005

Le jeudi 22 septembre 2005 à 08:19 +0800, Joe Anny a écrit :
> Thanks, Jean for the clarification.

My first name's Jean-Marc, not Jean...

> I look forward to delving into your tutorial codes.  What we hope is to use
> Speex as the primary voice codec.  We also hope to get a quick start into
> the programming aspects with buffer management, denoising, etc. taken care
> of (or with just a few simple INIT calls) automatically, while we only focus
> on the GUI aspect, etc.

I uploaded my demo application at
http://people.xiph.org/~jm/speexclient/ until I find it a more permanent
home (on speex.org). Note that it has no documentation so far, so you're
on your own. Also, it only works with ALSA Linux drivers so far (though
the audio layer is isolated from the rest of the code).

> Do the codes also have examples on pushing/sinking live packets from the
> network via the buffers on both client sides?  This could be rather
> different from dealing with write/read from a file (and most likely will
> impact the performance of live VoIP application).  Thanks.

This is a VoIP application that tries to minimize latency, so it
includes the network code and all (but no connection).


> Cheers,
> Joe
> -----Original Message-----
> From: Jean-Marc Valin [mailto:Jean-Marc.Valin at USherbrooke.ca] 
> Sent: Wednesday, September 21, 2005 5:59 PM
> To: Joe Anny
> Cc: speex-dev at xiph.org
> Subject: RE: [Speex-dev] Speex and Builder
> > 1) May I know how Speex compared with GIPS codec?  It seems that Google,
> > Yahoo, and Skype are licensing from GIPS.  Are there any good benchmarking
> > or fair comparisons?
> I think these two emails sum up my opinion about Speex vs. iLBC:
> http://lists.xiph.org/pipermail/speex-dev/2005-June/003410.html
> http://lists.xiph.org/pipermail/speex-dev/2005-September/003652.html
> > 2) In particular, how is the jitter buffer control for Speex in response
> to
> > intermitent poor connection hiccups?  Is it robust enough to smooth out
> lost
> > packets (error concealment) and quick enough to recover the live
> > conversation smoothly once the packets received are back to normalcy?
> There is packet loss concealment in Speex even without using the jitter
> buffer (no, error concealment wasn't invented by GIPS). As for the
> jitter buffer itself, it's adaptive, so it just keeps the lowest
> possible delay that doesn't cause losses.
> > 3) Has anyone used Speex for live VoIP application?  Any good references
> or
> > examples to start with? 
> I've written a demo application for Linux that uses wideband, echo
> cancellation, denoising and the jitter buffer. I'll post it soon.
> > 4) Since we are focusing on the user application development, may I know
> > what is the highest-level API for Speex that a developer can use such that
> > all lower-level issues related to buffering, error concealment, codec,
> etc.
> > are automatically taken care of?
> There's only the Speex API, but I think it's simple enough that you
> don't need a higher level API (at least not for VoIP).
> 	Jean-Marc
Jean-Marc Valin <Jean-Marc.Valin at USherbrooke.ca>
Université de Sherbrooke

More information about the Speex-dev mailing list