在數據鏈信道中語音數據傳輸的處理方法
【專利摘要】本發明提供了一種在數據鏈信道中語音數據傳輸的處理方法,通過在信道發送端的待發送語音數據包中加入數據類型識別信息,在接收端讀出該數據類型信息,并與接收端定義的語音數據包數據類型進行比對,識別出接收到的語音數據包是否為順序正確的包,若接收到的語音數據包順序正確,進行語音數據真值還原;若收到順序錯亂語音數據包,則通過數據重組形成一包新的語音數據,將該語音數據包還原。本發明實現了在低信噪比環境下完成語音數據的傳輸,避免由于語音數據包的錯亂或丟失而造成數據還原出錯,形成刺耳噪聲的輸出,增加了語音信號的還原性,有效地提高了在低信噪比環境下的傳輸效率。
【專利說明】在數據鏈信道中語音數據傳輸的處理方法
【技術領域】
[0001]本發明涉及工程領域中語音數據在數據鏈信道上傳輸的處理方法,尤其涉及語音數據包的分配和處理技術。
【背景技術】
[0002]在語音信號無線傳輸過程中,發送端保證對采集的真值數據做出正確無誤的輸出,接收端保證對從信道上接收到的語音數據做出真值還原。對接收端的語音數據做出真值還原是進行語音數據傳輸的關鍵。由于語音數據在信道中傳輸會受到空間電磁干擾、誤碼、漏包、漏組影響,因此在接收端存在著對數據包真值還原的復雜邏輯處理過程,以保證信道對語音數據還原的最小化影響。
[0003]目前,通常采用以下方法對語音數據的還原進行處理:將接收到的900bit語音數據包緩存在存儲器指定地址中,采用編制特定處理程序,把一整包語音數據劃分為單位為Ibit大小的數據流,然后按照語音編解碼芯片的特定數據格式將數據打包后送入編解碼芯片的接收地址進行處理。
[0004]上述數據處理方法有其自身的優缺點:優點在于編制程序時實現簡單,不需要規定數據包的劃分規則,只需按照順序將數據流打包輸出;缺點在于易受到傳輸信道的干擾,它只能在無干擾條件下進行數據處理,若加入干擾后,接收端的語音數據會出現錯亂輸出,導致無法還原出真值數據,造成語音信號的無效輸出。
【發明內容】
[0005]為了克服現有技術的不足,本發明提供一種將語音數據按照分配規則分類后進行信道傳輸的方法,既保證語音數據包的完整性,又提高了語音數據真值還原率,能夠輸出有效的語音信號,信道誤碼較高時可以有效阻止掉包導致的語音亂調。
[0006]本發明解決其技術問題所采用的技術方案包括以下步驟:
[0007]I)在發送端,語音編解碼芯片以48bit為單位進行語音數據采集,每采集到900bit作為一個語音數據包,依次將各個語音數據包標識為開始幀、繼續幀1、繼續幀2和結束幀四種數據類型;所述的標識分別用二進制數據00、01、10、11作為包頭的數據類型信息對四種數據類型進行標識;
[0008]2)發送端將采集好的語音數據包按照開始幀、繼續幀1、繼續幀2和結束幀的順序依次循環發送;
[0009]3)接收端接收到語音數據包,對語音數據包包頭的數據類型信息進行判斷,若收到的語音數據包數據類型符合開始幀、繼續幀1、繼續幀2和結束幀的順序,則說明該語音數據包有效,進行語音數據的真值還原,否則放棄該語音數據包,按以下方法處理:
[0010]若接收端僅丟失一個語音數據包,則將上一個語音數據包最后48bit的數據循環填充至該語音數據包,并進行真值還原;
[0011]若接收端丟失兩個或兩個以上的語音數據包,或接收端接收到順序錯亂的語音數據包,則將事先采集好的靜音幀數據循環填入丟失或順序錯亂的語音數據包處,然后進行真值還原;所述的靜音幀數據是通過采集語音編解碼芯片AMBE1000輸出端口的48bit有效數據得到的;
[0012]4)重復步驟I)至3),直至所有采集到的語音數據播放完畢。
[0013]所述的步驟I)中,語音編解碼芯片一次處理48bit數據,按照語音編解碼芯片要求的數據格式,信道中傳輸的900bit為一包的語音數據不能被整除,對于第一包“開始幀”數據來說,處理到最后剩下36bit的語音數據,接收端在接收到第二包“繼續幀I”數據后,將“開始幀”未處理的36bit數據加入該語音數據包包頭,并與第二包數據一起處理;第二包數據處理完后會剩下24bit未處理的語音數據,待接收端接收到第三包“繼續幀2”數據后,將“繼續幀I”未處理的24bit數據加入該語音數據包包頭,并與第三包數據一起處理;第三包數據處理完后會剩下12bit未處理的語音數據,最后,接收端接收到第四包“結束幀”數據后,將“繼續幀2”未處理的12bit數據加入該數據包包頭,并與第四包數據一起處理,從而完成了語音數據的無丟失傳輸。
[0014]所述的步驟3)中,接收端按照開始幀、繼續幀1、繼續幀2和結束幀完成一個循環的接收后,需要經過一個語音數據包的延時后才能繼續接收下一個開始幀的語音數據包,這樣做的目的是為了保證接收“開始幀”數據時沒有任何其它無效數據存在。
[0015]本發明的有益效果是:通過在發送端語音數據包中加入數據類型識別信息的方法,將待傳輸的語音數據劃分為四種類型的包,并依次循環記錄傳輸。有效地屏蔽由于信道干擾造成的順序錯亂的數據包,提高了語音數據傳輸的還原率,使接收端在進行語音信號還原時避免出現刺耳的噪聲,增強了系統的實用性與適應性;同時,采用此種方法處理數據保證了數據的安全性,提高了系統的健壯性;最后,對整個語音傳輸系統而言,在系統研制開發初期降低了開發、測試難度,在系統使用和維護期間,便于系統進行擴展和維護。
[0016]用常規方法處理信道上的語音數據時,由于受空間環境的影響會出現誤碼、漏包、掉包等現象,在信噪比低的情況下,還原出的語音效果是致命的,通常會出現刺耳的噪聲,嚴重時會出現語音解析不清,完全聽不清楚發話人的指令,這在系統的應用中是不允許出現的。根據本發明方法,通過對接收到順序錯亂語音數據包的處理,屏蔽錯誤的語音數據包,重新添加用以平緩刺耳噪聲或語音解析不清的輸出數據,如“上一包正確語音數據包的最后48bit數據”或“靜音幀”等,完成系統中語音傳輸的功能,這大大提高了語音傳輸效率,增強了與環境的兼容性。
[0017]本發明實現了在低信噪比環境下完成語音數據的傳輸,避免由于語音數據包的錯亂或丟失而造成數據還原出錯。在常規語音數據傳輸的方法中,信道接收端對接收到的錯誤語音數據包沒有修復能力,通常的處理方法就是丟棄這一整包的語音數據,若在高誤碼率、低容錯率的信道中,就會出現連續出錯的情況,當連續出錯的語音數據包達到3包以上,將導致接收端還原不出正確的語音信號,十分容易出現作戰系統命令下達失效的現象。利用在發送端增加語音數據包數據類型識別信息,在信道傳輸過程中,通過接收端對語音數據包的識別,將正確的語音數據包完整還原,將錯誤的語音數據包修復后還原,最終確保語音信號還原的完整性。
[0018]本發明構造了用來填補錯誤語音數據包的“上一包正確語音數據包的最后48bit數據”和“靜音幀”數據。在常規語音數據傳輸的方法中,沒有構造出“上一包正確語音數據包的最后48bit數據”和“靜音幀”數據來填補錯誤語音數據包,只能將錯誤數據整包丟棄,這樣經常會出現刺耳的噪聲、漏字、掉句等現象,嚴重時根本解析不出語音信號,導致接收方無法聽清對方發出的指令。本發明由于采用“上一包正確語音數據包的最后48bit數據”和“靜音幀”數據填補技術,即使接收端接收到了順序錯亂的語音數據包,它通過將構造好的“上一包正確語音數據包的最后48bit數據”和“靜音幀”數據按順序替換掉接收到的錯誤語音數據,避免了刺耳噪聲的輸出,增加了語音信號的還原性,有效地提高了在低信噪比環境下的傳輸效率。
【專利附圖】
【附圖說明】
[0019]圖1是本發明的在數據鏈信道中語音數據傳輸過程的處理方法示意圖;
[0020]圖2是本發明的在數據鏈信道中語音數據傳輸過程的處理方法流程圖。
【具體實施方式】
[0021]下面結合附圖和實施例對本發明進一步說明,本發明包括但不僅限于下述實施例。
[0022]本發明所設計實現的在數據鏈信道中語音數據傳輸過程的處理方法,通過在發送端語音數據包中加入數據類型識別信息,在接收端識別接收到的語音數據包是否為順序正確的包,并通過接收到數據包的正確與否來處理數據。處理過程中,將接收到的正確語音數據包按位完整還原,將接收到的錯誤語音數據包數據由“上一包正確語音數據包的最后48bit數據”或“靜音幀”數據填充,并按位完整還原。方法示意圖如圖1所示。本發明提供了在數據鏈信道中語音數據傳輸過程的處理方法,包括以下步驟:
[0023]在信道的發送端定義用以標識待傳輸語音數據包的四種數據類型,四種數據類型順序為開始幀、繼續幀1、繼續幀2和結束幀,分別用二進制數據00、01、10、11表示。按語音編解碼芯片要求的數據格式,以48bit為單位進行數據采集,系統信道要求傳輸的數據長度為900bit,“開始幀”數據包由語音編解碼芯片采集的18包48bit數據和下一包的前36bit數據組成900bit數據;“繼續幀I”數據包由上一包的后12bit數據、語音編解碼芯片新采集的18包48bit數據和下一包的前24bit數據組成900bit數據;“繼續幀2”數據包由上一包的后24bit數據、語音編解碼芯片新采集的18包48bit數據和下一包的前12bit數據組成900bit數據;“結束幀”數據包由上一包的后36bit數據和語音編解碼芯片新采集的18包48bit數據組成900bit數據;
[0024]將00、01、10、11信息分別加在“開始幀”數據包、“繼續幀I”數據包、“繼續幀2”
數據包和“結束幀”數據包包頭處,當發送端的發話開關開啟后,再將打包好的一整包語音數據通過信道依次循環發送;
[0025]接收端接收到上述發送過來的語音數據包后,啟動計數器,計數器從I開始計數,計數到4為一個循環,數字1、2、3、4分別與“開始幀”數據包、“繼續幀I”數據包、“繼續幀2”數據包和“結束幀”數據包對應。讀出語音數據包包頭的數據類型信息,若接收到的數據類型信息與計數器數值一一對應,則說明接收到的語音數據包順序正確,將此包完整還原;若接收到的數據類型信息與計數器數值不對應,則說明接收到順序錯亂的語音數據包。若順序錯亂的語音數據包數據類型為“開始幀”,且為整個數據傳輸的第一包數據,則將該包數據填充為“靜音幀”數據,然后將此包真值還原;其它情況下,若只有一個順序錯誤的包,則用“上一包正確語音數據包的最后48bit數據”填充錯誤的數據包,然后進行還原,若是兩個或兩個以上的順序錯誤的包,則用“靜音幀”數據填充,然后進行真值還原。
[0026]實施例如圖2所示,其步驟如下:
[0027]步驟1:在信道的發送端定義用以標識待傳輸語音數據包的四種數據類型,四種數據類型順序為開始幀、繼續幀1、繼續幀2和結束幀,其數據類型信息格式如表1所示。
[0028]表1數據類型信息格式
[0029]
【權利要求】
1.一種在數據鏈信道中語音數據傳輸的處理方法,其特征在于包括下述步驟: 1)在發送端,語音編解碼芯片以48bit為單位進行語音數據采集,每采集到900bit作為一個語音數據包,依次將各個語音數據包標識為開始幀、繼續幀1、繼續幀2和結束幀四種數據類型;所述的標識分別用二進制數據00、01、10、11作為包頭的數據類型信息對四種數據類型進行標識; 2)發送端將采集好的語音數據包按照開始幀、繼續幀1、繼續幀2和結束幀的順序依次循環發送; 3)接收端接收到語音數據包,對語音數據包包頭的數據類型信息進行判斷,若收到的語音數據包數據類型符合開始幀、繼續幀1、繼續幀2和結束幀的順序,則說明該語音數據包有效,進行語音數據的真值還原,否則放棄該語音數據包,按以下方法處理: 若接收端僅丟失一個語音數據包,則將上一個語音數據包最后48bit的數據循環填充至該語音數據包,并進行真值還原; 若接收端丟失兩個或兩個以上的語音數據包,或接收端接收到順序錯亂的語音數據包,則將事先采集好的靜音幀數據循環填入丟失或順序錯亂的語音數據包處,然后進行真值還原;所述的靜音幀數據是通過采集語音編解碼芯片AMBE1000輸出端口的48bit有效數據得到的; 4)重復步驟I)至3),直至所有采集到的語音數據播放完畢。
2.根據權利要求1所述的在數據鏈信道中語音數據傳輸的處理方法,其特征在于: 所述的步驟I)中,語音編解碼芯片一次處理48bit數據,按照語音編解碼芯片要求的數據格式,信道中傳輸的900bit為一包的語音數據不能被整除,對于第一包“開始幀”數據來說,處理到最后剩下36bit的語音數據,接收端在接收到第二包“繼續幀I”數據后,將“開始幀”未處理的36bit數據加入該語音數據包包頭,并與第二包數據一起處理;第二包數據處理完后會剩下24bit未處理的語音數據,待接收端接收到第三包“繼續幀2”數據后,將“繼續幀I”未處理的24bit數據加入該語音數據包包頭,并與第三包數據一起處理;第三包數據處理完后會剩下12bit未處理的語音數據,最后,接收端接收到第四包“結束幀”數據后,將“繼續幀2”未處理的12bit數據加入該數據包包頭,并與第四包數據一起處理,從而完成了語音數據的無丟失傳輸。
3.根據權利要求1所述的在數據鏈信道中語音數據傳輸的處理方法,其特征在于: 所述的步驟3)中,接收端按照開始幀、繼續幀1、繼續幀2和結束幀完成一個循環的接收后,需要經過一個語音數據包的延時后才能繼續接收下一個開始幀的語音數據包。
【文檔編號】H04L1/00GK104135340SQ201410366246
【公開日】2014年11月5日 申請日期:2014年7月29日 優先權日:2014年7月29日
【發明者】陳琦, 張奕, 顧磊 申請人:中國電子科技集團公司第二十研究所