IP電話網(wǎng)關(guān)的語(yǔ)音數(shù)據(jù)處理
發(fā)布時(shí)間:2008/5/26 0:00:00 訪問(wèn)次數(shù):675
     旭 何 友
     清華大學(xué)電子系網(wǎng)絡(luò)與人機(jī)通信研究所(100084)黃永峰
     來(lái)源:《電子技術(shù)應(yīng)用》
     摘要:提出了一種集成式ip電話網(wǎng)關(guān)的實(shí)現(xiàn)方法,分析了語(yǔ)音信號(hào)在該網(wǎng)關(guān)中的處理過(guò)程,詳細(xì)介紹了語(yǔ)音采樣、播放、壓縮與解壓縮、rtp包的封裝與解包以及ip包的接受和發(fā)送的實(shí)現(xiàn)方法。
    
    
     關(guān)鍵詞:ip電話網(wǎng)關(guān)
     語(yǔ)音壓縮 rtp協(xié)議
     隨著ip電話技術(shù)的飛速發(fā)展,ip電話的實(shí)現(xiàn)方式正在由pc
     to pc過(guò)渡到phone to phone,在phone to phone的實(shí)現(xiàn)方式中,需要所謂的ip電話網(wǎng)關(guān)來(lái)連接pstn和因特網(wǎng)。因此ip電話網(wǎng)關(guān)成為目前計(jì)算機(jī)和通信領(lǐng)域研究的熱點(diǎn)之一。雖然國(guó)內(nèi)外許多廠商都在以不同的方式開發(fā)ip電話網(wǎng)關(guān),但他們有一個(gè)共同的特點(diǎn),即:幾乎所有ip電話網(wǎng)關(guān)都采用了自己的專用硬件設(shè)備。本文提出了一種采用市場(chǎng)上通用的板卡來(lái)構(gòu)造一種硬件集成式的ip電話網(wǎng)關(guān)的方法,并研究了語(yǔ)音數(shù)據(jù)在該網(wǎng)關(guān)的處理過(guò)程和實(shí)現(xiàn)方法。集成式ip電話網(wǎng)關(guān)的硬件構(gòu)成如圖1所示,它是在pentium
     ⅱ pc機(jī)基礎(chǔ)上,插入dialogic公司的d/41e型語(yǔ)音卡、lsi公司的c6200資源卡和d_link網(wǎng)卡所組成。其中d/41e語(yǔ)音卡用來(lái)完成語(yǔ)音的采樣和播放。c6200資源卡有一塊ti公司的tms320c6201dsp芯片,用來(lái)完成語(yǔ)音的壓縮和解壓縮以及回聲抵消。pentium
     ⅱ pc用來(lái)實(shí)現(xiàn)h.323協(xié)議棧的主要功能,網(wǎng)卡用來(lái)發(fā)送和接受ip包。下面具體分析語(yǔ)音數(shù)據(jù)在ip電話網(wǎng)關(guān)的處理過(guò)程和實(shí)現(xiàn)方法。
     1 語(yǔ)音采樣和播放
     在該ip電話網(wǎng)關(guān)中,語(yǔ)音的采樣和播放是由dialogic公司的d/41e型語(yǔ)音卡來(lái)完成,其中,語(yǔ)音采樣是利用語(yǔ)音卡所提供的錄音函數(shù)來(lái)完成的。在實(shí)時(shí)語(yǔ)音通信時(shí),語(yǔ)音數(shù)據(jù)存入語(yǔ)音采樣緩沖區(qū)中,等待語(yǔ)音壓縮線程取出并處理。錄音函數(shù)形式如下:
     dx_reciottdata (activechdev,&chinfo [activechdev].iott,&tptrec[0],&xpbvox,mode);
     該函數(shù)的輸入?yún)?shù)的含義如下:
     int chdev 語(yǔ)音通道的設(shè)備句柄
     dx_iott *iott
     指向語(yǔ)音數(shù)據(jù)目的地的指針
     dv_tpt *tptp 指向終止參數(shù)塊的指針
     dx_xpb *xpbp 指向i/o傳輸塊的指針
     unsigned short mode 錄音所采取的方式
     iott是一種dx_iott類型的數(shù)據(jù)結(jié)構(gòu),該數(shù)據(jù)結(jié)構(gòu)中的io_type可取值io_dev和io_mem,分別用于指定語(yǔ)音數(shù)據(jù)存入文件還是存入緩沖區(qū)中。io_type的另一類取值可為io_cont,io_link或dx_iott,用于指定語(yǔ)音數(shù)據(jù)目的地的結(jié)構(gòu)。如果io_type取值io_dev,則io_fhandle的值應(yīng)為一個(gè)文件的句柄;如果io_type取值io_mem,則io_fhandle的值應(yīng)為0,此時(shí),io_bufp指向存放語(yǔ)音數(shù)據(jù)的緩沖區(qū)的起始地址。io_offset為地址偏移量。io_length用于指定文件或緩沖區(qū)的大小。如果io_type取值io_link,則io_nextp指向下一個(gè)存放語(yǔ)音數(shù)據(jù)的dx_iott數(shù)據(jù)結(jié)構(gòu),而io_pre
     vp指向上一個(gè)存放語(yǔ)音數(shù)據(jù)的dx_iott數(shù)據(jù)結(jié)構(gòu)。dx_iott的數(shù)據(jù)結(jié)構(gòu)定義如下:
     typedef struct dx_iott {
     unsigned short io_type; /*transfer type*/
     unsigned short rfu; /*reserved*/
     int io_fhandle; /*file descriptor*/
     char* io_bufp; /*pointer to base memory*/
     unsigned long io_offset; /*file/buffer
     offset*/
     long int io_length; /*length of data*/
     dx_iott io_nextp; /*ptr to next dx_iott if
     旭 何 友
     清華大學(xué)電子系網(wǎng)絡(luò)與人機(jī)通信研究所(100084)黃永峰
     來(lái)源:《電子技術(shù)應(yīng)用》
     摘要:提出了一種集成式ip電話網(wǎng)關(guān)的實(shí)現(xiàn)方法,分析了語(yǔ)音信號(hào)在該網(wǎng)關(guān)中的處理過(guò)程,詳細(xì)介紹了語(yǔ)音采樣、播放、壓縮與解壓縮、rtp包的封裝與解包以及ip包的接受和發(fā)送的實(shí)現(xiàn)方法。
    
    
     關(guān)鍵詞:ip電話網(wǎng)關(guān)
     語(yǔ)音壓縮 rtp協(xié)議
     隨著ip電話技術(shù)的飛速發(fā)展,ip電話的實(shí)現(xiàn)方式正在由pc
     to pc過(guò)渡到phone to phone,在phone to phone的實(shí)現(xiàn)方式中,需要所謂的ip電話網(wǎng)關(guān)來(lái)連接pstn和因特網(wǎng)。因此ip電話網(wǎng)關(guān)成為目前計(jì)算機(jī)和通信領(lǐng)域研究的熱點(diǎn)之一。雖然國(guó)內(nèi)外許多廠商都在以不同的方式開發(fā)ip電話網(wǎng)關(guān),但他們有一個(gè)共同的特點(diǎn),即:幾乎所有ip電話網(wǎng)關(guān)都采用了自己的專用硬件設(shè)備。本文提出了一種采用市場(chǎng)上通用的板卡來(lái)構(gòu)造一種硬件集成式的ip電話網(wǎng)關(guān)的方法,并研究了語(yǔ)音數(shù)據(jù)在該網(wǎng)關(guān)的處理過(guò)程和實(shí)現(xiàn)方法。集成式ip電話網(wǎng)關(guān)的硬件構(gòu)成如圖1所示,它是在pentium
     ⅱ pc機(jī)基礎(chǔ)上,插入dialogic公司的d/41e型語(yǔ)音卡、lsi公司的c6200資源卡和d_link網(wǎng)卡所組成。其中d/41e語(yǔ)音卡用來(lái)完成語(yǔ)音的采樣和播放。c6200資源卡有一塊ti公司的tms320c6201dsp芯片,用來(lái)完成語(yǔ)音的壓縮和解壓縮以及回聲抵消。pentium
     ⅱ pc用來(lái)實(shí)現(xiàn)h.323協(xié)議棧的主要功能,網(wǎng)卡用來(lái)發(fā)送和接受ip包。下面具體分析語(yǔ)音數(shù)據(jù)在ip電話網(wǎng)關(guān)的處理過(guò)程和實(shí)現(xiàn)方法。
     1 語(yǔ)音采樣和播放
     在該ip電話網(wǎng)關(guān)中,語(yǔ)音的采樣和播放是由dialogic公司的d/41e型語(yǔ)音卡來(lái)完成,其中,語(yǔ)音采樣是利用語(yǔ)音卡所提供的錄音函數(shù)來(lái)完成的。在實(shí)時(shí)語(yǔ)音通信時(shí),語(yǔ)音數(shù)據(jù)存入語(yǔ)音采樣緩沖區(qū)中,等待語(yǔ)音壓縮線程取出并處理。錄音函數(shù)形式如下:
     dx_reciottdata (activechdev,&chinfo [activechdev].iott,&tptrec[0],&xpbvox,mode);
     該函數(shù)的輸入?yún)?shù)的含義如下:
     int chdev 語(yǔ)音通道的設(shè)備句柄
     dx_iott *iott
     指向語(yǔ)音數(shù)據(jù)目的地的指針
     dv_tpt *tptp 指向終止參數(shù)塊的指針
     dx_xpb *xpbp 指向i/o傳輸塊的指針
     unsigned short mode 錄音所采取的方式
     iott是一種dx_iott類型的數(shù)據(jù)結(jié)構(gòu),該數(shù)據(jù)結(jié)構(gòu)中的io_type可取值io_dev和io_mem,分別用于指定語(yǔ)音數(shù)據(jù)存入文件還是存入緩沖區(qū)中。io_type的另一類取值可為io_cont,io_link或dx_iott,用于指定語(yǔ)音數(shù)據(jù)目的地的結(jié)構(gòu)。如果io_type取值io_dev,則io_fhandle的值應(yīng)為一個(gè)文件的句柄;如果io_type取值io_mem,則io_fhandle的值應(yīng)為0,此時(shí),io_bufp指向存放語(yǔ)音數(shù)據(jù)的緩沖區(qū)的起始地址。io_offset為地址偏移量。io_length用于指定文件或緩沖區(qū)的大小。如果io_type取值io_link,則io_nextp指向下一個(gè)存放語(yǔ)音數(shù)據(jù)的dx_iott數(shù)據(jù)結(jié)構(gòu),而io_pre
     vp指向上一個(gè)存放語(yǔ)音數(shù)據(jù)的dx_iott數(shù)據(jù)結(jié)構(gòu)。dx_iott的數(shù)據(jù)結(jié)構(gòu)定義如下:
     typedef struct dx_iott {
     unsigned short io_type; /*transfer type*/
     unsigned short rfu; /*reserved*/
     int io_fhandle; /*file descriptor*/
     char* io_bufp; /*pointer to base memory*/
     unsigned long io_offset; /*file/buffer
     offset*/
     long int io_length; /*length of data*/
     dx_iott io_nextp; /*ptr to next dx_iott if
熱門點(diǎn)擊
- IP電話中的低速率語(yǔ)音編解碼器的實(shí)現(xiàn)
- DSP在移動(dòng)通信中的應(yīng)用
- 基帶信號(hào)處理芯片組件AD20msp425
- Trimedia DSP芯片在視頻通信中的應(yīng)
- TMS320C203在高性價(jià)比、低功耗短波數(shù)
- IP電話網(wǎng)關(guān)的語(yǔ)音數(shù)據(jù)處理
- 數(shù)字語(yǔ)音混沌保密通信系統(tǒng)及硬件實(shí)現(xiàn)
- 用戶端設(shè)備的語(yǔ)音分組設(shè)計(jì)與語(yǔ)音網(wǎng)關(guān)
- TMS320C5402實(shí)現(xiàn)16路全雙工來(lái)電顯
- 雙異步串口經(jīng)AT89C2051與TMS320
推薦技術(shù)資料
- CV/CC InnoSwitch3-AQ 開
- URF1DxxM-60WR3系
- 1-6W URA24xxN-x
- 閉環(huán)磁通門信號(hào)調(diào)節(jié)芯片NSDRV401
- SK-RiSC-SOM-H27X-V1.1應(yīng)
- RISC技術(shù)8位微控制器參數(shù)設(shè)
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動(dòng)IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機(jī)遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計(jì)
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究