本發明專利技術主要披露了一種語音數據的編解碼方法,包括以下操作步驟a:對信道端發送的語音數據進行編碼,得到語音信息包Ss;步驟?b:在信息包Ss頭部添加包長度和時間戳信息,得到擴展信息包Ss'并將其壓入語音隊列;步驟c:對信息包Ss'選擇RS編碼模式,進行RS糾錯編碼,生成冗余包Rs,并在Rs頭部添加相關保護信息得到擴展冗余包Rs',并進一步將信息包Ss和擴展冗余包Rs'組合封裝生成組合包;步驟d:在信道接收端,根據接收到的信息包和冗余包對丟失的信息包進行RS丟包恢復。信道接收端對收到的組合包進行拆包和校驗過程,如果關聯信息包數量SN與關聯冗余包數量RN之和大于等于k數值時,轉至丟包恢復操作后解碼。本發明專利技術方法在接收端檢測出錯包是否能被恢復,能則立即恢復,進一步減小延時,有效修復網絡丟包、延時、抖動引起的語音質量問題。
【技術實現步驟摘要】
本專利技術屬于網絡電話
,尤其涉及網絡電話的語音處理技術。
技術介紹
隨著網絡技術日新月異的發展,作為當下最為熱門的互聯網技術之一的流媒體技術,是提供我們可以快速高保真的分享圖像、音頻、視頻等多媒體文件的基礎。在流媒體技術中,由于網絡等外部原因,數據包丟失、亂序、延時到達等出錯現象不可避免。而語音文件對網絡質量最為敏感,如果音頻文件的包出錯,比如包的丟失、亂序、延時等達到一定程度,則嚴重影響接收端的語音聽覺效果,出現抖動,噪聲,語音模糊,嚴重時甚至無法識別語音內容。為了保證發送音頻在接收端能夠正常播放,則需要對音頻包出錯進行恢復,這一般都是通過在傳輸的音頻包中增加冗余包來實現的。音頻糾錯編碼是一種能夠恢復一定數量范圍內音頻包出錯的編碼方法。在糾錯編碼中,用于生成冗余包的每組音頻包的數量越多,則能夠恢復的出錯包數量越多。然而,每組音頻包的數量增多則會導致接收延時增加等問題。在傳輸的帶寬一定的情況下,用盡量少的引入延時來達到最大可能恢復發送音頻包,則糾錯編碼效率越高。FEC編碼是目前較常采用的一種數據恢復編碼,其有較為高效的丟包恢復能力,FEC又分為多種編碼實現方式,RS編碼是其中最為高效的一種編碼方式。然而,目前的FEC編碼設計,存在對丟包恢復效果與編碼效率之間難以達到平衡的難題。
技術實現思路
本專利技術的目的在于提供一種語音數據的編解碼方法,在接收端檢測出錯包是否能被恢復,能則立即恢復,進一步減小延時,有效修復網絡丟包、延時、抖動引起的語音質量問題。為了實現上述專利技術目的,本專利技術一種語音數據的編解碼方法包括:步驟a:對信道端發送的語音數據進行編碼,得到語音信息包Ss;步驟b:在信息包Ss頭部添加包長度和時間戳信息,得到擴展信息包Ss'并將其壓入語音隊列;步驟c:對信息包Ss'選擇RS編碼模式,進行RS糾錯編碼,生成冗余包Rs,并在Rs頭部添加相關保護信息得到擴展冗余包Rs',并進一步將信息包Ss和擴展冗余包Rs'組合封裝生成組合包;步驟d:在信道接收端,根據接收到的信息包和冗余包對丟失的信息包進行RS丟包恢復。優選的,冗余包Rs頭部添加相關保護信息包括:每組數據幀數量、該冗余包的序號、被保護的第一個信息包的序列號、被保護的所有信息包的時間戳信息,得到擴展冗余包Rs'。優選的,所述步驟c之前還包括:信道接收端對收到的所述組合包進行拆包和校驗過程。其中,校驗過程包括:根據Rs'攜帶的被保護信息報的時間戳判斷是否與Rs'相關聯的信息包已全部放入待解碼隊列,是則將Rs'丟棄,否則將該Rs'壓入接收冗余隊列末尾。優選的,上述校驗過程還包括:取出接收冗余隊列中第一個冗余包,根據其攜帶的被保護信息包的時間戳信息在接收語音隊列中找出與該冗余包相關聯的信息包,壓入FEC解碼語音隊列,并記找到的關聯信息包數量為SN。優選的,上述校驗過程還包括:如果SN=k,則根據冗余包中攜帶的被保護的第一個信息包的序列號從接收冗余隊列中找出與該冗余包相關聯的冗余包丟棄,清空FEC解碼語音隊列并轉至解碼步驟,否則轉至尋找關聯冗余包步驟。優選的,上述尋找關聯冗余包步驟具體是指:根據冗余包中攜帶的被保護的第一個信息包的序列號從接收冗余隊列中找出與該冗余包相關聯的冗余包,壓入FEC解碼冗余隊列,記找到的關聯冗余包數量為RN。優選的,上述校驗過程還包括:如果RN+SN>=k,則轉至丟包恢復步驟,否則清空FEC解碼語音隊列和FEC解碼冗余隊列并轉至解碼步驟。優選的,丟包恢復步驟是指:根據冗余包和接收到的信息包對丟失的信息包進行RS丟包恢復,在恢復出來的信息包頭部添加序列號,根據序列號將恢復的信息包放至待解碼隊列的合適位置。本專利技術在發送端根據統計的丟包率,選擇生成冗余包的信息包數量即最佳的RS編碼模式,從而找出最高效的FECRS編碼設計,在接收端檢測出錯包是否能被恢復,能則立即恢復,有效修復網絡丟包、延時、抖動引起的語音質量問題。設計高效的音頻FEC編碼算法,在冗余包與信息包數量相等時,根據統計的丟包率選擇生成合適的冗余包的信息包的數量以實現最佳的包出錯恢復效果。本專利技術提供的方案通過在信道發送端發送信息包的同時發送高效編碼的FEC冗余包,保證了信道接收端能夠對音頻傳輸過程中的包出錯進行恢復,從而保證了接收端的音頻質量。本專利技術提供的方案在發送冗余包與信息包數量相同的情況下,根據統計的丟包率選擇最佳的RS編碼模式,即確定RS編碼最佳的信息包數量,來進行FEC編碼,能夠使包出錯恢復率得到保證,又能盡量減小引入延時以及降低終端資源占用,從而保證信道接收端音頻有較好的質量。本專利技術實例對發送端音頻進行RS編碼時,在保證丟包恢復概率的前提下,選擇信息包數量最小的RS編碼模式,減小引入延時、降低終端資源占用,在接收端檢測出錯包是否能被恢復,能則立即恢復,進一步減小延時,有效修復網絡丟包、延時、抖動引起的語音質量問題。本專利技術實例FECRS編碼的計算過程中,對部分運算事先制作成為運算表,使得在編解碼的過程中部分運算轉換為查表的方式,提高了運算效率。附圖說明圖1為本專利技術具體實施例中對語音數據傳輸處理的流程。具體實施方式專利技術的基本原理:一種在信道發送端對語音數據進行高效FEC編碼的方法,該方法在每一幀語音數據上附加一個FEC冗余數據,通過信道發送。從而實現在較差網絡環境下盡可能的減小網絡抖動、延時以及對語音數據進行最大概率的恢復,提高了接收端的語音質量。該方法的具體的從根據語音信息數據進行高效FEC編碼并根據標準格式進行流媒體包打包后經過信道發送到從信道接收包含音頻數據和FEC冗余數據的流媒體包后進行校驗糾錯。為了更清楚地說明本專利技術實例的技術方案,下面將結合示例圖對本專利技術的實施進行詳細的介紹,下面的描述僅僅是本專利技術的一些實施例。應當理解,此處所描述的具體實施例僅僅用以解釋本專利技術,并不用于限定本專利技術。對于本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些實施例獲得本專利技術的其他實施方式。圖1為本專利技術具體實施例中對語音數據傳輸處理的流程。如圖1所示,本專利技術的主要內容包括以下操作步驟:步驟S110:設置RSFEC編碼模式,確定每組語音數據幀數量k。步驟S120:對信道發送端的語音數據進行編碼得到語音信息包{Ss1,Ss2,...,Ssk本文檔來自技高網...

【技術保護點】
一種語音數據的編解碼方法,其特征在于,所述方法包括以下操作:步驟a:對信道端發送的語音數據進行編碼,得到語音信息包Ss;步驟?b:在所述信息包Ss頭部添加包長度和時間戳信息,得到擴展信息包Ss'并將其壓入語音隊列;步驟c:對所述信息包Ss'選擇RS編碼模式,進行RS糾錯編碼,生成冗余包Rs,?并在Rs頭部添加相關保護信息得到擴展冗余包Rs',?并進一步將所述信息包Ss和所述擴展冗余包Rs'組合封裝生成組合包;步驟d:在信道接收端,根據接收到的信息包和冗余包對丟失的信息包進行RS丟包恢復。
【技術特征摘要】
1.一種語音數據的編解碼方法,其特征在于,所述方法包括以下操作:步驟a:對信道端發送的語音數據進行編碼,得到語音信息包Ss;步驟b:在所述信息包Ss頭部添加包長度和時間戳信息,得到擴展信息包Ss'并將其壓入語音隊列;步驟c:對所述信息包Ss'選擇RS編碼模式,進行RS糾錯編碼,生成冗余包Rs,并在Rs頭部添加相關保護信息得到擴展冗余包Rs',并進一步將所述信息包Ss和所述擴展冗余包Rs'組合封裝生成組合包;步驟d:在信道接收端,根據接收到的信息包和冗余包對丟失的信息包進行RS丟包恢復。2.根據權利要求1所述的編解碼方法,其特征在于,所述信息包Ss和所述冗余包Rs的數量都為k。3.根據權利要求2所述的編解碼方法,其特征在于,還包括步驟:所述冗余包Rs頭部添加所述相關保護信息包括:每組數據幀數量、該冗余包的序號、被保護的第一個信息包的序列號、被保護的所有信息包的時間戳信息,得到所述擴展冗余包Rs'。4.根據權利要求3所述的編解碼方法,其特征在于,所述步驟d之前還包括:所述信道接收端對收到的所述組合包進行拆包和校驗過程。5.根據權利要求4所述的編解碼方法,其特征在于,所述校驗過程包括:根據所述Rs'攜帶的被保護信息包的時間戳判斷與Rs'相關聯的信息包是否已全部放入待解碼隊列,是則將Rs'丟棄,否則將該Rs'壓...
【專利技術屬性】
技術研發人員:李俁菡,黃敬佩,徐曉峰,李夏賓,
申請(專利權)人:深圳市潮流網絡技術有限公司,
類型:發明
國別省市:廣東;44
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。