一种解压缩的方法和装置转让专利

申请号 : CN201710151381.7

文献号 : CN108574684B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 程岳

申请人 : 大唐移动通信设备有限公司

摘要 :

本发明实施例提供了一种解压缩的方法和装置,包括:接收压缩数据包;其中,压缩数据包包括当前接收的压缩数据包以及上个接收的压缩数据包;提取所述当前接收的压缩数据包PDCP协议层PDU对应的当前序列号;以及,提取所述上个接收的压缩数据包PDCP协议层PDU对应的特定序列号;获取所述当前接收的压缩数据包以及所述上个接收的压缩数据包的时间间隔参数;判断所述序列号差值是否大于预设序列号阈值;若否,则根据原有译码间隔将压缩数据包进行解压缩;若是,则判断所述时间间隔参数是否大于预设时间阈值;当所述时间间隔参数大于预设时间阈值时,根据第二译码间隔将压缩数据包进行解压缩。

权利要求 :

1.一种解压缩的方法,其特征在于,包括:

接收压缩数据包;其中,压缩数据包包括当前接收的压缩数据包以及上个接收的压缩数据包;

提取所述当前接收的压缩数据包PDCP协议层PDU对应的当前序列号;以及,提取所述上个接收的压缩数据包PDCP协议层PDU对应的特定序列号;

依据所述当前序列号及所述特定序列号获得序列号差值;

获取所述当前接收的压缩数据包以及所述上个接收的压缩数据包的时间间隔参数;

判断所述序列号差值是否大于预设序列号阈值;

若否,则根据原有译码间隔将压缩数据包进行解压缩;

若是,则判断所述时间间隔参数是否大于预设时间阈值;

当所述时间间隔参数大于预设时间阈值时,根据第二译码间隔将压缩数据包进行解压缩。

2.根据权利要求1所述的方法,其特征在于,所述依据所述当前序列号及所述特定序列号获得序列号差值的步骤包括:将PDCP协议层PDU对应的当前序列号及PDCP协议层PDU对应的特定序列号进行差值运算,获得到序列号差值。

3.根据权利要求1所述的方法,其特征在于,所述根据原有译码间隔将压缩数据包进行解压缩的步骤包括:在原有译码间隔下,计算得到压缩数据包的RTP实时传输协议包序列号及TS时间戳;

按照RTP包序列号及TS对压缩数据包进行解压缩。

4.根据权利要求1所述的方法,其特征在于,所述根据第二译码间隔将压缩数据包进行解压缩的步骤包括:在第二译码间隔下,计算得到压缩数据包的RTP实时传输协议包序列号及TS时间戳;

按照RTP包序列号及TS对压缩数据包进行解压缩。

5.根据权利要求1或4所述的方法,其特征在于,所述方法还包括:当所述时间间隔参数小于预设时间阈值时,根据第三译码间隔将压缩数据包进行解压缩。

6.根据权利要求3或4所述的方法,其特征在于,所述按照RTP包序列号及TS对压缩数据包进行解压缩的步骤还包括:按照RTP包序列号及TS对压缩数据包进行解压缩及CRC循环冗余校验。

7.一种解压缩的装置,其特征在于,包括:

接收模块,用于接收压缩数据包;其中,压缩数据包包括当前接收的压缩数据包以及上个接收的压缩数据包;

第一提取模块,用于提取所述当前接收的压缩数据包PDCP协议层PDU对应的当前序列号;以及,第二提取模块,用于提取所述上个接收的压缩数据包PDCP协议层PDU对应的特定序列号;

序列号差值获得模块,用于依据所述当前序列号及所述特定序列号获得序列号差值;

时间间隔参数获取模块,用于获取所述当前接收的压缩数据包以及所述上个接收的压缩数据包的时间间隔参数;

第一判断模块,用于判断所述序列号差值是否大于预设序列号阈值;

第一解压缩模块,用于当所述序列号差值大于预设序列号阈值,则根据原有译码间隔将压缩数据包进行解压缩;

第二判断模块,用于当所述序列号差值小于预设序列号阈值,则判断所述时间间隔参数是否大于预设时间阈值;

第二解压缩模块,用于当所述时间间隔参数大于预设时间阈值时,根据第二译码间隔将压缩数据包进行解压缩。

8.根据权利要求7所述的装置,其特征在于,所述序列号差值获得模块包括:序列号差值获得子模块,用于将PDCP协议层PDU对应的当前序列号及PDCP协议层PDU对应的特定序列号进行差值运算,获得到序列号差值。

9.根据权利要求7所述的装置,其特征在于,所述第一解压缩模块包括:第一计算子模块,用于在原有译码间隔下,计算得到压缩数据包的RTP实时传输协议包序列号及TS时间戳;

第一解压缩子模块,用于按照RTP包序列号及TS对压缩数据包进行解压缩。

10.根据权利要求7所述的装置,其特征在于,所述第二解压缩模块包括:第二计算子模块,用于在第二译码间隔下,计算得到压缩数据包的RTP实时传输协议包序列号及TS时间戳;

第二解压缩子模块,用于按照RTP包序列号及TS对压缩数据包进行解压缩。

11.根据权利要求7或10所述的装置,其特征在于,所述装置还包括:第三解压缩模块,用于当所述时间间隔参数小于预设时间阈值时,根据第三译码间隔将压缩数据包进行解压缩。

12.根据权利要求9或10所述的装置,其特征在于,所述第一解压缩子模块还包括:校验子单元,用于按照RTP包序列号及TS对压缩数据包进行解压缩及CRC循环冗余校验。

说明书 :

一种解压缩的方法和装置

技术领域

[0001] 本发明涉及通信的技术领域,特别是涉及一种解压缩的方法和一种解压缩的装置。

背景技术

[0002] 在LTE(Long Term Evolution,长期演进)移动通信网络中,VOLTE(Voice Over Lte,基于LTE的语音业务)是在全IP(Internet Protocol,互联网协议)条件下端到端的语音解决方案,语音数据包具有周期性到达,包大小相对固定的特点,语音采用自适应多速率(AMR,Adaptive Multi-Rate)压缩编码,然后封装为IP数据包传输,例如:最高速率为23.85Kbps的宽带语音数据包为61个字节,但是ARM报文头RTP(Real-time Transport Protocol,实时传输协议)/UDP(User Datagram Protocol,用户数据报协议)/IPv(Internet Protocol Version,互联网协议版本)6中达到60字节,因此空中带宽的实际利用率只有50%左右,语音静默数据包大小只有7个字节,但包头达到60字节,带宽利用率更低至10%,而ROHC(Robust Header Compression健壮性报头压缩,)可以将这些报文头(报文头RTP/UDP/IPv6)压缩至1至3个字节的程度,带宽利用率一般可达90%以上。VOLTE语音数据包在接入网协议中一般采取UM(Unacknowledged Mode)不确认模式传输,由于空口质量不稳定,因此无线链路上经常存在丢包的情况。ROHC压缩传递报文时在报头中加入CRC(Cyclic Redundancy Check循环冗余校验)防止差错扩散,在丢包发生时,会经常伴随CRC校验和发生错误导致接收方无法解压缩而丢弃包并引起错误扩散,现有协议规定的CRC校验失败后的修复方法针对无线链路丢包的处理并不合理。
[0003] 现有CRC只有3比特,误校验通过的可能性较大,从而将错误延续下去直到CRC校验错误,这种误校验通过的报文递交给应用后也会被丢弃,因此丢包数目被放大。即使CRC校验发生错误,协议要求判断连续3包CRC通过才能递交包给上层应用,这3包数据也要被丢弃。
[0004] 由于在物理层的资源调度算法的优化,可能存在攒包调度时,可能在同一个时刻收到2至3包压缩的语音包;或者系统繁忙时,导致包时间间隔并不稳定,这种依靠时间因素并不合适,无法合理判断丢包数目是否在2k包范围内,从而无法正确更新参考值,因此选择错误的译码间隔导致CRC校验错误引起丢包及更新上下文导致错误传递。

发明内容

[0005] 鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种解压缩的方法和相应的一种解压缩的装置。
[0006] 为了解决上述问题,本发明实施例公开了一种解压缩的方法,包括:
[0007] 接收压缩数据包;其中,压缩数据包包括当前接收的压缩数据包以及上个接收的压缩数据包;
[0008] 提取所述当前接收的压缩数据包PDCP协议层PDU对应的当前序列号;以及,提取所述上个接收的压缩数据包PDCP协议层PDU对应的特定序列号;
[0009] 依据所述当前序列号及所述特定序列号获得序列号差值;
[0010] 获取所述当前接收的压缩数据包以及所述上个接收的压缩数据包的时间间隔参数;
[0011] 判断所述序列号差值是否大于预设序列号阈值;
[0012] 若否,则根据原有译码间隔将压缩数据包进行解压缩;
[0013] 若是,则判断所述时间间隔参数是否大于预设时间阈值;
[0014] 当所述时间间隔参数大于预设时间阈值时,根据第二译码间隔将压缩数据包进行解压缩。
[0015] 优选地,所述依据所述当前序列号及所述特定序列号获得序列号差值的步骤包括:
[0016] 将PDCP协议层PDU对应的当前序列号及PDCP协议层PDU对应的特定序列号进行差值运算,获得到序列号差值。
[0017] 优选地,所述根据原有译码间隔将压缩数据包进行解压缩的步骤包括:
[0018] 在原有译码间隔下,计算得到压缩数据包的RTP实时传输协议包序列号及TS时间戳;
[0019] 按照RTP包序列号及TS对压缩数据包进行解压缩。
[0020] 优选地,所述根据第二译码间隔将压缩数据包进行解压缩的步骤包括:
[0021] 在第二译码间隔下,计算得到压缩数据包的RTP实时传输协议包序列号及TS时间戳;
[0022] 按照RTP包序列号及TS对压缩数据包进行解压缩。
[0023] 优选地,所述方法还包括:
[0024] 当所述时间间隔参数小于预设时间阈值时,根据第三译码间隔将压缩数据包进行解压缩。
[0025] 优选地,所述按照RTP包序列号及TS对压缩数据包进行解压缩的步骤还包括:
[0026] 按照RTP包序列号及TS对压缩数据包进行解压缩及CRC循环冗余校验。
[0027] 本发明实施例还公开了一种解压缩的装置,包括:
[0028] 接收模块,用于接收压缩数据包;其中,压缩数据包包括当前接收的压缩数据包以及上个接收的压缩数据包;
[0029] 第一提取模块,用于提取所述当前接收的压缩数据包PDCP协议层PDU对应的当前序列号;以及,第二提取模块,用于提取所述上个接收的压缩数据包PDCP协议层PDU对应的特定序列号;
[0030] 序列号差值获得模块,用于依据所述当前序列号及所述特定序列号获得序列号差值;
[0031] 时间间隔参数获取模块,用于获取所述当前接收的压缩数据包以及所述上个接收的压缩数据包的时间间隔参数;
[0032] 第一判断模块,用于判断所述序列号差值是否大于预设序列号阈值;
[0033] 第一解压缩模块,用于当所述序列号差值大于预设序列号阈值,则根据原有译码间隔将压缩数据包进行解压缩;
[0034] 第二判断模块,用于当所述序列号差值小于预设序列号阈值,则判断所述时间间隔参数是否大于预设时间阈值;
[0035] 第二解压缩模块,用于当所述时间间隔参数大于预设时间阈值时,根据第二译码间隔将压缩数据包进行解压缩。
[0036] 优选地,所述序列号差值获得模块包括:
[0037] 序列号差值获得子模块,用于将PDCP协议层PDU对应的当前序列号及PDCP协议层PDU对应的特定序列号进行差值运算,获得到序列号差值。
[0038] 优选地,所述第一解压缩模块包括:
[0039] 第一计算子模块,用于在原有译码间隔下,计算得到压缩数据包的RTP实时传输协议包序列号及TS时间戳;
[0040] 第一解压缩子模块,用于按照RTP包序列号及TS对压缩数据包进行解压缩。
[0041] 优选地,所述第二解压缩模块包括:
[0042] 第二计算子模块,用于在第二译码间隔下,计算得到压缩数据包的RTP实时传输协议包序列号及TS时间戳;
[0043] 第二解压缩子模块,用于按照RTP包序列号及TS对压缩数据包进行解压缩。
[0044] 优选地,所述装置还包括:
[0045] 第三解压缩模块,用于当所述时间间隔参数小于预设时间阈值时,根据第三译码间隔将压缩数据包进行解压缩。
[0046] 优选地,所述第一解压缩子模块还包括:
[0047] 校验子单元,用于按照RTP包序列号及TS对压缩数据包进行解压缩及CRC循环冗余校验。
[0048] 本发明实施例包括以下优点:
[0049] 本发明实施例中,解压缩端接收压缩数据包;其中,压缩数据包包括当前接收的压缩数据包以及上个接收的压缩数据包;提取所述当前接收的压缩数据包对应的当前序列号;以及,提取所述上个接收的压缩数据包对应的特定序列号;依据所述当前序列号及所述特定序列号获得序列号差值;获取所述当前接收的压缩数据包以及所述上个接收的压缩数据包的时间间隔参数;判断所述序列号差值是否大于预设序列号阈值;若否,则根据原有译码间隔将压缩数据包进行解压缩;若是,则判断所述时间间隔参数是否大于预设时间阈值;当所述时间间隔参数大于预设时间阈值时,根据第二译码间隔将压缩数据包进行解压缩。
本发明实施例可以根据PDU序列号判断压缩数据包丢失数目是否大于2k,进而选择适当的译码间隔,正确解压缩还原数据包。压缩端可以继续发送当前语音数据包类型,带宽利用率高,压缩端不进行状态迁移,处理简单高效。

附图说明

[0050] 图1是本发明的一种解压缩的方法实施例一的步骤流程图;
[0051] 图2是本发明的一种解压缩的方法实施例二的步骤流程图;
[0052] 图3是本发明的一种解压缩的装置实施例的结构框图。

具体实施方式

[0053] 为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
[0054] 参照图1,示出了本发明的一种解压缩的方法实施例一的步骤流程图,具体可以包括如下步骤:
[0055] 步骤101,接收压缩数据包;其中,压缩数据包包括当前接收的压缩数据包以及上个接收的压缩数据包;
[0056] 本发明实施例中,解压缩端可以接收压缩数据包,该解压缩端可以包括UE(User Equipment,终端)或基站,需要说明的是,解压缩端同时可以是压缩端,因为压缩数据包的传输是双向的。
[0057] 进一步地,该压缩数据包可以包括VOLTE下的语音数据包,该语音数据包承载在PDCP(Packet Data Convergence Protocol,分组数据汇聚协议)协议层上进行传输,该PDCP协议层包括PDU(Protocol Data Unit)协议数据单元,其中,所述PDU包括解压缩端接收到的压缩数据包对应的PDU序列号,本发明实施例中,压缩数据包包括当前接收的压缩数据包以及上个接收的压缩数据包,因为数据包丢失现象的存在,该当前接收的压缩数据包与上个接收的压缩数据包的之间的顺序可能是连续的,也可能是不连续的。
[0058] 步骤102,提取所述当前接收的压缩数据包PDCP协议层PDU对应的当前序列号;以及,提取所述上个接收的压缩数据包PDCP协议层PDU对应的特定序列号;
[0059] 进一步地,可以提取出当前接收的压缩数据包对应的当前序列号,该当前序列号可以包括压缩数据包对应的PDCP协议层PDU序列号,并且,还可以提取所述上个接收的压缩数据包中对应的特定序列号,同样的,该特定序列号可以包括压缩数据包对应的PDCP协议层PDU序列号,PDU序列号可以从0递增至127,在数据包未丢失的情况下,会递增到127时,翻转到0继续循环递增。
[0060] 步骤103,依据所述当前序列号及所述特定序列号获得序列号差值;
[0061] 具体而言,可以依据所述PDCP协议层PDU对应的当前序列号及所述PDCP协议层PDU对应的特定序列号获得序列号差值,详细地,可以将当前序列号及特定序列号作差值运算,获得序列号差值。
[0062] 步骤104,获取所述当前接收的压缩数据包以及所述上个接收的压缩数据包的时间间隔参数;
[0063] 实际应用到本发明实施例中,可以获取到当前接收的压缩数据包的当前时间参数,进一步地,还可以获取到上个接收的压缩数据包的特定时间参数,该当前时间参数及特定时间参数可以包括解压缩端接收到压缩数据包的时刻;需要说明的是,该时间间隔参数为特定时间参数及当前时间参数的差值。
[0064] 步骤105,判断所述序列号差值是否大于预设序列号阈值;
[0065] 本发明实施例中,还可以判断上述得到的序列号差值与预设序列号阈值的大小关系,该预设序列号阈值可以2的K次幂,K可以为最低有效位的个数。
[0066] 步骤106,若否,则根据原有译码间隔将压缩数据包进行解压缩;
[0067] 实际应用到本发明实施例中,当所述序列号差值大于预设序列号阈值时,可以进一步执行判断所述时间间隔参数是否大于预设时间阈值的步骤;当所述序列号差值小于预设序列号阈值时,则根据原有译码间隔将压缩数据包进行解压缩;原有译码间隔可以为[v_ref+1,v_ref+2k],其中,v_ref为参考值,在原有译码间隔内,计算得到压缩数据包的RTP实时传输协议包序列号及TS时间戳;按照RTP包序列号及TS对压缩数据包进行解压缩。
[0068] 步骤107,若是,则判断所述时间间隔参数是否大于预设时间阈值;
[0069] 进一步地,当所述序列号差值大于预设序列号阈值时,可以判断所述时间间隔参数是否大于预设时间阈值,该预设时间阈值可以由现有的通信协议确定,本发明实施例对此不作限制;优选地,可以根据RFC3550协议,发送间隔时间可以为2.5秒,在具体实现中,统计从核心网收到的语音流中N次(N>=2,且为正整数)压缩数据包的间隔时间计算平均值,获得间隔时间平均值,选取出间隔时间平均值与间隔时间的最大值,作为预设时间阈值。
[0070] 步骤108,当所述时间间隔参数大于预设时间阈值时,根据第二译码间隔将压缩数据包进行解压缩。
[0071] 本发明实施例中,可以按特定译码间隔将压缩数据包进行解压缩,该特定译码间隔可以包括第二译码间隔及第三译码间隔,特定译码间隔可以总结为[v_ref+2k-q+1,v_ref+2k+2k-q],当所述时间间隔参数大于预设时间阈值时,q为1,当所述时间间隔参数小于预设时间阈值时,q为0;具体地,当所述时间间隔参数大于预设时间阈值时,根据第二译码k k k间隔将压缩数据包进行解压缩,该第二译码间隔可以为[v_ref+2 ,v_ref+2+2-1],在LSB(Least Significant Bit,最低有效位)算法下,计算得到压缩数据包的RTP实时传输协议包序列号及TS时间戳;按照RTP包序列号及TS对压缩数据包进行解压缩。当所述时间间隔参数大于预设时间阈值时,根据第三译码间隔将压缩数据包进行解压缩,该第三译码间隔可以为[v_ref+2k+1,v_ref+2k+2k],再计算得到压缩数据包的RTP实时传输协议包序列号及TS时间戳;按照RTP包序列号及TS对压缩数据包进行解压缩。
[0072] 本发明实施例中,解压缩端接收压缩数据包;其中,压缩数据包包括当前接收的压缩数据包以及上个接收的压缩数据包;提取所述当前接收的压缩数据包对应的当前序列号;以及,提取所述上个接收的压缩数据包对应的特定序列号;依据所述当前序列号及所述特定序列号获得序列号差值;获取所述当前接收的压缩数据包以及所述上个接收的压缩数据包的时间间隔参数;判断所述序列号差值是否大于预设序列号阈值;若否,则根据原有译码间隔将压缩数据包进行解压缩;若是,则判断所述时间间隔参数是否大于预设时间阈值;当所述时间间隔参数大于预设时间阈值时,根据第二译码间隔将压缩数据包进行解压缩。
本发明实施例可以根据PDU序列号判断压缩数据包丢失数目是否大于2k,进而选择适当的译码间隔,正确解压缩还原数据包。压缩端可以继续发送当前语音数据包类型,带宽利用率高,压缩端不进行状态迁移,处理简单高效。
[0073] 参照图2,示出了本发明的一种解压缩的方法实施例二的步骤流程图,具体可以包括如下步骤:
[0074] 步骤201,接收压缩数据包;其中,压缩数据包包括当前接收的压缩数据包以及上个接收的压缩数据包;
[0075] 本发明实施例中,该压缩数据可以包括语音数据包,该语音数据包承载在PDCP协议层,进行传输,该PDCP协议层包括PDU协议数据单元,其中,所述PDU包括解压缩端接收到的压缩数据包对应的PDU序列号,本发明实施例中,压缩数据包包括当前接收的压缩数据包以及上个接收的压缩数据包。
[0076] 步骤202,提取所述当前接收的压缩数据包PDCP协议层PDU对应的当前序列号;以及,提取所述上个接收的压缩数据包PDCP协议层PDU对应的特定序列号;
[0077] 具体而言,可以提取出当前接收的压缩数据包对应的当前序列号,该当前序列号可以包括压缩数据包对应的PDU序列号,并且,还可以提取所述上个接收的压缩数据包中对应的特定序列号,同样的,该特定序列号可以包括压缩数据包对应的PDU序列号。
[0078] 步骤203,将PDCP协议层PDU对应的当前序列号及PDCP协议层PDU对应的特定序列号进行差值运算,获得到序列号差值;
[0079] 实际而言,依据所述PDCP协议层PDU对应的当前序列号及所述PDCP协议层PDU对应的特定序列号获得序列号差值,可以将当前序列号及特定序列号作差值运算,获得序列号差值。
[0080] 步骤204,获取所述当前接收的压缩数据包以及所述上个接收的压缩数据包的时间间隔参数;
[0081] 实际应用到本发明实施例中,可以获取到当前接收的压缩数据包的当前时间参数,还可以获取到上个接收的压缩数据包的特定时间参数,该时间间隔参数为特定时间参数及当前时间参数的差值。
[0082] 步骤205,判断所述序列号差值是否大于预设序列号阈值;
[0083] 本发明实施例中,还可以判断上述得到的序列号差值与预设序列号阈值的大小关系,该预设序列号阈值可以2的K次幂,K可以为最低有效位的个数。
[0084] 步骤206,若否,则根据原有译码间隔将压缩数据包进行解压缩;
[0085] 本发明实施例的一种优选实施例中,所述根据原有译码间隔将压缩数据包进行解压缩的步骤包括:原有译码间隔,即[v_ref+1,v_ref+2k]下,计算得到压缩数据包的RTP实时传输协议包序列号及TS时间戳;按照RTP包序列号及TS对压缩数据包进行解压缩。
[0086] 步骤207,若是,则判断所述时间间隔参数是否大于预设时间阈值;
[0087] 步骤208,当所述时间间隔参数大于预设时间阈值时,在第二译码间隔下,计算得到压缩数据包的RTP实时传输协议包序列号及TS时间戳;
[0088] 步骤209,按照RTP包序列号及TS对压缩数据包进行解压缩。
[0089] 当所述时间间隔参数大于预设时间阈值时,根据第二译码间隔将压缩数据包进行解压缩,该第二译码间隔可以为[v_ref+2k,v_ref+2k+2k-1],在LSB(Least Significant Bit,最低有效位)算法下,计算得到压缩数据包的RTP实时传输协议包序列号及TS时间戳;按照RTP包序列号及TS对压缩数据包进行解压缩。
[0090] 本发明实施例的一种优选实施例中,所述方法还包括:当所述时间间隔参数小于预设时间阈值时,根据第三译码间隔将压缩数据包进行解压缩。
[0091] 该第三译码间隔可以为[v_ref+2k+1,v_ref+2k+2k],在该第三译码间隔下计算得到压缩数据包的RTP实时传输协议包序列号及TS时间戳,按照RTP包序列号及TS对压缩数据包进行解压缩。
[0092] 本发明实施例的另一种优选实施例中,所述按照RTP包序列号及TS对压缩数据包进行解压缩的步骤还包括:按照RTP包序列号及TS对压缩数据包进行解压缩及CRC循环冗余校验,本发明实施例中,还可以在解压缩完毕后,进行循环冗余校验。
[0093] 本发明实施例中,解压缩端接收压缩数据包;其中,压缩数据包包括当前接收的压缩数据包以及上个接收的压缩数据包;提取所述当前接收的压缩数据包对应的当前序列号;以及,提取所述上个接收的压缩数据包对应的特定序列号;依据所述当前序列号及所述特定序列号获得序列号差值;获取所述当前接收的压缩数据包以及所述上个接收的压缩数据包的时间间隔参数;判断所述序列号差值是否大于预设序列号阈值;若否,则根据原有译码间隔将压缩数据包进行解压缩;若是,则判断所述时间间隔参数是否大于预设时间阈值;当所述时间间隔参数大于预设时间阈值时,在第二译码间隔下,计算得到压缩数据包的RTP实时传输协议包序列号及TS时间戳,按照RTP包序列号及TS对压缩数据包进行解压缩;本发明实施例中,可以区分压缩数据包丢失数目是否大于2k,进而采取不同方法更新译码间隔,可有效降低压缩数据包丢失数目,提升用户感知,当压缩数据包丢失导致CRC校验失败时,提升压缩效率,带宽利用率高。
[0094] 需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
[0095] 参照图3,示出了本发明的一种解压缩装置实施例的结构框图,具体可以包括如下模块:
[0096] 接收模块301,用于接收压缩数据包;其中,压缩数据包包括当前接收的压缩数据包以及上个接收的压缩数据包;
[0097] 第一提取模块302,用于提取所述当前接收的压缩数据包PDCP协议层PDU对应的当前序列号;以及,第二提取模块,用于提取所述上个接收的压缩数据包PDCP协议层PDU对应的特定序列号;
[0098] 序列号差值获得模块303,用于依据所述当前序列号及所述特定序列号获得序列号差值;
[0099] 时间间隔参数获取模块304,用于获取所述当前接收的压缩数据包以及所述上个接收的压缩数据包的时间间隔参数;
[0100] 第一判断模块305,用于判断所述序列号差值是否大于预设序列号阈值;
[0101] 第一解压缩模块306,用于当所述序列号差值大于预设序列号阈值,则根据原有译码间隔将压缩数据包进行解压缩;
[0102] 第二判断模块307,用于当所述序列号差值小于预设序列号阈值,则判断所述时间间隔参数是否大于预设时间阈值;
[0103] 第二解压缩模块308,用于当所述时间间隔参数大于预设时间阈值时,根据第二译码间隔将压缩数据包进行解压缩。
[0104] 优选地,所述序列号差值获得模块包括:
[0105] 序列号差值获得子模块,用于将PDCP协议层PDU对应的当前序列号及PDCP协议层PDU对应的特定序列号进行差值运算,获得到序列号差值。
[0106] 优选地,所述第一解压缩模块包括:
[0107] 第一计算子模块,用于在原有译码间隔下,计算得到压缩数据包的RTP实时传输协议包序列号及TS时间戳;
[0108] 第一解压缩子模块,用于按照RTP包序列号及TS对压缩数据包进行解压缩。
[0109] 优选地,所述第二解压缩模块包括:
[0110] 第二计算子模块,用于在第二译码间隔下,计算得到压缩数据包的RTP实时传输协议包序列号及TS时间戳;
[0111] 第二解压缩子模块,用于按照RTP包序列号及TS对压缩数据包进行解压缩。
[0112] 优选地,所述装置还包括:
[0113] 第三解压缩模块,用于当所述时间间隔参数小于预设时间阈值时,根据第三译码间隔将压缩数据包进行解压缩。
[0114] 优选地,所述第一解压缩子模块还包括:
[0115] 校验子单元,用于按照RTP包序列号及TS对压缩数据包进行解压缩及CRC循环冗余校验。
[0116] 对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0117] 本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
[0118] 本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0119] 本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0120] 这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0121] 这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0122] 尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
[0123] 最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
[0124] 以上对本发明所提供的一种方法和一种装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。