[CELT-dev] Bad artifacts at 32kbps

Andrew Lentvorski bsder at allcaps.org
Thu Apr 14 11:09:07 PDT 2011

On 4/14/11 10:19 AM, Benjamin M. Schwartz wrote:

> OK.  Many audio chips only do a fixed samplerate (like 48 KHz), but if
> yours can really do 24 KHz then that's perfectly reasonable.

Yeah, my sample rates are quite flexible.

> The issue I was alluding to is that CELT is tuned for 48 KHz operation,
> and other samplerates (i.e. the "custom modes") have received much less
> attention, which is part of the reason they're disabled by default.

Ah, then I'll make sure to stay with multiples of 48KHz.  I was 
scratching my head how I was going to deal with 44.1KHz, but now I don't 
have to.  That's a bonus.

> Unfortunately Option 3 is not exposed by the celtenc tool ... but it _is_
> exposed by the opusenc tool, as -bandwidth SWB. See
> http://git.xiph.org/?p=users/jm/ietfcodec.git;a=blob;f=README;hb=HEAD
> for details.  (Opus includes CELT, and is expected to replace it.)

Should I be using a different repository than I currently am?  I'd hate 
to make patches/changes on a dead repository.

I pulled with:
git clone git://git.xiph.org/celt.git

>> Bandwidth isn't really my limitation.  Local RAM and processor MIPS are.
>>   Consequently, I'm trying to twist the knobs in ways that cross the
>> power-of-2 boundaries that will allow me to tighten resource usage.
> OK.  If you're that crazy then you can do things like choose a power-of-2
> framesize (e.g. 512 samples at 24 KHz ->  21.33 ms), substitute your own
> platform-optimized FFT lib ... or find some optimizations (C or assembly)
> and send us patches.

Yeah, I'm that crazy. :)

First up is figuring out how to preallocate all of the RAM I will need. 
  After that, I need to put a profiler on this and see where time is 
being spent.


More information about the celt-dev mailing list