Ok, so when I'm writing my pages I'm doing this…<br><br>while(vorbis_bitrate_flushpacket(vorbisDsp,oggPacket))<br>                {<br><div style="margin-left: 40px;">                        ogg_stream_packetin(oggStream,oggPacket);<br><br></div><div style="margin-left: 40px;">
                                int result=ogg_stream_pageout(oggStream,oggPage);<br></div><div style="margin-left: 40px;">                                if(result==0)<br><div style="margin-left: 40px;">break;<br></div></div><br><div style="margin-left: 40px;">                                fwrite(oggPage-&gt;header,1,oggPage-&gt;header_len,newFile);
<br>                                fwrite(oggPage-&gt;body,1,oggPage-&gt;body_len,newFile);<br><br>                                if(ogg_page_eos(oggPage))<br><div style="margin-left: 40px;">eos=1;<br></div></div>                        }<br><br>And if i&#39;m reading what you said correctly, when i do the &quot; if (result==0) &quot; check i should call ogg_stream_flush before i break?
<br><br>On Dec 13, 2007 3:34 PM, Ralph Giles &lt;<a href="mailto:giles@xiph.org">giles@xiph.org</a>&gt; wrote:<br>&gt; Without seeing code, I&#39;d suggest making sure you&#39;re flushing *all* the<br>&gt; pages out of the ogg_stream and writing them out. Silence compresses
<br>&gt; well, so if you don&#39;t call &#39;ogg_stream_flush&#39; you may not see a page for<br>&gt; some time.<br>&gt; <br>&gt; Note that for streamability you should always call ogg_stream_flush<br>&gt; if ogg_stream_pageout hasn&#39;t returned a page in more than a couple
<br>&gt; seconds of input data. libogg isn&#39;t smart enough to handle this for you,<br>&gt; and it can cause underruns when streaming.<br>&gt; <br>&gt; &nbsp;-r<br>&gt; <br><br><br><br>-- <br>~Jim<br>