[Speex-dev] speex on embedded processor

Peter Ruckle peter.ruckle at digitalallyinc.com
Thu Jan 31 06:12:40 PST 2008


I need to shrink speex so it will fit on an embedded processor along with some other code.  The chip has only 20k of ram.  I have done some work with libspeex.dsp by removing references to all modes but narrow band 8000 hz (submode 3).  I used the defines: FIXED_POINT, DISABLE_FLOATING_POINT_API, DISABLE_VBR.  I also removed the structures for the other submodes and the functions that they called.  I reduced the NB_DEC_STACK and NB_ENC_STACK to the smallest values and minimized the heap based on all calls to calloc.  I haven't optimized the call stack yet.  I reduced the ram usage to around 6k.  The problem is when I added the preprocess functionality, the ram usage went to around 20k.  I need to know what can be removed or reduced from the S[eexPreprocessState structure.  The only functionality we want to use is the denoise option.  We don't want vbr or echo cancellation.  I only see about 1k that is directly related that can be removed from the structure.  Are there any other buffers in the structure that can be removed or a way to reduce the size of some buffers.

Peter Ruckle
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.xiph.org/pipermail/speex-dev/attachments/20080131/d6c966fc/attachment.html


More information about the Speex-dev mailing list