面向画面画质较小损失的RTP视频流数据包重组方法技术

技术编号:11189912 阅读:153 留言:0更新日期:2015-03-25 18:39
本发明专利技术公开了一种面向画面画质较小损失的RTP视频流数据包重组方法,在理想情况下顺序处理;在网络信号不稳定时,包括四种方式,方式1、若待解视频包与接收视频包序号相差在15以内;方式2、若待解视频包与接收视频包序号相差在15至100之间;方式3、若待解视频包与接收视频包序号相差多于100个号;方式4、若待解视频包与接收视频包序号相差小于0,区分是视频包序号重新开始,还是视频包乱序。本发明专利技术方法通过对相应序号不同情况的分类处理,在不考虑网络环境下快速完成网络视频排序,最大限度保证播放的流畅度和准确性,提高视频排序效率。

【技术实现步骤摘要】
面向画面画质较小损失的RTP视频流数据包重组方法
本专利技术属于网络视频流可靠传输
,涉及一种面向画面画质较小损失的RTP视频流数据包重组方法。
技术介绍
随着网络多媒体技术的深入发展,实时直播、视频监控已经成为一个庞大产业。目前,视频流媒体技术广泛用于互联网多媒体新闻发布、在线直播、网络广告、电子商务、视频点播、远程教育、远程医疗、网络电台、实时视频会议等互联网的信息服务的方方面面。流媒体是以流的方式在网络中传输音频、视频和多媒体文件的一种形式。流媒体文件格式是支持采用流式传输及播放的媒体格式。流式传输方式是将视频和音频等多媒体文件经过特殊的压缩方式分成一个个压缩包,由服务器向用户计算机连续、实时传送。用户无需将整个文件下载完毕,只需经过较短时间的启动延时即可在用户计算机上利用相应的播放器对压缩的视频或音频等流式媒体文件进行播放,剩余的部分将继续进行下载,直至播放完毕。这个过程的一系列相关的包称为“流”。传输协议是流媒体技术的一个重要组成部分,也是基础组成部分。它包括"RSVP"(资源预留协议)、"RTP"(实时传输协议)、"RTCP"(实时传输控制协议)、"RTSP"(实时流协议),这四种协议构成了"real-time"服务的基础。其中,RTP(Real-timeTransportProtocol,实时传输协议)是由IETF的多媒体传输工作小组1996年在RFC1889中公布的。RTP协议详细说明了在互联网上传递音频和视频的标准数据包格式。RTP协议为数据提供了具有实时特征的端对端传送服务,RTP视频传输往往基于UDP协议,以便使用其多路结点和校验服务;这两种协议都提供了传输层协议的功能。但是RTP可以与其它适合的底层网络或传输协议一起使用。另外,RTP并不保证传送或防止无序传送,也不确定底层网络的可靠性。RTP报文由两部分组成,即报头和有效载荷。目前普遍使用的RTP视频数据包排序方法是基于序列号进行排序,用序号进行排序可以保证视频播放的连续性,但在网络条件较差的情况下,由于接收端长时间的等待某一序号的视频包,视频解析无法持续进行,导致视频画面停止及视频播放中断,甚至关闭,而通过重新加载视频的方法,性能会大幅度下降。基于UDP的数据传输大量数据容易差生丢包、乱序。传输过程中NALU分片容易丢失,会导致视频数据的不连续。
技术实现思路
本专利技术的目的是提供一种面向画面画质较小损失的RTP视频流数据包重组方法,解决了现有技术采用基于序列号进行排序,但在网络条件较差的情况下,由于接收端长时间的等待某一序号的视频包,视频解析无法持续进行,导致视频画面停止及视频播放中断,甚至关闭的问题。本专利技术所采用的技术方案是,一种面向画面画质较小损失的RTP视频流数据包重组方法,该方法按照以下步骤实施:发送端发送N个视频流封包,序号为0,1,2,3,…,N,N<1000,在网络信号稳定的理想情况下,接收端开始接收,需要解析0号视频包,如果接收到的第一个包为0号视频包,则直接进行解析播放,之后则需要等待1号视频包,接到第二个包为1号视频包时,继续进行解析播放,依次类推,等待N号视频包,如接收到为N号视频包,则直接解析播放,即待解视频包与接收视频包对等,顺序处理;在网络信号不稳定的情况下,接收端没有按照顺序接收待解包,假设接收端当前待解包为M号视频包,而当前收到的包为K号视频包,则根据具体情况包括以下四种方式:方式1、若0<K-M≤15,即待解视频包与接收视频包序号相差在15以内,则将接收到的视频包暂存入哈希表中,然后在哈希表中查找当前所需的待解视频包,即M号视频包,如果查找到待解的视频包,则直接对M号视频包进行解析播放,并在哈希表中删除M号视频包,以保持哈希表中存在较少的元素,如果没有搜索到M号视频包,则继续等待下一个接收的视频包;方式2、若15<K-M≤100,即待解视频包与接收视频包序号相差在15至100之间,则将接收到的视频包暂存入哈希表中,然后在哈希表中从M号视频包开始查找缓存,一个一个处理组成NALU,直到处理到K号视频包为止;方式3、若K-M>100,即待解视频包与接收视频包序号相差多于100个号,说明网络环境很不稳定,为了保持视频的流畅度,需要做适当丢弃处理,将缓存哈希表中的元素清空,直接把接收到的视频包当作待解视频包,解析播放,即把当前接收视频包K作为M号视频包,重新开始缓存;方式4、若K-M<0,则需要区分是视频包序号重新开始,还是视频包乱序,当K是一个远远小于M的数,那么可以确定为视频包序号重新开始,将M初始为K,继续下一次接收;当K与M的差值在一个较小的范围内,那么认为是视频包乱序,将该视频包缓存,继续下次接收。本专利技术的有益效果是,1)该方法在分析视频包时,对RTP包序列号进行提取,不同于传统按时戳提取排序的思路,能够提高视频序列分析的速度,可以在不考虑网络环境下快速完成网络视频排序,并最大限度保证播放的流畅度和准确性;同时,本专利技术可处理多种类型视频文件的排序,能够应对视频文件种类多等情况。2)本专利技术适用于实时监控性质的工程,确保在线监控画面的连续性,防止视频画面失真。该方法简洁、高效的保持了视频播放的实时性,同时亦能满足视频流数据包的顺序解析。3)本专利技术采用相应的视频包分析算法,通过对包序号和时戳的分析,按不同序号分类缓存,依网络环境适当丢包,调整视频包的解析次序,不仅在网络环境优良的情况下,保持较高的视频清晰度,而且在网络不稳定的情况下,对视频包做适当丢弃,最大限度的减少视频画面的损失,从而保证播放的流畅度和准确性。在包丢失、乱序的情况下,对已经接收到的数据进行重新排序、解码。关键技术在于能够高质量的保证视频的流畅解析。附图说明图1是本专利技术方法实施例在WIFI网络环境下,手机客户端在接收视频30分钟内随机抽取第N分钟的发包接包的数量柱状图;图2是本专利技术方法实施例在WIFI网络环境下,手机客户端在接收视频30分钟内随机抽取第N分钟的解包弃包的数量柱状图;图3是本专利技术方法实施例在3G网络环境下,手机客户端在接收视频30分钟内随机抽取第N分钟的发包接包的数量柱状图;图4是本专利技术方法实施例在3G网络环境下,手机客户端在接收视频30分钟内随机抽取第N分钟的解包弃包的数量柱状图。具体实施方式下面结合附图和具体实施方式对本专利技术进行详细说明。本专利技术面向画面画质较小损失的RTP视频流数据包重组方法,通过使用RTP报头中的序列号和时戳内容进行包排序,具体包括:序列号占16位,用于标识发送者所发送的RTP报文的序列号,每发送一个报文,序列号增1,接收者通过序列号来检测报文丢失情况,重新排序报文,恢复数据;时戳(Timestamp)占32位,时戳反映了该RTP报文的第一个八位组的采样时刻,接收者使用时戳来计算延迟和延迟抖动,并进行同步控制。本专利技术的方法,考虑到存在网络环境不稳定、视频丢包等因素,利用RTP报头包序号的提取,给出了一种提取序号排序RTP视频包的方法,具体按照以下步骤实施,假设有一段待处理的原始视频流,发送端发送N个视频流封包,序号依次为0,1,2,3,…..,N,N<1000,接收端在接收并解析RTP视频包时,根据视频包报头序号,其间本方法维系一张哈希表对视频包本文档来自技高网
...
面向画面画质较小损失的RTP视频流数据包重组方法

【技术保护点】
一种面向画面画质较小损失的RTP视频流数据包重组方法,其特征在于,该方法按照以下步骤实施:假设发送端发送N个视频流封包,序号为0,1,2,3,…,N,N<1000,在网络信号稳定的情况下,接收端开始接收,需要解析0号视频包,如果接收到的第一个包为0号视频包,则直接进行解析播放,之后则需要等待1号视频包,接到第二个包为1号视频包时,继续进行解析播放,依次类推,等待N号视频包,如接收到为N号视频包,则直接解析播放,即待解视频包与接收视频包对等,顺序处理;在网络信号不稳定的情况下,接收端没有按照顺序接收待解包,假设接收端当前待解包为M号视频包,而当前收到的包为K号视频包,则根据具体情况包括以下四种处理方式:方式1、若0<K‑M≤15,即待解视频包与接收视频包序号相差在15以内,则将接收到的视频包暂存入哈希表中,然后在哈希表中查找当前所需的待解视频包,即M号视频包,如果查找到待解的视频包,则直接对M号视频包进行解析播放,并在哈希表中删除M号视频包,以保持哈希表中存在较少的元素,如果没有搜索到M号视频包,则继续等待下一个接收的视频包;方式2、若15<K‑M≤100,即待解视频包与接收视频包序号相差在15至100之间,则将接收到的视频包暂存入哈希表中,然后在哈希表中从M号视频包开始查找缓存,一个一个处理组成NALU,直到处理到K号视频包为止;方式3、若K‑M>100,即待解视频包与接收视频包序号相差多于100个号,说明网络环境很不稳定,为了保持视频的流畅度,需要做适当丢弃处理,将缓存哈希表中的元素清空,直接把接收到的视频包当作待解视频包,解析播放,即把当前接收视频包K作为M号视频包,重新开始缓存;方式4、若K‑M<0,则需要区分是视频包序号重新开始,还是视频包乱序,当K是一个远远小于M的数,那么可以确定为视频包序号重新开始,将M初始为K,继续下一次接收;当K与M的差值在一个较小的范围内,那么认为是视频包乱序,将该视频包缓存,继续下次接收。...

【技术特征摘要】
1.一种面向画面画质较小损失的RTP视频流数据包重组方法,其特征在于,该方法按照以下步骤实施:假设发送端发送N个视频流封包,序号为0,1,2,3,…,N,N<1000,在网络信号稳定的情况下,接收端开始接收,需要解析0号视频包,如果接收到的第一个包为0号视频包,则直接进行解析播放,之后则需要等待1号视频包,接到第二个包为1号视频包时,继续进行解析播放,依次类推,等待N号视频包,如接收到为N号视频包,则直接解析播放,即待解视频包与接收视频包对等,顺序处理;在网络信号不稳定的情况下,接收端没有按照顺序接收待解包,假设接收端当前待解包为M号视频包,而当前收到的包为K号视频包,则根据具体情况包括以下四种处理方式:方式1、若0<K-M≤15,即待解视频包与接收视频包序号相差在15以内,则将接收到的视频包暂存入哈希表中,然后在哈希表中查找当前所需的待解视频包,即M号视频包,如果查找到待解的视频包,则直接对M号视频包进行解析播放,并在哈希表中删除M号视频包,以保持哈希表中存在较少的元素,如果没有搜索到M号视频包,则继续等...

【专利技术属性】
技术研发人员:孙钦东张景鹏尹潇龙王健
申请(专利权)人:西安理工大学
类型:发明
国别省市:陕西;61

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

1