| <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> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |