Melp1200 data memory

Started by staseer August 8, 2007
Hi,
I have downloaded a melp1200 c code from the internet and am trying to
port it adsp-2188. There is an array declared in qnt12_cb, by the name of

res256x64x64x64 which has a size of 0x2300. The maximum segment which I
can define is of 8k. I am using overlays. Is there a way to fit this array
into the memory without decomposing it??? Other wise I will have to make
segments of this array and keep a check on index bounds. On the other hand
if someone can tell me how this array was calculated, I can add some code
instead of declaring this whole array.

Thanks and Regards,
Saba
This array was calculated by training codebooks during the MELPe vocoder
design, using a large speech database.  So you cannot "compute" it on
the fly instead of using the codebook stored in the DSP memory.

But while you are focusing on the codebook, you may be creating a much 
greater issue...

Please note that the MELPe source code is copyright protected for all
applications other than US gov & NATO!  Even if you intend its
derivative on ADSP-2188, derived from the C code.

Commercializing & using the MELPe and its source code is not free!

So, you are advised to contact all Intellectual Property Rights (IPR)
holders if you intend to commercialize it or use it for any application
other than for US gov & NATO!

For the 1200 bps MELPe: the IPR holders include: TI, Microsoft,
Compandent, and AT&T/Lucent.

For more information please see:
http://www.compandent.com/melpe_faq.htm
http://www.compandent.com/products_melpe.htm

staseer wrote:
> Hi, > I have downloaded a melp1200 c code from the internet and am trying to > port it adsp-2188. There is an array declared in qnt12_cb, by the name of > > res256x64x64x64 which has a size of 0x2300. The maximum segment which I > can define is of 8k. I am using overlays. Is there a way to fit this array > into the memory without decomposing it??? Other wise I will have to make > segments of this array and keep a check on index bounds. On the other hand > if someone can tell me how this array was calculated, I can add some code > instead of declaring this whole array. > > Thanks and Regards, > Saba
This array was calculated by training codebooks during the MELPe vocoder
design, using a large speech database.  So you cannot "compute" it on
the fly instead of using the codebook stored in the DSP memory.

But while you are focusing on the codebook, you may be creating a much
greater issue...

Please note that the MELPe source code is copyright protected for all
applications other than US gov & NATO!  Even if you intend to 
commercialize its derivative on ADSP-2188, derived from the C code.

Commercializing & using the MELPe and its source code or its derivative 
is not free!

So, you are advised to contact all Intellectual Property Rights (IPR)
holders if you intend to commercialize it or use it for any application
other than for US gov & NATO!

For the 1200 bps MELPe: the IPR holders include: TI, Microsoft,
Compandent, and AT&T/Lucent.

For more information please see:
http://www.compandent.com/melpe_faq.htm
http://www.compandent.com/products_melpe.htm

staseer wrote:
> Hi, > I have downloaded a melp1200 c code from the internet and am trying to > port it adsp-2188. There is an array declared in qnt12_cb, by the name of > > res256x64x64x64 which has a size of 0x2300. The maximum segment which I > can define is of 8k. I am using overlays. Is there a way to fit this array > into the memory without decomposing it??? Other wise I will have to make > segments of this array and keep a check on index bounds. On the other hand > if someone can tell me how this array was calculated, I can add some code > instead of declaring this whole array. > > Thanks and Regards, > Saba
There's lots of helpful information and data about the MELP vocoder and MELPe codec
at:
Http://www.melpe.com
Incluing implementations, software, hardware and solutions