Documentation updates to reflect crosslap API extentions
authorMonty <xiphmont@xiph.org>
Sat, 8 Mar 2003 08:11:28 +0000 (08:11 +0000)
committerMonty <xiphmont@xiph.org>
Sat, 8 Mar 2003 08:11:28 +0000 (08:11 +0000)
svn path=/trunk/vorbis/; revision=4449

56 files changed:
doc/vorbisfile/OggVorbis_File.html
doc/vorbisfile/callbacks.html
doc/vorbisfile/chaining_example_c.html
doc/vorbisfile/chainingexample.html
doc/vorbisfile/crosslap.html [new file with mode: 0644]
doc/vorbisfile/datastructures.html
doc/vorbisfile/decoding.html
doc/vorbisfile/example.html
doc/vorbisfile/exampleindex.html
doc/vorbisfile/fileinfo.html
doc/vorbisfile/index.html
doc/vorbisfile/initialization.html
doc/vorbisfile/ov_bitrate.html
doc/vorbisfile/ov_bitrate_instant.html
doc/vorbisfile/ov_callbacks.html
doc/vorbisfile/ov_clear.html
doc/vorbisfile/ov_comment.html
doc/vorbisfile/ov_crosslap.html [new file with mode: 0644]
doc/vorbisfile/ov_info.html
doc/vorbisfile/ov_open.html
doc/vorbisfile/ov_open_callbacks.html
doc/vorbisfile/ov_pcm_seek.html
doc/vorbisfile/ov_pcm_seek_lap.html [new file with mode: 0644]
doc/vorbisfile/ov_pcm_seek_page.html
doc/vorbisfile/ov_pcm_seek_page_lap.html [new file with mode: 0644]
doc/vorbisfile/ov_pcm_tell.html
doc/vorbisfile/ov_pcm_total.html
doc/vorbisfile/ov_raw_seek.html
doc/vorbisfile/ov_raw_seek_lap.html [new file with mode: 0644]
doc/vorbisfile/ov_raw_tell.html
doc/vorbisfile/ov_raw_total.html
doc/vorbisfile/ov_read.html
doc/vorbisfile/ov_read_float.html
doc/vorbisfile/ov_seekable.html
doc/vorbisfile/ov_serialnumber.html
doc/vorbisfile/ov_streams.html
doc/vorbisfile/ov_test.html
doc/vorbisfile/ov_test_callbacks.html
doc/vorbisfile/ov_test_open.html
doc/vorbisfile/ov_time_seek.html
doc/vorbisfile/ov_time_seek_lap.html [new file with mode: 0644]
doc/vorbisfile/ov_time_seek_page.html
doc/vorbisfile/ov_time_seek_page_lap.html [new file with mode: 0644]
doc/vorbisfile/ov_time_tell.html
doc/vorbisfile/ov_time_total.html
doc/vorbisfile/overview.html
doc/vorbisfile/reference.html
doc/vorbisfile/return.html
doc/vorbisfile/seekexample.html
doc/vorbisfile/seeking.html
doc/vorbisfile/seeking_example_c.html
doc/vorbisfile/seeking_test_c.html
doc/vorbisfile/threads.html
doc/vorbisfile/vorbis_comment.html
doc/vorbisfile/vorbis_info.html
doc/vorbisfile/vorbisfile_example_c.html

index 05548c8..e4a033e 100644 (file)
@@ -9,7 +9,7 @@
 <table border=0 width=100%>
 <tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -108,11 +108,11 @@ application.</dd>
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2002 Xiph.org</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
 </tr><tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
index 4d4df68..eda3c47 100644 (file)
@@ -9,7 +9,7 @@
 <table border=0 width=100%>
 <tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -100,11 +100,11 @@ not seekable.<p>
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2002 Xiph.org</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
 </tr><tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
index 4653ae5..a1be652 100644 (file)
@@ -8,8 +8,8 @@
 <body bgcolor=white text=black link="#5555ff" alink="#5555ff" vlink="#5555ff">
 <table border=0 width=100%>
 <tr>
-<td><p class=tiny>vorbisfile documentation</p></td>
-<td align=right><p class=tiny>vorbisfile version 1.25 - 20000615</p></td>
+<td><p class=tiny>Vorbisfile documentation</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -73,11 +73,11 @@ int main(){
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2000 vorbis team</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/index.html">Ogg Vorbis</a><br><a href="mailto:team@vorbis.org">team@vorbis.org</a></p></td>
 </tr><tr>
-<td><p class=tiny>vorbisfile documentation</p></td>
-<td align=right><p class=tiny>vorbisfile version 1.25 - 20000615</p></td>
+<td><p class=tiny>Vorbisfile documentation</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
index 8462b27..932539e 100644 (file)
@@ -8,8 +8,8 @@
 <body bgcolor=white text=black link="#5555ff" alink="#5555ff" vlink="#5555ff">
 <table border=0 width=100%>
 <tr>
-<td><p class=tiny>vorbisfile documentation</p></td>
-<td align=right><p class=tiny>vorbisfile version 1.25 - 20000615</p></td>
+<td><p class=tiny>Vorbisfile documentation</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -145,11 +145,11 @@ distribution in <a href="chaining_example_c.html">chaining_example.c</a>.
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2000 vorbis team</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a><br><a href="mailto:team@vorbis.org">team@vorbis.org</a></p></td>
 </tr><tr>
-<td><p class=tiny>vorbisfile documentation</p></td>
-<td align=right><p class=tiny>vorbisfile version 1.25 - 20000615</p></td>
+<td><p class=tiny>Vorbisfile documentation</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
diff --git a/doc/vorbisfile/crosslap.html b/doc/vorbisfile/crosslap.html
new file mode 100644 (file)
index 0000000..16a768d
--- /dev/null
@@ -0,0 +1,121 @@
+<html>
+
+<head>
+<title>Vorbisfile - Sample Crosslapping</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>Vorbisfile documentation</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
+</tr>
+</table>
+
+<h1>What is Crosslapping?</h1>
+
+<p>Crosslapping blends two samples together using a window function,
+such that any sudden discontinuities between the samples that may
+cause clicks or thumps are eliminated or blended away.  The technique
+is nearly identical to how Vorbis internally splices together frames
+of audio data during normal decode.  API functions are provided to <a
+href="ov_crosslap.html">crosslap transitions between seperate
+streams</a>, or to crosslap when <a href="seeking.html">seeking within
+a single stream</a>.
+
+<h1>Why Crosslap?</h1>
+<h2>The source of boundary clicks</h2>
+
+<p>Vorbis is a lossy compression format such that any compressed
+signal is at best a close approximation of the original.  The
+approximation may be very good (ie, indistingushable to the human
+ear), but it is an approximation nonetheless.  Even if a sample or set
+of samples is contructed carefully such that transitions from one to
+another match perfectly in the original, the compression process
+introduces minute amplitude and phase errors.  It's an unavoidable
+result of such high compression rates.
+
+<p>If an application transitions instantly from one sample to another,
+any tiny discrepancy introduced in the lossy compression process
+becomes audible as a stairstep discontinuity.  Even if the discrepancy
+in a normal lapped frame is only .1dB (usually far below the
+threshhold of perception), that's a sudden cliff of 380 steps in a 16
+bit sample (when there's a boundary with no lapping).
+
+<h2>I thought Vorbis was gapless</h2>
+
+<p>It is.  Vorbis introduces no extra samples at the beginning or end
+of a stream, nor does it remove any samples.  Gapless encoding
+eliminates 99% of the click, pop or outright blown speaker that would
+occur if boundaries had gaps or made no effort to align
+transitions. However, gapless encoding is not enough to entirely
+eliminate stairstep discontinuities all the time for exactly the
+reasons described above.
+
+<p>Frame lapping, like Vorbis performs internally during continuous
+playback, is necessary to eliminate that last epislon of trouble.
+
+<h1>Easiest Crosslap</h1>
+
+The easiest way to perform crosslapping in Vorbis is to use the
+lapping functions with no other extra effort.  These functions behave
+identically to when lapping isn't used except to provide
+at-least-very-good lapping results.  Crosslapping will not introduce
+any samples into or remove any samples from the decoded audio; the
+only difference is that the transition is lapped.  Lapping occurs from
+the current PCM position (either in the old stream, or at the position
+prior to calling a lapping seek) forward into the next
+half-short-block of audio data to be read from the new stream or
+position.
+
+<p>Ideally, vorbisfile internally reads an extra frame of audio from
+the old stream/position to perform lapping into the new
+stream/position.  However, automagic crosslapping works properly even
+if the old stream/position is at EOF. In this case, the synthetic
+post-extrapolation generated by the encoder to pad out the last block
+with appropriate data (and avoid encoding a stairstep, which is
+inefficient) is used for crosslapping purposes.  Although this is
+synthetic data, the result is still usually completely unnoticable
+even in careful listening (and always preferable to a click or pop).
+
+<p>Vorbisfile will lap between streams of differing numbers of
+channels. Any extra channels from the old stream are ignored; playback
+of these channels simply ends. Extra channels in the new stream are
+lapped from silence.  Vorbisfile will also lap between streams links
+of differing sample rates.  In this case, the sample rates are ignored
+(no implicit resampling is done to match playback). It is up to the
+application developer to decide if this behavior makes any sense in a
+given context; in practical use, these default behaviors perform
+sensibly.
+
+<h1>Best Crosslap</h1>
+
+<p>To acheive the best possible crosslapping results, avoid the case
+where synthetic extrapolation data is used for crosslapping.  That is,
+design loops and samples such that a little bit of data is left over
+in sample A when seeking to sample B.  Normally, the end of sample A
+and the beginning of B would overlap exactly; this allows
+crosslapping to perform exactly as it would within vorbis when
+stitching audio frames together into continuous decoded audio.
+
+<p>The optimal amount of overlap is half a short-block, and this
+varies by compression mode.  Each encoder will vary in exact block
+size selection; for vorbis 1.0, for -q0 through -q10 and 44kHz or
+greater, a half-short block is 64 samples.
+
+<br><br>
+<hr noshade>
+<table border=0 width=100%>
+<tr valign=top>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
+<td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
+</tr><tr>
+<td><p class=tiny>Vorbisfile documentation</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
+</tr>
+</table>
+
+</body>
+
+</html>
index 72d7cf3..0736618 100644 (file)
@@ -9,7 +9,7 @@
 <table border=0 width=100%>
 <tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2002 Xiph.org</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
 </tr><tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
index e7151db..7121114 100644 (file)
@@ -9,7 +9,7 @@
 <table border=0 width=100%>
 <tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -73,11 +73,11 @@ call to <a href="ov_open.html"><tt>ov_open()</tt></a>.</td>
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2002 Xiph.org</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
 </tr><tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
index 12977f1..3d28e1a 100644 (file)
@@ -9,11 +9,11 @@
 <table border=0 width=100%>
 <tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
-<h1>Example Code</h1>
+<h1>Decoding Example Code</h1>
 
 <p>
 The following is a run-through of the decoding example program supplied
@@ -192,11 +192,11 @@ Now that we've finished playing, we can pack up and go home.  It's important to
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2002 Xiph.org</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
 </tr><tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
index 1575e27..6f8dce3 100644 (file)
@@ -8,8 +8,8 @@
 <body bgcolor=white text=black link="#5555ff" alink="#5555ff" vlink="#5555ff">
 <table border=0 width=100%>
 <tr>
-<td><p class=tiny>vorbisfile documentation</p></td>
-<td align=right><p class=tiny>vorbisfile version 1.25 - 20000615</p></td>
+<td><p class=tiny>Vorbisfile documentation</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -26,11 +26,11 @@ Three sample programs are included with the vorbisfile distribution.
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2000 vorbis team</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a><br><a href="mailto:team@vorbis.org">team@vorbis.org</a></p></td>
 </tr><tr>
-<td><p class=tiny>vorbisfile documentation</p></td>
-<td align=right><p class=tiny>vorbisfile version 1.25 - 20000615</p></td>
+<td><p class=tiny>Vorbisfile documentation</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
index db9bdbe..ab55f14 100644 (file)
@@ -9,7 +9,7 @@
 <table border=0 width=100%>\r
 <tr>\r
 <td><p class=tiny>Vorbisfile documentation</p></td>\r
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>\r
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>\r
 </tr>\r
 </table>\r
 \r
@@ -82,11 +82,11 @@ All libvorbisfile file information routines are declared in "vorbis/vorbisfile.h
 <hr noshade>\r
 <table border=0 width=100%>\r
 <tr valign=top>\r
-<td><p class=tiny>copyright &copy; 2002 Xiph.org</p></td>\r
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>\r
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>\r
 </tr><tr>\r
 <td><p class=tiny>Vorbisfile documentation</p></td>\r
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>\r
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>\r
 </tr>\r
 </table>\r
 \r
index 87addd5..27ebd18 100644 (file)
@@ -9,7 +9,7 @@
 <table border=0 width=100%>
 <tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -30,17 +30,17 @@ documentation.
 <p>
 <a href="overview.html">API overview</a><br>
 <a href="reference.html">API reference</a><br>
-<a href="example.html">Example code</a><br>
+<a href="exampleindex.html">Code Examples</a><br>
 
 <br><br>
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2002 Xiph.org</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
 </tr><tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
index aa226f1..173a786 100644 (file)
@@ -9,7 +9,7 @@
 <table border=0 width=100%>
 <tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -88,11 +88,11 @@ Finish opening a file after a successful call to <a href="ov_test.html">ov_test(
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2002 Xiph.org</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
 </tr><tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
index bcfd257..222a425 100644 (file)
@@ -9,7 +9,7 @@
 <table border=0 width=100%>
 <tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -59,11 +59,11 @@ functions.</dd>
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2002 Xiph.org</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
 </tr><tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
index c35c8ca..eb6baa6 100644 (file)
@@ -9,7 +9,7 @@
 <table border=0 width=100%>
 <tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -52,11 +52,11 @@ functions.
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2002 Xiph.org</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
 </tr><tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
index 7742921..8a01daf 100644 (file)
@@ -9,7 +9,7 @@
 <table border=0 width=100%>
 <tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -65,11 +65,11 @@ functions.<p>
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2002 Xiph.org</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
 </tr><tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
index 82aad05..d5b048e 100644 (file)
@@ -9,7 +9,7 @@
 <table border=0 width=100%>
 <tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -51,11 +51,11 @@ functions.  After <tt>ov_clear</tt> has been called, the structure is deallocate
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2002 Xiph.org</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
 </tr><tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
index 062e8e3..28aaf31 100644 (file)
@@ -10,7 +10,7 @@
 <table border=0 width=100%>
 <tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -53,11 +53,11 @@ functions.</dd>
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2002 Xiph.org</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
 </tr><tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
diff --git a/doc/vorbisfile/ov_crosslap.html b/doc/vorbisfile/ov_crosslap.html
new file mode 100644 (file)
index 0000000..768c700
--- /dev/null
@@ -0,0 +1,100 @@
+<html>
+
+<head>
+<title>Vorbisfile - function - ov_crosslap</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>Vorbisfile documentation</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
+</tr>
+</table>
+
+<h1>ov_crosslap()</h1>
+
+<p><i>declared in "vorbis/vorbisfile.h";</i></p>
+
+<p>ov_crosslap overlaps and blends the boundary at a transition
+between two seperate streams represented by seperate <a
+href="OggVorbis_File.html">OggVorbis_File</a> structures.  For lapping
+transitions due to seeking within a single stream represented by a
+single <a href="OggVorbis_File.html">OggVorbis_File</a> structure,
+consider using the lapping versions of the <a
+href="seeking.html">vorbisfile seeking functions</a> instead.
+
+<p>ov_crosslap is used between the last (usually ov_read) call on
+the old stream and the first ov_read from the new stream.  Any
+desired positioning of the new stream must occur before the call to
+ov_crosslap() as a seek dumps all prior lapping information from a
+stream's decode state.  Crosslapping does not introduce or remove any
+extraneous samples; positioning works exactly as if ov_crosslap was not
+called.
+
+<p>ov_crosslap will lap between streams of differing numbers of
+channels. Any extra channels from the old stream are ignored; playback
+of these channels simply ends. Extra channels in the new stream are
+lapped from silence.  ov_crosslap will also lap between streams links
+of differing sample rates.  In this case, the sample rates are ignored
+(no implicit resampling is done to match playback). It is up to the
+application developer to decide if this behavior makes any sense in a
+given context; in practical use, these default behaviors perform
+sensibly.
+
+<br><br>
+<table border=0 color=black cellspacing=0 cellpadding=7>
+<tr bgcolor=#cccccc>
+       <td>
+<pre><b>
+long ov_crosslap(<a href="OggVorbis_File.html">OggVorbis_File</a> *old, <a href="OggVorbis_File.html">OggVorbis_File</a> *new);
+
+</b></pre>
+       </td>
+</tr>
+</table>
+
+<h3>Parameters</h3>
+<dl>
+<dt><i>old</i></dt>
+<dd>A pointer to the OggVorbis_File structure representing the origin stream from which to transition playback.</dd>
+
+<dt><i>new</i></dt>
+<dd>A pointer to the OggVorbis_File structure representing the stream with which playback continues.</dd>
+</dl>
+
+
+<h3>Return Values</h3>
+<blockquote>
+<dl>
+<dt>OV_EINVAL</dt>
+  <dd>crosslap called with an OggVorbis_File structure that isn't open.</dd>
+<dt>OV_EFAULT</dt>
+  <dd>internal error; implies a library bug or external heap corruption.</dd>
+<dt>OV_EREAD</dt>
+  <dd> A read from media returned an error.</dd>
+<dt>OV_EOF</dt>
+  <dd>indicates stream <tt>vf2</tt> is at end of file, or that <tt>vf1</tt> is at end of file immediately after a seek (making crosslap impossible as there's no preceeding decode state to crosslap).</dd>
+<dt><i>0</i></dt>
+  <dd>success.</dd>
+</dl>
+</blockquote>
+
+
+
+<br><br>
+<hr noshade>
+<table border=0 width=100%>
+<tr valign=top>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
+<td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
+</tr><tr>
+<td><p class=tiny>Vorbisfile documentation</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
+</tr>
+</table>
+
+</body>
+
+</html>
index 51976a0..c8dd9ef 100644 (file)
@@ -9,7 +9,7 @@
 <table border=0 width=100%>
 <tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -51,11 +51,11 @@ functions. </dd>
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2002 Xiph.org</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
 </tr><tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
index 93a096b..ba53031 100644 (file)
@@ -9,7 +9,7 @@
 <table border=0 width=100%>
 <tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -102,11 +102,11 @@ example).  See <a href="threads.html">Thread Safety</a> for other information on
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2002 Xiph.org</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
 </tr><tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
index c6455a9..a823f2e 100644 (file)
@@ -9,7 +9,7 @@
 <table border=0 width=100%>
 <tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -97,11 +97,11 @@ See <a href="threads.html">Thread Safety</a> for other information on using libv
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2002 Xiph.org</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
 </tr><tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
index d662966..3c55469 100644 (file)
@@ -9,7 +9,7 @@
 <table border=0 width=100%>
 <tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -46,33 +46,35 @@ functions.</dd>
 
 <h3>Return Values</h3>
 <blockquote>
+<ul>
 <li>0 for success</li>
 
 <li>
-nonzero indicates failure, described by several error codes:</li>
-<ul>
-<li>OV_ENOSEEK - Bitstream is not seekable.
-</li>
-<li>OV_EINVAL - Invalid argument value.
-</li>
-<li>OV_EREAD - A read from media returned an error.
-</li>
-<li>OV_EFAULT - Internal logic fault; indicates a bug or heap/stack 
+nonzero indicates failure, described by several error codes:
+  <ul>
+  <li>OV_ENOSEEK - Bitstream is not seekable.
+  </li>
+  <li>OV_EINVAL - Invalid argument value; possibly called with an OggVorbis_File structure that isn't open.
+  </li>
+  <li>OV_EREAD - A read from media returned an error.
+  </li>
+  <li>OV_EFAULT - Internal logic fault; indicates a bug or heap/stack 
                corruption.
-</li>
-<li>OV_EBADLINK - Invalid stream section supplied to libvorbisfile, or the requested link is corrupt. 
-</li>
+  </li>
+  <li>OV_EBADLINK - Invalid stream section supplied to libvorbisfile, or the requested link is corrupt. 
+  </li>
+  </ul></li>
 </ul></blockquote>
 
 <br><br>
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2002 Xiph.org</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
 </tr><tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
diff --git a/doc/vorbisfile/ov_pcm_seek_lap.html b/doc/vorbisfile/ov_pcm_seek_lap.html
new file mode 100644 (file)
index 0000000..124a7f9
--- /dev/null
@@ -0,0 +1,103 @@
+<html>
+
+<head>
+<title>Vorbisfile - function - ov_pcm_seek_lap</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>Vorbisfile documentation</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
+</tr>
+</table>
+
+<h1>ov_pcm_seek_lap</h1>
+
+<p><i>declared in "vorbis/vorbisfile.h";</i></p>
+
+<p>Seeks to the offset specified (in pcm samples) within the physical bitstream.  This variant of <a
+href="ov_pcm_seek.html">ov_pcm_seek</a> also automatically
+crosslaps the transition from the previous playback position into the
+new playback position in order to eliminate clicking and boundary
+discontinuities.  Otherwise, usage and behavior is identical to <a
+href="ov_pcm_seek.html">ov_pcm_seek</a>.
+
+<p>ov_pcm_seek_lap also updates everything needed within the decoder,
+so you can immediately call <a href="ov_read.html">ov_read()</a> and
+get data from the newly seeked to position.
+
+<p>ov_pcm_seek_lap will lap between logical stream links of differing
+numbers of channels. Any extra channels from the origin of the seek
+are ignored; playback of these channels simply ends. Extra channels at
+the destination are lapped from silence.  ov_pcm_seek_lap will also
+lap between logical stream links of differing sample rates.  In this
+case, the sample rates are ignored (no implicit resampling is done to
+match playback). It is up to the application developer to decide if
+this behavior makes any sense in a given context; in practical use,
+these default behaviors perform sensibly.
+
+<p>This function only works for seekable streams.
+
+<br><br>
+<table border=0 color=black cellspacing=0 cellpadding=7>
+<tr bgcolor=#cccccc>
+       <td>
+<pre><b>
+int ov_pcm_seek_lap(OggVorbis_File *vf,ogg_int64_t pos);
+</b></pre>
+       </td>
+</tr>
+</table>
+
+<h3>Parameters</h3>
+<dl>
+<dt><i>vf</i></dt>
+<dd>A pointer to the OggVorbis_File structure--this is used for ALL the externally visible libvorbisfile
+functions.</dd>
+<dt><i>pos</i></dt>
+<dd>Position in pcm samples to seek to in the bitstream.</dd>
+</dl>
+
+
+<h3>Return Values</h3>
+<blockquote>
+<ul>
+<li>0 for success</li>
+
+<li>
+nonzero indicates failure, described by several error codes:
+  <ul>
+  <li>OV_ENOSEEK - Bitstream is not seekable.
+  </li>
+  <li>OV_EINVAL - Invalid argument value; possibly called with an OggVorbis_File structure that isn't open.
+  </li>
+  <li>OV_EREAD - A read from media returned an error.
+  </li>
+  <li>OV_EFAULT - Internal logic fault; indicates a bug or heap/stack 
+               corruption.
+  </li>
+  <li>OV_EOF - Indicates stream is at end of file immediately after a seek 
+  (making crosslap impossible as there's no preceeding decode state to crosslap).
+  </li>
+  <li>OV_EBADLINK - Invalid stream section supplied to libvorbisfile, or the requested link is corrupt. 
+  </li>
+  </ul></li>
+</ul></blockquote>
+
+<br><br>
+<hr noshade>
+<table border=0 width=100%>
+<tr valign=top>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
+<td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
+</tr><tr>
+<td><p class=tiny>Vorbisfile documentation</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
+</tr>
+</table>
+
+</body>
+
+</html>
index 8f53316..5dbda3c 100644 (file)
@@ -9,7 +9,7 @@
 <table border=0 width=100%>
 <tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -47,34 +47,35 @@ functions.</dd>
 
 <h3>Return Values</h3>
 <blockquote>
-<li>
-0 for success</li>
+<ul>
+<li>0 for success</li>
 
 <li>
-nonzero indicates failure, described by several error codes:</li>
-<ul>
-<li>OV_ENOSEEK - Bitstream is not seekable.
-</li>
-<li>OV_EINVAL - Invalid argument value.
-</li>
-<li>OV_EREAD - A read from media returned an error.
-</li>
-<li>OV_EFAULT - Internal logic fault; indicates a bug or heap/stack 
+nonzero indicates failure, described by several error codes:
+  <ul>
+  <li>OV_ENOSEEK - Bitstream is not seekable.
+  </li>
+  <li>OV_EINVAL - Invalid argument value; possibly called with an OggVorbis_File structure that isn't open.
+  </li>
+  <li>OV_EREAD - A read from media returned an error.
+  </li>
+  <li>OV_EFAULT - Internal logic fault; indicates a bug or heap/stack 
                corruption.
-</li>
-<li>OV_EBADLINK - Invalid stream section supplied to libvorbisfile, or the requested link is corrupt. 
-</li>
+  </li>
+  <li>OV_EBADLINK - Invalid stream section supplied to libvorbisfile, or the requested link is corrupt. 
+  </li>
+  </ul></li>
 </ul></blockquote>
 
 <br><br>
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2002 Xiph.org</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
 </tr><tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
diff --git a/doc/vorbisfile/ov_pcm_seek_page_lap.html b/doc/vorbisfile/ov_pcm_seek_page_lap.html
new file mode 100644 (file)
index 0000000..dd81db7
--- /dev/null
@@ -0,0 +1,112 @@
+<html>
+
+<head>
+<title>Vorbisfile - function - ov_pcm_seek_page_lap</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>Vorbisfile documentation</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
+</tr>
+</table>
+
+<h1>ov_pcm_seek_page_lap</h1>
+
+<p><i>declared in "vorbis/vorbisfile.h";</i></p>
+
+<p>Seeks to the closest page preceding the specified location (in pcm
+samples) within the physical bitstream.  This variant of <a
+href="ov_pcm_seek_page.html">ov_pcm_seek_page</a> also automatically
+crosslaps the transition from the previous playback position into the
+new playback position in order to eliminate clicking and boundary
+discontinuities.  Otherwise, usage and behavior is identical to <a
+href="ov_pcm_seek_page.html">ov_pcm_seek_page</a>.
+
+<p>This function is faster than <a
+href="ov_pcm_seek_lap.html">ov_pcm_seek_lap</a> because the function
+can begin decoding at a page boundary rather than seeking through any
+remaining samples before the specified location.  However, it is less
+accurate.
+
+<p>ov_pcm_seek_page_lap also updates everything needed within the
+decoder, so you can immediately call <a
+href="ov_read.html">ov_read()</a> and get data from the newly seeked
+to position.
+
+<p>ov_pcm_seek_page_lap will lap between logical stream links of
+differing numbers of channels. Any extra channels from the origin of
+the seek are ignored; playback of these channels simply ends. Extra
+channels at the destination are lapped from silence.
+ov_pcm_seek_page_lap will also lap between logical stream links of
+differing sample rates.  In this case, the sample rates are ignored
+(no implicit resampling is done to match playback). It is up to the
+application developer to decide if this behavior makes any sense in a
+given context; in practical use, these default behaviors perform
+sensibly.
+
+<p>This function only works for seekable streams.
+
+<br><br>
+<table border=0 color=black cellspacing=0 cellpadding=7>
+<tr bgcolor=#cccccc>
+       <td>
+<pre><b>
+int ov_pcm_seek_page_lap(OggVorbis_File *vf,ogg_int64_t pos);
+</b></pre>
+       </td>
+</tr>
+</table>
+
+<h3>Parameters</h3>
+<dl>
+<dt><i>vf</i></dt>
+<dd>A pointer to the OggVorbis_File structure--this is used for ALL the externally visible libvorbisfile
+functions.</dd>
+<dt><i>pos</i></dt>
+<dd>Position in pcm samples to seek to in the bitstream.</dd>
+</dl>
+
+
+<h3>Return Values</h3>
+<blockquote>
+<ul>
+<li>0 for success</li>
+
+<li>
+nonzero indicates failure, described by several error codes:
+  <ul>
+  <li>OV_ENOSEEK - Bitstream is not seekable.
+  </li>
+  <li>OV_EINVAL - Invalid argument value; possibly called with an OggVorbis_File structure that isn't open.
+  </li>
+  <li>OV_EREAD - A read from media returned an error.
+  </li>
+  <li>OV_EFAULT - Internal logic fault; indicates a bug or heap/stack 
+               corruption.
+  </li>
+  <li>OV_EOF - Indicates stream is at end of file immediately after a seek 
+  (making crosslap impossible as there's no preceeding decode state to crosslap).
+  </li>
+  <li>OV_EBADLINK - Invalid stream section supplied to libvorbisfile, or the requested link is corrupt. 
+  </li>
+  </ul></li>
+</ul></blockquote>
+
+<br><br>
+<hr noshade>
+<table border=0 width=100%>
+<tr valign=top>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
+<td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
+</tr><tr>
+<td><p class=tiny>Vorbisfile documentation</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
+</tr>
+</table>
+
+</body>
+
+</html>
index e4768ce..1d8961f 100644 (file)
@@ -9,7 +9,7 @@
 <table border=0 width=100%>
 <tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -50,11 +50,11 @@ functions.</dd>
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2002 Xiph.org</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
 </tr><tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
index 9cab163..02e35ca 100644 (file)
@@ -9,7 +9,7 @@
 <table border=0 width=100%>
 <tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -54,11 +54,11 @@ total length in pcm samples of content if i=-1.</li>
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2002 Xiph.org</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
 </tr><tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
index 882b7a2..1e5fbbe 100644 (file)
@@ -9,7 +9,7 @@
 <table border=0 width=100%>
 <tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -45,28 +45,36 @@ functions.</dd>
 
 <h3>Return Values</h3>
 <blockquote>
-<li>0 indicates success</li>
-<li>nonzero indicates failure, described by several error codes:</li>
 <ul>
-<li>OV_ENOSEEK - Bitstream is not seekable.
-</li>
-<li>OV_EINVAL - Invalid argument value.
-</li>
-<li>OV_EBADLINK - Invalid stream section supplied to libvorbisfile, or the requested link is corrupt. 
-</li>
-</ul>
-</blockquote>
+<li>0 for success</li>
+
+<li>
+nonzero indicates failure, described by several error codes:
+  <ul>
+  <li>OV_ENOSEEK - Bitstream is not seekable.
+  </li>
+  <li>OV_EINVAL - Invalid argument value; possibly called with an OggVorbis_File structure that isn't open.
+  </li>
+  <li>OV_EREAD - A read from media returned an error.
+  </li>
+  <li>OV_EFAULT - Internal logic fault; indicates a bug or heap/stack 
+               corruption.
+  </li>
+  <li>OV_EBADLINK - Invalid stream section supplied to libvorbisfile, or the requested link is corrupt. 
+  </li>
+  </ul></li>
+</ul></blockquote>
 <p>
 
 <br><br>
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2002 Xiph.org</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
 </tr><tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
diff --git a/doc/vorbisfile/ov_raw_seek_lap.html b/doc/vorbisfile/ov_raw_seek_lap.html
new file mode 100644 (file)
index 0000000..56c4953
--- /dev/null
@@ -0,0 +1,110 @@
+<html>
+
+<head>
+<title>Vorbisfile - function - ov_raw_seek_lap</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>Vorbisfile documentation</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
+</tr>
+</table>
+
+<h1>ov_raw_seek_lap</h1>
+
+<p><i>declared in "vorbis/vorbisfile.h";</i></p>
+
+<p>Seeks to the offset specified (in compressed raw bytes) within the
+physical bitstream.  This variant of <a
+href="ov_raw_seek.html">ov_raw_seek</a> also automatically crosslaps
+the transition from the previous playback position into the new
+playback position in order to eliminate clicking and boundary
+discontinuities.  Otherwise, usage and behavior is identical to <a
+href="ov_raw_seek.html">ov_raw_seek</a>.
+
+<p>When seek speed is a priority, but crosslapping is still desired,
+this is the best seek funtion to use.
+
+<p>ov_raw_seek_lap also updates everything needed within the decoder,
+so you can immediately call <a href="ov_read.html">ov_read()</a> and
+get data from the newly seeked to position.
+
+<p>ov_raw_seek_lap will lap between logical stream links of differing
+numbers of channels. Any extra channels from the origin of the seek
+are ignored; playback of these channels simply ends. Extra channels at
+the destination are lapped from silence.  ov_raw_seek_lap will also
+lap between logical stream links of differing sample rates.  In this
+case, the sample rates are ignored (no implicit resampling is done to
+match playback). It is up to the application developer to decide if
+this behavior makes any sense in a given context; in practical use,
+these default behaviors perform sensibly.
+
+<p>This function only works for seekable streams.
+
+
+<br><br>
+<table border=0 color=black cellspacing=0 cellpadding=7>
+<tr bgcolor=#cccccc>
+       <td>
+<pre><b>
+int ov_raw_seek_lap(OggVorbis_File *vf,long pos);
+</b></pre>
+       </td>
+</tr>
+</table>
+
+<h3>Parameters</h3>
+<dl>
+<dt><i>vf</i></dt>
+<dd>A pointer to the OggVorbis_File structure--this is used for ALL the externally visible libvorbisfile
+functions.</dd>
+<dt><i>pos</i></dt>
+<dd>Position in compressed bytes to seek to in the bitstream.</dd>
+</dl>
+
+
+<h3>Return Values</h3>
+<blockquote>
+<ul>
+<li>0 for success</li>
+
+<li>
+nonzero indicates failure, described by several error codes:
+  <ul>
+  <li>OV_ENOSEEK - Bitstream is not seekable.
+  </li>
+  <li>OV_EINVAL - Invalid argument value; possibly called with an OggVorbis_File structure that isn't open.
+  </li>
+  <li>OV_EREAD - A read from media returned an error.
+  </li>
+  <li>OV_EFAULT - Internal logic fault; indicates a bug or heap/stack 
+               corruption.
+  </li>
+  <li>OV_EOF - Indicates stream is at end of file immediately after a seek 
+  (making crosslap impossible as there's no preceeding decode state to crosslap).
+  </li>
+  <li>OV_EBADLINK - Invalid stream section supplied to libvorbisfile, or the requested link is corrupt. 
+  </li>
+  </ul></li>
+</ul></blockquote>
+
+<p>
+
+<br><br>
+<hr noshade>
+<table border=0 width=100%>
+<tr valign=top>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
+<td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
+</tr><tr>
+<td><p class=tiny>Vorbisfile documentation</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
+</tr>
+</table>
+
+</body>
+
+</html>
index 780efc5..ed23510 100644 (file)
@@ -9,7 +9,7 @@
 <table border=0 width=100%>
 <tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -50,11 +50,11 @@ functions.</dd>
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2002 Xiph.org</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
 </tr><tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
index 7a5cee3..dfb9f97 100644 (file)
@@ -9,7 +9,7 @@
 <table border=0 width=100%>
 <tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -55,11 +55,11 @@ total length in compressed bytes of content if i=-1.</li>
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2002 Xiph.org</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
 </tr><tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
index 1673ea8..e545f47 100644 (file)
@@ -9,7 +9,7 @@
 <table border=0 width=100%>
 <tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -110,11 +110,11 @@ little-endian samples.
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2002 Xiph.org</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
 </tr><tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
index 0300adf..5dc7d57 100644 (file)
@@ -8,8 +8,8 @@
 <body bgcolor=white text=black link="#5555ff" alink="#5555ff" vlink="#5555ff">
 <table border=0 width=100%>
 <tr>
-<td><p class=tiny>vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td><p class=tiny>Vorbisfile documentation</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -88,8 +88,8 @@ This decodes up to 1024 float samples.
 <td><p class=tiny>copyright &copy; 2002 vorbis team</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/index.html">Ogg Vorbis</a><br><a href="mailto:team@vorbis.org">team@vorbis.org</a></p></td>
 </tr><tr>
-<td><p class=tiny>vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td><p class=tiny>Vorbisfile documentation</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
index 3db22b1..b8f8c91 100644 (file)
@@ -9,7 +9,7 @@
 <table border=0 width=100%>
 <tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -50,11 +50,11 @@ functions.</dd>
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2002 Xiph.org</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
 </tr><tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
index 15d920d..a5f0f0c 100644 (file)
@@ -9,7 +9,7 @@
 <table border=0 width=100%>
 <tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -54,11 +54,11 @@ functions.</dd>
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2002 Xiph.org</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
 </tr><tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
index c04c4cf..997edcc 100644 (file)
@@ -9,7 +9,7 @@
 <table border=0 width=100%>
 <tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -51,11 +51,11 @@ functions. </dd>
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2002 Xiph.org</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
 </tr><tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
index 8c09e9c..9aa72d1 100644 (file)
@@ -9,7 +9,7 @@
 <table border=0 width=100%>
 <tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -76,11 +76,11 @@ should contain the length (in bytes) of the buffer.  Used together with <tt>init
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2002 Xiph.org</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
 </tr><tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
index 90f4a93..edf798b 100644 (file)
@@ -9,7 +9,7 @@
 <table border=0 width=100%>
 <tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -77,11 +77,11 @@ should contain the length (in bytes) of the buffer.  Used together with <tt>init
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2002 Xiph.org</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
 </tr><tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
index 7479a08..c0a320c 100644 (file)
@@ -9,7 +9,7 @@
 <table border=0 width=100%>
 <tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -62,11 +62,11 @@ struct should be passed to all the libvorbisfile functions.</dd>
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2002 Xiph.org</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
 </tr><tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
index 0a42055..a4d4071 100644 (file)
@@ -9,7 +9,7 @@
 <table border=0 width=100%>
 <tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -45,23 +45,35 @@ int ov_time_seek(<a href="OggVorbis_File.html">OggVorbis_File</a> *vf, double s)
 
 <h3>Return Values</h3>
 <blockquote>
-<li>
-0 for success</li>
+<ul>
+<li>0 for success</li>
 
 <li>
-Nonzero for failure</li>
-</blockquote>
-
+nonzero indicates failure, described by several error codes:
+  <ul>
+  <li>OV_ENOSEEK - Bitstream is not seekable.
+  </li>
+  <li>OV_EINVAL - Invalid argument value; possibly called with an OggVorbis_File structure that isn't open.
+  </li>
+  <li>OV_EREAD - A read from media returned an error.
+  </li>
+  <li>OV_EFAULT - Internal logic fault; indicates a bug or heap/stack 
+               corruption.
+  </li>
+  <li>OV_EBADLINK - Invalid stream section supplied to libvorbisfile, or the requested link is corrupt. 
+  </li>
+  </ul></li>
+</ul></blockquote>
 
 <br><br>
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2002 Xiph.org</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
 </tr><tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
diff --git a/doc/vorbisfile/ov_time_seek_lap.html b/doc/vorbisfile/ov_time_seek_lap.html
new file mode 100644 (file)
index 0000000..fbb6290
--- /dev/null
@@ -0,0 +1,105 @@
+<html>
+
+<head>
+<title>Vorbisfile - function - ov_time_seek_lap</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>Vorbisfile documentation</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
+</tr>
+</table>
+
+<h1>ov_time_seek_lap</h1>
+
+<p><i>declared in "vorbis/vorbisfile.h";</i></p>
+
+<p>For seekable
+streams, ov_time_seek_lap seeks to the given time. This variant of <a
+href="ov_time_seek.html">ov_time_seek</a> also automatically
+crosslaps the transition from the previous playback position into the
+new playback position in order to eliminate clicking and boundary
+discontinuities.  Otherwise, usage and behavior is identical to <a
+href="ov_time_seek.html">ov_time_seek</a>.
+
+<p>ov_time_seek_lap also updates everything needed within the decoder,
+so you can immediately call <a href="ov_read.html">ov_read()</a> and
+get data from the newly seeked to position.
+
+<p>ov_time_seek_lap will lap between logical stream links of differing
+numbers of channels. Any extra channels from the origin of the seek
+are ignored; playback of these channels simply ends. Extra channels at
+the destination are lapped from silence.  ov_time_seek_lap will also
+lap between logical stream links of differing sample rates.  In this
+case, the sample rates are ignored (no implicit resampling is done to
+match playback). It is up to the application developer to decide if
+this behavior makes any sense in a given context; in practical use,
+these default behaviors perform sensibly.
+
+<p> This function does not work for unseekable streams.
+
+
+<br><br>
+<table border=0 color=black cellspacing=0 cellpadding=7>
+<tr bgcolor=#cccccc>
+       <td>
+<pre><b>
+int ov_time_seek_lap(<a href="OggVorbis_File.html">OggVorbis_File</a> *vf, double s);
+</b></pre>
+       </td>
+</tr>
+</table>
+
+<h3>Parameters</h3>
+<dl>
+<dt><i>vf</i></dt>
+<dd>Pointer to our already opened and initialized OggVorbis_File structure.</dd>
+<dt><i>ms</i></dt>
+<dd>Location to seek to within the file, specified in seconds.</dd>
+</dl>
+
+
+<h3>Return Values</h3>
+<blockquote>
+<ul>
+<li>0 for success</li>
+
+<li>
+nonzero indicates failure, described by several error codes:
+  <ul>
+  <li>OV_ENOSEEK - Bitstream is not seekable.
+  </li>
+  <li>OV_EINVAL - Invalid argument value; possibly called with an OggVorbis_File structure that isn't open.
+  </li>
+  <li>OV_EREAD - A read from media returned an error.
+  </li>
+  <li>OV_EFAULT - Internal logic fault; indicates a bug or heap/stack 
+               corruption.
+  </li>
+  <li>OV_EOF - Indicates stream is at end of file immediately after a seek 
+  (making crosslap impossible as there's no preceeding decode state to crosslap).
+  </li>
+  <li>OV_EBADLINK - Invalid stream section supplied to libvorbisfile, or the requested link is corrupt. 
+  </li>
+  </ul></li>
+</ul></blockquote>
+
+
+<br><br>
+<hr noshade>
+<table border=0 width=100%>
+<tr valign=top>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
+<td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
+</tr><tr>
+<td><p class=tiny>Vorbisfile documentation</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
+</tr>
+</table>
+
+</body>
+
+</html>
index 4a5a24d..8790422 100644 (file)
@@ -9,7 +9,7 @@
 <table border=0 width=100%>
 <tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -46,35 +46,35 @@ int ov_time_seek_page(<a href="OggVorbis_File.html">OggVorbis_File</a> *vf, doub
 
 <h3>Return Values</h3>
 <blockquote>
-<li>
-0 for success</li>
+<ul>
+<li>0 for success</li>
 
 <li>
-nonzero indicates failure, described by several error codes:</li>
-<ul>
-<li>OV_ENOSEEK - Bitstream is not seekable.
-</li>
-<li>OV_EINVAL - Invalid argument value.
-</li>
-<li>OV_EREAD - A read from media returned an error.
-</li>
-<li>OV_EFAULT - Internal logic fault; indicates a bug or heap/stack 
+nonzero indicates failure, described by several error codes:
+  <ul>
+  <li>OV_ENOSEEK - Bitstream is not seekable.
+  </li>
+  <li>OV_EINVAL - Invalid argument value; possibly called with an OggVorbis_File structure that isn't open.
+  </li>
+  <li>OV_EREAD - A read from media returned an error.
+  </li>
+  <li>OV_EFAULT - Internal logic fault; indicates a bug or heap/stack 
                corruption.
-</li>
-<li>OV_EBADLINK - Invalid stream section supplied to libvorbisfile, or the requested link is corrupt. 
-</li>
+  </li>
+  <li>OV_EBADLINK - Invalid stream section supplied to libvorbisfile, or the requested link is corrupt. 
+  </li>
+  </ul></li>
 </ul></blockquote>
 
-
 <br><br>
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2002 Xiph.org</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
 </tr><tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
diff --git a/doc/vorbisfile/ov_time_seek_page_lap.html b/doc/vorbisfile/ov_time_seek_page_lap.html
new file mode 100644 (file)
index 0000000..003db33
--- /dev/null
@@ -0,0 +1,112 @@
+<html>
+
+<head>
+<title>Vorbisfile - function - ov_time_seek_page_lap</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>Vorbisfile documentation</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
+</tr>
+</table>
+
+<h1>ov_time_seek_page_lap</h1>
+
+<p><i>declared in "vorbis/vorbisfile.h";</i></p>
+
+<p>For seekable streams, ov_time_seek_page_lap seeks to the closest
+full page preceeding the given time.  This variant of <a
+href="ov_time_seek_page.html">ov_time_seek_page</a> also automatically
+crosslaps the transition from the previous playback position into the
+new playback position in order to eliminate clicking and boundary
+discontinuities.  Otherwise, usage and behavior is identical to <a
+href="ov_time_seek_page.html">ov_time_seek_page</a>.
+
+<p>ov_time_seek_page_lap is faster than <a
+href="ov_time_seek_lap.html">ov_time_seek_lap</a> because it doesn't
+seek through the last few samples to reach an exact time, but it is
+also less accurate.  This should be used when speed is important, but
+crosslapping is still desired.
+
+<p>ov_time_seek_page_lap also updates everything needed within the
+decoder, so you can immediately call <a
+href="ov_read.html">ov_read()</a> and get data from the newly seeked
+to position.
+
+<p>ov_time_seek_page_lap will lap between logical stream links of
+differing numbers of channels. Any extra channels from the origin of
+the seek are ignored; playback of these channels simply ends. Extra
+channels at the destination are lapped from silence.
+ov_time_seek_page_lap will also lap between logical stream links of
+differing sample rates.  In this case, the sample rates are ignored
+(no implicit resampling is done to match playback). It is up to the
+application developer to decide if this behavior makes any sense in a
+given context; in practical use, these default behaviors perform
+sensibly.
+
+<p>This function does not work for unseekable streams.
+
+<br><br>
+<table border=0 color=black cellspacing=0 cellpadding=7>
+<tr bgcolor=#cccccc>
+       <td>
+<pre><b>
+int ov_time_seek_page_lap(<a href="OggVorbis_File.html">OggVorbis_File</a> *vf, double s);
+</b></pre>
+       </td>
+</tr>
+</table>
+
+<h3>Parameters</h3>
+<dl>
+<dt><i>vf</i></dt>
+<dd>Pointer to our already opened and initialized OggVorbis_File structure.</dd>
+<dt><i>ms</i></dt>
+<dd>Location to seek to within the file, specified in seconds.</dd>
+</dl>
+
+
+<h3>Return Values</h3>
+<blockquote>
+<ul>
+<li>0 for success</li>
+
+<li>
+nonzero indicates failure, described by several error codes:
+  <ul>
+  <li>OV_ENOSEEK - Bitstream is not seekable.
+  </li>
+  <li>OV_EINVAL - Invalid argument value; possibly called with an OggVorbis_File structure that isn't open.
+  </li>
+  <li>OV_EREAD - A read from media returned an error.
+  </li>
+  <li>OV_EFAULT - Internal logic fault; indicates a bug or heap/stack 
+               corruption.
+  </li>
+  <li>OV_EOF - Indicates stream is at end of file immediately after a seek 
+  (making crosslap impossible as there's no preceeding decode state to crosslap).
+  </li>
+  <li>OV_EBADLINK - Invalid stream section supplied to libvorbisfile, or the requested link is corrupt. 
+  </li>
+  </ul></li>
+</ul></blockquote>
+
+
+<br><br>
+<hr noshade>
+<table border=0 width=100%>
+<tr valign=top>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
+<td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
+</tr><tr>
+<td><p class=tiny>Vorbisfile documentation</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
+</tr>
+</table>
+
+</body>
+
+</html>
index fc2179d..e2c0af5 100644 (file)
@@ -9,7 +9,7 @@
 <table border=0 width=100%>
 <tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -50,11 +50,11 @@ functions.</dd>
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2002 Xiph.org</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
 </tr><tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
index a4c904e..a0dcae1 100644 (file)
@@ -9,7 +9,7 @@
 <table border=0 width=100%>
 <tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -54,11 +54,11 @@ functions.</dd>
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2002 Xiph.org</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
 </tr><tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
index bc1a790..8fe77e9 100644 (file)
@@ -9,7 +9,7 @@
 <table border=0 width=100%>
 <tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -38,6 +38,7 @@ the above general overview:
 <li><p><a href="threads.html">Threading and thread safety</a>
 <li><p><a href="callbacks.html">Using [non stdio] custom stream I/O
 via callbacks</a>
+<li><p><a href="crosslap.html">Sample crosslapping</a>
 </ul>
 <p>
 
@@ -46,11 +47,11 @@ via callbacks</a>
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2002 Xiph.org</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
 </tr><tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
index 6ee1ee2..4fda395 100644 (file)
@@ -9,7 +9,7 @@
 <table border=0 width=100%>
 <tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
 <br>
 <b>Decoding</b><br>
 <a href="ov_read.html">ov_read()</a><br>
+<a href="ov_crosslap.html">ov_crosslap()</a><br>
 <br>
 <b>Seeking</b><br>
 <a href="ov_raw_seek.html">ov_raw_seek()</a><br>
 <a href="ov_pcm_seek.html">ov_pcm_seek()</a><br>
 <a href="ov_time_seek.html">ov_time_seek()</a><br>
 <a href="ov_pcm_seek_page.html">ov_pcm_seek_page()</a><br>
-<a href="ov_time_seek_page.html">ov_time_seek_page()</a><br>
+<a href="ov_time_seek_page.html">ov_time_seek_page()</a><p>
+<a href="ov_raw_seek_lap.html">ov_raw_seek_lap()</a><br>
+<a href="ov_pcm_seek_lap.html">ov_pcm_seek_lap()</a><br>
+<a href="ov_time_seek_lap.html">ov_time_seek_lap()</a><br>
+<a href="ov_pcm_seek_page_lap.html">ov_pcm_seek_page_lap()</a><br>
+<a href="ov_time_seek_page_lap.html">ov_time_seek_page_lap()</a><br>
 <br>
 <b>File Information</b><br>
 <a href="ov_bitrate.html">ov_bitrate()</a><br>
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2002 Xiph.org</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
 </tr><tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
index 4494413..8aa4691 100644 (file)
@@ -9,7 +9,7 @@
 <table border=0 width=100%>
 <tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -64,11 +64,11 @@ is normally automatic and this return code is for informational purposes only.</
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2002 Xiph.org</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
 </tr><tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
index 1c5e36b..664ddcd 100644 (file)
@@ -8,12 +8,12 @@
 <body bgcolor=white text=black link="#5555ff" alink="#5555ff" vlink="#5555ff">
 <table border=0 width=100%>
 <tr>
-<td><p class=tiny>vorbisfile documentation</p></td>
-<td align=right><p class=tiny>vorbisfile version 1.25 - 20000615</p></td>
+<td><p class=tiny>Vorbisfile documentation</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
-<h1>Example Code</h1>
+<h1>Example Code: seeking</h1>
 
 <p>
 The following is a run-through of the seeking example program supplied
@@ -38,7 +38,7 @@ First, relevant headers, including vorbis-specific "codec.h" and "vorbisfile.h"
 </tr>
 </table>
 
-<p>Inside main(), we declare our primary OggVorbis_File structure.  We also declare other helpful variables to track our progress within the file.
+<p>Inside main(), we declare our primary OggVorbis_File structure.  We also declare other helpful variables to track our progress within the file.
 <br><br>
 <table border=0 width=100% color=black cellspacing=0 cellpadding=7>
 <tr bgcolor=#cccccc>
@@ -126,11 +126,11 @@ distribution in <a href="seeking_test_c.html">seeking_test.c</a>.
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2000 vorbis team</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a><br><a href="mailto:team@vorbis.org">team@vorbis.org</a></p></td>
 </tr><tr>
-<td><p class=tiny>vorbisfile documentation</p></td>
-<td align=right><p class=tiny>vorbisfile version 1.25 - 20000615</p></td>
+<td><p class=tiny>Vorbisfile documentation</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
index a0adaef..e570d5a 100644 (file)
@@ -9,7 +9,7 @@
 <table border=0 width=100%>\r
 <tr>\r
 <td><p class=tiny>Vorbisfile documentation</p></td>\r
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>\r
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>\r
 </tr>\r
 </table>\r
 \r
@@ -26,7 +26,18 @@ be surprised if a file begins at a positive offset of several minutes
 or hours, such as would happen if a large stream (such as a concert\r
 recording) is chopped into multiple separate files.  Requesting to\r
 seek to a position before the beginning of such a file will seek to\r
-the position where audio begins.<p>\r
+the position where audio begins.\r
+\r
+<p>As of vorbisfile version 1.68, seeking also optionally provides\r
+automatic crosslapping to eliminate clicks and other discontinuity\r
+artifacts at seeking boundaries.  This fetaure is of particular\r
+interest to player and game developers implementing dynamic music and\r
+audio engines, or others looking for smooth transitions within a\r
+single sample or across multiple samples.<p>\r
+\r
+<p>Naturally, seeking is available only within a seekable file or\r
+stream.  Seeking functions will return <tt>OV_ENOSEEK</tt> on\r
+nonseekable files and streams.\r
 \r
 </ul>\r
 \r
@@ -55,17 +66,39 @@ the position where audio begins.<p>
        <td><a href="ov_time_seek_page.html">ov_time_seek_page</a></td>\r
        <td>This function seeks to the closest page preceding the specified time position in the bitstream</td>\r
 </tr>\r
+\r
+</tr>\r
+<tr valign=top>\r
+       <td><a href="ov_raw_seek_lap.html">ov_raw_seek_lap</a></td>\r
+       <td>This function seeks to a position specified in the compressed bitstream, specified in bytes.  The boundary between the old and new playback positions is crosslapped to eliminate discontinuities. </td>\r
+</tr>\r
+<tr valign=top>\r
+       <td><a href="ov_pcm_seek_lap.html">ov_pcm_seek_lap</a></td>\r
+       <td>This function seeks to a specific audio sample number, specified in pcm samples.  The boundary between the old and new playback positions is crosslapped to eliminate discontinuities.</td>\r
+</tr>\r
+<tr valign=top>\r
+       <td><a href="ov_pcm_seek_page_lap.html">ov_pcm_seek_page_lap</a></td>\r
+       <td>This function seeks to the closest page preceding the specified audio sample number, specified in pcm samples.  The boundary between the old and new playback positions is crosslapped to eliminate discontinuities.</td>\r
+</tr>\r
+<tr valign=top>\r
+       <td><a href="ov_time_seek_lap.html">ov_time_seek_lap</a></td>\r
+       <td>This function seeks to the specific time location in the bitstream, specified in seconds.  The boundary between the old and new playback positions is crosslapped to eliminate discontinuities. </td>\r
+</tr>\r
+<tr valign=top>\r
+       <td><a href="ov_time_seek_page_lap.html">ov_time_seek_page_lap</a></td>\r
+       <td>This function seeks to the closest page preceding the specified time position in the bitstream.  The boundary between the old and new playback positions is crosslapped to eliminate discontinuities.</td>\r
+</tr>\r
 </table>\r
 \r
 <br><br>\r
 <hr noshade>\r
 <table border=0 width=100%>\r
 <tr valign=top>\r
-<td><p class=tiny>copyright &copy; 2002 Xiph.org</p></td>\r
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>\r
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>\r
 </tr><tr>\r
 <td><p class=tiny>Vorbisfile documentation</p></td>\r
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>\r
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>\r
 </tr>\r
 </table>\r
 \r
index 0ffcf82..87c47e8 100644 (file)
@@ -8,8 +8,8 @@
 <body bgcolor=white text=black link="#5555ff" alink="#5555ff" vlink="#5555ff">
 <table border=0 width=100%>
 <tr>
-<td><p class=tiny>vorbisfile documentation</p></td>
-<td align=right><p class=tiny>vorbisfile version 1.25 - 20000615</p></td>
+<td><p class=tiny>Vorbisfile documentation</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -70,11 +70,11 @@ int main(){
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2000 vorbis team</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/index.html">Ogg Vorbis</a><br><a href="mailto:team@vorbis.org">team@vorbis.org</a></p></td>
 </tr><tr>
-<td><p class=tiny>vorbisfile documentation</p></td>
-<td align=right><p class=tiny>vorbisfile version 1.25 - 20000615</p></td>
+<td><p class=tiny>Vorbisfile documentation</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
index 0ffcf82..87c47e8 100644 (file)
@@ -8,8 +8,8 @@
 <body bgcolor=white text=black link="#5555ff" alink="#5555ff" vlink="#5555ff">
 <table border=0 width=100%>
 <tr>
-<td><p class=tiny>vorbisfile documentation</p></td>
-<td align=right><p class=tiny>vorbisfile version 1.25 - 20000615</p></td>
+<td><p class=tiny>Vorbisfile documentation</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -70,11 +70,11 @@ int main(){
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2000 vorbis team</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/index.html">Ogg Vorbis</a><br><a href="mailto:team@vorbis.org">team@vorbis.org</a></p></td>
 </tr><tr>
-<td><p class=tiny>vorbisfile documentation</p></td>
-<td align=right><p class=tiny>vorbisfile version 1.25 - 20000615</p></td>
+<td><p class=tiny>Vorbisfile documentation</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
index f10e836..f3acc82 100644 (file)
@@ -9,7 +9,7 @@
 <table border=0 width=100%>
 <tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -37,11 +37,11 @@ href="OggVorbis_File.html">OggVorbis_File</a> instance may be used safely from m
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2002 Xiph.org</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
 </tr><tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
index 578c185..cf36786 100644 (file)
@@ -9,7 +9,7 @@
 <table border=0 width=100%>
 <tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -57,11 +57,11 @@ or set to some reasonable default (usually 0).
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2002 Xiph.org</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
 </tr><tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
index 893e453..f97eedc 100644 (file)
@@ -9,7 +9,7 @@
 <table border=0 width=100%>
 <tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -67,11 +67,11 @@ The vorbis_info structure contains basic information about the audio in a vorbis
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2002 Xiph.org</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/">Ogg Vorbis</a></p></td>
 </tr><tr>
 <td><p class=tiny>Vorbisfile documentation</p></td>
-<td align=right><p class=tiny>libVorbisfile version 1.65 - 20020702</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
index dd15623..bdb9f61 100644 (file)
@@ -8,8 +8,8 @@
 <body bgcolor=white text=black link="#5555ff" alink="#5555ff" vlink="#5555ff">
 <table border=0 width=100%>
 <tr>
-<td><p class=tiny>vorbisfile documentation</p></td>
-<td align=right><p class=tiny>vorbisfile version 1.25 - 20000615</p></td>
+<td><p class=tiny>Vorbisfile documentation</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>
 
@@ -72,7 +72,7 @@ int main(int argc, char **argv){
         case we (the app) cares.  In this case, we don't. */
     } else {
       /* we don't bother dealing with sample rate changes, etc, but
-        you'll have to*/
+        you'll have to */
       fwrite(pcmout,1,ret,stdout);
     }
   }
@@ -93,11 +93,11 @@ int main(int argc, char **argv){
 <hr noshade>
 <table border=0 width=100%>
 <tr valign=top>
-<td><p class=tiny>copyright &copy; 2000 vorbis team</p></td>
+<td><p class=tiny>copyright &copy; 2003 Xiph.org</p></td>
 <td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/index.html">Ogg Vorbis</a><br><a href="mailto:team@vorbis.org">team@vorbis.org</a></p></td>
 </tr><tr>
-<td><p class=tiny>vorbisfile documentation</p></td>
-<td align=right><p class=tiny>vorbisfile version 1.25 - 20000615</p></td>
+<td><p class=tiny>Vorbisfile documentation</p></td>
+<td align=right><p class=tiny>vorbisfile version 1.68 - 20030307</p></td>
 </tr>
 </table>