一种基于组播和单播混合策略的PIS补帧算法制造技术

技术编号:25921809 阅读:25 留言:0更新日期:2020-10-13 10:42
本发明专利技术公开了一种基于组播和单播混合策略的PIS补帧算法,使用UDP单播和组播混合策略实现了数据的补帧,对于地面播控和车载播控,网络环境有差别(地面网络环境相对更宽,限制小;车载网络带宽严格受限),播控数目不一样(地面播控数目巨大,车载相对很有限),采用UDP单播和组播的混合补帧策略,面向地面播控走组播补帧,面向车载走单播补帧,总体有效地节省了补帧用的网络带宽,降低了流媒体服务端的开销。本发明专利技术中原始音视频帧传输与补帧是两个独立行为,原始音视频帧的封装格式保持不变,从而具备更强的应用场景适应性:比如某些客户端(比如播放控制器)不支持补帧协议,在丢包不明显的情况下系统也是可以正常工作的。

【技术实现步骤摘要】
一种基于组播和单播混合策略的PIS补帧算法
本专利技术涉及信息化
,具体是一种基于组播和单播混合策略的PIS补帧算法。
技术介绍
在城市轨交行业中,乘客信息系统(PIS)是信息化建设的必要部分,它一般由中心子系统、车站子系统、车载子系统和网络子系统等组成。中心子系统(作为服务端)通过网络技术将列车信息、直播视频流、广告信息等推送到车站的播放控制器(作为客户端),其中推送网络数据的过程则会涉及TCP(传输控制协议)或UDP(用户数据报协议)的使用。地面网络一般是比较稳定的,丢包率很低;而使用车地无线网络把视频流传送到行驶的列车时,因为频繁地进行基站切换,可能造成较高的丢包率,从而导致车载播放画面出现声音卡顿、视频花屏等现象。如何消除该现象,就需要在应用层以及网络层想办法,消除或者降低因网络丢包造成音视频丢帧的概率,在异常时进行补帧或者针对特定数据包的补包功能。补帧或者补包,一般是基于点对点UDP单播来完成的。在PIS系统中,流媒体服务器一般通过UDP组播向各个播放控制器发送视频流,播放控制器相应地通过UDP组播来接收流媒体服务器的输出。在播放控制器应用层检测发现视频流存在丢帧或者丢包时,播放控制器通过UDP协议向流媒体服务器发送请求,要求流媒体服务器重发播放控制器侧没有收到的音视频帧或者数据包。流媒体服务器响应其该请求,通过UDP单播向提出请求的播放控制器重发对应的音视频帧或者数据包。在应用层,基于点对点UDP单播进行补帧或补包存在以下缺点:网络带宽要求可能很高:在大量播放控制器组网应用的情况下,如果丢帧或者丢包严重,很多播放控制器都会提出补发请求,流媒体服务器随之响应,其带宽需要消耗多少具有不确定性,有可能会对带宽提出很高的要求,这样的话从带宽的规划设计到实际应用供给都带来困难;流媒体服务端开销高:由于所有的播放控制器的重发请求都需要流媒体服务端点对点地进行响应,从而造成在播放控制器数目多、丢帧或丢包率高的情况下服务端的压力非常大,甚至要考虑设置专门的补帧或补包服务器来进行响应。
技术实现思路
本专利技术的目的在于提供一种基于组播和单播混合策略的PIS补帧算法,以解决上述
技术介绍
中提出的问题。为实现上述目的,本专利技术提供如下技术方案:一种基于组播和单播混合策略的PIS补帧算法的单播补帧算法,包含以下步骤:A、服务端间隔发送原始的音视频数据帧;B、客户端接收到数据帧后会计算出该数据帧的特征码,并将包含特征码的包头发给服务端;C、服务端如果收到包头消息,就会从数据缓冲区中查找该数据包是否存在,不存在就丢掉该消息,存在就会验证包头是否相同;D、客户端只接收到之前发送给服务端的包头,则说明数据帧传输成功,不需要补包;如果接收到新包头以及各个数据小包的特征码,则表示数据帧有丢失,需要请求补包;E、客户端向服务端申请小包补包;F、服务端如果收到申请单播补小包的消息,就会从数据缓冲区中查找该数据小包是否存在;G、客户端收到数据小包,在补包时间内检查小包是否正确,重复步骤C-F,直到补包成功;超过补包时间,则丢掉整个数据帧。一种基于组播和单播混合策略的PIS补帧算法的组播补帧算法,包含以下步骤:a、服务端间隔发送原始的音视频数据帧;b、服务端同时发送该音视频数据帧的自定义包头,包含自身的特征码和所有数据小包的特征码;c、客户端接收到包头,校验包头中的所有特征码是否正确;d、客户端再根据接收的数据包计算出另一特征码,并与收到正确的包头特征码对比,判断计算的特征码是否都正确,此过程能判断数据帧是否丢包;e、客户端申请组播补小包;f、服务端收到申请包头和包体的补包消息,将需要申请组播补包的消息缓存到消息缓冲区,50ms时间去解析缓冲区消息,过滤掉相同的消息,再进行补包;g、客户端接收到包头和数据小包,重复步骤c-e;客户端接收到数据小包,重复步骤d-e,在补包时间内直到补包完成。在实际应用中,根据地面网络和车载网络的特点,采取混合策略:对地面播放控制器使用组播补帧,对车载播放控制器使用单播补帧。与现有技术相比,本专利技术的有益效果是:本专利技术使用单播和组播混合策略补帧,具有很强的实际应用性,其中组播方式传送补包流,补包流被多个播放控制器所共享,若播放控制器发现该补包流不是自己需要的,简单丢弃即可;若是需要的,则取下来使用。使用该方式,最坏情况下补包流带宽基本等同于或略多于原始视频流的带宽,确定性强,本专利技术在部分条件下响应流采取了组播发送,基本消除了重复发送,从而降低了流媒体服务端的开销。附图说明图1为本专利技术的整体方案框图。图2为服务端单播和组播补包流程图。图3为客户端单播补包流程图。图4为服务端组播补包流程图。图5为客户端组播补包-”校验并纠正特征码”流程图。图6为客户端组播补包流程图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。请参阅图1-6,本专利技术实施例中,一种基于单播策略的PIS补帧算法,包含以下步骤:A、服务端通过UDP组播(238.1.1.100:1234)的方式间隔发送原始的音视频数据帧;B、客户端接收到数据帧后会计算出该数据帧的特征码,并将包含特征码的包头以单播(服务端ip:1235)方式发给服务端;C、服务端如果收到包头消息,就会从数据缓冲区中查找该数据包是否存在,不存在就丢掉该消息,存在就会验证包头是否相同,包头相同则会向客户端以单播(客户端ip:1236)的方式回应该包头,表示数据帧传输成功;包头不相同则会向客户端以单播(客户端ip:1236)的方式重新回应包头以及各个数据小包的验证码,表示数据帧出现丢包;D、客户端只接收到之前发送给服务端的包头,则说明数据帧传输成功,不需要补包;如果接收到新包头以及各个数据小包的特征码,则表示数据帧有丢失,需要请求补包;E、客户端向服务端申请小包补包,整个补包流程时间为700ms;F、服务端如果收到申请单播补小包的消息,就会从数据缓冲区中查找该数据小包是否存在,不存在就丢掉该消息,存在就会向客户端以单播(客户端ip:1236)的方式回应指定的数据小包;G、客户端收到数据小包。在补包时间内检查小包是否正确,重复步骤C-F,直到补包成功;超过补包时间,则丢掉整个数据帧(对未完成补包的小包,对该小包的类型做判断,若承载关键信息,则主动丢弃相应的数据帧)。实施例2:一种基于组播策略的PIS补帧算法,包含以下步骤:A、服务端通过UDP组播(238.1.1.100:1234)的方式间隔发送原始的音视频数据帧;B、服务端会同时本文档来自技高网
...

【技术保护点】
1.一种基于组播和单播混合策略的PIS补帧算法的单播补帧算法,其特征在于,包含以下步骤:/nA、服务端间隔发送原始的音视频数据帧;/nB、客户端接收到数据帧后会计算出该数据帧的特征码,并将包含特征码的包头发给服务端;/nC、服务端如果收到包头消息,就会从数据缓冲区中查找该数据包是否存在,不存在就丢掉该消息,存在就会验证包头是否相同;/nD、客户端只接收到之前发送给服务端的包头,则说明数据帧传输成功,不需要补包;如果接收到新包头以及各个数据小包的特征码,则表示数据帧有丢失,需要请求补包;/nE、客户端向服务端申请小包补包;/nF、服务端如果收到申请单播补小包的消息,就会从数据缓冲区中查找该数据小包是否存在;/nG、客户端收到数据小包,在补包时间内检查小包是否正确,重复步骤C-F,直到补包成功;超过补包时间,则丢掉整个数据帧。/n

【技术特征摘要】
1.一种基于组播和单播混合策略的PIS补帧算法的单播补帧算法,其特征在于,包含以下步骤:
A、服务端间隔发送原始的音视频数据帧;
B、客户端接收到数据帧后会计算出该数据帧的特征码,并将包含特征码的包头发给服务端;
C、服务端如果收到包头消息,就会从数据缓冲区中查找该数据包是否存在,不存在就丢掉该消息,存在就会验证包头是否相同;
D、客户端只接收到之前发送给服务端的包头,则说明数据帧传输成功,不需要补包;如果接收到新包头以及各个数据小包的特征码,则表示数据帧有丢失,需要请求补包;
E、客户端向服务端申请小包补包;
F、服务端如果收到申请单播补小包的消息,就会从数据缓冲区中查找该数据小包是否存在;
G、客户端收到数据小包,在补包时间内检查小包是否正确,重复步骤C-F,直到补包成功;超过补包时间,则丢掉整个数据帧。


2.根据权利要求1所述的一种基于组播和单播混合策略的PIS补帧算法的单播补帧算法,其特征在于,所述步骤B的包头以单播方式发送。


3.根据权利要求1所述的一种基于组播和单播混合策略的PIS补帧算法的单播补帧算法,其特征在于,所述步骤C中,如果包头相同则会向客户端以单播的方式回应该包头,表示数据帧传输成功;包头不相同则会向客户端以单播的方式重新回应包头以及各个数据小包的验证码,表示数据帧出现丢包。


4.根据权利要求1所述的一种基于组播和单播混合策略的PIS补帧算法的单播补帧算法,其特征在于,所述步骤F中,数据小包不存在就丢掉该消息,存在就会向客户端以单播的方式回应指定的数据小包。


5.根据权利要求1所述的一种基于组播和单播混合策略的PIS补帧算法的单播补帧算法,其特征在于,所述步骤G中,对未完成补包的小包,对该小包的类型做判断,若承载关键信息,则主动丢弃相应的数据帧。


6....

【专利技术属性】
技术研发人员:李奇兵燕强张国慧刘良
申请(专利权)人:深圳宇翊技术股份有限公司中铁二院工程集团有限责任公司
类型:发明
国别省市:广东;44

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

1