Commit 1744a08f authored by conrad's avatar conrad

removed built docs from cvs


git-svn-id: http://svn.annodex.net/liboggz/trunk@358 8158c8cd-e7e1-0310-9fa4-c5954c97daef
parent 6966be2c
H1 {
text-align: center;
font-family: Arial, Helvetica, sans-serif;
}
H2 {
font-family: Geneva, Arial, Helvetica, sans-serif;
}
CAPTION { font-weight: bold }
DIV.qindex { width: 100%;
background-color: #eeeeff;
border: 4px solid #eeeeff;
text-align: center;
margin-bottom: 2px
}
A.qindex { text-decoration: none; font-weight: bold; color: #0000ee }
A.qindex:visited { text-decoration: none; font-weight: bold; color: #0000ee }
A.qindex:hover { text-decoration: none; background-color: #ddddff }
A.qindexHL { text-decoration: none; font-weight: bold;
background-color: #6666cc;
color: #ffffff
}
A.qindexHL:hover { text-decoration: none; background-color: #6666cc; color: #ffffff }
A.qindexHL:visited { text-decoration: none; background-color: #6666cc; color: #ffffff }
A.el { text-decoration: none; font-weight: bold }
A.elRef { font-weight: bold }
A.code { text-decoration: none; font-weight: normal; color: #4444ee }
A.codeRef { font-weight: normal; color: #4444ee }
A:hover { text-decoration: none; background-color: #f2f2ff }
DL.el { margin-left: -1cm }
DIV.fragment {
width: 98%;
border: 1px solid #CCCCCC;
background-color: #f5f5f5;
padding-left: 4px;
margin: 4px;
}
DIV.ah { background-color: black; font-weight: bold; color: #ffffff; margin-bottom: 3px; margin-top: 3px }
TD.md { background-color: #f2f2ff; font-weight: bold; }
TD.mdname1 { background-color: #f2f2ff; font-weight: bold; color: #602020; }
TD.mdname { background-color: #f2f2ff; font-weight: bold; color: #602020; width: 600px; }
DIV.groupHeader { margin-left: 16px; margin-top: 12px; margin-bottom: 6px; font-weight: bold }
DIV.groupText { margin-left: 16px; font-style: italic; font-size: smaller }
BODY {
background: white;
color: black;
margin-right: 20px;
margin-left: 20px;
}
TD.indexkey {
background-color: #eeeeff;
font-weight: bold;
padding-right : 10px;
padding-top : 2px;
padding-left : 10px;
padding-bottom : 2px;
margin-left : 0px;
margin-right : 0px;
margin-top : 2px;
margin-bottom : 2px
}
TD.indexvalue {
background-color: #eeeeff;
font-style: italic;
padding-right : 10px;
padding-top : 2px;
padding-left : 10px;
padding-bottom : 2px;
margin-left : 0px;
margin-right : 0px;
margin-top : 2px;
margin-bottom : 2px
}
TR.memlist {
background-color: #f0f0f0;
}
P.formulaDsp { text-align: center; }
IMG.formulaDsp { }
IMG.formulaInl { vertical-align: middle; }
SPAN.keyword { color: #008000 }
SPAN.keywordtype { color: #604020 }
SPAN.keywordflow { color: #e08000 }
SPAN.comment { color: #800000 }
SPAN.preprocessor { color: #806020 }
SPAN.stringliteral { color: #002080 }
SPAN.charliteral { color: #008080 }
.mdTable {
border: 1px solid #868686;
background-color: #f2f2ff;
}
.mdRow {
padding: 8px 20px;
}
.mdescLeft {
font-size: smaller;
font-family: Arial, Helvetica, sans-serif;
background-color: #FAFAFA;
padding-left: 8px;
border-top: 1px none #E0E0E0;
border-right: 1px none #E0E0E0;
border-bottom: 1px none #E0E0E0;
border-left: 1px none #E0E0E0;
margin: 0px;
}
.mdescRight {
font-size: smaller;
font-family: Arial, Helvetica, sans-serif;
font-style: italic;
background-color: #FAFAFA;
padding-left: 4px;
border-top: 1px none #E0E0E0;
border-right: 1px none #E0E0E0;
border-bottom: 1px none #E0E0E0;
border-left: 1px none #E0E0E0;
margin: 0px;
padding-bottom: 0px;
padding-right: 8px;
}
.memItemLeft {
padding: 1px 0px 0px 8px;
margin: 4px;
border-top-width: 1px;
border-right-width: 1px;
border-bottom-width: 1px;
border-left-width: 1px;
border-top-style: solid;
border-top-color: #E0E0E0;
border-right-color: #E0E0E0;
border-bottom-color: #E0E0E0;
border-left-color: #E0E0E0;
border-right-style: none;
border-bottom-style: none;
border-left-style: none;
background-color: #FAFAFA;
font-family: Geneva, Arial, Helvetica, sans-serif;
font-size: 12px;
}
.memItemRight {
padding: 1px 0px 0px 8px;
margin: 4px;
border-top-width: 1px;
border-right-width: 1px;
border-bottom-width: 1px;
border-left-width: 1px;
border-top-style: solid;
border-top-color: #E0E0E0;
border-right-color: #E0E0E0;
border-bottom-color: #E0E0E0;
border-left-color: #E0E0E0;
border-right-style: none;
border-bottom-style: none;
border-left-style: none;
background-color: #FAFAFA;
font-family: Geneva, Arial, Helvetica, sans-serif;
font-size: 13px;
}
.search { color: #0000ee;
font-weight: bold;
}
FORM.search {
margin-bottom: 0px;
margin-top: 0px;
}
INPUT.search { font-size: 75%;
color: #000080;
font-weight: normal;
background-color: #eeeeff;
}
TD.tiny { font-size: 75%;
}
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>liboggz: File Index</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.3.4 -->
<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindexHL" href="files.html">File&nbsp;List</a> | <a class="qindex" href="globals.html">Globals</a></div>
<h1>liboggz File List</h1>Here is a list of all documented files with brief descriptions:<table>
<tr><td class="indexkey"><a class="el" href="oggz_8h.html">oggz.h</a> <a href="oggz_8h-source.html">[code]</a></td><td class="indexvalue">The liboggz C API </td></tr>
<tr><td class="indexkey"><a class="el" href="oggz__constants_8h.html">oggz_constants.h</a> <a href="oggz__constants_8h-source.html">[code]</a></td><td class="indexvalue">General constants used by liboggz </td></tr>
<tr><td class="indexkey"><a class="el" href="oggz__table_8h.html">oggz_table.h</a> <a href="oggz__table_8h-source.html">[code]</a></td><td class="indexvalue">A lookup table </td></tr>
</table>
<hr size="1"><address style="align: right;"><small>Generated on Wed Jan 21 16:21:06 2004 for liboggz by
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
</a>1.3.4 </small></address>
</body>
</html>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>liboggz: File Member Index</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.3.4 -->
<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindexHL" href="globals.html">Globals</a></div>
<div class="qindex"><a class="qindexHL" href="globals.html">All</a> | <a class="qindex" href="globals_func.html">Functions</a> | <a class="qindex" href="globals_type.html">Typedefs</a> | <a class="qindex" href="globals_enum.html">Enumerations</a> | <a class="qindex" href="globals_eval.html">Enumeration&nbsp;values</a></div>
<div class="qindex"><a class="qindex" href="#index_o">o</a></div>
<p>
<p>
Here is a list of all documented functions, variables, defines, enums, and typedefs with links to the documentation:<h3><a class="anchor" name="index_o">- o -</a></h3><ul>
<li>OGGZ
: <a class="el" href="oggz_8h.html#a0">oggz.h</a><li>OGGZ_AUTO
: <a class="el" href="oggz__constants_8h.html#a25a3">oggz_constants.h</a><li>oggz_close()
: <a class="el" href="oggz_8h.html#a8">oggz.h</a><li>OGGZ_ERR_BAD_B_O_S
: <a class="el" href="oggz__constants_8h.html#a27a19">oggz_constants.h</a><li>OGGZ_ERR_BAD_BYTES
: <a class="el" href="oggz__constants_8h.html#a27a18">oggz_constants.h</a><li>OGGZ_ERR_BAD_E_O_S
: <a class="el" href="oggz__constants_8h.html#a27a20">oggz_constants.h</a><li>OGGZ_ERR_BAD_GRANULEPOS
: <a class="el" href="oggz__constants_8h.html#a27a21">oggz_constants.h</a><li>OGGZ_ERR_BAD_GUARD
: <a class="el" href="oggz__constants_8h.html#a27a23">oggz_constants.h</a><li>OGGZ_ERR_BAD_METRIC
: <a class="el" href="oggz__constants_8h.html#a27a13">oggz_constants.h</a><li>OGGZ_ERR_BAD_OGGZ
: <a class="el" href="oggz__constants_8h.html#a27a8">oggz_constants.h</a><li>OGGZ_ERR_BAD_PACKETNO
: <a class="el" href="oggz__constants_8h.html#a27a22">oggz_constants.h</a><li>OGGZ_ERR_BAD_SERIALNO
: <a class="el" href="oggz__constants_8h.html#a27a17">oggz_constants.h</a><li>OGGZ_ERR_BOS
: <a class="el" href="oggz__constants_8h.html#a27a11">oggz_constants.h</a><li>OGGZ_ERR_DISABLED
: <a class="el" href="oggz__constants_8h.html#a27a15">oggz_constants.h</a><li>OGGZ_ERR_EOS
: <a class="el" href="oggz__constants_8h.html#a27a12">oggz_constants.h</a><li>OGGZ_ERR_GENERIC
: <a class="el" href="oggz__constants_8h.html#a27a7">oggz_constants.h</a><li>OGGZ_ERR_INVALID
: <a class="el" href="oggz__constants_8h.html#a27a9">oggz_constants.h</a><li>OGGZ_ERR_NO_STREAMS
: <a class="el" href="oggz__constants_8h.html#a27a10">oggz_constants.h</a><li>OGGZ_ERR_NOSEEK
: <a class="el" href="oggz__constants_8h.html#a27a16">oggz_constants.h</a><li>OGGZ_ERR_OK
: <a class="el" href="oggz__constants_8h.html#a27a6">oggz_constants.h</a><li>OGGZ_ERR_RECURSIVE_WRITE
: <a class="el" href="oggz__constants_8h.html#a27a24">oggz_constants.h</a><li>OGGZ_ERR_SYSTEM
: <a class="el" href="oggz__constants_8h.html#a27a14">oggz_constants.h</a><li>oggz_flush()
: <a class="el" href="oggz_8h.html#a7">oggz.h</a><li>OGGZ_FLUSH_AFTER
: <a class="el" href="oggz__constants_8h.html#a26a5">oggz_constants.h</a><li>OGGZ_FLUSH_BEFORE
: <a class="el" href="oggz__constants_8h.html#a26a4">oggz_constants.h</a><li>oggz_get_bos()
: <a class="el" href="oggz_8h.html#a9">oggz.h</a><li>oggz_get_eos()
: <a class="el" href="oggz_8h.html#a10">oggz.h</a><li>oggz_new()
: <a class="el" href="oggz_8h.html#a4">oggz.h</a><li>OGGZ_NONSTRICT
: <a class="el" href="oggz__constants_8h.html#a25a2">oggz_constants.h</a><li>oggz_open()
: <a class="el" href="oggz_8h.html#a5">oggz.h</a><li>oggz_open_stdio()
: <a class="el" href="oggz_8h.html#a6">oggz.h</a><li>oggz_read()
: <a class="el" href="oggz_8h.html#a2">oggz.h</a><li>OGGZ_READ
: <a class="el" href="oggz__constants_8h.html#a25a0">oggz_constants.h</a><li>oggz_read_input()
: <a class="el" href="oggz_8h.html#a3">oggz.h</a><li>oggz_seek()
: <a class="el" href="oggz_8h.html#a6">oggz.h</a><li>oggz_seek_units()
: <a class="el" href="oggz_8h.html#a3">oggz.h</a><li>oggz_serialno_new()
: <a class="el" href="oggz_8h.html#a25">oggz.h</a><li>oggz_set_data_start()
: <a class="el" href="oggz_8h.html#a4">oggz.h</a><li>oggz_set_metric()
: <a class="el" href="oggz_8h.html#a2">oggz.h</a><li>oggz_set_metric_linear()
: <a class="el" href="oggz_8h.html#a1">oggz.h</a><li>oggz_set_read_callback()
: <a class="el" href="oggz_8h.html#a1">oggz.h</a><li>oggz_table_delete()
: <a class="el" href="oggz__table_8h.html#a2">oggz_table.h</a><li>oggz_table_insert()
: <a class="el" href="oggz__table_8h.html#a3">oggz_table.h</a><li>oggz_table_lookup()
: <a class="el" href="oggz__table_8h.html#a4">oggz_table.h</a><li>oggz_table_new()
: <a class="el" href="oggz__table_8h.html#a1">oggz_table.h</a><li>oggz_table_nth()
: <a class="el" href="oggz__table_8h.html#a6">oggz_table.h</a><li>oggz_table_size()
: <a class="el" href="oggz__table_8h.html#a5">oggz_table.h</a><li>oggz_tell()
: <a class="el" href="oggz_8h.html#a5">oggz.h</a><li>OGGZ_WRITE
: <a class="el" href="oggz__constants_8h.html#a25a1">oggz_constants.h</a><li>oggz_write()
: <a class="el" href="oggz_8h.html#a4">oggz.h</a><li>oggz_write_feed()
: <a class="el" href="oggz_8h.html#a2">oggz.h</a><li>oggz_write_get_next_page_size()
: <a class="el" href="oggz_8h.html#a5">oggz.h</a><li>oggz_write_output()
: <a class="el" href="oggz_8h.html#a3">oggz.h</a><li>oggz_write_set_hungry_callback()
: <a class="el" href="oggz_8h.html#a1">oggz.h</a><li>OggzError
: <a class="el" href="oggz__constants_8h.html#a27">oggz_constants.h</a><li>OggzFlags
: <a class="el" href="oggz__constants_8h.html#a25">oggz_constants.h</a><li>OggzFlushOpts
: <a class="el" href="oggz__constants_8h.html#a26">oggz_constants.h</a><li>OggzMetric
: <a class="el" href="oggz_8h.html#a0">oggz.h</a><li>OggzReadPacket
: <a class="el" href="oggz_8h.html#a0">oggz.h</a><li>OggzTable
: <a class="el" href="oggz__table_8h.html#a0">oggz_table.h</a><li>OggzWriteHungry
: <a class="el" href="oggz_8h.html#a0">oggz.h</a></ul>
<hr size="1"><address style="align: right;"><small>Generated on Wed Jan 21 16:21:06 2004 for liboggz by
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
</a>1.3.4 </small></address>
</body>
</html>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>liboggz: File Member Index</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.3.4 -->
<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindexHL" href="globals.html">Globals</a></div>
<div class="qindex"><a class="qindex" href="globals.html">All</a> | <a class="qindex" href="globals_func.html">Functions</a> | <a class="qindex" href="globals_type.html">Typedefs</a> | <a class="qindexHL" href="globals_enum.html">Enumerations</a> | <a class="qindex" href="globals_eval.html">Enumeration&nbsp;values</a></div>
<p>
<ul>
<li>OggzError
: <a class="el" href="oggz__constants_8h.html#a27">oggz_constants.h</a><li>OggzFlags
: <a class="el" href="oggz__constants_8h.html#a25">oggz_constants.h</a><li>OggzFlushOpts
: <a class="el" href="oggz__constants_8h.html#a26">oggz_constants.h</a></ul>
<hr size="1"><address style="align: right;"><small>Generated on Wed Jan 21 16:21:06 2004 for liboggz by
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
</a>1.3.4 </small></address>
</body>
</html>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>liboggz: File Member Index</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.3.4 -->
<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindexHL" href="globals.html">Globals</a></div>
<div class="qindex"><a class="qindex" href="globals.html">All</a> | <a class="qindex" href="globals_func.html">Functions</a> | <a class="qindex" href="globals_type.html">Typedefs</a> | <a class="qindex" href="globals_enum.html">Enumerations</a> | <a class="qindexHL" href="globals_eval.html">Enumeration&nbsp;values</a></div>
<p>
<ul>
<li>OGGZ_AUTO
: <a class="el" href="oggz__constants_8h.html#a25a3">oggz_constants.h</a><li>OGGZ_ERR_BAD_B_O_S
: <a class="el" href="oggz__constants_8h.html#a27a19">oggz_constants.h</a><li>OGGZ_ERR_BAD_BYTES
: <a class="el" href="oggz__constants_8h.html#a27a18">oggz_constants.h</a><li>OGGZ_ERR_BAD_E_O_S
: <a class="el" href="oggz__constants_8h.html#a27a20">oggz_constants.h</a><li>OGGZ_ERR_BAD_GRANULEPOS
: <a class="el" href="oggz__constants_8h.html#a27a21">oggz_constants.h</a><li>OGGZ_ERR_BAD_GUARD
: <a class="el" href="oggz__constants_8h.html#a27a23">oggz_constants.h</a><li>OGGZ_ERR_BAD_METRIC
: <a class="el" href="oggz__constants_8h.html#a27a13">oggz_constants.h</a><li>OGGZ_ERR_BAD_OGGZ
: <a class="el" href="oggz__constants_8h.html#a27a8">oggz_constants.h</a><li>OGGZ_ERR_BAD_PACKETNO
: <a class="el" href="oggz__constants_8h.html#a27a22">oggz_constants.h</a><li>OGGZ_ERR_BAD_SERIALNO
: <a class="el" href="oggz__constants_8h.html#a27a17">oggz_constants.h</a><li>OGGZ_ERR_BOS
: <a class="el" href="oggz__constants_8h.html#a27a11">oggz_constants.h</a><li>OGGZ_ERR_DISABLED
: <a class="el" href="oggz__constants_8h.html#a27a15">oggz_constants.h</a><li>OGGZ_ERR_EOS
: <a class="el" href="oggz__constants_8h.html#a27a12">oggz_constants.h</a><li>OGGZ_ERR_GENERIC
: <a class="el" href="oggz__constants_8h.html#a27a7">oggz_constants.h</a><li>OGGZ_ERR_INVALID
: <a class="el" href="oggz__constants_8h.html#a27a9">oggz_constants.h</a><li>OGGZ_ERR_NO_STREAMS
: <a class="el" href="oggz__constants_8h.html#a27a10">oggz_constants.h</a><li>OGGZ_ERR_NOSEEK
: <a class="el" href="oggz__constants_8h.html#a27a16">oggz_constants.h</a><li>OGGZ_ERR_OK
: <a class="el" href="oggz__constants_8h.html#a27a6">oggz_constants.h</a><li>OGGZ_ERR_RECURSIVE_WRITE
: <a class="el" href="oggz__constants_8h.html#a27a24">oggz_constants.h</a><li>OGGZ_ERR_SYSTEM
: <a class="el" href="oggz__constants_8h.html#a27a14">oggz_constants.h</a><li>OGGZ_FLUSH_AFTER
: <a class="el" href="oggz__constants_8h.html#a26a5">oggz_constants.h</a><li>OGGZ_FLUSH_BEFORE
: <a class="el" href="oggz__constants_8h.html#a26a4">oggz_constants.h</a><li>OGGZ_NONSTRICT
: <a class="el" href="oggz__constants_8h.html#a25a2">oggz_constants.h</a><li>OGGZ_READ
: <a class="el" href="oggz__constants_8h.html#a25a0">oggz_constants.h</a><li>OGGZ_WRITE
: <a class="el" href="oggz__constants_8h.html#a25a1">oggz_constants.h</a></ul>
<hr size="1"><address style="align: right;"><small>Generated on Wed Jan 21 16:21:06 2004 for liboggz by
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
</a>1.3.4 </small></address>
</body>
</html>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>liboggz: File Member Index</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.3.4 -->
<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindexHL" href="globals.html">Globals</a></div>
<div class="qindex"><a class="qindex" href="globals.html">All</a> | <a class="qindexHL" href="globals_func.html">Functions</a> | <a class="qindex" href="globals_type.html">Typedefs</a> | <a class="qindex" href="globals_enum.html">Enumerations</a> | <a class="qindex" href="globals_eval.html">Enumeration&nbsp;values</a></div>
<p>
<ul>
<li>oggz_close()
: <a class="el" href="oggz_8h.html#a8">oggz.h</a><li>oggz_flush()
: <a class="el" href="oggz_8h.html#a7">oggz.h</a><li>oggz_get_bos()
: <a class="el" href="oggz_8h.html#a9">oggz.h</a><li>oggz_get_eos()
: <a class="el" href="oggz_8h.html#a10">oggz.h</a><li>oggz_new()
: <a class="el" href="oggz_8h.html#a4">oggz.h</a><li>oggz_open()
: <a class="el" href="oggz_8h.html#a5">oggz.h</a><li>oggz_open_stdio()
: <a class="el" href="oggz_8h.html#a6">oggz.h</a><li>oggz_read()
: <a class="el" href="oggz_8h.html#a2">oggz.h</a><li>oggz_read_input()
: <a class="el" href="oggz_8h.html#a3">oggz.h</a><li>oggz_seek()
: <a class="el" href="oggz_8h.html#a6">oggz.h</a><li>oggz_seek_units()
: <a class="el" href="oggz_8h.html#a3">oggz.h</a><li>oggz_serialno_new()
: <a class="el" href="oggz_8h.html#a25">oggz.h</a><li>oggz_set_data_start()
: <a class="el" href="oggz_8h.html#a4">oggz.h</a><li>oggz_set_metric()
: <a class="el" href="oggz_8h.html#a2">oggz.h</a><li>oggz_set_metric_linear()
: <a class="el" href="oggz_8h.html#a1">oggz.h</a><li>oggz_set_read_callback()
: <a class="el" href="oggz_8h.html#a1">oggz.h</a><li>oggz_table_delete()
: <a class="el" href="oggz__table_8h.html#a2">oggz_table.h</a><li>oggz_table_insert()
: <a class="el" href="oggz__table_8h.html#a3">oggz_table.h</a><li>oggz_table_lookup()
: <a class="el" href="oggz__table_8h.html#a4">oggz_table.h</a><li>oggz_table_new()
: <a class="el" href="oggz__table_8h.html#a1">oggz_table.h</a><li>oggz_table_nth()
: <a class="el" href="oggz__table_8h.html#a6">oggz_table.h</a><li>oggz_table_size()
: <a class="el" href="oggz__table_8h.html#a5">oggz_table.h</a><li>oggz_tell()
: <a class="el" href="oggz_8h.html#a5">oggz.h</a><li>oggz_write()
: <a class="el" href="oggz_8h.html#a4">oggz.h</a><li>oggz_write_feed()
: <a class="el" href="oggz_8h.html#a2">oggz.h</a><li>oggz_write_get_next_page_size()
: <a class="el" href="oggz_8h.html#a5">oggz.h</a><li>oggz_write_output()
: <a class="el" href="oggz_8h.html#a3">oggz.h</a><li>oggz_write_set_hungry_callback()
: <a class="el" href="oggz_8h.html#a1">oggz.h</a></ul>
<hr size="1"><address style="align: right;"><small>Generated on Wed Jan 21 16:21:06 2004 for liboggz by
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
</a>1.3.4 </small></address>
</body>
</html>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>liboggz: File Member Index</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.3.4 -->
<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindexHL" href="globals.html">Globals</a></div>
<div class="qindex"><a class="qindex" href="globals.html">All</a> | <a class="qindex" href="globals_func.html">Functions</a> | <a class="qindexHL" href="globals_type.html">Typedefs</a> | <a class="qindex" href="globals_enum.html">Enumerations</a> | <a class="qindex" href="globals_eval.html">Enumeration&nbsp;values</a></div>
<p>
<ul>
<li>OGGZ
: <a class="el" href="oggz_8h.html#a0">oggz.h</a><li>OggzMetric
: <a class="el" href="oggz_8h.html#a0">oggz.h</a><li>OggzReadPacket
: <a class="el" href="oggz_8h.html#a0">oggz.h</a><li>OggzTable
: <a class="el" href="oggz__table_8h.html#a0">oggz_table.h</a><li>OggzWriteHungry
: <a class="el" href="oggz_8h.html#a0">oggz.h</a></ul>
<hr size="1"><address style="align: right;"><small>Generated on Wed Jan 21 16:21:06 2004 for liboggz by
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
</a>1.3.4 </small></address>
</body>
</html>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>liboggz: Ogg basics</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.3.4 -->
<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="globals.html">Globals</a></div>
<h1>Ogg basics</h1><h2><a class="anchor" name="Scope">
Scope</a></h2>
This section provides a minimal introduction to Ogg concepts, covering only that which is required to use liboggz.<p>
For more detailed information, see the <a href="http://www.xiph.org/ogg/">Ogg</a> homepage or IETF <a href="http://www.ietf.org/rfc/rfc3533.txt">RFC 3533</a> <em>The Ogg File Format version 0</em>.<h2><a class="anchor" name="Terminology">
Terminology</a></h2>
The monospace text below is quoted directly from RFC 3533. For each concept introduced, tips related to liboggz are provided in bullet points.<h3><a class="anchor" name="bitstreams">
Physical and Logical Bitstreams</a></h3>
The raw data of an Ogg stream, as read directly from a file or network socket, is called a <em>physical bitstream</em>.<p>
<pre><div>
The result of an Ogg encapsulation is called the "Physical (Ogg)
Bitstream". It encapsulates one or several encoder-created
bitstreams, which are called "Logical Bitstreams". A logical
bitstream, provided to the Ogg encapsulation process, has a
structure, i.e., it is split up into a sequence of so-called
"Packets". The packets are created by the encoder of that logical
bitstream and represent meaningful entities for that encoder only
(e.g., an uncompressed stream may use video frames as packets).
</pre></div><h3><a class="anchor" name="pages">
Packets and Pages</a></h3>
Within the Ogg format, packets are written into <em>pages</em>. You can think of pages like pages in a book, and packets as items of the actual text. Consider, for example, individual poems or short stories as the packets. Pages are of course all the same size, and a few very short packets could be written into a single page. On the other hand, a very long packet will use many pages.<p>
<ul>
<li>liboggz handles the details of writing packets into pages, and of reading packets from pages; your application deals only with <code>ogg_packet</code> structures.</li><li>Each <code>ogg_packet</code> structure contains a block of data and its length in bytes, plus other information related to the stream structure as explained below.</li></ul>
<h3><a class="anchor" name="serialno">
serialno</a></h3>
Each logical bitstream is uniquely identified by a serial number or <em>serialno</em>.<p>
<ul>
<li>Packets are always associated with a <em>serialno</em>. This is not actually part of the <code>ogg_packet</code> structure, so wherever you see an <code>ogg_packet</code> in the liboggz API, you will see an accompanying <em>serialno</em>.</li></ul>
<p>
<pre><div>
This unique serial number is created randomly and does not have any
connection to the content or encoder of the logical bitstream it
represents.
</pre></div><p>
<ul>
<li>Use <a class="el" href="oggz_8h.html#a25">oggz_serialno_new()</a> to generate a new serial number for each logical bitstream you write.</li><li>Use an <a class="el" href="oggz__table_8h.html">OggzTable </a>, keyed by <em>serialno</em>, to store and retrieve data related to each logical bitstream.</li></ul>
<h3><a class="anchor" name="boseos">
b_o_s and e_o_s</a></h3>
<pre><div>
bos page: The initial page (beginning of stream) of a logical
bitstream which contains information to identify the codec type
and other decoding-relevant information.</pre></div><p>
<pre><div> eos page: The final page (end of stream) of a logical bitstream.
</pre></div><p>
<ul>
<li>Every <code>ogg_packet</code> contains <em>b_o_s</em> and <em>e_o_s</em> flags. Of course each of these will be set only once per logical bitstream. See the Structuring section below for rules on setting <em>b_o_s</em> and <em>e_o_s</em> when interleaving logical bitstreams.</li><li>This documentation will refer to <em>bos</em> and <em>eos</em> <em>packets</em> (not <em>pages</em>) as that is more closely represented by the API. The <em>bos</em> packet is the only packet on the <em>bos</em> page, and the <em>eos</em> packet is the last packet on the <em>eos</em> page.</li></ul>
<h3><a class="anchor" name="granulepos">
granulepos</a></h3>
<pre><div>
granule position: An increasing position number for a specific
logical bitstream stored in the page header. Its meaning is
dependent on the codec for that logical bitstream
</pre></div><p>
<ul>
<li>Every <code>ogg_packet</code> contains a <em>granulepos</em>. The <em>granulepos</em> of each packet is used mostly for <a class="el" href="group__seek__api.html">seeking. </a></li></ul>
<h2><a class="anchor" name="Structuring">
Structuring</a></h2>
The general structure of an Ogg stream is governed by various rules.<h3><a class="anchor" name="secondaries">
Secondary header packets</a></h3>
Some data sources require initial setup information such as comments and codebooks to be present near the beginning of the stream (directly following the b_o_s packets.<p>
<pre><div>
Ogg also allows but does not require secondary header packets after
the bos page for logical bitstreams and these must also precede any
data packets in any logical bitstream. These subsequent header
packets are framed into an integral number of pages, which will not
contain any data packets. So, a physical bitstream begins with the
bos pages of all logical bitstreams containing one initial header
packet per page, followed by the subsidiary header packets of all
streams, followed by pages containing data packets.
</pre></div><p>
<ul>
<li>liboggz handles the framing of <em>packets</em> into low-level <em>pages</em>. To ensure that the pages used by secondary headers contain no data packets, set the <em>flush</em> parameter of <a class="el" href="group__write__api.html#a2">oggz_write_feed()</a> to <em>OGGZ_FLUSH_AFTER</em> when queueing the last of the secondary headers.</li><li>or, equivalently, set <em>flush</em> to <em>OGGZ_FLUSH_BEFORE</em> when queueing the first of the data packets.</li></ul>
<h3><a class="anchor" name="boseosseq">
Sequencing b_o_s and e_o_s packets</a></h3>
The following rules apply for sequencing <em>bos</em> and <em>eos</em> packets in a physical bitstream: <pre><div>
... All bos pages of all logical bitstreams MUST appear together at
the beginning of the Ogg bitstream.</pre></div><p>
<pre><div> ... eos pages for the logical bitstreams need not all occur
contiguously. Eos pages may be 'nil' pages, that is, pages
containing no content but simply a page header with position
information and the eos flag set in the page header.
</pre></div><p>
<ul>
<li><a class="el" href="group__write__api.html#a2">oggz_write_feed()</a> will fail with a return value of <em>OGGZ_ERR_BOS</em> if an attempt is made to queue a late <em>bos</em> packet</li></ul>
<h3><a class="anchor" name="interleaving">
Interleaving logical bitstreams</a></h3>
<pre><div>
It is possible to consecutively chain groups of concurrently
multiplexed bitstreams. The groups, when unchained, MUST stand on
their own as a valid concurrently multiplexed bitstream. The
following diagram shows a schematic example of such a physical
bitstream that obeys all the rules of both grouped and chained
multiplexed bitstreams.</pre></div><p>
<pre><div> physical bitstream with pages of
different logical bitstreams grouped and chained
-------------------------------------------------------------
|*A*|*B*|*C*|A|A|C|B|A|B|#A#|C|...|B|C|#B#|#C#|*D*|D|...|#D#|
-------------------------------------------------------------
bos bos bos eos eos eos bos eos</pre></div><p>
<pre><div> In this example, there are two chained physical bitstreams, the first
of which is a grouped stream of three logical bitstreams A, B, and C.
The second physical bitstream is chained after the end of the grouped
bitstream, which ends after the last eos page of all its grouped
logical bitstreams. As can be seen, grouped bitstreams begin
together - all of the bos pages MUST appear before any data pages.
It can also be seen that pages of concurrently multiplexed bitstreams
need not conform to a regular order. And it can be seen that a
grouped bitstream can end long before the other bitstreams in the
group end.
</pre></div><p>
<ul>
<li><a class="el" href="group__write__api.html#a2">oggz_write_feed()</a> will fail, returning an explicit error value, if an attempt is made to queue a packet in violation of these rules.</li></ul>
<h2><a class="anchor" name="References">
References</a></h2>
This introduction to the Ogg format is derived from IETF <a href="http://www.ietf.org/rfc/rfc3533.txt">RFC 3533</a> <em>The Ogg File Format version 0</em> in accordance with the following copyright statement pertaining to the text of RFC 3533:<p>
<pre><div>
Copyright (C) The Internet Society (2003). All Rights Reserved.</pre></div><p>
<pre><div> This document and translations of it may be copied and furnished to
others, and derivative works that comment on or otherwise explain it
or assist in its implementation may be prepared, copied, published
and distributed, in whole or in part, without restriction of any
kind, provided that the above copyright notice and this paragraph are
included on all such copies and derivative works. However, this
document itself may not be modified in any way, such as by removing
the copyright notice or references to the Internet Society or other
Internet organizations, except as needed for the purpose of
developing Internet standards in which case the procedures for
copyrights defined in the Internet Standards process must be
followed, or as required to translate it into languages other than
English.</pre></div><p>
<pre><div> The limited permissions granted above are perpetual and will not be
revoked by the Internet Society or its successors or assigns.</pre></div><p>
<pre><div> This document and the information contained herein is provided on an
"AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
</pre></div>
<p>
<table border=0 cellpadding=0 cellspacing=0>
<tr><td></td></tr>
</table>
<hr size="1"><address style="align: right;"><small>Generated on Wed Jan 21 16:21:06 2004 for liboggz by
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
</a>1.3.4 </small></address>