112 lines
3.1 KiB
HTML
112 lines
3.1 KiB
HTML
<html>
|
|
|
|
<head>
|
|
<title>Tremor - Build</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>Tremor documentation</p></td>
|
|
<td align=right><p class=tiny>Tremor version 1.0 - 20020403</p></td>
|
|
</tr>
|
|
</table>
|
|
|
|
<h1>Tremor: Building libvorbisidec</h1>
|
|
|
|
<p>
|
|
|
|
The C source in the Tremor package will build on any ANSI C compiler
|
|
and function completely and properly on any platform. The included
|
|
build system assumes GNU build system and make tools (m4, automake,
|
|
autoconf, libtool and gmake). GCC is not required, although GCC is
|
|
the most tested compiler. To build using GNU tools, type in the
|
|
source directory:
|
|
|
|
<p>
|
|
<pre><tt>
|
|
./autogen.sh
|
|
gmake
|
|
</tt></pre>
|
|
<p>
|
|
or if GNU make is the standard make on the build system:
|
|
<pre><tt>
|
|
./autogen.sh
|
|
make
|
|
</tt></pre>
|
|
|
|
<p>
|
|
Currently, the source implements playback in pure C on all platforms
|
|
except ARM, where a [currently] small amount of assembly (see the file
|
|
asm_arm.h) is used to implement 64 bit math operations and
|
|
fast LSP computation. If building on ARM without the benefit of GNU
|
|
build system tools, be sure that <tt>_ARM_ASSEM_</tt> is #defined by
|
|
the build system if this assembly is desired, else the resulting
|
|
library will use whatever 64 bit math builtins the compiler
|
|
implements.
|
|
|
|
<p>
|
|
No math library is required by this source. No floating point
|
|
operations are used at any point in either setup or decode. This
|
|
decoder library will properly decode any past, current or future
|
|
Vorbis I file or stream.
|
|
|
|
<p>
|
|
The GNU build system produces static and, when supported by the OS,
|
|
dynamic libraries named 'libvorbisidec'. This library exposes an API
|
|
nearly identical to the BSD reference library's 'libvorbisfile',
|
|
including all the features familiar to users of vorbisfile. This API
|
|
is similar enough that the proper header file to include is named
|
|
'ivorbisfile.h', included in the source build directory.
|
|
Lower level libvorbis-style headers and structures are
|
|
in 'ivorbiscodec.h', also included in the source build directory. A
|
|
simple example program, ivorbisfile_example.c, can be built with 'make
|
|
ivorbisfile_example'.
|
|
<p>
|
|
(We've summarized <a href="diff.html">differences between the free,
|
|
reference vorbisfile library and Tremor's libvorbisidec in a separate
|
|
document</a>.)
|
|
|
|
<h3>Notes</h3>
|
|
|
|
<p>Tremor requires a native 64 bit integer type to compile and
|
|
function; The GNU build system will locate and typedef
|
|
<tt>ogg_int64_t</tt> to the appropriate native type. If not using the
|
|
GNU build tools, you will need to define <tt>ogg_int64_t</tt> as a
|
|
64-bit type inside your system's project file/Makefile, etc. On win32,
|
|
for example, this should be defined as <tt>__int64</tt>.
|
|
<p>
|
|
|
|
<br><br>
|
|
<hr noshade>
|
|
<table border=0 width=100%>
|
|
<tr valign=top>
|
|
<td><p class=tiny>copyright © 2002 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>Tremor documentation</p></td>
|
|
<td align=right><p class=tiny>Tremor version 1.0 - 20020403</p></td>
|
|
</tr>
|
|
</table>
|
|
|
|
</body>
|
|
|
|
</html>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|