語音聊天app開發(fā),越來越成熟的丟包補(bǔ)償技術(shù)
由于網(wǎng)絡(luò)等多種因素的影響,音頻數(shù)據(jù)在網(wǎng)絡(luò)中傳輸時(shí)可能會(huì)出現(xiàn)丟包的情況,從而影響到音頻內(nèi)容的正常展現(xiàn)。如果不處理好丟包問題就會(huì)嚴(yán)重影響用戶間的語音連麥體驗(yàn),所以在語音聊天app開發(fā)時(shí)選擇合適的丟包補(bǔ)償技術(shù)。

一、基于發(fā)送端的丟包補(bǔ)償技術(shù)
在語音聊天app開發(fā)中基于發(fā)送端的丟包補(bǔ)償技術(shù)有兩種,分別是主動(dòng)重傳和被動(dòng)通道編碼。
1、主動(dòng)重傳
主動(dòng)重傳又稱為后向糾錯(cuò),是常用的丟包補(bǔ)償技術(shù)之一,主要是指在語音聊天app開發(fā)中,通過接收方請(qǐng)求發(fā)送發(fā)重傳出錯(cuò)數(shù)據(jù)報(bào)文的方式來恢復(fù)出錯(cuò)的報(bào)文,以保證音頻內(nèi)容的完整性和流暢性。該技術(shù)實(shí)現(xiàn)起來比較簡單,但會(huì)增加網(wǎng)絡(luò)的負(fù)擔(dān),影響傳輸速度。
2、被動(dòng)通道編碼
被動(dòng)通道編碼包含兩種技術(shù):
(1)前向差錯(cuò)糾正技術(shù):主要是利用了音頻數(shù)據(jù)傳輸中的冗余數(shù)據(jù),當(dāng)出現(xiàn)丟包情況時(shí),利用冗余數(shù)據(jù)允許接收方再建數(shù)據(jù)。
(2)基于交織的技術(shù):是一種效果不錯(cuò)的抗丟包技術(shù),但是該技術(shù)容易引入延時(shí),所以不太適合語音聊天app開發(fā)中。

二、基于接收端的丟包補(bǔ)償技術(shù)
如果在語音聊天app開發(fā)中,發(fā)送端無法實(shí)現(xiàn)丟包補(bǔ)償技術(shù)時(shí),可以利用錯(cuò)誤隱藏算法在接收端實(shí)現(xiàn)丟包補(bǔ)償。所謂的錯(cuò)誤隱藏其實(shí)就是通過產(chǎn)生一個(gè)與丟失語音包相似的替代語音包來頂替。該技術(shù)可以分為三種類型:
1、基于插入的方法
主要是指當(dāng)音頻數(shù)據(jù)發(fā)生丟包情況時(shí),通過插入填充包的方式進(jìn)行錯(cuò)誤隱藏。在語音聊天app開發(fā)中,常見的填充包有噪聲包、重復(fù)前面的包和靜音包。
2、基于插值的方法
該方法的實(shí)現(xiàn)難度角度,需要利用某種形式的模式匹配和差值技術(shù)獲得與原丟包相似的代替包,但該方法的隱藏效果更好。
3、基于重構(gòu)的方法
是指根據(jù)所丟數(shù)據(jù)包前后的解碼信息重構(gòu)一個(gè)補(bǔ)償包,在語音聊天app開發(fā)中使用該方法的難度更大,但隱藏效果更好。

丟包作為比較常見的一種音頻數(shù)據(jù)傳輸問題,只有在語音聊天app開發(fā)時(shí)采用合適的技術(shù)解決或優(yōu)化了,才能讓用戶獲得更好的語音連麥體驗(yàn),畢竟網(wǎng)絡(luò)質(zhì)量是不可控的,做好預(yù)防工作才能在問題發(fā)生時(shí)快速、正確地應(yīng)對(duì)。
聲明:本文由云豹科技原創(chuàng),轉(zhuǎn)載請(qǐng)注明作者名及原文鏈接,否則視為侵權(quán)