一种压缩时间戳的方法和装置制造方法及图纸

技术编号:13387794 阅读:52 留言:0更新日期:2016-07-22 04:25
本发明专利技术公开了一种压缩时间戳的方法和装置,包括:压缩端计算第N个数据包和第(N-1)个数据包的时间戳TS之间的第一差值;压缩端判断出计算得到的第一差值为0;或者,判断出计算得到的第一差值不为0,且判断出计算得到的第一差值与当前时间戳倍数TS_STRIDE相等,将第N个数据包的压缩的时间戳TS_SCALED包含在第N个数据包中发送给解压端;其中,N为大于或等于2的正整数。通过本发明专利技术的方案,压缩端在第一差值为0;或者,在第一差值不为0,且第一差值与当前TS_STRIDE相等时,将第N个数据包的压缩的TS包含在第N个数据包中发送给解压端,从而提高了压缩效率。

【技术实现步骤摘要】
一种压缩时间戳的方法和装置
本专利技术涉及鲁棒性头压缩(ROHC,RobustHeaderCompression)技术,尤指一种压缩时间戳的方法和装置。
技术介绍
ROHC技术是基于IP的通用压缩技术,主要应用在无线传输的空中接口,用于提高空中接口的资源利用率。ROHC技术可以将互联网协议(IP,InternetProtocol)电话(VoIP,VoiceoverInternetProtocol)业务头压缩至最小一个字节的程度,带宽利用率一般可达90%以上。ROHC技术主要是利用以下规律来实现的:同一个流的数据包头(特别是连续的数据包头)中有很多域是不变的,或者很多域不是随机变化的,而是规律性变化的。在压缩互联网协议(IP,InternetProtocol)/用户数据协议(UDP,UserDatagramProtocol)/实时传送协议(RTP,Real-timeTransportProtocol)类型的数据包时,RTP协议中的时间戳(TS,TimeStamp)字段是一个很重要的待压缩字段。目前RFC3095协议中提供了压缩RTP时间戳(ScaledRTPTimestamp)方法。该方法的思想是:两个连续的RTP数据包头的TS值之间通常不是任意增加的,而是每次增加的是一个定值,即时间戳倍数(TS_STRIDE,Timestampstride)。例如,在语音流中,语音的采样频率通常为8千赫兹(kHz),而一帧数据中包含20毫秒(ms)的语音数据。通常一个语音帧放在一个RTP数据包中传输,这种情况下RTP数据包中TS值的增长量通常为N×160(其中,160=8000×0.2),N为正整数。在视频流中,如果视频的采样频率是90kHz,且每秒生成30帧,则每帧中TS值的增长量为N×3000(3000=90000/30)。有一点需要注意的是由于视频帧比较大,一个帧经常会分成几个RTP数据包发送。属于同一帧的RTP数据包头的TS值相同。采用ScaledRTPTimestamp方法时,压缩效率比较低。
技术实现思路
为了解决上述问题,本专利技术提出了一种压缩时间戳的方法和装置,能够提高压缩效率。为了达到上述目的,本专利技术提出了一种压缩时间戳的方法,包括:压缩端计算第N个数据包和第(N-1)个数据包的时间戳TS之间的第一差值;压缩端判断出计算得到的第一差值为0;或者,判断出计算得到的第一差值不为0,且判断出计算得到的第一差值与当前时间戳倍数TS_STRIDE相等,将第N个数据包的压缩的时间戳TS_SCALED包含在第N个数据包中发送给解压端;其中,N为大于或等于2的正整数。优选地,当所述压缩端判断出所述第一差值不为0,且判断出所述第一差值与当前TS_STRIDE不相等,且所述N为2时,该方法还包括:更新所述当前TS_STRIDE,将所述第N个数据包的TS和更新后的当前TS_STRIDE包含在所述第N个数据包中发送给解压端。优选地,当所述压缩端判断出所述第一差值不为0,且判断出所述第一差值与所述当前TS_STRIDE不相等,且判断出所述第一差值为所述当前TS_STRIDE的两倍或两倍以上,且所述N大于2时,该方法还包括:所述压缩端计算第(N-1)个数据包和第(N-2)个数据包的TS之间的第二差值;所述压缩端判断出所述第一差值与所述第二差值不相等,将所述第N个数据包的TS_SCALED包含在所述第N个数据包中发送给所述解压端。优选地,当所述压缩端判断出所述第一差值不为0,且判断出所述第一差值与所述当前TS_STRIDE不相等,且判断出所述第一差值不是当前TS_STRIDE的整数倍;或者判断出所述第一差值与所述第二差值相等时,该方法还包括:所述压缩端更新所述当前TS_STRIDE,将所述第N个数据包的TS和更新后的当前TS_STRIDE包含在所述第N个数据包中发送给解压端。本专利技术还提出了一种压缩时间戳的装置,至少包括:计算模块,用于计算第N个数据包和第(N-1)个数据包的时间戳TS之间的第一差值;判断模块,用于判断出计算得到的第一差值为0;或者,判断出计算得到的第一差值不为0,且判断出计算得到的第一差值与当前时间戳倍数TS_STRIDE相等,将第N个数据包的压缩的时间戳TS_SCALED包含在第N个数据包中发送给解压端;其中,N为大于或等于2的正整数。优选地,所述判断模块还用于:判断出所述第一差值不为0,且判断出所述第一差值与当前TS_STRIDE不相等,且所述N为2,更新所述当前TS_STRIDE,将所述第N个数据包的TS和更新后的当前TS_STRIDE包含在所述第N个数据包中发送给解压端。优选地,所述判断模块还用于:端判断出所述第一差值不为0,且判断出所述第一差值与所述当前TS_SCALED不相等,且判断出所述第一差值为所述当前TS_STRIDE的两倍或两倍以上,且所述N大于2,计算第(N-1)个数据包和第(N-2)个数据包的TS之间的第二差值;判断出所述第一差值与所述第二差值不相等,将所述第N个数据包的TS_SCALED包含在所述第N个数据包中发送给所述解压端。优选地,所述判断模块还用于:判断出所述第一差值不为0,且判断出所述第一差值与所述当前TS_STRIDE不相等,且判断出所述第一差值不是当前TS_STRIDE的整数倍;或者判断出所述第一差值与所述第二差值相等,更新所述当前TS_STRIDE,将所述第N个数据包的TS和更新后的当前TS_STRIDE包含在所述第N个数据包中发送给解压端。与现有技术相比,本专利技术包括:压缩端计算第N个数据包和第(N-1)个数据包的时间戳TS之间的第一差值;压缩端判断出计算得到的第一差值为0;或者,判断出计算得到的第一差值不为0,且判断出计算得到的第一差值与当前TS_STRIDE相等,将第N个数据包的TS_SCALED包含在第N个数据包中发送给解压端;其中,N为大于或等于2的正整数。通过本专利技术的方案,压缩端在第一差值为0;或者,在第一差值不为0,且第一差值与当前TS_STRIDE相等时,将第N个数据包的压缩的TS包含在第N个数据包中发送给解压端,从而提高了压缩效率。附图说明下面对本专利技术实施例中的附图进行说明,实施例中的附图是用于对本专利技术的进一步理解,与说明书一起用于解释本专利技术,并不构成对本专利技术保护范围的限制。图1为本专利技术压缩时间戳的方法的流程图;图2为本专利技术压缩时间戳的装置的结构组成示意图。具体实施方式为了便于本领域技术人员的理解,下面结合附图对本专利技术作进一步的描述,并不能用来限制本专利技术的保护范围。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的各种方式可以相互组合。参见图1,本专利技术提出了一种压缩时间戳的方法,包括:步骤100、压缩端计算第N个数据包和第(N-1)个数据包的TS之间的第一差值。本步骤中,N为大于或等于2的正整数。本步骤中,数据包可本文档来自技高网
...

【技术保护点】
一种压缩时间戳的方法,其特征在于,包括:压缩端计算第N个数据包和第(N‑1)个数据包的时间戳TS之间的第一差值;压缩端判断出计算得到的第一差值为0;或者,判断出计算得到的第一差值不为0,且判断出计算得到的第一差值与当前时间戳倍数TS_STRIDE相等,将第N个数据包的压缩的时间戳TS_SCALED包含在第N个数据包中发送给解压端;其中,N为大于或等于2的正整数。

【技术特征摘要】
1.一种压缩时间戳的方法,其特征在于,包括:压缩端计算第N个数据包和第(N-1)个数据包的时间戳TS之间的第一差值;
压缩端判断出计算得到的第一差值为0;或者,判断出计算得到的第一差值不为0,且判断出计算得到的第一差值与当前时间戳倍数TS_STRIDE相等,将第N个数据包的压缩的时间戳TS_SCALED包含在第N个数据包中发送给解压端;
其中,N为大于或等于2的正整数。


2.根据权利要求1所述的方法,其特征在于,当所述压缩端判断出所述第一差值不为0,且判断出所述第一差值与当前TS_STRIDE不相等,且所述N为2时,该方法还包括:更新所述当前TS_STRIDE,将所述第N个数据包的TS和更新后的当前TS_STRIDE包含在所述第N个数据包中发送给解压端,更新所述当前TS_STRIDE即将所述当前TS_STRIDE更新为所述第一差值。


3.根据权利要求1所述的方法,其特征在于,当所述压缩端判断出所述第一差值不为0,且判断出所述第一差值与所述当前TS_STRIDE不相等,且判断出所述第一差值为所述当前TS_STRIDE的两倍或两倍以上,且所述N大于2时,该方法还包括:
所述压缩端计算第(N-1)个数据包和第(N-2)个数据包的TS之间的第二差值;
所述压缩端判断出所述第一差值与所述第二差值不相等,将所述第N个数据包的TS_SCALED包含在所述第N个数据包中发送给所述解压端。


4.根据权利要求3所述的方法,其特征在于,当所述压缩端判断出所述第一差值不为0,且判断出所述第一差值与所述当前TS_STRIDE不相等,且判断出所述第一差值不是当前TS_STRIDE的整数倍;或者判断出所述第一差值与所述第二差值相等时,该方法还包括:
所述压缩端更新所述当前TS_STRIDE,将所述第N个数据包的TS和更新后的当前TS_STRIDE包含在所述第N个数据包中发送给解压端,更新所述当前TS_STRIDE即将所述当...

【专利技术属性】
技术研发人员:廖朝阳董建军
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:广东;44

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

1