一种云屏连接状态的检测方法、服务器及存储介质与流程

文档序号:20203316发布日期:2020-03-27 20:51阅读:232来源:国知局
一种云屏连接状态的检测方法、服务器及存储介质与流程

本发明涉及分布式云拼接显示技术领域,尤其涉及一种云屏连接状态的检测方法、服务器及存储介质,在分布式显示领域,还可以用于社区媒体服务器、酒店租赁服务器、安防监控服务器、建筑屏幕服务器、主题公园服务器、智慧城市服务器、视频会议服务器等。



背景技术:

一般的分布式云拼接,当其拼接墙的某些云屏异常掉线或者网络连接异常时,会出现画面异常的情况,若是其他云屏是通过组播方式连接该掉线云屏的视频数据,那么也会影响到其他云屏的画面显示。而当其重新上线后,也可能无法恢复之前的连接状态而影响其正常显示之前的画面。

因此,现有技术还有待于改进和发展。



技术实现要素:

本发明的主要目的在于提供一种云屏连接状态的检测方法、服务器及存储介质,旨在解决现有技术中的上述缺陷。

为实现上述目的,本发明提供一种云屏连接状态的检测方法,所述云屏连接状态的检测方法包括如下步骤:

获取分布式云拼接墙的拼接规格,保存所述拼接规格的数据,为所有云屏依次进行编号,并绑定所有云屏的ip;

将每个云屏所属的分布式云拼接墙和位置进行绑定,为每个云屏设置一在线状态参数并进行初始化,建立云屏与参数对应的链表;

监听所有绑定云屏发送的数据,通过循环的方式查询所述链表中与云屏匹配的ip,然后对应保存所述云屏发送的数据;

将接收到的云屏的数据与协议数据进行比较,如果与协议数据匹配,则所述云屏在线,否则不在线。

可选地,所述的云屏连接状态的检测方法,其中,所述将接收到的云屏的数据与协议数据进行比较,如果与协议数据匹配,则所述云屏在线,否则不在线,之后还包括:

如果判断云屏在线且所述在线状态参数为0,则判定云屏状态发生变化,将所述在线状态参数置为1;

查询数据库,判断是否有窗口、底图和字幕数据在云屏上开启,如果有则重新计算数据,并在云屏上重新显示。

可选地,所述的云屏连接状态的检测方法,其中,如果判断云屏在线且所述在线状态参数为1,则判定云屏状态未发生变化。

可选地,所述的云屏连接状态的检测方法,其中,所述将接收到的云屏的数据与协议数据进行比较,如果与协议数据匹配,则所述云屏在线,否则不在线,之后还包括:

如果判断云屏不在线且所述在线状态参数为1,则判定云屏状态发生变化,将所述在线状态参数置为0;

保存掉线云屏当前的所有窗口、底图和字幕数据,用于下次上线时调取,如果其他云屏是通过掉线云屏访问数据的设备视频资源时,则重新分配云屏调取设备视频资源。

可选地,所述的云屏连接状态的检测方法,其中,如果判断云屏不在线且所述在线状态参数为0,则判定云屏状态未发生变化。

可选地,所述的云屏连接状态的检测方法,其中,所述协议数据为服务器和云屏之间协商好相互沟通的数据,当接收到云屏发过来的数据与协议好的数据相同时,则匹配成功并表示在线,反之匹配失败并表示不在线。

可选地,所述的云屏连接状态的检测方法,其中,所述在线状态参数为0时,表示所述云屏不在线;所述在线状态参数为1时,表示所述云屏在线。

可选地,所述的云屏连接状态的检测方法,其中,所述云屏连接状态的检测方法还包括:

当所述云屏不在线时,关闭所述云屏相关的所有数据和相关云屏的状态;当所述云屏重新上线时,重新调取所述云屏的所有数据,重新发送给所述云屏,控制所述云屏重新正常显示画面。

此外,为实现上述目的,本发明还提供一种服务器,其中,所述服务器包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的云屏连接状态的检测程序,所述云屏连接状态的检测程序被所述处理器执行时实现如上所述的云屏连接状态的检测方法的步骤。

此外,为实现上述目的,本发明还提供一种存储介质,其中,所述存储介质存储有云屏连接状态的检测程序,所述云屏连接状态的检测程序被处理器执行时实现如上所述的云屏连接状态的检测方法的步骤。

本发明通过获取分布式云拼接墙的拼接规格,保存所述拼接规格的数据,为所有云屏依次进行编号,并绑定所有云屏的ip;将每个云屏所属的分布式云拼接墙和位置进行绑定,为每个云屏设置一在线状态参数并进行初始化,建立云屏与参数对应的链表;监听所有绑定云屏发送的数据,通过循环的方式查询所述链表中与云屏匹配的ip,然后对应保存所述云屏发送的数据;将接收到的云屏的数据与协议数据进行比较,如果与协议数据匹配,则所述云屏在线,否则不在线。本发明通过服务器及时监测到云屏的网络状态,从而对当前云屏发生的状态变化做相应的处理,避免因为某个云屏掉线影响其他云屏的显示效果,也能保证云屏恢复状态回到之间的显示状态。

附图说明

图1是本发明云屏连接状态的检测方法的较佳实施例的流程图;

图2是本发明云屏连接状态的检测方法的较佳实施例中3x3云拼接墙中云屏状态的示意图;

图3为本发明服务器的较佳实施例的运行环境示意图。

具体实施方式

为使本发明的目的、技术方案及优点更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明较佳实施例所述的云屏连接状态的检测方法,如图1所示,所述云屏连接状态的检测方法包括以下步骤:

步骤s10、获取分布式云拼接墙的拼接规格,保存所述拼接规格的数据,为所有云屏依次进行编号,并绑定所有云屏的ip。

具体地,设置所述分布式云拼接墙的拼接规格,保存拼接规格数据,云拼接墙的大小,比如4x5的拼接墙,表示水平方向有4个云屏,垂直方向有5个云屏,该拼接规格总共包含了20块云屏,即hxv拼接规格,h表示水平方向的云屏数量,v表示垂直方向的云屏数量;为所有云屏编号,从1开始,以h*v结束,例如h*v=20,则从1-20依次进行编号;保存以上设置数据,以方便后续计算云屏所在具体位置;然后将所有云屏的ip绑定到服务器上,使服务器和云屏建立一个长连接,以便服务器对云屏的状态进行持续监测。

步骤s20、将每个云屏所属的分布式云拼接墙和位置进行绑定,为每个云屏设置一在线状态参数并进行初始化,建立云屏与参数对应的链表。

具体地,将云屏的ip、所属拼接墙wallid(是指分布式云拼接墙的编号,比如一个局域网有拼接墙1、拼接墙2、拼接墙3等3个拼接墙)、在拼接墙中的位置position绑定到服务器,服务器建立一个数据库保存这些参数,并且为每个云屏设置一个online参数(云屏的在线状态,即在线状态参数),并将online初始化为0,将所有绑定到服务器的云屏及其参数建立一个链表。

其中,所述在线状态参数(online参数)为0时,表示所述云屏不在线;所述在线状态参数(online参数)为1时,表示所述云屏在线。

步骤s30、监听所有绑定云屏发送的数据,通过循环的方式查询所述链表中与云屏匹配的ip,然后对应保存所述云屏发送的数据。

具体地,通过监听云屏状态,通过链表循环不断接收链表里面的云屏发给服务器的数据,链表是一种链式存储结构,通过链表的节点从头到尾访问每个链表成员;链表循环是指通过该链表的节点循环访问每个链表成员;监听所有绑定到服务器的云屏发过来的数据,通过循环的方式查询链表里面与云屏匹配的ip,然后对应保存该云屏发过来的数据。

步骤s40、将接收到的云屏的数据与协议数据进行比较,如果与协议数据匹配,则所述云屏在线,否则不在线。

具体地,将收到的云屏数据与服务器和云屏之间协议的数据进行比较,如果与协议数据匹配,那么判断在线,反之不在线。

其中,协议数据就是服务器和云屏之间协商好相互沟通的数据,当接收到云屏发过来的数据与协议好的数据相同,就匹配成功表示在线;反之就是不匹配,表示不在线。

进一步地,如果判断云屏在线,并且online=0,那么判定云屏状态发生变化,将online置为1,查询服务器数据库,判断是否有窗口、底图、字幕等数据在云屏上开启,如果有则重新计算这些数据,并让其在云屏上重新显示,因为之前不在线时,需要关闭该云屏相关的所有数据和相关云屏的状态。当云屏重新上线时,服务器需要重新调取该云屏的所有数据,重新发送给云屏,让其重新正常显示画面,是因为云屏异常掉线重新起来,很可能无法记录之前的窗口状态,而只能由服务器统一记录其之前的所有数据;如果online=1,那么判定云屏状态未发生变化,不需要做进一步处理。

如果判断云屏不在线,并且online=0,那么判定云屏状态未发生变化,不需要做进一步处理;如果online=1,那么判定云屏状态发生变化,将online置为0,则对与掉线云屏相关的云屏状态和其他相关数据做处理,所述处理包括两个方面:一方面是掉线后服务器保存该云屏当前的所有窗口、底图、字幕等数据,以便下次上线调取;另一方面,如果其他云屏是通过该云屏访问数据的设备视频资源的,则需要重新分配云屏调取设备视频资源;一方面,保证其他云屏不会因为无法调取视频信息而画面异常;另一方面,也为后续该云屏重新上线能正常恢复到之前的显示状态做准备。

本发明主要目的是使云拼接的服务器能及时监测到所有云拼接墙的在线状态,对监测到的异常掉线的云屏进行相应处理,保证其他正常在线的云屏仍能正常显示。当异常掉线的云屏重新上线后,又能将之前掉线时保存的云屏数据处理后发给云屏,使其重新正常显示。

进一步地,下面以3x3云拼接墙为例来说明本发明的具体应用:

如图2所示,云拼接墙有9块云屏绑定到服务器,开启一个窗口显示画面时,在1号屏开组播,那么1号屏就通过网络调取设备视频资源,而其他8块屏则通过组播方式从1号屏调取视频资源,网络带宽只需原来的1/9。

如果1号云屏掉线,将会导致其他8块云屏无法继续获取视频资源,而无法正常显示画面。而引入本发明的检测机制后,检测到云屏掉线时,将会进入掉线处理模块,保存1号云屏当前的窗口数据,并在2号云屏重新开启组播,2号云屏通过网络调取设备视频资源,而3~9号云屏则从2号云屏调取视频资源,继续正常显示画面。

另外,由于1号屏开启了滚动字幕,1号云屏掉线后,将使字幕重新在2~3号云屏上滚动,从而继续维持正常显示。当重新检测到1号云屏上线时,使1号云屏的窗口和字幕重新正常显示。

本发明每隔一段时间对加入到指定链表的云屏进行监测,并对监测到的数据进行计算和判断,以此来了解所有云屏的网络状态,检测方法单独开线程来完成,每隔几秒监测一次,既不影响其他线程的运行,也能最小程度化的占用cpu资源。

本发明中,云屏显示的窗口画面往往是跨云屏显示的,也就是说一个窗口画面可能由多个云屏共同显示完成,为了节约网络带宽资源,同一个视频信号,只由云拼接墙的某一个云屏连接到网络设备服务器调取视频资源,其他所有的云屏则通过组播的方式再从该云屏调取视频资源。如果开组播的云屏掉线,将会主动用其他云屏上重新开组播来调取视频资源,避免出现因为开组播的云屏掉线后其他云屏都无法继续正常显示的现象。

当出现云屏掉线,服务器会保存掉线云屏的所有数据和状态,以便该云屏重新上线后,能恢复到掉线之前的所有正常画面。

本发明中,服务器能及时监测到云屏的网络状态,从而对当前云屏发生的状态变化做相应的处理,即能避免因为某个云屏掉线影响其他云屏的显示效果,也能保证云屏恢复状态回到之间的显示状态。

进一步地,如图3所示,基于上述云屏连接状态的检测方法,本发明还相应提供了一种服务器,所述服务器包括处理器10、存储器20。图3仅示出了服务器的部分组件,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。

所述存储器20在一些实施例中可以是所述服务器的内部存储单元,例如服务器的硬盘或内存。所述存储器20在另一些实施例中也可以是所述服务器的外部存储设备,例如所述服务器上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。进一步地,所述存储器20还可以既包括所述服务器的内部存储单元也包括外部存储设备。所述存储器20用于存储安装于所述服务器的应用软件及各类数据,例如所述安装服务器的程序代码等。所述存储器20还可以用于暂时地存储已经输出或者将要输出的数据。在一实施例中,存储器20上存储有云屏连接状态的检测方法程序,该云屏连接状态的检测方法程序可被处理器10所执行,从而实现本申请中云屏连接状态的检测方法。

所述处理器10在一些实施例中可以是一中央处理器(centralprocessingunit,cpu),微处理器或其他数据处理芯片,用于运行所述存储器20中存储的程序代码或处理数据,例如执行所述云屏连接状态的检测方法等。

在一实施例中,当处理器10执行所述存储器20中云屏连接状态的检测方法程序时实现以下步骤:

获取分布式云拼接墙的拼接规格,保存所述拼接规格的数据,为所有云屏依次进行编号,并绑定所有云屏的ip;

将每个云屏所属的分布式云拼接墙和位置进行绑定,为每个云屏设置一在线状态参数并进行初始化,建立云屏与参数对应的链表;

监听所有绑定云屏发送的数据,通过循环的方式查询所述链表中与云屏匹配的ip,然后对应保存所述云屏发送的数据;

将接收到的云屏的数据与协议数据进行比较,如果与协议数据匹配,则所述云屏在线,否则不在线。

所述将接收到的云屏的数据与协议数据进行比较,如果与协议数据匹配,则所述云屏在线,否则不在线,之后还包括:

如果判断云屏在线且所述在线状态参数为0,则判定云屏状态发生变化,将所述在线状态参数置为1;

查询数据库,判断是否有窗口、底图和字幕数据在云屏上开启,如果有则重新计算数据,并在云屏上重新显示。

如果判断云屏在线且所述在线状态参数为1,则判定云屏状态未发生变化。

所述将接收到的云屏的数据与协议数据进行比较,如果与协议数据匹配,则所述云屏在线,否则不在线,之后还包括:

如果判断云屏不在线且所述在线状态参数为1,则判定云屏状态发生变化,将所述在线状态参数置为0;

保存掉线云屏当前的所有窗口、底图和字幕数据,用于下次上线时调取,如果其他云屏是通过掉线云屏访问数据的设备视频资源时,则重新分配云屏调取设备视频资源。

如果判断云屏不在线且所述在线状态参数为0,则判定云屏状态未发生变化。

所述协议数据为服务器和云屏之间协商好相互沟通的数据,当接收到云屏发过来的数据与协议好的数据相同时,则匹配成功并表示在线,反之匹配失败并表示不在线。

所述在线状态参数为0时,表示所述云屏不在线;所述在线状态参数为1时,表示所述云屏在线。

所述云屏连接状态的检测方法还包括:

当所述云屏不在线时,关闭所述云屏相关的所有数据和相关云屏的状态;当所述云屏重新上线时,重新调取所述云屏的所有数据,重新发送给所述云屏,控制所述云屏重新正常显示画面。

本发明还提供一种存储介质,其中,所述存储介质存储有云屏连接状态的检测程序,所述云屏连接状态的检测程序被处理器执行时实现如上所述的云屏连接状态的检测方法的步骤。

综上所述,本发明提供一种云屏连接状态的检测方法、服务器及存储介质,所述包括:获取分布式云拼接墙的拼接规格,保存所述拼接规格的数据,为所有云屏依次进行编号,并绑定所有云屏的ip;将每个云屏所属的分布式云拼接墙和位置进行绑定,为每个云屏设置一在线状态参数并进行初始化,建立云屏与参数对应的链表;监听所有绑定云屏发送的数据,通过循环的方式查询所述链表中与云屏匹配的ip,然后对应保存所述云屏发送的数据;将接收到的云屏的数据与协议数据进行比较,如果与协议数据匹配,则所述云屏在线,否则不在线。本发明通过服务器及时监测到云屏的网络状态,从而对当前云屏发生的状态变化做相应的处理,避免因为某个云屏掉线影响其他云屏的显示效果,也能保证云屏恢复状态回到之间的显示状态。

当然,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关硬件(如处理器,控制器等)来完成,所述的程序可存储于一计算机可读取的存储介质中,所述程序在执行时可包括如上述各方法实施例的流程。其中所述的存储介质可为存储器、磁碟、光盘等。

应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1