Tremor: Difference between revisions
(→Texas Instruments TMS320C55x DSP Family: dead link) |
|||
Line 25: | Line 25: | ||
See the [http://lists.xiph.org/pipermail/tremor/2004-October/001114.html mailing list entry] | See the [http://lists.xiph.org/pipermail/tremor/2004-October/001114.html mailing list entry] | ||
* Johannes Sandvall's performance improvements | * Johannes Sandvall's performance improvements | ||
See the [http://lists.xiph.org/pipermail/tremor/2004-March/000957.html mailing list entry | See the [http://lists.xiph.org/pipermail/tremor/2004-March/000957.html mailing list entry] | ||
* alloca removal | * alloca removal | ||
The TI compiler does not support this. | The TI compiler does not support this. |
Revision as of 20:28, 15 March 2010
Tremor is a fixed-point version of the Ogg Vorbis decoder for those platforms that can't do floating point math.
Platforms
ARM/Coldfire/MIPS CPUs
You will probably want to use the Tremor main branch. You can check it out here:
svn co http://svn.xiph.org/trunk/Tremor/
It contains some optimizations for ARM and the overall lowest computational complexity. It should run on most devices with a few hundred KB of codec RAM.
Texas Instruments TMS320C55x DSP Family
Download the generic lowmem source using Subversion. This is probably the version you want to start working with for a DSP, but may be slower on normal CPUs.
svn co http://svn.xiph.org/branches/lowmem-branch/Tremor/
There is also a no-byte branch for platforms whose smallest data unit is larger than 8 bits.
Required / Suggested Changes to the code as downloaded:
- Roland Wintersteller's various fixes
See the mailing list entry
- Johannes Sandvall's performance improvements
See the mailing list entry
- alloca removal
The TI compiler does not support this.
- misc compiler warning fixes
- hooks to TI DSPLIB functions cfft3216_NOSCALE and cbrev32
These are part of the TI DSPLIB which can be downloaded from the TI website.
- 64-bit math functions
- converting all ints assumed to be 32 bits to ogg_int32_t
Links
- Tremor Mailing List - lots of info here, but have to wade through a lot!