Gloria Wang | 7913073 | 2010-02-08 14:41:04 -0800 | [diff] [blame] | 1 | This version of Tremolo is derived from Tremolo library version |
| 2 | 0.07. It has been patched against publicly known vulnerabilities |
| 3 | with sample files available here: |
| 4 | |
| 5 | http://static.dataspill.org/releases/ogg/examples/ |
| 6 | |
| 7 | When syncing with svn, please ensure that these defects are not |
| 8 | reintroduced. |
| 9 | |
| 10 | --------------------------------------------------------------------------- |
| 11 | |
| 12 | This README covers the Tremolo library, version 0.07. |
| 13 | |
| 14 | Tremolo is a modified version of the Ogg Vorbis 'Tremor' integer |
| 15 | playback codec, branching from 1.0.2 of the low memory branch of |
| 16 | that source from svn. |
| 17 | |
| 18 | Tremolo is released under different licenses to Tremor. |
| 19 | |
| 20 | Tremor is released under a BSD like license (see the original README |
| 21 | included below, and other documentation for an exact statement of |
| 22 | its licensing terms). |
| 23 | |
| 24 | Tremolo is released under twin licenses. |
| 25 | |
| 26 | Firstly it is released under the GPL (v2) - this is so that fully |
| 27 | GPLd software such as ScummVM may use it with no problems. |
| 28 | |
| 29 | Secondly it is released under a homebrew license of my own. If you |
| 30 | want to use Tremolo in free(*) software, you may do so without |
| 31 | charge. If you want to use Tremolo in non-free(*) software then |
| 32 | you must contact me and come to an agreement first. |
| 33 | |
| 34 | * Free software, for the purposes of this definition is defined to |
| 35 | be software that is given away for free to anyone, with no more than |
| 36 | a nominal charge for media permitted. |
| 37 | |
| 38 | Software that comes bundled with hardware, or is tied to specific |
| 39 | hardware is NOT free. |
| 40 | |
| 41 | Software given away only on magazine discs, or only to subscribers |
| 42 | for another service is NOT free (though software which is given away |
| 43 | to everyone clearly may be included on magazine discs or given to |
| 44 | subscribers). |
| 45 | |
| 46 | Shareware is NOT free, but reasonably priced shareware will generally |
| 47 | get permission to use it as it it was free by contacting me first. |
| 48 | |
| 49 | If in doubt about whether your software counts as 'free' or not, |
| 50 | contact me. (In fact, contact me if you use the software in anything, |
| 51 | it'd be nice to know!) |
| 52 | |
| 53 | I am not looking to make my fortune with this, but if (say) Apple |
| 54 | wanted to put it in the firmware for an iPod, it'd be nice to get |
| 55 | something for my efforts. |
| 56 | |
| 57 | I Am Not A Lawyer, so all this is probably horribly unclear. If |
| 58 | anyone wants to hire me a lawyer for the afternoon, we can formalise |
| 59 | it. |
| 60 | |
| 61 | Robin Watts |
| 62 | |
| 63 | tremolo@wss.co.uk |
| 64 | |
| 65 | ---------------------------------------------------------------------- |
| 66 | |
| 67 | |
| 68 | |
| 69 | This README covers the Ogg Vorbis 'Tremor' integer playback codec |
| 70 | source as of date 2002 09 02, version 1.0.0. |
| 71 | |
| 72 | ****** |
| 73 | |
| 74 | The C source in this package will build on any ANSI C compiler and |
| 75 | function completely and properly on any platform. The included build |
| 76 | system assumes GNU build system and make tools (m4, automake, |
| 77 | autoconf, libtool and gmake). GCC is not required, although GCC is |
| 78 | the most tested compiler. To build using GNU tools, type in the |
| 79 | source directory: |
| 80 | |
| 81 | ./autogen.sh |
| 82 | make |
| 83 | |
| 84 | Currently, the source implements playback in pure C on all platforms |
| 85 | except ARM, where a [currently] small amount of assembly (see |
| 86 | asm_arm.h) is used to implement 64 bit math operations and fast LSP |
| 87 | computation. If building on ARM without the benefit of GNU build |
| 88 | system tools, be sure that '_ARM_ASSEM_' is #defined by the build |
| 89 | system if this assembly is desired, else the resulting library will |
| 90 | use whatever 64 bit math builtins the compiler implements. |
| 91 | |
| 92 | No math library is required by this source. No floating point |
| 93 | operations are used at any point in either setup or decode. This |
| 94 | decoder library will properly decode any past, current or future |
| 95 | Vorbis I file or stream. |
| 96 | |
| 97 | ******** |
| 98 | |
| 99 | The build system produces a static and [when supported by the OS] |
| 100 | dynamic library named 'libvorbisidec'. This library exposes an API |
| 101 | nearly identical to the BSD reference library's 'libvorbisfile', |
| 102 | including all the features familiar to users of vorbisfile. This API |
| 103 | is similar enough that the proper header file to include is named |
| 104 | 'ivorbisfile.h' [included in the source build directory]. Lower level |
| 105 | libvorbis-style headers and structures are in 'ivorbiscodec.h' |
| 106 | [included in the source build directory]. A simple example program, |
| 107 | ivorbisfile_example.c, can be built with 'make example'. |
| 108 | |
| 109 | ******** |
| 110 | |
| 111 | Detailed Tremor API Documentation begins at doc/index.html |
| 112 | |
| 113 | Monty |
| 114 | xiph.org |