Hi Vadim, OK thanks the latest patch applied OK.
I had to (re) install modern versions of m4-1.4.16, automake-1-12, libtool-2.4.2, autoconf-2.69 get autogen.sh to run but I'm getting close: $ sh autogen.sh Running aclocal... aclocal: warning: 'configure.ac' and 'configure.in' both present. aclocal: proceeding with 'configure.ac' Running autoconf... autoconf: warning: both `configure.ac' and `configure.in' are present. autoconf: warning: proceeding with `configure.ac'. Running libtoolize... Running automake... automake: warning: 'configure.ac' and 'configure.in' both present. automake: proceeding with 'configure.ac' automake: warning: 'configure.ac' and 'configure.in' both present. automake: proceeding with 'configure.ac'$ mkdir build && cd build $ ../configure checking build system type... configure: error: cannot guess build type; you must specify one OK - so what options do I need for a regular Linux machine? Is there a way that this can be worked out automatically, just like the previous ./configure? Maybe I have missed a package here ... config.guess exists but is empty. Sorry if these are basic questions, I am very inexperienced in this area! But I need to get the code built so I can verify bit exactness of the codec and fdmdv modem before I check in. Thanks, David On Mon, 2012-11-19 at 14:41 +0400, Markovtsev Vadim wrote: > Hello, > > > > the attached patch for revision 947 (November 8th) has the following > changes: > > > > 1)removes the autotools junk (configure, missing, compile, ltmain.sh, > etc.) from repository as those files are automatically regenerated, > configure.in was converted into configure.ac. autogen.sh script was > added to produce the configure script. So, to build codec2 one has to: > > -checkout sources > > -run autogen.sh > > -mkdir build && cd build > > -../configure [options] > > > > [options] can be any of –enable-neon (turns on ARM NEON accelerating > code), --enable-libavcodec-fft (changes the FFT engine to libavcodec) > and –enable-math-neon (dependent on –enable-neon, substitutes some > heavy math functions with faster NEON versions). As usual, [options] > can be checked with ../configure –help > > > > 1.5)adds the last optional bitrate setting to c2demo. > > > > 2)default optimization level of libcodec2 becomes O2 instead of O3, > because from my experience using O3 by default may play tricks on the > developer (gcc tends to miscompile). So only after checking that > everything works fine with O2, O3 should be used. I measured the > performance with O3 vs O2 and found out that there is no difference at > all. But, I added –funroll-loops –ffast-math which in turn speed up > codec2 by some 2-5%. > > > > 3)adds src/fft.c, src/fft.h which are the FFT engine abstraction > layer. All src and unittest files were updated. Currently, KISS_FFT > and LIBAVCODEC_FFT are supported (default is KISS). > > > > 4)changes all double-precision functions from math.h to > single-precision. E.g. sin() -> sinf(), atan2() -> atan2f(), etc. > Since all floating point math in codec2 is done with float-s, there is > no point in using double-precision math functions. Besides, > double-precision functions introduce a substantial slowdown on ARM, > where no hardware sin/cos/etc. exist. > > > > 5)adds NEON symbol to use in #ifdef-s. ARM NEON improvements include: > > -src/comp.c for fast COMP* arrays filling with 0 > > -nlp.c nlp() function was revised, memmove() was inserted where > possible, some parts are using NEON > > -storing of phi tangent value in defines.h/struct MODEL, it is used > in FFT_SYNTHESIS part of synthesise() in sine.c to avoid fair > calculation of sin/cos. Since sin/cos calculation is slow on ARM, it > does speed up the decoding. > > -other minor changes with NEON. > > > > 6)adds math-neon directory with ARM NEON math functions from math-neon > project. Those functions are fast but not precise, so simple drop-in > replacement of standard libm results in poor sound quality. I found > some places where the usage of such low-precision functions do not > affect the quality much and applied them only there. Perhaps, such > replacements need more time for careful trial-and-effort, but I do not > have any J > > > > Together, these measures give about 25% speedup on Exynos 4. x86 > speeds up, too. > > > > Regards, > > Vadim Markovtsev, > > Engineer, Algorithmic Lab, > > Moscow R&D center, Samsung Electronics > > > > > ------------------------------------------------------------------------------ > Monitor your physical, virtual and cloud infrastructure from a single > web console. Get in-depth insight into apps, servers, databases, vmware, > SAP, cloud infrastructure, etc. Download 30-day Free Trial. > Pricing starts from $795 for 25 servers or applications! > http://p.sf.net/sfu/zoho_dev2dev_nov > _______________________________________________ Freetel-codec2 mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/freetel-codec2 ------------------------------------------------------------------------------ Monitor your physical, virtual and cloud infrastructure from a single web console. Get in-depth insight into apps, servers, databases, vmware, SAP, cloud infrastructure, etc. Download 30-day Free Trial. Pricing starts from $795 for 25 servers or applications! http://p.sf.net/sfu/zoho_dev2dev_nov _______________________________________________ Freetel-codec2 mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/freetel-codec2
