[Speex-dev] sharing a decoder between 2 inbound speex streams?

Tom Grandgent tgrand at canvaslink.com
Tue Jul 12 13:22:32 PDT 2005

You definitely need to have separate decoders for separate streams. 
It has been mentioned before that inter-frame state is critical to
achieving the level of quality for bandwidth that Speex offers.  This
differentiates it from iLBC, a codec whose claim to fame is that it
treats each frame independently.

I'm not sure what's hard about maintaining multiple decoder states,
unless you are extremely resource-constrained or doing something
unusual.  Normally all you have to do is create a decoder state for
each new client and free it when the client is gone.

>---- Original Message ----
>From: tone at mailblocks.com
>To: speex-dev at xiph.org
>Subject: RE: [Speex-dev] sharing a decoder between 2 inbound speex
>Date: Tue, 12 Jul 2005 16:03:02 -0400
>>This is a hard one to search for in the archives, and I checked the
>>and the PDFs.
>>If a VOIP application wants to support the ability to output
>>inbound streams (from separate senders who happened to choose the
>>moment to start speaking), is it a requirement to have separate 
>>decoders for each, or could one be used in a round-robin manner to 
>>service packets from the multiple senders?
>>I am guessing that I should use a separate decoder for each inbound 
>>stream of frames, and that there is significant inter-frame state 
>>maintained by the decoder, but the convenience of not having to have
>>decoder free pool to dynamically allocate/deallocate these is 
>>motivation enough to ask!
>>Tony Lovell
>>tone at dreadnoughtproject.org
>>AIM: StupidLagger
>>Speex-dev mailing list
>>Speex-dev at xiph.org

More information about the Speex-dev mailing list