999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于LabVIEW實現網絡語音通信

2015-04-29 00:00:00楊海明馬志強龔松顯李悅
電子產品世界 2015年7期

摘要:為了實現虛擬儀器的遠程網絡語音通信,依托LabVIEW強大的網絡通信能力,采用NI公司開發的基于TCP/IP協議的DataSocket技術,編程實現遠程語音數據的點對點傳輸。用此技術可以很大程度上簡化甚至免除網絡通訊編程,可以很容易在網絡上實現高速語音數據傳遞。本文網絡版地址:http:∥www.eepw.com.cn/article/276360.htm

關鍵詞:DataSocket;語音通信;LabVIEW

DOI:10.3969/j.issn.1005-5517.2015.6.013

引言

LabVIEW具有強大的信號采集功能和網絡通信功能,這些功能使得LabVIEW的用戶可以很容易編寫出具有強大網絡通訊能力的LabVIEW應用軟件,實現遠程虛擬儀器。為了將人的語音或某個地點現場的聲音信號遠傳,可以依托LabVIEW這些功能,將聯網計算機聲卡上采集的語音信號,進行遠程語音數據的點對點傳輸。應用環境的網絡拓撲圖,如圖1所示。

1 利用DataSocket技術傳輸語音

LabVIEW實現網絡通信有3大類方法:(1)使用網絡通信協議編程實現網絡通信,可以使用的通信協議類型包括TCP/IP協議、UDP、串口通信協議等;(2)使用基于TCP/IP的數據傳輸協議DSTP的JDataSocket技術實現網絡通信;(3)使用共享變量實現網絡通信。由于網絡語音通信要求實時性強。本文采用第二種方法即DataSocket技術實現網絡語音通信。

DataSocket是NI公司提供的一種實時數據傳輸技術,可用于一個計算機內或網絡中多個應用程序之間的數據交換,是專門面向測量和自動化工程的網絡實時高速數據交換的編程技術。DataSocket克服了傳統TCP/IP傳輸協議需要較為復雜的底層編程、傳輸速率較慢(特別是對動態數據)等缺點,大大簡化了實時數據傳輸問題,它提供了一種易用、高效、可編程的軟件接口,能夠很方便地實現網絡上的多臺計算機之間的實時數據交換。

DataSocket包括了DataSocketServer Manager、DataSocket Server和DataSocket函數庫這幾個工具軟件,以及DSTP(DataSocket transferprotocol,DataSocket傳輸協議)、URL(uniform resource locator,通用資源定位符)和文件格式等技術規范。在LabVIEW中,用戶可以很方便地使用這些工具來實現遠程數據采集。

語音傳輸程序用到以下兩個DataSocketⅥ:

(1)讀取DataSocket函數(ReadDataSocket.vi):該節點用于從打開的URL連接中讀取數據。

(2)寫入DataSocket函數(WriteDataSocket.vi):該節點用于向打開的URL連接中寫入數據。這里的數據可以是單個或數組形式的字符串、邏輯(布爾)量和數值量等多種類型。

2 語音采集

利用聲卡采集語音信號實現語音信號雙聲道模擬輸入。將麥克風(話筒)插在聲卡的話筒輸入端口,并將其插入聲卡上的標記為“Mic In”的插孔中。通過該端口可以采集人的語音信號。

語音采集程序用到以下三個聲音處理相關Ⅵ:

(1)配置聲音輸入函數(SoundInput Configure.vi):利用該Ⅵ配置聲卡,并開始進行語音采集。采樣率設置為44.1kHz。通道數為2(即立體聲雙聲道輸入),每采樣比特數(即采樣位數為16位,采樣模式為連續采樣,緩存大小設置為每通道10000個樣本。

(2)讀取聲音輸入函數(SoundInput Read.vi):利用該Ⅵ從緩存中讀取數據。程序中,為了連續采集語音信號,將“讀取聲音輸入Ⅵ”放在了一個While循環中,用于從緩存中連續讀取語音數據,設置每次從每個通道中讀取樣本數為4410個。

(3)聲音輸入清零函數(Sound InputClear.vi):利用該Ⅵ停止采樣,并進行清除緩存和清除占用的內存等操作。

3 語音播放

利用聲卡輸出語音信號實現語音信號雙聲道模擬輸出。將揚聲器(喇叭)插在揚聲器輸出端口,并將其插入聲卡上的標記為“Speaker”或“SPK”的插孔中。通過該端口可以外接音箱的音頻線插頭,從而播放通過網絡傳輸過來的語音信號。

語音播放程序用到以下四個聲音處理相關Ⅵ:

(1)配置聲音輸出函數(SoundOutput Configure.vi):利用該Ⅵ配置聲卡,并開始聲音輸出。采樣率設置為44.1kHz。通道數為2(即立體聲雙聲道輸入),每采樣比特數(即采樣位數為16位,采樣模式為連續采樣,緩存大小設置為每通道10000個樣本。

(2)調用讀取聲音輸入函數(SoundInput Write.vi):該Ⅵ用于向緩存中寫入信號,本項目用來向緩存中寫入由網絡傳輸過來的語音信號。程序中,在其外邊添加一個While循環,實現連續寫入語音數據。

(3)設置聲音輸出音量函數(SoundOutput Set Volume.vi):該Ⅵ使用時串接在“設置聲音輸出音!Ⅵ”上,用于控制輸出音量大小。

(4)聲音輸出清零Ⅵ(sound OutputClear.vi):該Ⅵ用于停止輸出并執行相應的清除操作。

4 程序實現

程序采用C/S(Client/Server)模式,即客戶/服務器模式,包括一個服務器Ⅵ和一個客戶機Ⅵ。這種模型設計人員要做兩方面的開發,一是客戶端采集程序和數據遠程發布的程序的設計,另一個是客戶端數據的接收程序的設計。

程序的URL輸入端口設置數據連接網絡地址,可以使用psp、opc、ftp、http和file等通信協議傳輸數據,本程序根據寫入數據的類型及網絡配置使用dstp協議。dstp協議是LabVIEW專門為測試數據的安全快速的傳輸而設置。

(1)服務器端Ⅵ采集語音信號,并利用寫入DataSocket節點將數據發布到URL“dstp:∥127.0.0.1/TestWave”指定的位置中。服務器Ⅵ的程序框圖如圖2所示。

(2)客戶端Ⅵ,將傳輸過來的語音信號通過聲卡播放出來。客戶機Ⅵ利用讀取DataSocket節點將數據從URL“dstp:∥127.0.0.1/TestWave”捂定的位置讀出,并還原為原來的語音數據送到聲卡中。客戶端Ⅵ的程序框圖如圖3所示。

本程序的URL輸入端口地址配置為:dstp:∥127.0.0.1/TestWave,即只使用一臺電腦模擬網絡傳輸。另外,需要注意的是,在利用上述兩個Ⅵ進行DataSocket通信之前,必須首先運行DataSocket Servertsr。

5 結束語

DataSocket面向測量和網上實時高速數據交換,可用于一個計算機內或者網絡中多個應用程序之間的數據交換。使用DataSocket技術,可以更加方便地編寫出LabVIEW的遠程數據采集應用程序。所以本例利用DataSocket技術開發網絡語音通信模塊既能實現開發快速,又能實現軟件模塊的高效可靠。

主站蜘蛛池模板: 国产肉感大码AV无码| 久久亚洲日本不卡一区二区| 被公侵犯人妻少妇一区二区三区| 久热这里只有精品6| 亚洲欧美日韩高清综合678| 在线观看精品国产入口| 浮力影院国产第一页| 亚洲高清在线播放| 欧美国产成人在线| 欧美一级色视频| 一级香蕉人体视频| 中文字幕久久亚洲一区| 啊嗯不日本网站| 亚洲Av激情网五月天| 在线国产欧美| 国产毛片片精品天天看视频| 日韩最新中文字幕| 国产麻豆91网在线看| 97se亚洲| 一级全黄毛片| 国产视频只有无码精品| 大陆国产精品视频| 狠狠色综合网| 国产人人乐人人爱| 男女男免费视频网站国产| 国产精品hd在线播放| 日本一本在线视频| 久久大香伊蕉在人线观看热2| 久久人人爽人人爽人人片aV东京热 | 91精品国产自产在线老师啪l| 亚洲成人动漫在线观看| 色综合天天综合| 91成人免费观看| 新SSS无码手机在线观看| 亚洲免费三区| 日本高清免费一本在线观看| 欧美三级自拍| 无码国产伊人| 国产在线精彩视频二区| 色综合手机在线| 人妻熟妇日韩AV在线播放| 精品99在线观看| 国产精品偷伦在线观看| 欧美三级视频网站| 欧美在线精品怡红院| 日韩国产一区二区三区无码| 国产精品女主播| 国产福利不卡视频| 超清人妻系列无码专区| a天堂视频在线| 1769国产精品视频免费观看| 国产99精品视频| 日本草草视频在线观看| 免费高清毛片| av一区二区无码在线| 国产美女主播一级成人毛片| 国产日韩精品欧美一区灰| 无码AV日韩一二三区| 91色综合综合热五月激情| AV熟女乱| 制服丝袜一区二区三区在线| 亚洲a级在线观看| 亚洲成人动漫在线| 中国国产高清免费AV片| 性色生活片在线观看| 亚洲天堂网2014| 伊人五月丁香综合AⅤ| 久久精品免费看一| www欧美在线观看| 一级毛片中文字幕| 色偷偷综合网| 亚洲欧美激情另类| 国产噜噜噜视频在线观看| 毛片免费在线| a在线亚洲男人的天堂试看| 国产亚洲欧美日本一二三本道| 亚洲性视频网站| 九九九精品成人免费视频7| 99久久精品免费看国产免费软件| 亚洲视频三级| 欧美曰批视频免费播放免费| 99热精品久久|