RTP抗丟包傳輸方案
發(fā)布日期:2022-05-23
點(diǎn)擊次數(shù):399
基于UDP的RTP傳輸在復(fù)雜的公網(wǎng)環(huán)境下,尤其是3G、4G、WIFI網(wǎng)絡(luò)時(shí)面臨丟包、亂序、重復(fù)、抖動(dòng)等問(wèn)題,嚴(yán)重影響實(shí)時(shí)音視頻互動(dòng)效果,即使是一個(gè)rtp包得丟失,如果接收端不做處理,也會(huì)導(dǎo)致視頻馬賽克的出現(xiàn),本方案采用多種方式結(jié)合,致力于解決udp傳輸視頻包丟失問(wèn)題,方案包括視頻接收端jitter buffer 處理包亂序/重復(fù)問(wèn)題,F(xiàn)EC(前向糾錯(cuò)) 優(yōu)先處理丟包恢復(fù),以及當(dāng)fec恢復(fù)不了丟失數(shù)據(jù)包時(shí)采用丟包重傳策略請(qǐng)求重傳數(shù)據(jù)包,如果重傳依然有丟包情況,則解碼端不去解碼(有可能花屏),直接請(qǐng)求發(fā)送方發(fā)送I幀,這幾種方式組合,在實(shí)踐中能有效避免丟包導(dǎo)致的花屏,卡頓現(xiàn)象,通過(guò)調(diào)整FEC冗余度,可以達(dá)到不同丟包率的處理。
這里的FEC前向糾錯(cuò)技術(shù)已經(jīng)應(yīng)用很廣泛,其大概原理就是每K個(gè)媒體包發(fā)出后,利用這個(gè)K個(gè)媒體包生成N-K個(gè)冗余包,這里的N是媒體包和數(shù)據(jù)包的總和,接收端只要接收到K個(gè)數(shù)據(jù)包(包括媒體包和冗余包),就可以恢復(fù)出K個(gè)媒體包中任意一個(gè)丟失的媒體包。

掃描關(guān)注公眾號(hào)
15818654305
廣東省深圳市南山區(qū)粵海街道瓊宇路51大廈436


