我建了一个 Freeswitch 内核研究 交流群, 45211986, 欢迎加入, 另外,提供基于SIP的通信服务器及客户端解决方案,
承接 sip/ims 视频客户端开发,支持接入sip软交换,ims核心网,支持 语音,视频,即时通信功能,视频格式支持 h263,h264,mpeg4 软编软解,提供硬件编解码接口对接,提供服务器,有兴趣请联系我。
voip这种分组网络中的数据传输,音视频难免有丢包情况,有三种常用的丢包恢复技术:
1. 重传
重传很好理解,通知发送发重传丢失的RTP 包即可,当然其既有有点也有缺点,缺点是重传引起的延时,优点是可以完整恢复由于丢包引起后果。
2. 冗余数据
数据冗余也叫
前向纠错技术,英文:Forward Error Correction,做法是发送方在发送的数据中添加冗余数据,这样在丢包发生时,接收端根据冗余数据修复。
缺点很明显,会占用一点额外的带宽,即使是在网络很好的情况下也会有冗余数据携带,优点是丢包时恢复速度更快,因为不需要发送发做任何事即可恢复。
3. 差错消隐(Error concealment)
消隐的意思是 消掉由于错误引起的问题而是不试图修正这个错误。
RTCP通常用于 丢包事件的通知,一般在视频通信中处理丢包 采用多种方式组合来提高用户体验,
一个是接收方收到RTCP通知,知道对方丢包,所以发送方降低编码码率,当然视频质量会下降,
这种方法相关的标准RFC 为 rfc6035, rfc3611
另一个组合方案是FEC,即前向纠错技术,与此相关的标准为 rfc5109 。