亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? coder.c

?? 視頻會議源碼
?? C
字號:
/***** File:        "coder.c"**** Description:     Top-level source code for G.723 dual-rate coder**** Functions:       Init_Coder()**                  Coder()*****//*    ITU-T G.723 Speech Coder   ANSI-C Source Code     Version 5.00    copyright (c) 1995, AudioCodes, DSP Group, France Telecom,    Universite de Sherbrooke.  All rights reserved.*/#include <stdlib.h>#include <stdio.h>#include <string.h>#include "basop.h"#include "cst_lbc.h"#include "tab_lbc.h"#include "lpc.h"#include "lsp.h"#include "exc_lbc.h"#include "util_lbc.h"#include "tame.h"#include "coder_pc.h"/*   This file includes the coder main functions*/CODSTATDEF  CodStat  ;extern Flag    UseVx ;extern enum  Crate    WrkRate ;/***** Function:        Init_Coder()**** Description:     Initializes non-zero state variables**          for the coder.**** Links to text:   Section 2.21** ** Arguments:       None**** Outputs:     None** ** Return value:    None***/void  Init_Coder( void){    int   i ;    /* Initialize encoder data structure with zeros */    memset(&CodStat, 0, sizeof(CODSTATDEF));    /* Initialize the previously decoded LSP vector to the DC vector */    for ( i = 0 ; i < LpcOrder ; i ++ )        CodStat.PrevLsp[i] = LspDcTable[i] ;    /* Initialize the taming procedure */    for(i=0; i<SizErr; i++) CodStat.Err[i] = Err0;    return;}/***** Function:        Coder()**** Description:     Implements G.723 dual-rate coder for    a frame**          of speech**** Links to text:   Section 2**** Arguments:****  Word16 DataBuff[]   frame (480 bytes)**** Outputs:****  Word16 Vout[]       Encoded frame (20/24 bytes)**** Return value:****  Flag            Always True***/Flag  Coder( Word16 *DataBuff, char *Vout){    int     i,j   ;    /*      Local variables    */    Word16   UnqLpc[SubFrames*LpcOrder] ;    Word16   QntLpc[SubFrames*LpcOrder] ;    Word16   PerLpc[2*SubFrames*LpcOrder] ;    Word16   LspVect[LpcOrder] ;    LINEDEF  Line  ;    PWDEF    Pw[SubFrames]  ;    Word16   ImpResp[SubFrLen] ;    Word16  *Dpnt  ;    Word16  Ftyp = 1 ;    /*      Coder Start    */    Line.Crc = (Word16) 0 ; //   Write_lbc(DataBuff,Frame,fp);        Rem_Dc( DataBuff ) ;            /* Compute the Unquantized Lpc set for whole frame */    Comp_Lpc( UnqLpc, CodStat.PrevDat, DataBuff ) ;     /* Convert to Lsp */    AtoLsp( LspVect, &UnqLpc[LpcOrder*(SubFrames-1)], CodStat.PrevLsp ) ;        /* Compute the Vad */    Ftyp = (Word16) Comp_Vad( DataBuff ) ;    //printf(" Ftyp=%d \n",Ftyp);    /* VQ Lsp vector */    Line.LspId = Lsp_Qnt( LspVect, CodStat.PrevLsp ) ; //   Write_lbc( (short *)&Line.LspId, 2, fp ) ;    Mem_Shift( CodStat.PrevDat, DataBuff ) ;    /* Compute Perceptual filter Lpc coefficients */    Wght_Lpc( PerLpc, UnqLpc ) ;    /* Apply the perceptual weighting filter */    Error_Wght( DataBuff, PerLpc ) ;        /*    // Compute Open loop pitch estimates    */    Dpnt = (Word16 *) malloc( sizeof(Word16)*(PitchMax+Frame) ) ;    /* Construct the buffer */    for ( i = 0 ; i < PitchMax ; i ++ )        Dpnt[i] = CodStat.PrevWgt[i] ;    for ( i = 0 ; i < Frame ; i ++ )        Dpnt[PitchMax+i] = DataBuff[i] ;    Vec_Norm( Dpnt, (Word16) (PitchMax+Frame) ) ;    j = PitchMax ;    for ( i = 0 ; i < SubFrames/2 ; i ++ ) {        Line.Olp[i] = Estim_Pitch( Dpnt, (Word16) j ) ;        VadStat.Polp[i+2] = Line.Olp[i] ;        j += 2*SubFrLen ;    }            if(Ftyp != 1) {        /*        // Case of inactive signal        */        free ( (char *) Dpnt ) ;        /* Save PrevWgt */        for ( i = 0 ; i < PitchMax ; i ++ )            CodStat.PrevWgt[i] = DataBuff[i+Frame-PitchMax] ;        /* CodCng => Ftyp = 0 (untransmitted) or 2 (SID) */        Cod_Cng(DataBuff, &Ftyp, &Line, QntLpc);        /* Update the ringing delays */        Dpnt = DataBuff;        for( i = 0 ; i < SubFrames; i++ ) {            /* Update exc_err */            Update_Err(Line.Olp[i>>1], Line.Sfs[i].AcLg, Line.Sfs[i].AcGn);            Upd_Ring( Dpnt, &QntLpc[i*LpcOrder], &PerLpc[i*2*LpcOrder],                                                        CodStat.PrevErr ) ;            Dpnt += SubFrLen;        }    }    else {        /*        // Case of Active signal  (Ftyp=1)        */        /* Compute the Hmw */        j = PitchMax ;        for ( i = 0 ; i < SubFrames ; i ++ ) {            Pw[i] = Comp_Pw( Dpnt, (Word16) j, Line.Olp[i>>1] ) ;            j += SubFrLen ;        }        /* Reload the buffer */        for ( i = 0 ; i < PitchMax ; i ++ )            Dpnt[i] = CodStat.PrevWgt[i] ;        for ( i = 0 ; i < Frame ; i ++ )            Dpnt[PitchMax+i] = DataBuff[i] ;        /* Save PrevWgt */        for ( i = 0 ; i < PitchMax ; i ++ )            CodStat.PrevWgt[i] = Dpnt[Frame+i] ;                /* Apply the Harmonic filter */        j = 0 ;        for ( i = 0 ; i < SubFrames ; i ++ ) {            Filt_Pw( DataBuff, Dpnt, (Word16) j , Pw[i] ) ;            j += SubFrLen ;        }        free ( (char *) Dpnt ) ;                /* Inverse quantization of the LSP */        Lsp_Inq( LspVect, CodStat.PrevLsp, Line.LspId, Line.Crc ) ;                /* Interpolate the Lsp vectors */        Lsp_Int( QntLpc, LspVect, CodStat.PrevLsp ) ;                /* Copy the LSP vector for the next frame */        for ( i = 0 ; i < LpcOrder ; i ++ )            CodStat.PrevLsp[i] = LspVect[i] ;        /*        // Start the sub frame processing loop        */        Dpnt = DataBuff ;        for ( i = 0 ; i < SubFrames ; i ++ ) {                         /* Compute full impulse response */            Comp_Ir( ImpResp, &QntLpc[i*LpcOrder],                                            &PerLpc[i*2*LpcOrder], Pw[i] ) ;	    			                /* Subtract the ringing of previous sub-frame */            Sub_Ring( Dpnt, &QntLpc[i*LpcOrder], &PerLpc[i*2*LpcOrder],                                                  CodStat.PrevErr, Pw[i] ) ;            /* Compute adaptive code book contribution */            Find_Acbk( Dpnt, ImpResp, CodStat.PrevExc, &Line, (Word16) i) ;	                        /* Compute fixed code book contribution */            Find_Fcbk( Dpnt, ImpResp, &Line, (Word16) i ) ;                    /* Reconstruct the excitation */            Decod_Acbk( ImpResp, CodStat.PrevExc, Line.Olp[i>>1],                                    Line.Sfs[i].AcLg, Line.Sfs[i].AcGn ) ;           	 //   printf("%d,%d,\n",Line.Sfs[i].AcLg,Line.Sfs[i].AcGn);			                for ( j = SubFrLen ; j < PitchMax ; j ++ )                CodStat.PrevExc[j-SubFrLen] = CodStat.PrevExc[j] ;            for ( j = 0 ; j < SubFrLen ; j ++ ) {                Dpnt[j] = shl( Dpnt[j], (Word16) 1 ) ;                Dpnt[j] = add( Dpnt[j], ImpResp[j] ) ;                CodStat.PrevExc[PitchMax-SubFrLen+j] = Dpnt[j] ;            }                    /* Update exc_err */            Update_Err(Line.Olp[i>>1], Line.Sfs[i].AcLg, Line.Sfs[i].AcGn);	                /* Update the ringing delays */            Upd_Ring( Dpnt, &QntLpc[i*LpcOrder], &PerLpc[i*2*LpcOrder],                                                       CodStat.PrevErr ) ;          //  Write_lbc( QntLpc, 4*LpcOrder, fp ) ;            Dpnt += SubFrLen ;        }  /* end of subframes loop */        /*        // Save Vad information and reset CNG random generator        */        CodCng.PastFtyp = 1;        CodCng.RandSeed = 12345;    } /* End of active frame case */    /* Pack the Line structure */    Line_Pack( &Line, Vout, Ftyp ) ;    return (Flag) True ;}/////////////////////////////////////////////////////         Add By b1gm0use BEGIN///////////////////////////////////////////////////void set_enc_args ( enum Crate g723_high_bit_rate, Flag g723_voice_detect ){	WrkRate = g723_high_bit_rate;	UseVx = g723_voice_detect;	return;}/////////////////////////////////////////////////////         Add By b1gm0use END///////////////////////////////////////////////////

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品少妇一区二区三区在线视频| 91免费版在线| 日韩一级大片在线| 青青草国产精品97视觉盛宴| 欧美日韩大陆一区二区| 免费成人性网站| 精品国产123| 波多野结衣在线aⅴ中文字幕不卡| 中文字幕国产一区二区| 色综合久久88色综合天天6| 一区二区三区电影在线播| 欧美怡红院视频| 看电视剧不卡顿的网站| 久久精品网站免费观看| 成人精品一区二区三区中文字幕| 亚洲免费三区一区二区| 欧美精品丝袜久久久中文字幕| 另类调教123区| 国产精品理伦片| 欧美日韩黄色影视| 国产精品一区2区| 亚洲小说欧美激情另类| 日韩欧美资源站| kk眼镜猥琐国模调教系列一区二区 | 国产精品色噜噜| 色婷婷综合久色| 狂野欧美性猛交blacked| 国产精品乱人伦| 欧美日韩国产在线观看| 国产99久久久国产精品免费看| 亚洲欧美日韩国产中文在线| 欧美一区二区久久久| bt欧美亚洲午夜电影天堂| 日韩电影在线看| 成人免费在线视频| 久久蜜桃香蕉精品一区二区三区| 9人人澡人人爽人人精品| 日韩精品电影在线| 中文字幕一区二区三区不卡| 日韩三级高清在线| 欧美在线999| 成人午夜在线播放| 麻豆中文一区二区| 亚洲制服丝袜av| 中文字幕一区av| 欧美精品一区二区三区一线天视频| 一本一本久久a久久精品综合麻豆| 久草精品在线观看| 五月天丁香久久| 一区二区欧美国产| 国产欧美日韩精品a在线观看| 欧美日韩不卡一区| 欧美午夜不卡在线观看免费| 成人美女在线观看| 国产成人精品三级| 国产综合久久久久影院| 青青草精品视频| 日韩国产欧美一区二区三区| 亚洲色大成网站www久久九九| 2022国产精品视频| 欧美mv和日韩mv国产网站| 欧美一卡二卡在线| 91精品国产综合久久久久久久| 色偷偷88欧美精品久久久| 99久久伊人久久99| heyzo一本久久综合| 高清beeg欧美| 国产传媒一区在线| 国产乱对白刺激视频不卡| 日本免费在线视频不卡一不卡二| 亚洲二区在线视频| 亚洲成av人片| 日韩精品电影在线观看| 日本三级亚洲精品| 精品一区二区三区视频| 久久精品国产99久久6| 久久精品国产亚洲一区二区三区| 视频一区二区三区在线| 日韩成人精品在线观看| 日韩精品欧美成人高清一区二区| 日韩影视精彩在线| 激情久久久久久久久久久久久久久久| 肉色丝袜一区二区| 精品一区二区三区影院在线午夜| 视频一区在线播放| 麻豆精品视频在线观看| 久久精品国产秦先生| 国产在线精品不卡| 国产99久久久国产精品潘金网站| 不卡av在线网| 欧美色中文字幕| 欧美一区二区福利在线| 精品久久久久香蕉网| 久久精品免视看| 中文字幕亚洲在| 午夜av区久久| 国产精品一区二区免费不卡 | 91视视频在线直接观看在线看网页在线看| 成人ar影院免费观看视频| 99精品视频一区二区三区| 欧美在线免费播放| 欧美成人在线直播| 国产精品久久久久久久久免费桃花 | 91国产福利在线| 欧美一级二级三级乱码| 亚洲国产精品成人综合| 一区二区三区小说| 美女任你摸久久| av电影在线观看完整版一区二区| 欧美日韩电影在线| 亚洲国产高清在线| 亚洲电影欧美电影有声小说| 黄色资源网久久资源365| 99久久精品情趣| 在线播放一区二区三区| 国产欧美日韩激情| 午夜欧美在线一二页| 国产99久久久国产精品| 欧美久久久久免费| 国产精品视频yy9299一区| 亚洲精品乱码久久久久久黑人| 免费看黄色91| 91黄色免费看| 国产农村妇女毛片精品久久麻豆 | 午夜精品视频在线观看| 国产精品亚洲а∨天堂免在线| 日本电影欧美片| 久久精品免视看| 日韩精彩视频在线观看| 99国产精品国产精品毛片| 777午夜精品视频在线播放| 亚洲欧洲99久久| 九色综合国产一区二区三区| 欧洲一区二区三区在线| 欧美经典一区二区三区| 免费高清成人在线| 欧美日韩成人在线一区| 亚洲天天做日日做天天谢日日欢| 蜜桃传媒麻豆第一区在线观看| 在线看日韩精品电影| 国产精品传媒入口麻豆| 久99久精品视频免费观看| 欧美久久久久久蜜桃| 一区二区三区资源| 国产91丝袜在线播放| 精品欧美一区二区三区精品久久| 亚洲一区av在线| 91麻豆国产精品久久| 国产婷婷色一区二区三区在线| 久久99精品网久久| 91精品久久久久久久99蜜桃| 有坂深雪av一区二区精品| 成人免费观看视频| 国产欧美1区2区3区| 国内成+人亚洲+欧美+综合在线| 91精品国产高清一区二区三区| 亚洲最色的网站| 欧美影院一区二区三区| 一区二区三区.www| 欧美日韩综合色| 亚洲成人中文在线| 精品视频999| 性做久久久久久久免费看| 欧美优质美女网站| 亚洲成a人v欧美综合天堂| 欧美午夜免费电影| 丝袜诱惑制服诱惑色一区在线观看| 在线精品观看国产| 亚洲一级片在线观看| 欧美视频自拍偷拍| 亚洲成人资源网| 欧美肥妇free| 老司机精品视频一区二区三区| 欧美岛国在线观看| 国产精品自拍网站| 久久嫩草精品久久久精品| 国产在线麻豆精品观看| 久久婷婷色综合| 成人精品免费视频| 一区二区三区在线视频免费观看| 91国偷自产一区二区开放时间| 亚洲国产wwwccc36天堂| 日韩一区二区三区精品视频 | 亚洲va欧美va天堂v国产综合| 欧美三级乱人伦电影| 秋霞电影网一区二区| 日韩精品一区二区三区视频播放 | 亚洲国产精品欧美一二99| 欧美人xxxx| 精品一区二区三区免费播放| 久久久久久久一区| 99久久99久久精品免费观看| 一区二区三区四区国产精品| 欧美撒尿777hd撒尿| 麻豆久久一区二区| 国产精品色噜噜| 欧美日韩成人综合天天影院| 国产美女久久久久| 亚洲精品成人精品456| 日韩一区二区三区视频|