FEC原理及其实现

视频会议中通常使用的FEC/QOS技术,这方面的资料比较复杂和稀少,根据这么多年的工作经验,做一下分享。

在IP视频通话中丢包造成的影响多种多样。其中对视频质量的影响主要有:马赛克现象、局部变形(图像的某些区域不清晰)、图像模糊、屏幕频繁刷新或闪烁、视音频不同步、帧率下降、图像静止等等。对音频质量的影响包括:总体音频失真、间断或间歇性噪音、音频中断等。而对内容和演示数据质量的影响则包括:幻灯片模糊变形、翻页速度减慢或屏幕频繁刷新和图像静止等等。另外,丢包还会引起过度延迟,甚至是通话中断。
      IP视频通话中丢包造成的影响程度主要由丢包率、丢包随时间变化情况和视频通话中各个终端和设备的能力所决定。正如我们通常认为的那样,丢包率越高,对视频通话的影响也更为明显。

一:差错控制技术

1. ARQ  :是一种按需重传的机制,发送者通过接受者的反馈得知有报文在传输过程中有丢失,就重传该报文。

缺点:通信信道的利用率不高,也就是说信道还远远没有被数据流占满,需要接收方发送ACK,这样影响传输效率。可以想象,这种方式发送方肯定需要一个buffer来存储获取到的数据。重复发送数据包也会影响传输速度。可以称之为后向纠错。

2. FEC :是一种前向性纠错技术,发送方将要发送的数据加上一定的冗余纠错码一起发送,接收方则根据纠错码对接收到的数据进行差错检测,如发现差错,则由接收方进行纠错。

特点:使用纠错码,单信道通信,发送方无需设置缓存。

二:FEC

在计算机通信中主要有丢失和错误两种差错。错误的原因是某些比特数据发生畸变;丢失的原因是某些数据包没有收到。底层协议通常需要考虑这两种情况,如链路层的FEC使用差错校正码对既有丢包又有错误码的情况依然能重建正确的数据。它通常由硬件来实现,采用RS编码,汉明码等。

传输差错反映到通讯高层只是数据包的丢失。因此工作在传输层或者应用层的FEC可通过丢失矫正码和已知包数来处理丢失情况。

纯的FEC技术不必重传数据,但是编解码增加了计算的开销和复杂性,用处理能力和带宽来换取可靠性和较小的回复延迟,在丢包率较高的情况下,性能明显下降,整体性能取决于丢失最严重的接收者。

三:范德蒙矩阵

范德蒙矩阵是法国数据家范德蒙提出的一种各列为几何级数的的矩阵。其形式如下:

该矩阵的应用之一就是在纠错编码中。

四:FEC算法是我们团队最近刚开发出来的基于范梦德矩阵的算法。运用在我们的视频会议终端上,基于p2p协议,经过测试,在丢包5%的情况下,可以认为不丢包,超过50%完全能纠正过来。

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-24 17:06:36

FEC原理及其实现的相关文章

蓝牙及蓝牙耳机工作原理

耳机原理 蓝牙技术图片1 1 蓝牙技术的特点 1.1 蓝牙协议体系结构 整个蓝牙协议体系结构可分为底层硬件模块.中间协议层和高端应用层三大部分.链路管理层(LMP).基带层(BBP)和蓝牙无线电信道构成蓝牙的底层模块.BBP层负责跳频和蓝牙数据及信息帧的传输.LMP层负责连接的建立和拆除以及链路的安全和控制,它们为上层软件模块提供了不同的访问人口,但是两个模块接口之间的消息和数据传递必须通过蓝牙主机控制器接口的解释才能进行.也就是说,中间协议层包括逻辑链路控制与适配协议(L2CAP).服务发现协

busybox filesystem udhcpc 原理

/******************************************************************** * busybox filesystem udhcpc 原理 * 声明: * 本文主要是记录busybox中的如何运用udhcpc获取IP,参考文章里写的 * 很详细,不再累赘. * * 2016-1-23 深圳 南山平山村 曾剑锋 ***************************************************************

AES&FEC GPON中的加密与纠错

最近测试过程中遇到了有关系统AES和FEC的case,这里简单介绍一下它们的原理以及在GPON系统中的应用. AES 对于GPON系统,下行数据由广播方式发送到所有ONU,牵涉到一个恶意用户窃听所有广播帧的危险,故系统引入AES加密算法.它是一种分组加密算法,即把明文和密文分成固定长度的分组,进行加密或解密处理.它的固定分组大小128bits,密匙长度有128,192,256三种,GPON中使用aes-128. 具体方法称作计数器模式(counter mode), 密码算法产生一个16字节的伪随

现代交换原理课程复习大纲

一.交换原理 电路交换.报文交换.分组交换(数据报与虚电路).ATM交换等基本原理及对比 B1P9    B1P133        B1P170 电信网络的交换技术 电路交换 程控交换机 虚电路交换 ATM IP NGN软交换 和IMS 面向连接和无连接方式 来自于互联网 这依赖于信息发送方是否需要与接收方联系并通过联系来维持一个对话连接(面向连接的),还是没有任何预先联系就发送消息(无连接的). 1.面向连接的服务:就是通信双方在通信时,要事先建立一条通信线路,其过程有建立连接.使用连接和释

QUIC协议原理分析(转)

之前深入了解了一下HTTP1.1.2.0.SPDY等协议,发现HTTP层怎么优化,始终要面对TCP本身的问题.于是了解到了QUIC,这里分享一篇之前找到的有意义的文章. 原创地址:https://mp.weixin.qq.com/s/vpz6bp3PT1IDzZervyOfqw 作者介绍:lancelot,腾讯资深研发工程师.目前主要负责腾讯 stgw(腾讯安全云网关)的相关工作,整体推进腾讯内部及腾讯公有云,混合云的七层负载均衡及全站 HTTPS 接入.对 HTTPS,SPDY,HTTP2,Q

JVM原理讲解和调优

一.什么是JVM JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的. Java语言的一个非常重要的特点就是与平台的无关性.而使用Java虚拟机是实现这一特点的关键.一般的高级语言如果要在不同的平台上运行,至少需要编译成不同的目标代码.而引入Java语言虚拟机后,Java语言在不同平台上运行时不需要重新编译.Java语言使用Java虚拟机屏蔽了与具体平台相关的信息

小米手环 / 运动手环 记步功能原理

很多朋友是第一次接触像小米手环这类运动计步产品,对于那么轻盈小巧的手环能够精准计步,甚至能详细完整的记录睡眠时间觉得非常神奇,本文就和大家详细说说在看不见的小米手环背板下,它是怎么工作的. 1. 手机上的运动步数是怎么来的? A:简单来说:小米手环能够精准计步由硬件和软件算法两方面组成,缺一不可. 硬件 是指小米手环里内置的那枚强悍的三轴加速度传感器ADXL362 (注1),军用级,大家知道想要达到军用级,这得有多苛刻.其实三轴加速度传感器不神秘,在大多数中高档手机里都有配备加速度传感器,只是在

Nginx为什么比Apache Httpd高效:原理篇

一.进程.线程? 进程是具有一定独立功能的,在计算机中已经运行的程序的实体.在早期系统中(如linux 2.4以前),进程是基本运作单位,在支持线程的系统中(如windows,linux2.6)中,线程才是基本的运作单位,而进程只是线程的容器.程序 本身只是指令.数据及其组织形式的描述,进程才是程序(那些指令和数据)的真正运行实例.若干进程有可能与同一个程序相关系,且每个进程皆可以同步(循 序)或异步(平行)的方式独立运行.现代计算机系统可在同一段时间内以进程的形式将多个程序加载到存储器中,并借

Jsp通过Filter实现UrlRewriter原理

web.xml文件: 1 <?xml version="1.0" encoding="UTF-8"?> 2 <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" 3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=&q