[Speex-dev] questions on serving up streaming speex

Jean-Marc Valin Jean-Marc.Valin at USherbrooke.ca
Mon Dec 27 00:01:31 PST 2004


> I am working on an application that gathers and stores 
> toll-quality/narrow-band voice data. It will allow clients to request 
> this data and stream it to them on the fly. I'm planning on this data 
> all being stored in the speex format (possibly encapsulated in an Ogg 
> file header). I was wondering what method the members of this list would 
> recommend for streaming the data to clients. Please excuse my ignorance 
> in this field, as I'm not an expert with the subject matter.

Unless you need real-time, go with Ogg/Speex over TCP. There are many
apps that can do that.

> Here are some requirements, and more detail of the problem domain
> ...

These were mostly network issues. This is a codec mailing list.

> *Frame the speex data in Ogg (if not already done) and stream these Ogg 

The standard file storage for Speex is already Ogg.

> *Encapsulate speex in RTP, and use RTCP and/or RSCP as well: This was a 
> possibility at first, but seems to be overkill for what I need...these 
> protocols are quite complex compared to something like the shoutcast 
> streaming protocol, it works over UDP, and I wasn't impressed from what 
> I saw of the offerings in this area (didn't really fit the simple 
> requirement :).

As I said, don't use RTP unless you need short latency.

> *What about this speex jitter buffer I've been hearing about? I'm unsure 
> how that fits in with these other media streaming techniques. Does that 
> mean I can just send raw speex data across a TCP socket and let the 
> libspeex decoder do the work of jitter buffering for me? 

If you use TCP, you don't even need a jitter buffer. 

	Jean-Marc

-- 
Jean-Marc Valin <Jean-Marc.Valin at USherbrooke.ca>
Université de Sherbrooke



More information about the Speex-dev mailing list