[發明專利]一種基于移動終端的局域網集群雙工語音通信方法有效
| 申請號: | 201510278541.5 | 申請日: | 2015-05-27 |
| 公開(公告)號: | CN104992711B | 公開(公告)日: | 2018-06-15 |
| 發明(設計)人: | 衡偉;孫慧;徐明 | 申請(專利權)人: | 東南大學 |
| 主分類號: | G10L19/10 | 分類號: | G10L19/10;G10L19/02 |
| 代理公司: | 南京瑞弘專利商標事務所(普通合伙) 32249 | 代理人: | 黃成萍 |
| 地址: | 211189 江*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 客戶端 局域網 服務器 雙工語音 移動終端 集群 通信 發送 實時語音通信 壓縮編碼模塊 語音合成模塊 服務器程序 客戶端架構 無線局域網 采樣模塊 發送模塊 分路模塊 機制實現 集群通信 接收模塊 解碼模塊 拾音模塊 數據傳輸 數據控制 通信環境 多線程 單播 手機 雙工 計算機 | ||
1.一種基于移動終端的局域網集群雙工語音通信方法,其特征在于:采用服務器/客戶端架構,以安卓手機作為客戶端,以計算機作為服務器,客戶端和服務器在局域網內進行通信;客戶端分為發送部分和接收部分,發送部分包括拾音模塊、采樣模塊、壓縮編碼模塊和發送模塊四個主要部分,接收部分包括接收模塊、數據分路模塊、解碼模塊和語音合成模塊成四個主要部分;
客戶端發送部分的工作過程為:客戶端首先通過拾音模塊獲取模擬語音數據,然后經過采樣模塊進行量化得到PCM語音數據,接著使用壓縮編碼模塊對PCM語音數據進行壓縮編碼,最后壓縮編碼形成的數據包經由發送模塊的IP鏈路以UDP包的形式發送給服務器;
服務器的工作過程為:服務器首先將多個客戶端發送來的數據包拼接為一個大數據包,然后將大數據包安排給各個目標客戶端,同時將大數據包中目標客戶端自身發送的數據置0,避免客戶端接收到自身發出的數據導致回聲,最后將大數據包以UDP包的形式發送給各個目標客戶端;
客戶端接收部分的工作過程為:客戶端首先通過接收模塊接收到服務器發送來的大數據包,然后通過數據分路模塊將大數據包切分為多路小數據塊,接著使用解碼模塊分別解碼各路小數據塊得到PCM語音數據,最后使用語音合成模塊將所有路的PCM語音數據按采樣點疊加得到合成語音,最終完成集群語音的目標;該方法具體包括如下步驟:
(1)拾音模塊首先啟動壓縮編碼模塊,并初始化待編碼數據隊列為壓縮編碼做準備,所述隊列滿足先進先出的原則;然后拾音模塊不斷從麥克風中獲取模擬語音數據;
(2)采樣模塊首先將模擬語音數據量化為數字數據,得到數字語音流,再將數字語音流切分成待編碼數據塊,再依次添加進待編碼數據隊列;
(3)壓縮編碼模塊首先啟動發送模塊,并初始化待發送數據隊列為發送數據做準備,所述隊列滿足先進先出的原則;然后壓縮編碼模塊依次從待編碼數據隊列的頭部將待編碼數據塊取出進行壓縮編碼,再依次添加進待發送數據隊列;
(4)發送模塊依次從待發送數據隊列的頭部將待發送數據取出并發送到服務器,數據發送采用的是UDP協議;
(5)服務器同時接收一個以上客戶端發送來的數據,并根據發送客戶端的不同對接收到的數據分別做臨時存儲:為了實現集群通信的目標,服務器為每個客戶端維護一個數據隊列,將各個發送客戶端發送的數據臨時存儲在各自的數據隊列中;
(6)服務器首先將多個客戶端發送來的數據包拼接為一個大數據包,然后為每個目標客戶端分別產生一個相應的大數據包,具體實現方法是:服務器從所有數據隊列中取出位于隊列頭部的數據包,將其拼接為一個大數據包;對于某一個目標客戶端,將該大數據包中,該目標客戶端自身發送的數據置0,形成對應該目標客戶端的相應的大數據包;服務器將相應的大數據包發送給對應的目標客戶端;
(7)接收模塊首先啟動解碼模塊,并初始化待解碼數據隊列為解碼做準備,所述隊列滿足先進先出的原則;然后不斷從服務器處接受大數據包并交由數據分路模塊;解碼模塊為每個客戶端維護一個待解碼數據隊列;
(8)數據分路模塊對大數據包進行切分形成多路小數據塊,多路小數據塊根據發送客戶端的不同分別添加進不同的待解碼數據隊列;
(9)解碼模塊首先啟動語音合成模塊,并初始化待合成數據隊列為語音播放做準備,然后將所有待解碼數據隊列中位于隊列頭部的小數據塊進行解碼,并將解碼后的數據依次分別添加進不同的待合成數據隊列;語音合成模塊為每個客戶端維護一個待合成數據隊列;
(10)語音合成模塊將所有待合成數據隊列中位于隊列頭部的數據按采樣點進行疊加,將疊加后數據添加進待播放數據隊列;依次取出待播放數據隊列中的數據,不斷寫入播放緩存中。
2.根據權利要求1所述的基于移動終端的局域網集群雙工語音通信方法,其特征在于:所述步驟(10)中,將所有待合成數據隊列中位于隊列頭部的數據按采樣點進行疊加,具體方法為:將兩路數據疊加為一路后再與另一路疊加,直至將所有路數據疊加為一路數據:對于n比特量化的語音幅度數據,若兩路數據分別為A和B,則疊加的方法為:
當A<0且B<0時:Y=A+B-(A×B/(-(2^(n-1)-1)))
其他情況:Y=A+B-(A×B/(2^(n-1))
其中為Y為疊加后的語音數據。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于東南大學,未經東南大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201510278541.5/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種帶讀卡器的MP3播放器
- 下一篇:短時特定音頻檢測模型生成與檢測方法





