FEC详解一

来源:互联网 发布:全民公主神兵数据图 编辑:程序博客网 时间:2024/05/19 22:04

顾名思义,FEC前向纠错,根据收到的包进行计算获取丢掉的包,而和大神沟通的结果就是 纠错神髓收到的媒体包+冗余包 >= 原始媒体包数据 

 直到满足 收到的媒体包+ 冗余包 >= 原始媒体包数据       则进入恢复模式,恢复出2 4,然后一次输出2 3 4 5

所谓的Qos,也可以理解为抖动缓冲,解决udp包乱序、包重复的问题

NAT保活,保持udp连接,简言之:
当你向一个公网服务器发送数据时,服务器可以翻转IP和端口向你发数据, 但如果你长时间不发数据给服务器,服务器若想用之前的IP和端口向你发就不一定成功了。因为在路由器上的NAT映射可能已经失效,如果你是一直向服务器发送数据,那就不存在这个问题。

FEC的设计理念大多一样,编码/解码/回调函数:
1.encode,不区分输入内容,编码后输出输出冗余包数据;
2.decode,根据输入数据进行纠错,如果数据不是有序,则等待  (收到的媒体包+冗余包 >= 原始媒体包数据) 输出原数据
3.callback,一包一包数据输出,阻塞接口