• 大小: 161KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-05-08
  • 语言: 其他
  • 标签: G.729  语音压缩  C++  

资源简介

G.729的实现代码。 G.729是利用共扼结构-代数激励编码线性预测(CS-ACELP)以 8 bit/s 进行语音编码

资源截图

代码片段和文件信息

/*************************************************************************/
/*                                                                       */
/*                            LD-CELP  G.728                             */
/*                                                                       */
/*    Low-Delay Code Excitation Linear Prediction speech compression.    */
/*                                                                       */
/*                 Copyright: Analog Devices Inc. 1993                 */
/*                                                                       */
/*                         Author: Alex Zatsman.                         */
/*                                                                       */
/*  This program was written mostly for testing  Analog Devices‘ g21k C  */
/*  compiler for the  ADSP21000 architecture  family. While the program  */
/*  works  on  Sparc and ADSP21020 it  has  NOT  been  tested with the  */
/*  official test data from CCITT/ITU.                                   */
/*                                                                       */
/*  The program  is   distributed as  is  WITHOUT ANY WARRANTY EITHER  */
/*  EXPLICIT OR IMPLIED.                                                 */
/*                                                                       */
/*************************************************************************/

#include “common.h“
#include “fast.h“
#include “parm.h“
#include “data.h“
#include “prototyp.h“

static int sf_levdur (real[] real LPC_MEM []);
static int levdur (real[] real LPC_MEM [] int);
static void hybwin(int lpsize int framesize int nrsize
    real old_input[] real new_input[] real output[]
    real WIN_MEM window[] real rec[]  real decay);
static void bw_expand2(real input[]
       real COEFF_MEM z_out[] real COEFF_MEM p_out[]
       int order real z_vec[] real p_vec[]);
static void bw_expand1(real input[] real COEFF_MEM p_out[]
int order real p_vec[]);

/********************************** Adapter for Perceptual Weighting Filter */

static real 
    pwf_z_vec[LPCW+1] /* Arrays for band widening: zeros and*/
    pwf_p_vec[LPCW+1] /* poles */
    pwf_old_input[LPCW+NFRSZ+NONRW]
    pwf_rec[LPCW+1]; /* Recursive Part */
    

void
pwf_adapter (real input[]
     real COEFF_MEM z_out[] /* zero coefficients */
     real COEFF_MEM p_out[]) /* pole coefficients */
{
    static real
acorr[LPCW+1] /* autocorrelation coefficients */
lpcoeff[LPCW+1];
    static real LPC_MEM
temp[LPCW+1];

    hybwin(LPCW /* lpsize */
   NFRSZ /* framesize */
   NONRW /* nrsize -- nonrecursive size */
   pwf_old_input
   input
   acorr
   hw_percw
   pwf_rec
   0.5);
    if (levdur(acorr temp LPCW))
RCOPY(temp lpcoeff LPCW+1);
    bw_expand2 (lpcoeff z_out p_out LPCW
pwf_z_vec pwf_p_vec);
}

 void
init_pwf_adapter (real COEFF_MEM z_co[] real COEFF_MEM p_co[])
{
    real zv = 1.0 

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       6964  1993-07-21 05:00  G.729\G729(LD-CELP)\020_hdr.asm

     文件       2829  1993-08-12 00:50  G.729\G729(LD-CELP)\21kflags.h

     文件      10492  1993-08-14 04:32  G.729\G729(LD-CELP)\adapters.c

     文件       2969  1993-08-14 04:34  G.729\G729(LD-CELP)\cbindex.asm

     文件       1538  1993-08-13 03:37  G.729\G729(LD-CELP)\cbindex.h

     文件       5269  2002-08-07 11:45  G.729\G729(LD-CELP)\ccelp\ccelp.dsp

     文件        533  2002-08-07 11:42  G.729\G729(LD-CELP)\ccelp\ccelp.dsw

     文件     123904  2007-06-02 13:50  G.729\G729(LD-CELP)\ccelp\ccelp.ncb

     文件      69632  2007-06-02 13:50  G.729\G729(LD-CELP)\ccelp\ccelp.opt

     文件       6209  1993-08-14 04:33  G.729\G729(LD-CELP)\cmain.c

     文件       6480  1993-08-14 04:33  G.729\G729(LD-CELP)\codebook.c

     文件       3843  1993-08-13 23:06  G.729\G729(LD-CELP)\common.h

     文件      14791  1993-08-14 04:33  G.729\G729(LD-CELP)\data.c

     文件       1340  1993-08-13 05:05  G.729\G729(LD-CELP)\data.h

     文件       5444  1993-08-14 04:33  G.729\G729(LD-CELP)\dmain.c

     文件        791  1993-07-21 01:45  G.729\G729(LD-CELP)\ez.ach

     文件       4730  1993-08-14 04:33  G.729\G729(LD-CELP)\ezplay.c

     文件       2956  1993-07-23 20:07  G.729\G729(LD-CELP)\fast.h

     文件       6910  1993-08-14 04:33  G.729\G729(LD-CELP)\filters.c

     文件       6745  1993-08-14 04:34  G.729\G729(LD-CELP)\fio21k.asm

     文件       2053  1993-08-14 04:33  G.729\G729(LD-CELP)\global.c

     文件       4024  1993-08-14 04:34  G.729\G729(LD-CELP)\io-sparc.c

     文件       2370  1994-05-07 01:13  G.729\G729(LD-CELP)\Makefile

     文件       1243  1993-07-17 07:45  G.729\G729(LD-CELP)\parm.h

     文件      12087  1993-08-14 04:34  G.729\G729(LD-CELP)\postfil.c

     文件       1677  1993-08-13 04:38  G.729\G729(LD-CELP)\prototyp.h

     文件        108  1993-08-14 03:09  G.729\G729(LD-CELP)\qsize.h

     文件       3359  1994-05-07 01:12  G.729\G729(LD-CELP)\README

     文件       2649  2004-11-24 17:40  G.729\G729A_Eval\EasyG729A.h

     文件       4514  2004-11-24 17:47  G.729\G729A_Eval\EasyG729A_decoder.c

............此处省略26个文件信息

评论

共有 条评论