vq.h
上传用户:luckfish
上传日期:2021-12-16
资源大小:77k
文件大小:2k
源码类别:

语音压缩

开发平台:

Visual C++

  1. /*
  2. 2.4 kbps MELP Proposed Federal Standard speech coder
  3. version 1.2
  4. Copyright (c) 1996, Texas Instruments, Inc.  
  5. Texas Instruments has intellectual property rights on the MELP
  6. algorithm.  The Texas Instruments contact for licensing issues for
  7. commercial and non-government use is William Gordon, Director,
  8. Government Contracts, Texas Instruments Incorporated, Semiconductor
  9. Group (phone 972 480 7442).
  10. */
  11. /* 
  12.    vq.h     VQ include file.
  13.             (Search/decode/distortion/weighting functions for VQ)
  14.    Copyright (c) 1995 by Texas Instruments Incorporated.  All rights reserved.
  15. */
  16. #ifndef _vq_h_
  17. #define _vq_h_
  18. float vq_ms4(float *cb, float *u, float *u_est, int *levels, int ma, int stages, int p, float *w, float *u_hat, int *indices, int max_inner);
  19. float *vq_msd2(float *cb, float *u, float *u_est, float *a, int *indices, 
  20.        int *levels, int stages, int p, int conversion);
  21. float *vq_lspw(float *w,float *lsp,float *a,int p);
  22. /* Structure definition */
  23. struct msvq_param {         /* Multistage VQ parameters */
  24.     int num_stages;
  25.     int *num_levels;
  26.     int *num_bits;
  27.     int dimension;
  28.     int num_best;
  29.     int *indices;
  30.     char *fname_cb;
  31.     float *cb;
  32. };
  33. /* External function definitions */
  34. #define msvq_enc(u,w,u_hat,par)
  35.     vq_ms4(par.cb,u,(float*)NULL,par.num_levels,
  36.   par.num_best,par.num_stages,par.dimension,w,u_hat,
  37.   par.indices,MSVQ_MAXCNT)
  38. #define fsvq_enc(u,u_hat,par)
  39.     vq_enc(par.cb,u,*(par.num_levels),
  40.   par.dimension,u_hat,
  41.   par.indices)
  42. #define msvq_dec(u,par)
  43.     vq_msd2(par.cb,u,(float*)NULL,(float*)NULL,par.indices,par.num_levels,par.num_stages,par.dimension,0)
  44. void msvq_init(struct msvq_param *par);
  45. float vq_enc(float *cb, float *u, int levels, int p, float *u_hat, int *indices);
  46. void vq_fsw(float *w_fs, int num_harm, float pitch);
  47. #endif