Hi Gregory,<br>    Very informative explanation. According to your figures, my processor stands nowhere close :(<br>     I have 2Ghz core2, but the time to encode 600-700ms data takes around 100ms and mostly more.<br>     Ofcourse the compilation has been improved to time based optimization. i.e. O2<br>
<br>    Anyother updates that might help?<br><br>Thanks<br>Sumit<br><br><br><div class="gmail_quote">2009/9/4 Gregory Maxwell <span dir="ltr">&lt;<a href="mailto:gmaxwell@gmail.com">gmaxwell@gmail.com</a>&gt;</span><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div class="im">On Thu, Sep 3, 2009 at 2:44 PM, Sumit Chatterjee&lt;<a href="mailto:getsumit@gmail.com">getsumit@gmail.com</a>&gt; wrote:<br>
&gt; I dont understand exactly the terms that you have asked. Basically if I have<br>
&gt; a continuous stream to be sent out - a computational delay of 50-100ms is<br>
&gt; still manageable.<br>
&gt;<br>
&gt; Regarding my platform:<br>
&gt;    - its on Windows and my encode is running under realtime priority.<br>
&gt;    - my audio capture is every 500ms.<br>
&gt;    - And my OGG container is reduced to 2KB. So a min of 6KB data is flushed<br>
&gt; out after every ~600ms from the encoder<br>
&gt;<br>
&gt; I basically want to reduce the encoding time to generate a packet of 6KB<br>
&gt; from 200-300 ms to &lt;100ms always, so that I can support least setup latency<br>
&gt; in my radio application.<br>
<br>
</div>Algorithmic delay is the amount of intrinsic delay in the algorithm<br>
which comes from things like the blocksize and the data look-ahead.<br>
It can&#39;t be fixed by applying a faster processor, it can sometimes be<br>
reduced with a carefully written software but some amount of<br>
irreducible delay will exist in the format.<br>
<br>
Computational complexity is just the delay that comes from the<br>
computer executing your instructions. A faster processor or more<br>
efficient software addresses this.<br>
<br>
The vorbis format is not particularly designed for low algorithmic<br>
delay, nor is the reference encoder designed to minimize delay to the<br>
minimum possible in the format but it sounds like you expecting to use<br>
large blocks of audio and can tolerate the fairly high algorithmic<br>
delay of the normal vorbis modes, so your problem is complexity.<br>
<br>
I should have been more specific:  What processor is in use?   Is your<br>
problem a problem with the average encoder execution time or the worst<br>
case encoder execution time?   On average my 1.6ghz core2 laptop<br>
encodes at &gt;17.5x realtime, or 500ms of audio encoded in ~29ms.  But<br>
this is the average, I expect the worse case is much worse.<br>
<br>
If you&#39;re seeing average performance worse than this on comparable<br>
hardware perhaps there is an issue with how you are calling libvorbis<br>
or with how it was compiled.<br>
</blockquote></div><br>