Hi Rick, Nice work. Would you look in http://svn.xiph.org/trunk/speex/libspeex/ at the files starting with "fixed_", especially fixed_generic.h ?These are potential templates for porting to both fixed-point and DSP in a portable manner.
Thanks
Bruce
On 12/26/2011 10:59 AM, Rick van Rein wrote:
Hello, We have a 2nd Christmas days in NL, and I wanted to spend this year's on something to help poor countries forward, by helping out with Codec2. This is a patch that optimises a number of things in Codec2 that are mathematically equivalent and (I hope) should not limit David's freedom in optimising it down to 1000 b/s. The patch reduces the time spent in codec2_encode() by 10%. This patch focusses on encoding, not yet on decoding: Function SVN r.310 r.310 + patch Saved --------------- --------------- --------------- -------- codec2_encode 38.55 ms 34.55 ms 10.4% nlp 29.87 ms 26.27 ms 12.1% quantise 25.50 ms 23.42 ms 8.2% The attached tarball contains the Codec2 and gprof data for the changes made for each consecutive step, along with the method used for profiling. If you agree that these are all improvements then you are quite welcome to incorporate this patch with speedups. I've tried to get closer to a codec that lends itself for DSP-implementation, by replacing libm calls with plain math, ready for float->fixpoint updates. This didn't work in all places yet. I've also replaced (char) with (uint8_t) where it represents bits, because the code would not work on some 16-bit DSPs such as tic54x, tic55x, where a char is stored in 16 bits. I hope this is useful! Cheers, Rick van Rein OpenFortress / 0cpm ------------------------------------------------------------------------------ Write once. Port to many. Get the SDK and tools to simplify cross-platform app development. Create new or port existing apps to sell to consumers worldwide. Explore the Intel AppUpSM program developer opportunity. appdeveloper.intel.com/join http://p.sf.net/sfu/intel-appdev _______________________________________________ Freetel-codec2 mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/freetel-codec2
<<attachment: bruce.vcf>>
smime.p7s
Description: S/MIME Cryptographic Signature
------------------------------------------------------------------------------ Write once. Port to many. Get the SDK and tools to simplify cross-platform app development. Create new or port existing apps to sell to consumers worldwide. Explore the Intel AppUpSM program developer opportunity. appdeveloper.intel.com/join http://p.sf.net/sfu/intel-appdev
_______________________________________________ Freetel-codec2 mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/freetel-codec2
