[Speex-dev] Re: compatibility issues.

François Guerraz kubrick at fgv6.net
Fri May 25 08:27:56 PDT 2007


For the openSpeak project we use PortAudio V19 & speex. So if you  
want some code examples, you can look an pick in our SVN (its GPL).
ATM we are having some problems with PortAudio v19 (it might still be  
buggy somehow, it seems not to support the 32-kHz sampling rate used  
by speex ultra-wide-band mode) so if you want something stable you'd  
better use v18. And of course, if you have suggestions about our  
code, feedback is most welcome.

  NB : openSpeak project home page : http://www.openspeak- 
project.org/ , SVN : http://openspeak.svn.sourceforge.net/viewvc/ 

Le 25 mai 07 à 16:58, ALEX NG a écrit :

> I plan to setup linux server  and in client side, XP and Linux.
> Also, in order to collect the voice, I plan to use portaudio to  
> collect, say 20ms as you suggested sample and feed to the speex  
> encoder.  For easier implementation, I don't use OGG container, and  
> just encode then send to the spread network to the client.
> Hope this work.  Can you advise any potential problems by this  
> approach?
> Thanks
> ----- Original Message ----- From: "Jim Crichton"  
> <jim.crichton at comcast.net>
> To: <alex at gorex.com.hk>
> Cc: <greg at mytantrum.com>; <speex-dev at xiph.org>
> Sent: Friday, May 25, 2007 10:31 PM
> Subject: Re: [Speex-dev] Re: compatibility issues.
>> For a streaming application like VOIP, you collect 20 ms of  
>> samples, feed this through the encoder, stick it in an RTP packet,  
>> and send if over the network.  On the receive side you feed  
>> packets through a jitter buffer to the decoder, and then copy the  
>> output audio to your output device.  Speex runs efficiently on  
>> most compilers, so the real-time requirement is not a big deal, as  
>> long as you know how to do this with your operating system (if you  
>> have one).
>> You do not need Ogg containers for something like this, just  
>> search the archives for RTP references and you will find much more.
>> Look at the SpeexClient application provided in the source tree,  
>> and at the testenc examples in the libspeex directory.  The Speex  
>> part of things is pretty easy (thanks to Jean-Marc).  It is the  
>> audio interface for your specific platform and the call setup  
>> protocals (e.g. SIP) where the real work is.
>> If you identify the specific hardware/software platform that you  
>> plan to use, then someone may be able to point you to examples for  
>> the audio interface software.
>> - Jim
>> ----- Original Message ----- From: <alex at gorex.com.hk>
>> To: "Greg" <caroundw5h at yahoo.com>
>> Cc: <greg at mytantrum.com>; <speex-dev at xiph.org>; "Jean-Marc Valin"  
>> <jean-marc.valin at usherbrooke.ca>
>> Sent: Thursday, May 24, 2007 11:30 PM
>> Subject: Re: [Speex-dev] Re: compatibility issues.
>>> HI,
>>>  I am also working on VOIP application.
>>> Now the speexenc.exe is used to encode a wav/raw file.  However,  
>>> in real time
>>> voice communication, the voice keep recording from the microphone  
>>> and how can
>>> we employ speex to compress the voice and send over the network?
>>> Thanks
>>> Quoting Greg <caroundw5h at yahoo.com>:
>>>> okay that questioned is answered, thank you.
>>>> I am interested in using speex in a VOIP application. do i need  
>>>> to put it in
>>>> into
>>>> the ogg contianer format in order to encode/decode and send it?  
>>>> or will it
>>>> work
>>>> "as is"? if the latter then:
>>>>  "the packet is larger than the allocated buffer" message: whats  
>>>> your
>>>> recomendaton for fixing that? i was thinking simply getting the  
>>>> size of the
>>>> frame
>>>> and using the speex_bits_init_buffer() function to create a  
>>>> bigger buffer.
>>>> However i
>>>> want to keep latency in mind and make them as small as possible.
>>>> i apologise if the questions seem simple but i've working at  
>>>> this for sevreal
>>>> days
>>>> and i'm a little stump. a indication in the right direction  
>>>> would be helpful.
>>>> thank you in advance,
>>>> greg
>>>> Jean-Marc Valin <jean-marc.valin at usherbrooke.ca> wrote: > does  
>>>> this have
>>>> anything to do with the message on the example code:
>>>> > "the packing used is not compatible with speexenc/speexdec" i  
>>>> know it
>>>> > may sound stupid but it is my first time using speex lib. as  
>>>> well i
>>>> > had assumed this was so and tweaked the decoder code to decode  
>>>> the
>>>> > same file that the example encode code made, but i get a  
>>>> "packet is
>>>> > larger than allocated buffer could not resize buffer, truncating
>>>> > input" message.
>>>> Well, the note says it all. It's just not compatible. speexenc/ 
>>>> dec pack
>>>> Speex data into an Ogg container, while the sampleenc/dec code just
>>>> creates an incompatible ad-hoc format just to demonstrate how to  
>>>> use
>>>> Speex (without bothering with the heavy Ogg code).
>>>>  Jean-Marc
>>>> ---------------------------------
>>>> Building a website is a piece of cake.
>>>> Yahoo! Small Business gives you all the tools to get online.
>>> _______________________________________________
>>> Speex-dev mailing list
>>> Speex-dev at xiph.org
>>> http://lists.xiph.org/mailman/listinfo/speex-dev
>> -- 
>> No virus found in this incoming message.
>> Checked by AVG Free Edition. Version: 7.5.467 / Virus Database:  
>> 269.8.0/817 - Release Date: 2007/5/24 _U__ 04:01
> _______________________________________________
> Speex-dev mailing list
> Speex-dev at xiph.org
> http://lists.xiph.org/mailman/listinfo/speex-dev

François Guerraz
kubrick at fgv6.net

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.xiph.org/pipermail/speex-dev/attachments/20070525/3dd81dc8/attachment.htm

More information about the Speex-dev mailing list