ex

Fork of mbed-os-example-mbed5-blinky by mbed-os-examples

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers lsp.h Source File

lsp.h

Go to the documentation of this file.
00001 /*---------------------------------------------------------------------------*\
00002 Original Copyright
00003     FILE........: AK2LSPD.H
00004     TYPE........: Turbo C header file
00005     COMPANY.....: Voicetronix
00006     AUTHOR......: James Whitehall
00007     DATE CREATED: 21/11/95
00008 
00009 Modified by Jean-Marc Valin
00010 
00011     This file contains functions for converting Linear Prediction
00012     Coefficients (LPC) to Line Spectral Pair (LSP) and back. Note that the
00013     LSP coefficients are not in radians format but in the x domain of the
00014     unit circle.
00015 
00016 \*---------------------------------------------------------------------------*/
00017 /**
00018    @file lsp.h
00019    @brief Line Spectral Pair (LSP) functions.
00020 */
00021 /* Speex License:
00022 
00023    Redistribution and use in source and binary forms, with or without
00024    modification, are permitted provided that the following conditions
00025    are met:
00026    
00027    - Redistributions of source code must retain the above copyright
00028    notice, this list of conditions and the following disclaimer.
00029    
00030    - Redistributions in binary form must reproduce the above copyright
00031    notice, this list of conditions and the following disclaimer in the
00032    documentation and/or other materials provided with the distribution.
00033    
00034    - Neither the name of the Xiph.org Foundation nor the names of its
00035    contributors may be used to endorse or promote products derived from
00036    this software without specific prior written permission.
00037    
00038    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
00039    ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
00040    LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
00041    A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR
00042    CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00043    EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00044    PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
00045    PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
00046    LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
00047    NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
00048    SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00049 */
00050 
00051 #ifndef __AK2LSPD__
00052 #define __AK2LSPD__
00053 
00054 #include "misc.h"
00055 
00056 int lpc_to_lsp (spx_coef_t *a, int lpcrdr, spx_lsp_t *freq, int nb, spx_word16_t delta, char *stack);
00057 void lsp_to_lpc(spx_lsp_t *freq, spx_coef_t *ak, int lpcrdr, char *stack);
00058 
00059 /*Added by JMV*/
00060 void lsp_enforce_margin(spx_lsp_t *lsp, int len, spx_word16_t margin);
00061 
00062 void lsp_interpolate(spx_lsp_t *old_lsp, spx_lsp_t *new_lsp, spx_lsp_t *interp_lsp, int len, int subframe, int nb_subframes);
00063 
00064 #endif  /* __AK2LSPD__ */