52 lines
2.5 KiB
C
52 lines
2.5 KiB
C
/*
|
|
* iLBC - a library for the iLBC codec
|
|
*
|
|
* createCB.h - The iLBC low bit rate speech codec.
|
|
*
|
|
* Adapted by Steve Underwood <steveu@coppice.org> from the reference
|
|
* iLBC code supplied in RFC3951.
|
|
*
|
|
* Original code Copyright (C) The Internet Society (2004).
|
|
* All changes to produce this version Copyright (C) 2008 by Steve Underwood
|
|
* All Rights Reserved.
|
|
*
|
|
* This program is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
*
|
|
* $Id: createCB.h,v 1.2 2008/03/06 12:27:38 steveu Exp $
|
|
*/
|
|
|
|
#ifndef __iLBC_CREATECB_H
|
|
#define __iLBC_CREATECB_H
|
|
|
|
void filteredCBvecs(float *cbvectors, /* (o) Codebook vector for the
|
|
higher section */
|
|
float *mem, /* (i) Buffer to create codebook
|
|
vectors from */
|
|
int lMem); /* (i) Length of buffer */
|
|
|
|
void searchAugmentedCB(int low, /* (i) Start index for the search */
|
|
int high, /* (i) End index for the search */
|
|
int stage, /* (i) Current stage */
|
|
int startIndex, /* (i) CB index for the first
|
|
augmented vector */
|
|
float *target, /* (i) Target vector for encoding */
|
|
float *buffer, /* (i) Pointer to the end of the
|
|
buffer for augmented codebook
|
|
construction */
|
|
float *max_measure, /* (i/o) Currently maximum measure */
|
|
int *best_index, /* (o) Currently the best index */
|
|
float *gain, /* (o) Currently the best gain */
|
|
float *energy, /* (o) Energy of augmented
|
|
codebook vectors */
|
|
float *invenergy); /* (o) Inv energy of aug codebook vectors */
|
|
|
|
void createAugmentedVec(int index, /* (i) Index for the aug vector to be created */
|
|
float *buffer, /* (i) Pointer to the end of the
|
|
buffer for augmented codebook
|
|
construction */
|
|
float *cbVec); /* (o) The construced codebook vector */
|
|
|
|
#endif
|