<html><head><meta http-equiv="Content-Type" content="text/html charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">Hi.<div class="">I assume that I am deeply stupid and have missed something obvious, but why does this bare-bones code not generate a valid (If trivial) opus file?&nbsp;</div><div class=""><br class=""></div><div class="">Running opusinfo I ge the following which I interpret this to mean that not even the first packet gets a pass:</div><div class=""><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><div style="margin: 0px;" class="">New logical stream (#1, serial: 1f0cce42): type opus</div><div style="margin: 0px;" class="">WARNING: Could not decode Opus header packet 0 - invalid Opus stream (1)</div><div style="margin: 0px;" class="">WARNING: Could not decode Opus header packet 0 - invalid Opus stream (1)</div><div style="margin: 0px;" class="">Opus stream 1:</div><div style="margin: 0px;" class=""><span class="Apple-tab-span" style="white-space:pre">        </span>WARNING: stream 1 is empty</div><div style="margin: 0px;" class="">Logical stream 1 ended</div><div style="margin: 0px;" class=""><br class=""></div></div></div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class="">Here is my code:</div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><br class=""></div><div style="margin: 0px; font-size: 11px; font-family: Menlo;" class=""><div style="margin: 0px; color: rgb(120, 73, 42);" class=""><div style="margin: 0px;" class="">#include <span style="font-variant-ligatures: no-common-ligatures; color: #d12f1b" class="">&lt;stdio.h&gt;</span></div><div style="margin: 0px; color: rgb(209, 47, 27);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #78492a" class="">#include </span>&lt;stdlib.h&gt;</div><div style="margin: 0px; color: rgb(209, 47, 27);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #78492a" class="">#include </span>"ogg/ogg.h"</div><div style="margin: 0px; min-height: 13px;" class=""><br class=""></div><div style="margin: 0px; color: rgb(0, 132, 0);" class="">//Some structs to help build the headers.</div><div style="margin: 0px;" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">struct</span> OggHeader {</div><div style="margin: 0px;" class="">&nbsp; &nbsp; <span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">unsigned</span> <span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">char</span> magicSignature[<span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">8</span>];</div><div style="margin: 0px;" class="">&nbsp; &nbsp; <span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">unsigned</span> <span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">char</span> version;</div><div style="margin: 0px;" class="">&nbsp; &nbsp; <span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">unsigned</span> <span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">char</span> channelCount;</div><div style="margin: 0px;" class="">&nbsp; &nbsp; <span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">unsigned</span> <span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">short</span> preSkip;</div><div style="margin: 0px;" class="">&nbsp; &nbsp; <span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">unsigned</span> <span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">int</span> sampleRate;</div><div style="margin: 0px;" class="">&nbsp; &nbsp; <span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">unsigned</span> <span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">short</span> outputGain;</div><div style="margin: 0px;" class="">&nbsp; &nbsp; <span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">unsigned</span> <span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">char</span> mappingFamily;</div><div style="margin: 0px;" class="">};</div><div style="margin: 0px; min-height: 13px;" class=""><br class=""></div><div style="margin: 0px;" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">struct</span> OggCommentHeader {</div><div style="margin: 0px;" class="">&nbsp; &nbsp; <span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">unsigned</span> <span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">char</span> magicSignature[<span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">8</span>];</div><div style="margin: 0px;" class="">&nbsp; &nbsp; <span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">unsigned</span> <span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">int</span> vendorStringLength; <span style="font-variant-ligatures: no-common-ligatures; color: #008400" class="">//Must be set to 0</span></div><div style="margin: 0px; color: rgb(0, 132, 0);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">&nbsp; &nbsp; </span>//In-between here we would place out vendor string, if we had one.</div><div style="margin: 0px;" class="">&nbsp; &nbsp; <span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">unsigned</span> <span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">int</span> userCommentListLength; <span style="font-variant-ligatures: no-common-ligatures; color: #008400" class="">//Must be set to 0</span></div><div style="margin: 0px; color: rgb(0, 132, 0);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">&nbsp; &nbsp; </span>//And after here we would place our comments, if we had any.</div><div style="margin: 0px;" class="">};</div><div style="margin: 0px; min-height: 13px;" class=""><br class=""></div><div style="margin: 0px;" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">int</span> main(){</div><div style="margin: 0px; color: rgb(79, 129, 135);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">&nbsp; &nbsp; </span>ogg_stream_state<span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""> os;</span></div><div style="margin: 0px;" class="">&nbsp; &nbsp; <span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">ogg_page</span> &nbsp; &nbsp; &nbsp; &nbsp; og;</div><p style="margin: 0px; min-height: 13px;" class="">&nbsp;&nbsp; &nbsp;<br class="webkit-block-placeholder"></p><div style="margin: 0px; color: rgb(209, 47, 27);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">&nbsp; &nbsp; </span><span style="font-variant-ligatures: no-common-ligatures; color: #703daa" class="">FILE</span><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">* fout = </span><span style="font-variant-ligatures: no-common-ligatures; color: #3d1d81" class="">fopen</span><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">(</span>"/tmp/trivial.opus"<span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">, </span>"wb"<span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">);</span></div><div style="margin: 0px;" class="">&nbsp; &nbsp; <span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">if</span> ( fout == <span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">0</span> ) {</div><div style="margin: 0px; color: rgb(209, 47, 27);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="font-variant-ligatures: no-common-ligatures; color: #3d1d81" class="">printf</span><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">( </span>"Error opening output file.\n"<span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""> );</span></div><div style="margin: 0px;" class="">&nbsp; &nbsp; &nbsp; &nbsp; <span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">return</span> -<span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">1</span>;</div><div style="margin: 0px;" class="">&nbsp; &nbsp; }</div><p style="margin: 0px; min-height: 13px;" class="">&nbsp;&nbsp; &nbsp;<br class="webkit-block-placeholder"></p><div style="margin: 0px; color: rgb(0, 132, 0);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">&nbsp; &nbsp; </span>//**************</div><div style="margin: 0px; color: rgb(0, 132, 0);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">&nbsp; &nbsp; </span>//Initialize the stream</div><div style="margin: 0px;" class="">&nbsp; &nbsp; <span style="font-variant-ligatures: no-common-ligatures; color: #3d1d81" class="">srand</span>(<span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">0</span>);</div><div style="margin: 0px; color: rgb(49, 89, 93);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">&nbsp; &nbsp; </span>ogg_stream_init<span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">(&amp;os,</span><span style="font-variant-ligatures: no-common-ligatures; color: #3d1d81" class="">rand</span><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">());</span></div><p style="margin: 0px; min-height: 13px;" class="">&nbsp;&nbsp; &nbsp;<br class="webkit-block-placeholder"></p><div style="margin: 0px; color: rgb(0, 132, 0);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">&nbsp; &nbsp; </span>//**************</div><div style="margin: 0px; color: rgb(0, 132, 0);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">&nbsp; &nbsp; </span>//Create the header</div><div style="margin: 0px; color: rgb(0, 132, 0);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">&nbsp; &nbsp; </span>//*****************</div><div style="margin: 0px;" class="">&nbsp; &nbsp; <span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">struct</span> <span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">OggHeader</span> headerContent = {</div><div style="margin: 0px;" class="">&nbsp; &nbsp; &nbsp; &nbsp; {<span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">'O'</span>, <span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">'p'</span>, <span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">'u'</span>, <span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">'s'</span>, <span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">'H'</span>, <span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">'e'</span>, <span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">'a'</span>, <span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">'d'</span>},</div><div style="margin: 0px;" class="">&nbsp; &nbsp; &nbsp; &nbsp; <span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">1</span>, <span style="font-variant-ligatures: no-common-ligatures; color: #008400" class="">//Version</span></div><div style="margin: 0px;" class="">&nbsp; &nbsp; &nbsp; &nbsp; <span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">2</span>, <span style="font-variant-ligatures: no-common-ligatures; color: #008400" class="">//Channels</span></div><div style="margin: 0px;" class="">&nbsp; &nbsp; &nbsp; &nbsp; <span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">0</span>, <span style="font-variant-ligatures: no-common-ligatures; color: #008400" class="">//pre-skip</span></div><div style="margin: 0px; color: rgb(0, 132, 0);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">44100</span><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">, </span>//Original samplerate</div><div style="margin: 0px; color: rgb(0, 132, 0);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">0</span><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">, </span>//output gain</div><div style="margin: 0px; color: rgb(0, 132, 0);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">0</span><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">}; </span>//Mapping family</div><p style="margin: 0px; min-height: 13px;" class="">&nbsp;&nbsp; &nbsp;<br class="webkit-block-placeholder"></p><div style="margin: 0px;" class="">&nbsp; &nbsp; <span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">ogg_packet</span> header;</div><div style="margin: 0px;" class="">&nbsp; &nbsp; header.<span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">packet</span> = (<span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">unsigned</span> <span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">char</span>*)&amp;headerContent;</div><div style="margin: 0px;" class="">&nbsp; &nbsp; header.<span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">bytes</span> = <span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">sizeof</span>(<span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">struct</span> <span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">OggHeader</span>);</div><div style="margin: 0px; color: rgb(0, 132, 0);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">&nbsp; &nbsp; header.</span><span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">b_o_s</span><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""> = </span><span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">1</span><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">; </span>//Header must set beginning_of_stream</div><div style="margin: 0px;" class="">&nbsp; &nbsp; header.<span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">e_o_s</span> = <span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">0</span>;</div><div style="margin: 0px; color: rgb(0, 132, 0);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">&nbsp; &nbsp; header.</span><span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">granulepos</span><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""> = -</span><span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">1</span><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">; </span>//This packet does not contain audio data, so granule-position = -1</div><div style="margin: 0px;" class="">&nbsp; &nbsp; header.<span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">packetno</span> = <span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">0</span>;</div><p style="margin: 0px; min-height: 13px;" class="">&nbsp;&nbsp; &nbsp;<br class="webkit-block-placeholder"></p><div style="margin: 0px; color: rgb(49, 89, 93);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">&nbsp; &nbsp; </span>ogg_stream_packetin<span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">(&amp;os,&amp;header);</span></div><p style="margin: 0px; min-height: 13px;" class="">&nbsp;&nbsp; &nbsp;<br class="webkit-block-placeholder"></p><div style="margin: 0px; color: rgb(0, 132, 0);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">&nbsp; &nbsp; </span>//**************</div><div style="margin: 0px; color: rgb(0, 132, 0);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">&nbsp; &nbsp; </span>//Create the comments header</div><div style="margin: 0px;" class="">&nbsp; &nbsp; <span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">struct</span> <span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">OggCommentHeader</span> commentHeaderContent = {</div><div style="margin: 0px;" class="">&nbsp; &nbsp; &nbsp; &nbsp; {<span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">'O'</span>, <span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">'p'</span>, <span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">'u'</span>, <span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">'s'</span>, <span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">'T'</span>, <span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">'a'</span>, <span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">'g'</span>, <span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">'s'</span>},</div><div style="margin: 0px; color: rgb(0, 132, 0);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">0</span><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">, </span>//We do not support a vandor string in this implementation.</div><div style="margin: 0px; color: rgb(0, 132, 0);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">0</span><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""> </span>//We do not support any user comments in this implementation.</div><div style="margin: 0px;" class="">&nbsp; &nbsp; };</div><p style="margin: 0px; min-height: 13px;" class="">&nbsp;&nbsp; &nbsp;<br class="webkit-block-placeholder"></p><div style="margin: 0px;" class="">&nbsp; &nbsp; <span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">ogg_packet</span> header_comm;</div><div style="margin: 0px;" class="">&nbsp; &nbsp; header_comm.<span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">packet</span> = (<span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">unsigned</span> <span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">char</span>*)&amp;commentHeaderContent;</div><div style="margin: 0px;" class="">&nbsp; &nbsp; header_comm.<span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">bytes</span> = <span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">sizeof</span>(<span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">struct</span> <span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">OggCommentHeader</span>);</div><div style="margin: 0px;" class="">&nbsp; &nbsp; header_comm.<span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">b_o_s</span> = <span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">0</span>;</div><div style="margin: 0px; color: rgb(0, 132, 0);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">&nbsp; &nbsp; header_comm.</span><span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">e_o_s</span><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""> = </span><span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">1</span><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">; </span>//We are ending the stream as there will be no data.</div><div style="margin: 0px; color: rgb(0, 132, 0);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">&nbsp; &nbsp; header_comm.</span><span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">granulepos</span><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class=""> = -</span><span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">1</span><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">; </span>//This packet does not contain audio data, so granule-position = -1</div><div style="margin: 0px;" class="">&nbsp; &nbsp; header_comm.<span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">packetno</span> = <span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">1</span>; <span style="font-variant-ligatures: no-common-ligatures; color: #008400" class="">//Second packet.</span></div><p style="margin: 0px; min-height: 13px;" class="">&nbsp;&nbsp; &nbsp;<br class="webkit-block-placeholder"></p><div style="margin: 0px;" class="">&nbsp; &nbsp; <span style="font-variant-ligatures: no-common-ligatures; color: #31595d" class="">ogg_stream_packetin</span>(&amp;os,&amp;header_comm);</div><div style="margin: 0px; min-height: 13px;" class=""><br class=""></div><div style="margin: 0px; color: rgb(0, 132, 0);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">&nbsp; &nbsp; </span>//***************</div><div style="margin: 0px; color: rgb(0, 132, 0);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">&nbsp; &nbsp; </span>//Write everything out.</div><div style="margin: 0px;" class="">&nbsp; &nbsp; <span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">while</span>(<span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">1</span>){</div><div style="margin: 0px;" class="">&nbsp; &nbsp; &nbsp; &nbsp; <span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">int</span> result=<span style="font-variant-ligatures: no-common-ligatures; color: #31595d" class="">ogg_stream_flush</span>(&amp;os,&amp;og);</div><div style="margin: 0px;" class="">&nbsp; &nbsp; &nbsp; &nbsp; <span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">if</span>(result==<span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">0</span>)<span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">break</span>;</div><div style="margin: 0px;" class="">&nbsp; &nbsp; &nbsp; &nbsp; <span style="font-variant-ligatures: no-common-ligatures; color: #3d1d81" class="">fwrite</span>(og.<span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">header</span>,<span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">1</span>,og.<span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">header_len</span>,fout);</div><div style="margin: 0px;" class="">&nbsp; &nbsp; &nbsp; &nbsp; <span style="font-variant-ligatures: no-common-ligatures; color: #3d1d81" class="">fwrite</span>(og.<span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">body</span>,<span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">1</span>,og.<span style="font-variant-ligatures: no-common-ligatures; color: #4f8187" class="">body_len</span>,fout);</div><div style="margin: 0px;" class="">&nbsp; &nbsp; }</div><div style="margin: 0px; min-height: 13px;" class=""><br class=""></div><div style="margin: 0px; color: rgb(0, 132, 0);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">&nbsp; &nbsp; </span>//And clean up.</div><div style="margin: 0px; color: rgb(49, 89, 93);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">&nbsp; &nbsp; </span>ogg_stream_clear<span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">(&amp;os);</span></div><p style="margin: 0px; min-height: 13px;" class="">&nbsp;&nbsp; &nbsp;<br class="webkit-block-placeholder"></p><div style="margin: 0px;" class="">&nbsp; &nbsp; <span style="font-variant-ligatures: no-common-ligatures; color: #3d1d81" class="">fclose</span>(fout);</div><p style="margin: 0px; min-height: 13px;" class="">&nbsp;&nbsp; &nbsp;<br class="webkit-block-placeholder"></p><div style="margin: 0px; color: rgb(209, 47, 27);" class=""><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">&nbsp; &nbsp; </span><span style="font-variant-ligatures: no-common-ligatures; color: #3d1d81" class="">printf</span><span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">(</span>"Done.\n"<span style="font-variant-ligatures: no-common-ligatures; color: #000000" class="">);</span></div><div style="margin: 0px;" class="">&nbsp; &nbsp; <span style="font-variant-ligatures: no-common-ligatures; color: #bb2ca2" class="">return</span> <span style="font-variant-ligatures: no-common-ligatures; color: #272ad8" class="">0</span>;</div><div style="margin: 0px;" class="">}</div><div style="margin: 0px;" class=""><br class=""></div><div style="margin: 0px;" class="">//Sincerely</div><div style="margin: 0px;" class="">Daniel Armyr</div><div style="margin: 0px;" class="">Beginner opus user</div></div></div></body></html>