[Speex-dev] speex optimisation for ARM 5TE architecture

Naveed Rehman nrehman79 at yahoo.co.uk
Wed Aug 23 10:29:15 PDT 2006

Hi JM,
  Thanks for the earlier replies. I have tested it with quality 1,2&3 the result is not much different. Also I must tell you that I am using the armbe-linux-gcc compiler which does not suppoort arm5e-asm optimisations. I get lots of assember related errors.  Is there any alternative? Will moving on to a board supported by arm-linux-gcc compiler ,to enable arm5e optimisation, help?

Jean-Marc Valin <jean-marc.valin at usherbrooke.ca> wrote:
  Quality 0 has not been entirely converted to fixed-point, so it actually
runs much slower on ARM. It's very poor quality anyway, so I don't see
why you'd want to use it.


Naveed Rehman a écrit :
> Hi JM,
> I am using narrowband mode with speex qaulity set to 0 and complexity
> set to 4. The code works fine on the 3.2GHz processor. The test
> program speexenc takes 7ms to encode 5sec worth of voice on the
> 3.2Ghz processor. The same takes 700ms on the ARM5E intel Xscale. The
> code that I wrote puts 10 speex frames in one RTP packet. When
> exexcuted on ARM I get lots of underrruns hence noise. I was
> wondering perhaps its because of the speed of ARM processor as
> dictated by the significantly slower speexenc on ARM. I hav'nt gone
> much into speex but I guessed that under 20ms to encode 20ms of voice
> (in speex packet) would get rid of underruns and hence noise. Am I
> going wrong somewhere..
> TIA nav
> Jean-Marc Valin wrote:
>> Can any body please tell me the compiler options to optimise the 
>> speex code for ARM TE architecture. Fixed point is enabled. It 
>> currently takes about 700ms to encode 5 sec worth of voice. I need
>> to get it down to under 10ms.
> The ARM port has suffered a bit from the fact that I haven't been
> able to keep the assembly up-to-date. Don't know what
> bit-rate/options you're using so it's hard to say much about the
> absolute numbers. The only thing I can say is that 10ms for 5 seconds
> of speech would mean using only 0.2% of your 533 MHz chip, or about 1
> MIPS. That's simply not possible using any modern speech codec, so
> you'll have to either change that requirement or deal with
> uncompressed (or very lightly compressed) audio.
>> Is the option --enable-arm5te-asm supported? I am using speex
>> 1.1.12 version. The configure.ac file does not seem to support 
>> --enable-arm5te-asm option. I tried --enable-arm5e-asm but the
>> result is'nt much different. Real time is not possible at that
>> rate. Processor is Xscale 533MHz.
> --enable-arm5e-asm should be fine, but yes it needs improvements. 
> Basically, the only thing interesting (from the POV of Speex) in the 
> ARM5E arch is the DSP-like instructions that can do 16x16 multiplies
> in a single cycle.
> --------------------------------- Try the all-new Yahoo! Mail . "The
> New Version is radically easier to use" – The Wall Street Journal

 Try the all-new Yahoo! Mail . "The New Version is radically easier to use" – The Wall Street Journal
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.xiph.org/pipermail/speex-dev/attachments/20060823/ad24ef1f/attachment.htm

More information about the Speex-dev mailing list