基于媒体内容的自适应系统码FEC编译码方法技术方案

技术编号:20164417 阅读:80 留言:0更新日期:2019-01-19 00:17
本发明专利技术提供了一种基于媒体内容的自适应系统码FEC编译码方法,包括:根据媒体内容的重要程度,将源数据按照优先级划分为N类源数据包;根据N类源数据包及其优先级,生成N类中间码;根据N类中间码,按照信道状况设定N类源数据的恢复数据,生成N类系统码的编码符号;接收所述编码符号,根据译码需要对编码符号整理排序;根据接收到的编码符号数量,分情况译出中间码字,并根据该中间码恢复出相应的源数据包。本发明专利技术最大限度保证媒体内容质量,减少FEC造成的数据冗余;不需要对源数据流进行分流,降低了发送端FEC编码的复杂度,提高了FEC编码的效率;可以根据当前网络状态的变化动态的调整编码方案,具有更强的适应性。

【技术实现步骤摘要】
基于媒体内容的自适应系统码FEC编译码方法
本专利技术涉及多媒体传输
,具体地,涉及基于媒体内容的自适应系统码前向纠错(ForwardErrorCorrection,FEC)编译码方法。
技术介绍
在异构网络媒体服务系统中,内容通过因特网协议或广播协议分发到终端,因特网中使用IP/TCP或UDP报文来传输媒体数据,广播通过MPEG2-TS来传输内容。UDP报文在经过多个网络设备后可能会出现丟失,广播TS流可能因为传输环境的影响,产生误码,从而造成终端侧的画面破损或者声音停顿。FEC(ForwardErrorCorrection,前向纠错)技术是一种广泛应用于通信系统中的编码技术。通过服务器侧对媒体数据进行纠错编码,加入冗余信息一并发送,终端侧进行反向FEC解码,对丟失的报文进行恢复。以典型的分组码为例,其基本原理是:在发送端,通过将kbit信息作为一个分组进行编码,加入(n-k)bit的冗余校验信息,组成长度为nbit的码字。码字经过信道到达接收端之后,如果错误在可纠错范围之内,通过译码即可检查并纠正错误bit,从而抵抗信道带来的干扰,有效降低系统的误码率,提高通信系统的可靠性。但是FEC处理,是以冗余开销代价来降低系统的误码率,过度FEC编码对系统实时性和网络状态也会造成压力。不等差错保护(UnequalErrorProtection,UEP)是联合信源信道编码的一种。其核心思想是,依据码流的各部分数据的重要性不同,对各部分数据采用不同的信道保护机制,即对重要码流进行重点保护。尽管UEP降低了非重要码流的抗噪声性能,但有利于系统抗误码总体性能的提升。作为一种前向纠错编码技术,数字喷泉码(DigitalFountainCode)在传输过程中,不需要反馈及自动重发机制,避免了信号往返的延时以及广播应用中的反馈爆炸问题。数字喷泉的基本思想是:发端将原始数据分割成k个数据符号,对这些数据符号进行编码,输出一个任意长度的编码符号码流,接收端只需正确地接收n(n稍大于k)个编码符号就可以很大的概率恢复出所有的k个数据符号。数字喷泉码本身就具有UEP性能,可以实现对不同重要性的数据的保护。
技术实现思路
针对现有技术中的缺陷,本专利技术的目的是提供一种基于媒体内容的自适应系统码FEC编译码方法。根据本专利技术提供的基于媒体内容的自适应系统码FEC编译码方法,包括:根据媒体内容的重要程度,将源数据按照优先级划分为N类源数据包;N为大于1的整数;根据源数据和N类源数据包的优先级,生成N类中间码;根据所述N类中间码,按照信道状况设定N类源数据的恢复数据,生成N类系统码的编码符号;接收所述编码符号,根据译码需要对所述编码符号进行整理排序,对所述编码符号进行译码处理;根据接收到的编码符号情况,优先译出优先级高的中间码,并根据该中间码恢复出相应的源数据包。可选地,所述根据源数据和N类源数据包的优先级,生成N类中间码,包括:构建N类源数据包对应的编码矩阵,记为Ai,i=1,2,…N;其中:式中:Ai表示第i类源数据包对应的编码矩阵,G_pi表示第i类源数据包对应的由LDPC矩阵和单位矩阵构成的联合矩阵,G_ENCi表示第i类源数据包对应的LT编码矩阵;根据N类源数据包对应的编码矩阵构建源数据的编码矩阵A,所述源数据的编码矩阵如下:则式中:C1,C2,…,Ci…,CN分别对应N类源数据包的中间码,D1,D2,…,Di…,DN分别对应N类源数据包的数据,上标-1为逆矩阵运算符;i=1,2,…N。可选地,所述根据所述N类中间码,按照信道状况设定N类源数据的恢复数据,包括:式中:R1,R2,…,Ri…,RN分别对应N类源数据包的恢复数据,G_ENC1i表示与G_ENC1具有相同生成规则的LT编码矩阵;G_ENCi1表示与G_ENCi具有相同生成规则的LT编码矩阵;i=1,2,…N。可选地,当N的值取2时,针对不同重要程度的数据可以产生相应的中间码如下:改变LT编码矩阵的结构,得到G_ENC11、G_ENC12、G_ENC21,其中G_ENC12与G_ENC1的生成方式相同;G_ENC21与G_ENC2的生成方式相同;G_ENC11表示与G_ENC1具有相同生成方式的LT编码矩阵;G_ENC21表示与G_ENC2具有相同生成方式的LT编码矩阵;G_ENC12表示与G_ENC1具有相同生成方式的LT编码矩阵;得到的恢复数据R1只与优先级为1的数据有关,而恢复数据R2与优先级1和2的数据均有关,则得到:可选地,当N的值取2时,所述接收所述编码符号,对所述编码符号进行译码处理,包括:在第一阶段解码时,根据恢复矩阵W以及接收到的源数据包得到中间码字;具体的:式中:REV_G_ENC1表示根据接收到的编码符号的丢包情况,去除G_ENC1中丢失包所对应的行后的LT编码矩阵;REV_G_ENC11表示根据接收到的编码符号的丢包情况,去除G_ENC11中丢失包所对应的行后的LT编码矩阵;REV_G_ENC12表示根据接收到的编码符号的丢包情况,去除G_ENC12中丢失包所对应的行后的LT编码矩阵;REV_G_ENC2表示根据接收到的编码符号的丢包情况,去除G_ENC2中丢失包所对应的行后的LT编码矩阵;REV_G_ENC21表示根据接收到的编码符号的丢包情况,去除G_ENC21中丢失包所对应的行后的LT编码矩阵;令并根据接收到的对应优先级下源数据包的数量以及接收到的数据包总数量进行解码;接收到的编码符号总数小于源数据生成的编码符号的个数,并且的行数小于列数时;C1、C2均无法解出;接收到的编码符号总数小于源数据生成的编码符号的个数,且的行数大于等于列数时;若的行数大于等于列数,则REV_A1可逆,对应的逆矩阵记为REV_A1-1;则可得:其中:C2无解;式中:REV_D1表示接收到的优先级为1的源数据,REV_R1表示接收到的优先级为1源数据的恢复数据;接收到的编码符号总数大于等于源数据生成的编码符号的个数,且的行数大于等于列数时;若的行数大于等于列数,则REV_A1可逆,对应的逆矩阵记为REV_A1-1;若的行数大于等于列数,则REV_A2可逆,对应的逆矩阵记为REV_A2-1;若REV_A1和REV_A2都可逆,则REV_A可逆,对应的逆矩阵记为REV_A-1,记则得到:若的行数小于列数,则REV_A2不存在逆矩阵,只能求出式中:REV_D2表示接收到的优先级为2的源数据,REV_R2表示接收到的优先级为1和2源数据的恢复数据;接收到的编码符号总数大于等于源数据生成的编码符号的个数,且的行数小于列数,的行数大于等于列数时;使用高斯消元法直接对矩阵REV_A进行求解,即解下列线性方程组:得到C1、C2。可选地,由于部分数据发生丢失,需要根据接收到的编码符号,生成恢复矩阵,相当于擦除掉丢失的编码符号对应的矩阵行,形成相应的恢复矩阵,记为REV_G_ENC;根据接收的数据包的数目不同,分不同情况生成中间码字;具体的,包括如下步骤:步骤A1:假设接收到l类优先级的数据包;则得到如下的恢复矩阵方程:对恢复矩阵方程进行初等行变换,得到:式中:REV_G_ENC1表示根据接收到的编码符号的丢包情况,去除G_ENC1中丢失包所对应的行后的LT编码矩阵;REV_本文档来自技高网
...

【技术保护点】
1.一种基于媒体内容的自适应系统码FEC编译码方法,其特征在于,包括:根据媒体内容的重要程度,将源数据按照优先级划分为N类源数据包;N为大于1的整数;根据源数据和N类源数据包的优先级,生成N类中间码;根据所述N类中间码,按照信道状况设定N类源数据的恢复数据,生成N类系统码的编码符号;接收所述编码符号,根据译码需要对所述编码符号进行整理排序,对所述编码符号进行译码处理;根据接收到的编码符号情况,优先译出优先级高的中间码,并根据该中间码恢复出相应的源数据包。

【技术特征摘要】
1.一种基于媒体内容的自适应系统码FEC编译码方法,其特征在于,包括:根据媒体内容的重要程度,将源数据按照优先级划分为N类源数据包;N为大于1的整数;根据源数据和N类源数据包的优先级,生成N类中间码;根据所述N类中间码,按照信道状况设定N类源数据的恢复数据,生成N类系统码的编码符号;接收所述编码符号,根据译码需要对所述编码符号进行整理排序,对所述编码符号进行译码处理;根据接收到的编码符号情况,优先译出优先级高的中间码,并根据该中间码恢复出相应的源数据包。2.根据权利要求1所述的基于媒体内容的自适应系统码FEC编译码方法,其特征在于,所述根据源数据和N类源数据包的优先级,生成N类中间码,包括:构建N类源数据包对应的编码矩阵,记为Ai,i=1,2,…N;其中:式中:Ai表示第i类源数据包对应的编码矩阵,G_pi表示第i类源数据包对应的由LDPC矩阵和单位矩阵构成的联合矩阵,G_ENCi表示第i类源数据包对应的LT编码矩阵;根据N类源数据包对应的编码矩阵构建源数据的编码矩阵A,所述源数据的编码矩阵如下:则式中:C1,C2,…,Ci…,CN分别对应N类源数据包的中间码,D1,D2,…,Di…,DN分别对应N类源数据包的数据,上标-1为逆矩阵运算符;i=1,2,…N。3.根据权利要求2所述的基于媒体内容的自适应系统码FEC编译码方法,其特征在于,所述根据所述N类中间码,按照信道状况设定N类源数据的恢复数据,包括:式中:R1,R2,…,Ri…,RN分别对应N类源数据包的恢复数据,G_ENC1i表示与G_ENC1具有相同生成规则的LT编码矩阵;G_ENCi1表示与G_ENCi具有相同生成规则的LT编码矩阵;i=1,2,…N。4.根据权利要求3所述的基于媒体内容的自适应系统码FEC编译码方法,其特征在于,当N的值取2时,针对不同重要程度的数据可以产生相应的中间码如下:改变LT编码矩阵的结构,得到G_ENC11、G_ENC12、G_ENC21,其中G_ENC12与G_ENC1的生成方式相同;G_ENC21与G_ENC2的生成方式相同;G_ENC11表示与G_ENC1具有相同生成方式的LT编码矩阵;G_ENC21表示与G_ENC2具有相同生成方式的LT编码矩阵;G_ENC12表示与G_ENC1具有相同生成方式的LT编码矩阵;得到的恢复数据R1只与优先级为1的数据有关,而恢复数据R2与优先级1和2的数据均有关,则得到:5.根据权利要求4所述的基于媒体内容的自适应系统码FEC编译码方法,其特征在于,当N的值取2时,所述接收所述编码符号,对所述编码符号进行译码处理,包括:在第一阶段解码时,根据恢复矩阵W以及接收到的源数据包得到中间码字;具体的:式中:REV_G_ENC1表示根据接收到的编码符号的丢包情况,去除G_ENC1中丢失包所对应的行后的LT编码矩阵;REV_G_ENC11表示根据接收到的编码符号的丢包情况,去除G_ENC11中丢失包所对应的行后的LT编码矩阵;REV_G_ENC12表示根据接收到的编码符号的丢包情况,去除G_ENC12中丢失包所对应的行后的LT编码矩阵;REV_G_ENC2表示根据接收到的编码符号的丢包情况,去除G_ENC2中丢失包所对应的行后的LT编码矩阵;REV_G_ENC21表示根据接收到的编码符号的丢包情况,去除G_ENC21中丢失包所对应的行后的LT编码矩阵;令并根据接收到的对应优先级下源数据包的数量以及接收到的数据包总数量进行解码;接收到的编码符号总数小于源数据生成的编码符号的个数,并且的行数小于列数时;C1、C2均无法解出;接收到的编码符号总数小于源数据生成的编码符号的个数,且的行数大于等于列数时;若的行数大于等于列数,则REV_A1可逆,对应的逆矩阵记为REV_A1-1;则可得:其中:C2无解;式中:REV_D1表示接收到的优先级为1的源数据,REV_R1表示接收到的优先级为1源数据的恢复数据;接收到的编码符号总数大于等于源数据生成的编码符号的个数,且的行数大于等于列数时;若的行数大于等于列数,则REV_A1可逆,对应的逆矩阵记为REV_A1-1;若的行数大于等于列数,则REV_A2可逆,对应的逆矩阵记为REV_A2-1;若REV_A1和REV_A2都可逆,则REV_A可逆,对应的逆矩阵记为REV_A-1,记则得到:若的行数小于列数,则REV_A2不存在逆矩阵,只能求出式中:REV_D2表示接收到的优先级为2的源数据,REV_R2表示接收到的优先级为1和2源数据的恢复数据;接收到的编码符号总数大于等于源数据生成的编码符号的个数,且的行数小于列数,的行数大于等于列数时;使用...

【专利技术属性】
技术研发人员:徐异凌张文军姜志乾陈浩孙军
申请(专利权)人:上海交通大学
类型:发明
国别省市:上海,31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1