[CELT-dev] Using CELT on iPod

Stéphane Letz letz at grame.fr
Tue Mar 9 06:41:10 PST 2010

Le 9 mars 2010 à 14:21, Gregory Maxwell a écrit :

> On Tue, Mar 9, 2010 at 6:50 AM, Stéphane Letz <letz at grame.fr> wrote:
>> Hi,
>> We are testing CELT 0.7.1 on an iPod touch and it seems we are already reaching the CPU limit of the machine for a 1 channel both directions stream. The CELT README says that the code should be compiled with fixed-point support, but it it not clear how it has to be used later on. We currently use celt_encode_float/celt_decode_float functions. Can we still use them with the fixed point version of CELT?
>> Anny other advice to improve the CPU use issue? (size of the encoded packet, frame rate... etc...)
> You can still use celt_encode_float/celt_decode_float with the fixed
> point mode, but if your CPU has very slow floating point support then
> the handling of the floating point values for the input conversion may
> slow it down.
> I think the arm in the ipod touch has a reasonably fast fpu. Celt may
> work okay on that platform in floating point mode.
> How are you switching to fixed point?

I did an Xcode project to compile the code as a static library for the iPhone/iPod.

I added #define FIXED_POINT 1 in a global precompiled header.

> There are several defines
> required and if you've created your own project files you may not be
> setting all of them.

This may be the case, what defined need to be used then?

> Does setting complexity level 1 improve your situation?

I'll try.
> Can you obtain a profile?  

I'll try to measure the encoding/decoding part alone.

> I've tested CELT on an arm which should be slower than the one in the
> ipod touch, and had acceptable performance. However, different chips
> perform differently. :)


Stephane Letz

More information about the celt-dev mailing list