[Speex-dev] Some aditional details about split_cb_search_shape_sign

Jean-Marc Valin Jean-Marc.Valin at USherbrooke.ca
Wed Feb 22 07:38:56 PST 2006


Hi,

I suggest you start with split_cb_search_shape_sign_N1(), which is a
simplified version for complexity=1. The basic idea is quantized the
first sub-vector, update the target, quantize the second vector,
update... and so on. Of course, all of this is done in a closed
(analysis-by-synthesis) loop. The full split_cb_search_shape_sign()
function does the same except that it always tracks the N-best
hypotheses at the same time so it can produce a (sightly) better final
result. And yes it is messy and I doubt that can be improved much.

	Jean-marc

Le mercredi 22 février 2006 à 12:10 +0100, pm_mail at libero.it a écrit :
> Hi all.
> I'm starting to study how speex works because I would like to
> understand in deep how a CELP coder/decoder works.
> I have some difficult understanding the vector quantization performed
> in the split_cb_search_shape_sign function. It's a bit hard to
> understand.
> Could you please explain me the algorithm step by step?
> I'm indagating the 5950 bps narrowband.
> Thank you. 


More information about the Speex-dev mailing list