summaryrefslogtreecommitdiffhomepage
path: root/doc/libvorbis/vorbis_analysis.html
diff options
context:
space:
mode:
Diffstat (limited to 'doc/libvorbis/vorbis_analysis.html')
-rw-r--r--doc/libvorbis/vorbis_analysis.html86
1 files changed, 86 insertions, 0 deletions
diff --git a/doc/libvorbis/vorbis_analysis.html b/doc/libvorbis/vorbis_analysis.html
new file mode 100644
index 0000000..b126f20
--- /dev/null
+++ b/doc/libvorbis/vorbis_analysis.html
@@ -0,0 +1,86 @@
+<html>
+
+<head>
+<title>libvorbis - function - vorbis_analysis</title>
+<link rel=stylesheet href="style.css" type="text/css">
+</head>
+
+<body bgcolor=white text=black link="#5555ff" alink="#5555ff" vlink="#5555ff">
+<table border=0 width=100%>
+<tr>
+<td><p class=tiny>libvorbis documentation</p></td>
+<td align=right><p class=tiny>libvorbis version 1.3.2 - 20101101</p></td>
+</tr>
+</table>
+
+<h1>vorbis_analysis</h1>
+
+<p><i>declared in "vorbis/codec.h";</i></p>
+
+<p>Once the uncompressed audio data has been divided into blocks, this
+function is called on each block. It looks up the encoding mode and
+dispatches the block to the forward transform provided by that mode.
+</p>
+<p>When using a basic encoding mode, with no bitrate management,
+an ogg_packet pointer can be given, and the coded block is returned
+directly through that structure and can be placed in the output stream.
+</p>
+<p>Otherwise, NULL should be passed for the ogg_packet pointer. In
+that case, after the transform has been applied, the block must passed
+to vorbis_bitrate_addblock() for further coding. This method works with
+both basic and managed encoding modes, so it's recommended for new code.
+</p>
+
+<table border=0 color=black cellspacing=0 cellpadding=7>
+<tr bgcolor=#cccccc>
+ <td>
+<pre><b>
+extern int vorbis_analysis(vorbis_block *vb,ogg_packet *op);
+</b></pre>
+ </td>
+</tr>
+</table>
+
+<h3>Parameters</h3>
+<dl>
+<dt><i>vb</i></dt>
+<dd>Pointer to the vorbis_block to be encoded.</dd>
+<dt><i>op</i></dt>
+<dd>Optional pointer to an ogg_packet. This is normally NULL,
+and the final output is obtained by passing <i>vb</i> though the
+vorbis_bitrate_*() interface to perform further refinement.
+However, when not using a bitrate managed encoding mode, it
+is possible to skip that step by providing an ogg_packet pointer
+here, obtaining the compressed data directly.</dd>
+</dl>
+
+
+<h3>Return Values</h3>
+<ul>
+<li>0 for success</li>
+<li>negative values for failure:
+<ul>
+<li>OV_EINVAL - Invalid request; a non-NULL value was passed for <i>op</i> when the encoder is using a bitrate managed mode.</li>
+<li>OV_EFAULT - Internal fault; indicates a bug or memory corruption.</li>
+<li>OV_EIMPL - Unimplemented; not supported by this version of the library.</li>
+</ul>
+</li>
+</ul>
+<p>
+
+<br><br>
+<hr noshade>
+<table border=0 width=100%>
+<tr valign=top>
+<td><p class=tiny>copyright &copy; 2010 Xiph.Org</p></td>
+<td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/index.html">Ogg Vorbis</a></p></td>
+</tr><tr>
+<td><p class=tiny>libvorbis documentation</p></td>
+<td align=right><p class=tiny>libvorbis version 1.3.2 - 20101101</p></td>
+</tr>
+</table>
+
+
+</body>
+
+</html>