install speex_types.h when doing "make install"
[speexdsp.git] / libspeex / lsp.h
index 2758602..5e7b02a 100644 (file)
@@ -1,37 +1,60 @@
 /*---------------------------------------------------------------------------*\\r
-\r
+Original Copyright\r
        FILE........: AK2LSPD.H\r
        TYPE........: Turbo C header file\r
        COMPANY.....: Voicetronix\r
        AUTHOR......: James Whitehall\r
        DATE CREATED: 21/11/95\r
 \r
+Modified by Jean-Marc Valin\r
+\r
+    This file contains functions for converting Linear Prediction\r
+    Coefficients (LPC) to Line Spectral Pair (LSP) and back. Note that the\r
+    LSP coefficients are not in radians format but in the x domain of the\r
+    unit circle.\r
+\r
 \*---------------------------------------------------------------------------*/\r
 /* Speex License:\r
 \r
-   This library is free software; you can redistribute it and/or\r
-   modify it under the terms of the GNU Lesser General Public\r
-   License as published by the Free Software Foundation; either\r
-   version 2.1 of the License, or (at your option) any later version.\r
+   Redistribution and use in source and binary forms, with or without\r
+   modification, are permitted provided that the following conditions\r
+   are met:\r
    \r
-   This library is distributed in the hope that it will be useful,\r
-   but WITHOUT ANY WARRANTY; without even the implied warranty of\r
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU\r
-   Lesser General Public License for more details.\r
+   - Redistributions of source code must retain the above copyright\r
+   notice, this list of conditions and the following disclaimer.\r
    \r
-   You should have received a copy of the GNU Lesser General Public\r
-   License along with this library; if not, write to the Free Software\r
-   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA\r
+   - Redistributions in binary form must reproduce the above copyright\r
+   notice, this list of conditions and the following disclaimer in the\r
+   documentation and/or other materials provided with the distribution.\r
+   \r
+   - Neither the name of the Xiph.org Foundation nor the names of its\r
+   contributors may be used to endorse or promote products derived from\r
+   this software without specific prior written permission.\r
+   \r
+   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\r
+   ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\r
+   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR\r
+   A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR\r
+   CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,\r
+   EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,\r
+   PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR\r
+   PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF\r
+   LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING\r
+   NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS\r
+   SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\r
 */\r
 \r
 #ifndef __AK2LSPD__\r
 #define __AK2LSPD__\r
 \r
-int lpc_to_lsp (float *a, int lpcrdr, float *freq, int nb, float delta, float *stack);\r
-void lsp_to_lpc(float *freq, float *ak, int lpcrdr, float *stack);\r
+#include "misc.h"\r
+\r
+int lpc_to_lsp (spx_coef_t *a, int lpcrdr, spx_lsp_t *freq, int nb, spx_word16_t delta, char *stack);\r
+void lsp_to_lpc(spx_lsp_t *freq, spx_coef_t *ak, int lpcrdr, char *stack);\r
 \r
 /*Added by JMV*/\r
-void lsp_enforce_margin(float *lsp, int len, float margin);\r
+void lsp_enforce_margin(spx_lsp_t *lsp, int len, spx_word16_t margin);\r
 \r
+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);\r
 \r
 #endif /* __AK2LSPD__ */\r