下载 > 资源分类 >  开发技术 >  C > ITUG729源代码

ITUG729源代码

2009-05-09 上传大小:161KB
ITU-T G.729 Annex B     ANSI-C Source Code
   Version 1.4    Last modified: November, 2000 */

TITLE
-----
Fixed-point description of Recommendation G.729 with ANNEX B

Coding of Speech at 8 kbit/s us
ing Conjugate-Structure
Algebraic-Code-Excited Linear-Prediction (CS-ACELP) with
Voice Activity Decision(VAD), Discontinuous Transmission(DTX), 
and Comfort Noise Generation(CNG).


SOFTWARE AND INTELLECTUAL PROPERTY
----------------------------------
This software package is provided as part of ITU-T Recommendation G.729B.

 Copyright (c) 1996, AT&T, France Telecom, Lucent Technologies, NTT, 
                     Rockwell International, Universite de Sherbrooke.
 All rights reserved.

The copy of the source C code, version 1.4, is given under Copyright of the 
authors, only for the purpose of establishing the specification of a codec.


VERSION
-------
This is version 1.4.

----------------------------------------------------------------------------
   Differences between Version 1.2 and Version 1.1 :

 In version 1.2, tab_dtx.h, tab_dtx.c, vad.c and calcexc.c were updated as
per Corrigendum to annex B of G.729 published in COM 16-R20 of june 1997.

----------------------------------------------------------------------------
   Differences between Version 1.3 and Version 1.2 :

file : DEC_LD8K.C
*****************
Version 1.2 lines 147 to 149 :
----------------------------------------------------------------------------
  if(bfi == 1)
    if(past_ftyp == 1) ftyp = 1;
    else ftyp = 0;
----------------------------------------------------------------------------
replaced in Version 1.3 by lines 147 to 149 :
----------------------------------------------------------------------------
  if(bfi == 1) {
    if(past_ftyp == 1) ftyp = 1;
    else ftyp = 0;
    *parm = ftyp;  /* modification introduced in version V1.3 */
  }

file : BITS.C
*************
function : read_frame()

----------------------------------------------------------------------------
Version 1.2 line 221-226 :
----------------------------------------------------------------------------
  /* the hardware detects frame erasures by checking if all bits
     are set to zero */

  parm[0] = 0;           /* No frame erasure */
  for (i=0; i < serial[1]; i++)
    if (serial[i+2] == 0 ) parm[0] = 1;  /* frame erased     */
----------------------------------------------------------------------------
replaced in Version 1.3 by lines 219-230 :
----------------------------------------------------------------------------
  /* This part was modified for version V1.3 */
  /* for speech and SID frames, the hardware detects frame erasures
     by checking if all bits are set to zero */
  /* for untransmitted frames, the hardware detects frame erasures
     by testing serial[0] */

  parm[0] = 0;           /* No frame erasure */
  if(serial[1] != 0) {
   for (i=0; i < serial[1]; i++)
     if (serial[i+2] == 0 ) parm[0] = 1;  /* frame erased     */
  }
  else if(serial[0] != SYNC_WORD) parm[0] = 1;
----------------------------------------------------------------------------
   Differences between Version 1.4 and Version 1.3 :

In Version 1.4 the initialization of lspSid in dec_sid.c has been updated
according to the Corrigendum to Annex B of G.729 published in COM 16-R 60-E.

In terms of functionality, only the file dec_sid.c has changed.  For 
compilation purposes the two makefiles were changed, and the version number
was changed in coder.c and decoder.c.

The changes from Version 1.3 to Version 1.4 do not affect the test vectors.
----------------------------------------------------------------------------


DESCRIPTION
-----------
  This package includes the files needed to build the fixed point version
of the G.729 codec with VAD/DTX/CNG as described in ANNEX B.

 It includes also the PC executable (coder.exe and decoder.exe), a batch file
(test.bat), speech (test.inp) and data files (test.bit and test.syn) to verify
the execution.  The binary reference files are in PC format.

SIMILARITIES AND DIFFERENCES WITH G.729
---------------------------------------

Common files with G.729
~~~~~~~~~~~~~~~~~~~~~~~
acelp_co.c
basic_op.c
de_acelp.c
dec_gain.c
dec_lag3.c
dspfunc.c
filter.c
gainpred.c
lpcfunc.c
lspgetq.c
oper_32b.c
p_parity.c
pitch.c
post_pro.c
pre_proc.c
pred_lt3.c
pwf.c
qua_gain.c
basic_op.h
oper_32b.h
typedef.h

File extracted from G.729 file
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
taming.c

Files in G.729 but modified for ANNEX B
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
bits.c
cod_ld8k.c
coder.c
dec_ld8k.c
decoder.c
lpc.c
lspdec.c
pst.c
qua_lsp.c
tab_ld8k.c
util.c
ld8k.h
tab_ld8k.h

Files only in ANNEX B
~~~~~~~~~~~~~~~~~~~~~
calcexc.c
dec_sid.c
dtx.c
qsidgain.c
qsidlsf.c
tab_dtx.c
vad.c
dtx.h
octet.h
sid.h
tab_dtx.h
vad.h


COMPILATION
-----------

Edit the file typedef.h to comply to your target platform


For UNIX systems the following makefiles are provided

   coder.mak
   decoder.mak



Edit the makefiles coder.mak and decoder.mak to set the proper options
for your system.
The command to compile and link all code on a UNIX system is

     make -f coder.mak
     make -f decoder.mak

For other platforms, the *.mak files can be used to work out the
compilation procedures.

This code has been successfully compiled and run on the following
platforms:

Platform                   Operating System      Compiler
-----------------------------------------------------------------------------
DEC ALPHA                  OSF/1                 DEC OSF/1 cc
SGI                        IRIX 5.2              cc
SUN                        SUNOS 4.1.3           gcc
PC                         DOS 6.2               Borland 4.02
                                                 Microsoft Quick C 2.5
                                                 Microsoft Visual C++ 1.51
                                                 Watcom 10.6
PC                         DOS 6.21              Borland 3.1
                                                 Microsoft 8
                                                 Watcom 9.6


USAGE
-----
The following files are used or generated
  inputfile    8 kHz sampled data file 16 bit PCM (binary)
  outputfile   8 kHz sampled data file 16 bit PCM (binary)
  bitstreamfile  binary file containing bitstream
The following parameter is used for the encoder
  dtx_option   = 1 : DTX enabled   0 : DTX disabled

coder  inputfile bitstreamfile dtx_option
decoder bitstreamfile outputfile
...展开收缩
综合评分:4.1(8位用户评分)
直接下载 开通VIP会员 免积分下载

评论共有4条

name
michaltina2015-06-24 21:23:11
可以运行,挺好
name
sslstudy2013-11-05 10:31:43
还不会编译。资源内容和"G.729编解码源代码" 是相同的。 大小不一样只是因为该文件里多了个chm文件,但是和资源本身无关。
name
xue1989ying2012-07-26 10:10:08
可以正常编译运行。多谢分享~~
name
lx8300752012-07-03 16:15:24
悲剧的是,编码后的文件跟源文件一样大,压缩比为1!!!坑爹的ITU

评论资源

您不能发表评论,可能是以下原因:

登录后才能评论

待评论资源
 

热门专辑

关闭
img

spring mvc+mybatis+mysql+maven+bootstrap 整合实现增删查改简单实例.zip

CSDN VIP年卡 4000万程序员的必选现在开通,立省522元
下载
img

ITUG729源代码

会员到期时间: 剩余下载个数: 剩余C币:0 剩余积分:
VIP下载

积分不足!

资源所需积分 当前拥有积分
您可以选择
开通VIP年卡
4000万
程序员的必选
600万
绿色安全资源
现在开通
立省522元
或者
购买C币兑换积分 C币抽奖
img
资源所需积分 当前拥有积分 当前拥有C币
5 4 45
(仅够下载10个资源)
VIP年卡
全站1200个资源免积分下载
下载
img
资源所需积分 当前拥有积分 当前拥有C币
5 0 0
VIP年卡
全站1200个资源免积分下载
C币充值开通VIP年卡
img
资源所需积分 当前拥有积分 当前拥有C币
5 4 45
您的积分不足,将扣除 10 C币
VIP年卡
全站1200个资源免积分下载
下载
下载

兑换成功

你当前的下载分为234开始下载资源
你还不是VIP会员
开通VIP会员权限,免积分下载
立即开通

你下载资源过于频繁,请输入验证码

你下载资源过于频繁,请输入验证码

您因违反CSDN下载频道规则而被锁定帐户,如有疑问,请联络:webmaster@csdn.net!

举报

若举报审核通过,可奖励20下载分

  • 举报人:
  • 被举报人:
  • 举报的资源分:
  • *类型:
  • *详细原因: