[Vorbis] Use of ogg vorbis for real time audio streaming?

John Morton jwm
Mon Jul 5 07:57:01 PDT 2004


On Tue, 06 Jul 2004 02:40, d00ma3 at tomsmusicpage.org.uk wrote:
>  Clearly, this link would have to be two-way; and should have a reasonable
>  latency (perhaps under 100ms). I understand that this is a challenging
> task, and perhaps even impossible. However, I think it is possible that
> with attention to detail at every level of the datapath it could be done.
>
>  So. My question is: is ogg vorbis (as a whole, bitstream and codec)
> appropriate for such an application? I have studied the documentation, and
> it seems to me that there are several barriers (for example, ogg pages are
> recommened to be 4-8kB, this is 0.5 - 1 sec worth of audio for a 64kbps
> stream). Could I work around these limitations by aggressively setting
> certain parameters in the code, or is this a no-brainer from the outset?

As I understand it, there's a considerable size/latency tradeoff in the ogg
encapuslation that makes it very hard to use ogg in low latency settings. Not
sure about the vorbis encoder itself, but you may find that it's actually
faster, in it's present form, when encoding in the q>=3 zone. The xiph
encoder certainly hasn't seen a lot of optimization work focusing on  speed
and latency compared to the decoder.

Speex is designed for low latency, targeting the VoIP domain, but it's not a
good choice for streams that aren't exclusively voice, so that probably
doesn't help.

The Vorbis over RTP RFC might be of use to you, though:

http://www.xiph.org/ogg/vorbis/doc/Vorbis_I_spec.html#vorbis-over-rtp

John


More information about the Vorbis mailing list