1<html> 2 3<head> 4<title>libogg - Encoding</title> 5<link rel=stylesheet href="style.css" type="text/css"> 6</head> 7 8<body bgcolor=white text=black link="#5555ff" alink="#5555ff" vlink="#5555ff"> 9<table border=0 width=100%> 10<tr> 11<td><p class=tiny>libogg documentation</p></td> 12<td align=right><p class=tiny>libogg release 1.1.4 - 20090520</p></td> 13</tr> 14</table> 15 16<h1>Encoding</h1> 17<p>Libogg contains a set of functions used in the encoding process. 18<p> 19All the <b>libogg</b> specific functions are declared in "ogg/ogg.h". 20<p> 21<p>When encoding, the encoding engine will output raw packets which must be placed into an Ogg bitstream. 22<p>Raw packets are inserted into the stream, and an <a href="ogg_page.html">ogg_page</a> is output when enough packets have been written to create a full page. The pages output are pointers to buffered packet segments, and can then be written out and saved as an ogg stream. 23<p>There are a couple of basic steps: 24<ul> 25<li>Use the encoding engine to produce a raw packet of data. 26<li>Call <a href="ogg_stream_packetin.html">ogg_stream_packetin</a> to submit a raw packet to the stream. 27<li>Use <a href="ogg_stream_pageout.html">ogg_stream_pageout</a> to output a page, if enough data has been submitted. Otherwise, continue submitting data. 28</ul> 29<br><br> 30 31<table border=1 color=black width=50% cellspacing=0 cellpadding=7> 32<tr bgcolor=#cccccc> 33 <td><b>function</b></td> 34 <td><b>purpose</b></td> 35</tr> 36<tr valign=top> 37<td><a href="ogg_stream_packetin.html">ogg_stream_packetin</a></td> 38 <td>Submits a raw packet to the streaming layer, so that it can be formed into a page.</td> 39</tr> 40<tr valign=top> 41<td><a href="ogg_stream_iovecin.html">ogg_stream_iovecin</a></td> 42 <td>iovec version of ogg_stream_packetin() above.</td> 43</tr> 44<tr valign=top> 45<td><a href="ogg_stream_pageout.html">ogg_stream_pageout</a></td> 46 <td>Outputs a completed page if the stream contains enough packets to form a full page.<td> 47</tr> 48<tr valign=top> 49<td><a href="ogg_stream_flush.html">ogg_stream_flush</a></td> 50 <td>Forces any remaining packets in the stream to be returned as a page of any size.<td> 51</tr> 52</table> 53 54<br><br> 55<hr noshade> 56<table border=0 width=100%> 57<tr valign=top> 58<td><p class=tiny>copyright © 2000-2009 Xiph.Org</p></td> 59<td align=right><p class=tiny><a href="http://www.xiph.org/ogg/">Ogg Container Format</a></p></td> 60</tr><tr> 61<td><p class=tiny>libogg documentation</p></td> 62<td align=right><p class=tiny>libogg release 1.1.4 - 20090520</p></td> 63</tr> 64</table> 65 66</body> 67 68</html> 69