亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于局域網(wǎng)的語音通信實(shí)驗(yàn)系統(tǒng)的設(shè)計(jì)與應(yīng)用

        2018-01-15 09:25:00強(qiáng),明
        關(guān)鍵詞:編解碼通話局域網(wǎng)

        李 強(qiáng),明 艷

        在語音信號處理、多媒體通信、通信原理和移動通信等課程中,都會涉及語音編碼相關(guān)的知識,如G.711A律64 kb/s的PCM編碼、第二代移動通信GSM系統(tǒng)中的RPE-LTP編碼和第三代移動通信系統(tǒng)中的AMR編碼等[1-3]。在這些理論課的授課過程中,老師大多只是講解語音編碼的基本原理、相關(guān)標(biāo)準(zhǔn)和應(yīng)用場景等內(nèi)容,學(xué)生不能親身體驗(yàn)用這些標(biāo)準(zhǔn)實(shí)現(xiàn)的編碼器輸出語音的質(zhì)量,如語音的音質(zhì)、清晰度、自然度和辨識度等[4]。學(xué)習(xí)這些課程的學(xué)生也大多不會考慮用軟件,如用C語言去實(shí)現(xiàn)相關(guān)標(biāo)準(zhǔn)的語音編碼器。如果學(xué)生用軟件實(shí)現(xiàn)了這些語音編碼器,也沒有一個(gè)便捷的系統(tǒng)或平臺給予支撐,如對語音的質(zhì)量進(jìn)行測試,采用這些實(shí)現(xiàn)的編碼器進(jìn)行語音通話等。針對這些教學(xué)和學(xué)生對語音質(zhì)量測試和應(yīng)用的需求,本文采用了多線程模塊化的軟件結(jié)構(gòu),通過UDP/IP協(xié)議[5],利用校園局域網(wǎng)為傳輸通道,實(shí)現(xiàn)了一個(gè)語音通信實(shí)驗(yàn)系統(tǒng)。該系統(tǒng)除了支持多種標(biāo)準(zhǔn)的語音編碼器進(jìn)行雙向?qū)崟r(shí)通話外,還能測試編碼器語音的主觀質(zhì)量、編解碼時(shí)延、傳輸流量、語音壓縮比等指標(biāo)。由于系統(tǒng)采用了模塊化的設(shè)計(jì)結(jié)構(gòu),學(xué)生可以把自己用軟件實(shí)現(xiàn)的語音編解碼器添加到系統(tǒng)的編解碼模塊中,即可利用該系統(tǒng)實(shí)現(xiàn)雙向語音實(shí)時(shí)通話,并進(jìn)行性能指標(biāo)的測試。因此,本文實(shí)現(xiàn)的系統(tǒng)具有良好的靈活性和擴(kuò)展性,可用于與語音編碼相關(guān)課程的實(shí)驗(yàn)和理論教學(xué)中。

        1 語音通信實(shí)驗(yàn)系統(tǒng)的設(shè)計(jì)

        1.1 系統(tǒng)結(jié)構(gòu)

        基于局域網(wǎng)的語音通信實(shí)驗(yàn)系統(tǒng)的架構(gòu)如圖1所示。系統(tǒng)由語音信號的采集,語音數(shù)據(jù)的存儲、統(tǒng)計(jì)和播放,語音編解碼器,傳輸控制和網(wǎng)絡(luò)傳輸5個(gè)部分組成。

        1.1.1 語音信號的采集

        系統(tǒng)通過PC機(jī)聲卡采用音頻波形API技術(shù)[6]對語音信號進(jìn)行實(shí)時(shí)采集、量化和編碼。采樣率、量化方式和量化級數(shù)可根據(jù)需要通過系統(tǒng)界面進(jìn)行設(shè)置。采集到的數(shù)據(jù)以語音編碼的幀長為單位填充到設(shè)置的數(shù)據(jù)緩沖區(qū)中。

        圖1 基于局域網(wǎng)的語音通信實(shí)驗(yàn)系統(tǒng)架構(gòu)

        1.1.2 語音的存儲、統(tǒng)計(jì)和播放

        在進(jìn)行語音通信前,需對語音數(shù)據(jù)進(jìn)行連續(xù)保存。系統(tǒng)采用乒乓存儲結(jié)構(gòu)[7],設(shè)置兩個(gè)語音緩沖隊(duì)列,輪流對兩個(gè)緩沖區(qū)讀寫數(shù)據(jù)。某一緩沖區(qū)被填滿語音數(shù)據(jù)后,系統(tǒng)立刻解鎖該緩沖區(qū),并讀取數(shù)據(jù),采用語音編碼器對數(shù)據(jù)進(jìn)行壓縮編碼,形成數(shù)據(jù)碼流后,通過局域網(wǎng)發(fā)送到接收端,同時(shí)把該緩沖區(qū)重新加入語音緩沖區(qū)隊(duì)列中。

        為了對發(fā)送到局域網(wǎng)的數(shù)據(jù)流量進(jìn)行統(tǒng)計(jì),在緩沖區(qū)中設(shè)定了一個(gè)事件,當(dāng)壓縮后的數(shù)據(jù)碼流的數(shù)據(jù)量達(dá)到事件設(shè)定的大小,便開始發(fā)送數(shù)據(jù)。本系統(tǒng)把發(fā)送一次的數(shù)據(jù)稱為一個(gè)包,通過統(tǒng)計(jì)包的個(gè)數(shù)來計(jì)算發(fā)送的數(shù)據(jù)流量。

        接收端接收到語音數(shù)據(jù)碼流后,采用與發(fā)送端相同標(biāo)準(zhǔn)的語音解碼器進(jìn)行解碼,把解碼后的數(shù)據(jù)寫入接收緩沖區(qū)中。本系統(tǒng)對接收緩沖區(qū)設(shè)置了兩個(gè)指針,即播放指針和寫指針。寫指針解決數(shù)據(jù)覆蓋問題,指示用于寫入數(shù)據(jù)緩沖區(qū)的位置;而播放指針則表示當(dāng)前所播放的數(shù)據(jù)末尾。接收端通過調(diào)用Media庫里的WaveOut函數(shù)對解碼后的語音進(jìn)行播放。

        1.1.3 語音編解碼器

        本系統(tǒng)實(shí)現(xiàn)了G.711 A律PCM編碼、G.729、MELP、SMV和ARM語音編解碼器。G.711是ITU-T提出的8 kHz采樣,8 bit非均勻量化的波形編碼標(biāo)準(zhǔn)[8],廣泛用在電話通信中,其原理和方法是通信原理課程的重要內(nèi)容。G.729聲碼器使用了LPC分析合成技術(shù),通過使得實(shí)際語音與合成語音之間誤差能量最小為準(zhǔn)則來進(jìn)行編碼,該聲碼器具有較高的壓縮率;MELP采用多帶混合激勵等技術(shù)提高了合成的語音質(zhì)量,可實(shí)現(xiàn)1.2~4 kb/s的低碼率聲碼器;SMV是3G移動通信系統(tǒng)變速率語音編碼選項(xiàng)之一[9-11]。針對這些不同標(biāo)準(zhǔn),不用應(yīng)用場景的語音編碼器,本文系統(tǒng)通過調(diào)用語音編解碼器函數(shù)的方式來實(shí)現(xiàn)對采集或接收到的語音進(jìn)行實(shí)時(shí)編解碼。

        1.1.4 傳輸控制

        UDP是一種面向無連接的協(xié)議,具有資源消耗小,處理速度快的優(yōu)點(diǎn)[12],通常用于音頻、視頻和普通數(shù)據(jù)的傳送。本系統(tǒng)為了實(shí)現(xiàn)語音數(shù)據(jù)的實(shí)時(shí)傳送,采用了UDP Socket作為網(wǎng)絡(luò)端口的監(jiān)聽[13],該Socket采用異步工作模式。為了實(shí)現(xiàn)全雙工語音通信,系統(tǒng)分別建立發(fā)送和接收UDP Socket,通過綁定接收端和發(fā)送的端口號,對Socket的發(fā)送數(shù)據(jù)和接收數(shù)據(jù)進(jìn)行消息處理。當(dāng)收發(fā)雙方啟動程序并監(jiān)聽后,均處于偵聽通話邀請狀態(tài),當(dāng)某一方向另一方發(fā)出通話邀請,被叫方能夠聽到發(fā)送端的聲音,當(dāng)點(diǎn)擊開始通話后,雙方便進(jìn)入語音通信狀態(tài),收發(fā)兩端的系統(tǒng)啟動錄音和放音線程,即可進(jìn)行全雙工語音通信。

        1.1.5 網(wǎng)絡(luò)傳輸

        系統(tǒng)以局域網(wǎng)作為語音通信的傳輸媒介。兩臺接入局域網(wǎng)的PC機(jī)啟動并運(yùn)行語音通信測試系統(tǒng)軟件后,設(shè)置收發(fā)兩端的IP地址,選擇相同的編碼器,并呼叫對方,當(dāng)對方確認(rèn)后,便可通過局域網(wǎng)進(jìn)行語音通話。

        1.2 多線程框架

        系統(tǒng)工作在peer to peer模式,即收發(fā)雙方使用同一個(gè)程序[14]。如圖2所示,是語音通信采用的線程架構(gòu),其中,主線程用來響應(yīng)程序界面的設(shè)置。語音發(fā)送和語音接收是分開進(jìn)行的,均通過異步調(diào)用方式來實(shí)現(xiàn)。語音的發(fā)送通過Bufferfull事件觸發(fā)mˉpWaveInˉBufferFull來實(shí)現(xiàn),而收發(fā)兩端系統(tǒng)則通過 mˉpUdpServerˉPacketReceived來接收語音數(shù)據(jù),并調(diào)用mˉpWaveOut.Play來播放語音。監(jiān)聽是否收到數(shù)據(jù)也采用了異步方式,目的是減少線程數(shù)目和開銷。

        圖2 多線程架構(gòu)

        通過引入多線程,系統(tǒng)可以同時(shí)發(fā)送和播放語音。語音的發(fā)送和播放通過SendTestAudio和Play-TestAudio線程來實(shí)現(xiàn)。引入SendTest的目的是通過編碼和播放測試語音,測試語音質(zhì)量和計(jì)算語音編碼器的編碼效率。

        1.3 語音通信實(shí)驗(yàn)系統(tǒng)界面

        實(shí)驗(yàn)系統(tǒng)界面如圖3所示,在 “參數(shù)設(shè)定”中選擇語音編碼器類型、采樣率和量化級數(shù)。當(dāng)對方收到通話邀請時(shí),系統(tǒng)會自動詢問是否匹配參數(shù),只有參數(shù)匹配一致才能正常傳輸。 “設(shè)備選擇”的設(shè)置主要是考慮到當(dāng)一個(gè)終端擁有多個(gè)語音輸入輸出設(shè)備時(shí),要對參與工作的設(shè)備進(jìn)行選擇?!氨镜卦O(shè)置”用于設(shè)置本地IP地址和端口號11100。本地設(shè)置完成后,單擊 “監(jiān)聽”,然后在“目標(biāo)設(shè)置”中,設(shè)置接收端的IP地址和端口號11100。收發(fā)兩端點(diǎn)擊 “開始通話”,則可以進(jìn)行雙向的實(shí)時(shí)通信。在通話過程中,系統(tǒng)還可以實(shí)時(shí)顯示編解碼延時(shí)、接收和發(fā)送數(shù)據(jù)包的數(shù)量和字節(jié)數(shù)。“發(fā)送測試音”和 “播放測試音”可以對wav格式的語音文件進(jìn)行編解碼處理和播放。

        圖3 語音通信實(shí)驗(yàn)系統(tǒng)界面

        2 語音通信實(shí)驗(yàn)系統(tǒng)的應(yīng)用

        本文設(shè)計(jì)的系統(tǒng)能測試語音質(zhì)量、壓縮比、編解碼延時(shí)、數(shù)據(jù)流量等指標(biāo),可用于語音編碼相關(guān)課程的理論和實(shí)驗(yàn)教學(xué),如老師講解某個(gè)語音編碼器的編碼原理和方法時(shí),可以現(xiàn)場為學(xué)生播放經(jīng)過該系統(tǒng)輸出的語音,也可以比較不同語音編碼器的特點(diǎn),如音質(zhì)、算法復(fù)雜度、壓縮比等。實(shí)驗(yàn)老師用該系統(tǒng)可以開發(fā)出一些相關(guān)的實(shí)驗(yàn)項(xiàng)目,如要求學(xué)生去實(shí)現(xiàn)一些語音編碼器,然后用該系統(tǒng)進(jìn)行測試等。

        圖4 G.711 A率編碼器測試結(jié)果

        如果在本地和目標(biāo)IP地址均設(shè)置為127.0.0.1,系統(tǒng)可以進(jìn)行自發(fā)自收的自環(huán)測試。自環(huán)測試時(shí),點(diǎn)擊 “發(fā)送測試音”,從PC機(jī)中選擇要編碼的語音文件,然后點(diǎn)擊 “開始通話”,用選擇的語音編碼器對語音文件數(shù)據(jù)進(jìn)行編解碼處理;再點(diǎn)擊 “發(fā)送測試音”,可以播放經(jīng)過編解碼后的語音,如果點(diǎn)擊 “播放測試音”,則可播放沒有經(jīng)過任何編解碼處理的原始語音文件。

        如圖3所示,是沒有經(jīng)過壓縮編碼的某個(gè)語音文件的自環(huán)測試界面,接收和發(fā)送字節(jié)數(shù)均為110.375 kB,即該語音測試文件的大小為110.375 kB。如圖4所示,顯示了該測試語音文件經(jīng)G.711 A率編碼器的測試結(jié)果,收發(fā)字節(jié)數(shù)為55.187 5 kB,編解碼延時(shí)分別為2.1μs和1.2μs,通過計(jì)算該編碼器發(fā)送字節(jié)數(shù)和原始語音文件字節(jié)數(shù)之比,可得出該編碼器的語音壓縮比為1/2。分別點(diǎn)擊圖4系統(tǒng)界面的 “發(fā)送測試音”和 “播放測試音”,啟動語音的播放,通過試聽,可以體驗(yàn)經(jīng)過編解碼處理后的語音和原始語音之間音質(zhì)的差別,評估出語音編碼器的主觀語音質(zhì)量。如圖5所示,是G.729語音編碼器的測試結(jié)果,收發(fā)字節(jié)數(shù)均為7.031 25 kB,壓縮比接近1/16,編解碼延時(shí)分別為678.6μs和256.3 μs。

        圖5 G.729編碼器測試結(jié)果

        圖6 采用SMV編碼器的語音通信界面

        如圖6所示,是在兩臺PC機(jī)上運(yùn)行本文語音通信測試系統(tǒng),通過校園局域網(wǎng)進(jìn)行語音通話的界面。兩端系統(tǒng)均選擇SMV 4 kb/s語音編碼器,“本地設(shè)置”和 “目標(biāo)設(shè)置”分別輸入本地和目的IP地址,點(diǎn)擊 “開始通話”后,兩端語音通信測試系統(tǒng)即可進(jìn)行雙向?qū)崟r(shí)語音通信,并實(shí)時(shí)顯示收發(fā)數(shù)據(jù)流量和編解碼延時(shí)。

        3 結(jié)束語

        本文采用多線程模塊化結(jié)構(gòu)進(jìn)行軟件設(shè)計(jì),通過UDP/IP協(xié)議,以局域網(wǎng)為傳輸通道,實(shí)現(xiàn)了具有良好可擴(kuò)展性和實(shí)用性的語音通信系統(tǒng)。該系統(tǒng)既能通過局域網(wǎng)絡(luò)進(jìn)行雙向?qū)崟r(shí)語音通信,又能測試各種語音編碼器語音的主觀質(zhì)量和壓縮比,還能實(shí)時(shí)顯示語音通信過程中編解碼延時(shí),可用于語音信號處理相關(guān)課程的理論教學(xué)案例演示,也可基于該系統(tǒng)開發(fā)相應(yīng)的實(shí)驗(yàn)項(xiàng)目,還可用于學(xué)生測試自己實(shí)現(xiàn)的語音編碼器的質(zhì)量。

        [1]張鳴.通信原理仿真實(shí)驗(yàn)系統(tǒng)設(shè)計(jì)[J].實(shí)驗(yàn)技術(shù)與管理,2013,30(6):54-57,61.

        [2]晏燕,王惠琴.多媒體通信課程的教學(xué)改革與探討[J].蘭州文理學(xué)院學(xué)報(bào)(自然科學(xué)版),2014,28(4):107-110,128.

        [3]涂繼輝,蘇麗秋.基于OpenBTS和Asterisk的移動通信實(shí)驗(yàn)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].實(shí)驗(yàn)技術(shù)與管理,2014,31(5):65-70.

        [4]楊毅,鄧北星,馬曉紅.《語音信號處理》實(shí)驗(yàn)教學(xué)研究與實(shí)踐[J].實(shí)驗(yàn)科學(xué)與技術(shù),2012,10(6):112-115,180.

        [5]崔鶴,劉云清,盛家進(jìn).基于FPGA的UDP/IP協(xié)議棧的研究與實(shí)現(xiàn)[J].長春理工大學(xué)學(xué)報(bào)(自然科學(xué)版),2014,37(2):133-137.

        [6]馮金金,吳游.基于DSP的音頻信號壓縮通信系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].信息技術(shù),2016(8):200-203.

        [7]李桂菊.利用DSP底層結(jié)構(gòu)提高M(jìn)PEG-4編碼的實(shí)時(shí)性[J].中國光學(xué),2011,4(5):461-467.

        [8]徐海潮,張江鑫,蔣伊樂.基于DM365的IP語音終端設(shè)計(jì)[J].杭州電子科技大學(xué)學(xué)報(bào) (綜合版),2013,33(5):146-149.

        [9]郭燕.多點(diǎn)語音通信在船舶通信系統(tǒng)中的仿真[J].艦船科學(xué)技術(shù),2016,38(7):98-99.

        [10]李強(qiáng),謝虹恩.改進(jìn)的基于MELP的非連續(xù)傳輸語音編碼算法[J].重慶郵電大學(xué)學(xué)報(bào)(自然科學(xué)版),2014,26(5):636-641.

        [11]夏曉峰.可選取模式聲碼器SMV算法優(yōu)化[J].雞西大學(xué)學(xué)報(bào) (綜合版),2014,14(9):49-51.

        [12]范開俊,徐丙垠,陳羽,等.配電網(wǎng)分布式控制實(shí)時(shí)數(shù)據(jù)的GOOSE over UDP傳輸方式[J].電力系統(tǒng)自動化,2016,40(4):115-120.

        [13]李淑梅,王志彬.Socket在局域網(wǎng)聊天系統(tǒng)中的應(yīng)用[J].吉林師范大學(xué)學(xué)報(bào)(自然科學(xué)版),2014,35(1):71-73.

        [14]張立晨,張晉豫.基于分區(qū)概率的P2P實(shí)時(shí)流媒體緩存策略[J].軟件,2014,35(4):12-17.

        猜你喜歡
        編解碼通話局域網(wǎng)
        1553B總線控制器編解碼設(shè)計(jì)
        基于VPN的機(jī)房局域網(wǎng)遠(yuǎn)程控制系統(tǒng)
        電子制作(2019年16期)2019-09-27 09:35:04
        大型民機(jī)試飛遙測視頻編解碼方法研究
        《戊戌元日與友人通話》
        中華詩詞(2018年5期)2018-11-22 06:46:08
        基于H.265編解碼的高清視頻傳輸系統(tǒng)研究
        電子測試(2018年18期)2018-11-14 02:30:54
        基于802.1Q協(xié)議的虛擬局域網(wǎng)技術(shù)研究與實(shí)現(xiàn)
        電子制作(2017年17期)2017-12-18 06:40:48
        局域網(wǎng)性能的優(yōu)化
        電子制作(2017年8期)2017-06-05 09:36:15
        低成本視頻通話APP
        2013年11月通信業(yè)主要指標(biāo)完成情況(一)
        主流視頻編解碼軟件的硬件性能分析與設(shè)計(jì)
        色优网久久国产精品| 高清偷自拍第1页| 国产欧美日韩在线观看| 中文亚洲成a人片在线观看 | 久久综合这里只有精品| 国产日产久久高清ww| 亚洲天堂男人的av天堂| 亚洲综合精品中文字幕| 国产性生大片免费观看性| 精品第一页| 亚洲成AV人国产毛片| 国产高清人肉av在线一区二区| 亚洲精品动漫免费二区| 人妻无码中文字幕免费视频蜜桃| 无码人妻专区一区二区三区| 日韩一区二区三区熟女| 日韩精品视频一区二区三区 | 国产艳妇av在线出轨| 亚洲av色香蕉一区二区三区软件| 久久久久成人精品免费播放动漫| 国产免费av片在线观看播放| 亚洲av高清在线观看三区| 丰满巨臀人妻中文字幕| 午夜精品久久久久久久无码| 激情97综合亚洲色婷婷五| 日本一区二区三区专区| 亚洲亚色中文字幕剧情| 国产美女在线精品免费观看| 亚洲AV无码一区二区三区性色学| 久久国产精品亚洲我射av大全| 国产精品亚洲色婷婷99久久精品| 国产极品久久久久极品| 人妻精品一区二区免费| 亚洲精品视频中文字幕| 粗壮挺进人妻水蜜桃成熟漫画| 亚洲一区sm无码| 免费看片的网站国产亚洲| 国产成人精品免费久久久久| 国产在线不卡一区二区三区| 欧美精品高清在线xxxx| 狠狠爱婷婷网五月天久久|