发明内容
本发明实施例提供了一种星形结构的对等控制播放方法,用以解决现有技术中的上述问题,保证播放过程的顺利进行。
本发明实施例提供了一种星形结构的对等控制播放方法,该方法包括:
在各播放设备之间通信连接建立完成后,播放设备之间进行播放资源信息的共享,并实时相互间进行工作状态的检测,在所有播放设备中,其中一个为起到主控功能的主控播放设备,其他为从控播放设备;
所述主控播放设备在获得所有其它播放设备的播放资源信息后,根据播放需求建立各播放设备与对应播放资源以及各播放设备之间的播放关系;
所述主控播放设备在接收到播放指令后,根据播放指令将所述播放关系转换成用于指示各播放设备播放对应播放资源的播放命令;
所述主控播放设备将用于指示各从控播放设备的播放命令发送到对应的各从控播放设备,所有的播放设备根据播放命令和自身存储的播放资源控制播放;
在检测到所述主控播放设备的工作状态异常时,根据预设规则从其他从控播放设备中选出新的主控播放设备。
在本发明上述技术方案中,通过设置播放设备的主控状态和从控状态,使播放设备不仅具有播放的功能,还能够在播放设备处于主控状态时拥有控制的功能,起到传统控制机的作用。
较佳地,上述各播放设备的通讯连接过程包括:
在每一播放设备启动时通过网络广播启动消息,已启动的各播放设备接收到该启动消息后,将自身的网络连接参数反馈给新启动的播放设备,并根据启动消息中包含的网络连接参数连接新启动的播放设备;
新启动的设备根据所述反馈的网络连接参数连接对应的播放设备。
本发明上述技术方案中,每个播放设备在启动后通过与已启动的播放设备交互网络连接参数以完成网络的连接过程。
一般地,每个播放设备均设有唯一标识,所述网络连接参数包含用于表征发送信息的播放设备的唯一标识,任一播放设备在接收到启动消息或启动反馈消息后,根据所述标识建立代表对应播放设备的设备数据结构,并将该设备数据结构添加到设备信息列表中,任一播放设备在启动后将代表自身的设备数据结构添加到设备信息列表中,当所有的播放设备都启动后,每一个播放设备都获得了代表所有播放设备的设备信息列表。
在本实施例上述技术方案中,每个播放设备内部均保存有设备信息列表,该表用于记载网络中各设备的一些具体信息,例如播放资源信息,标识信息等,便于每个播放设备掌握网络中各设备的具体信息。本实施例中每一播放设备通过网络连接的过程获得了其他设备的唯一标识,并建立了设备数据结构保存在设备信息列表中。
优选地,播放设备之间进行播放资源的信息共享,具体包括:
每一播放设备启动后根据预先设定过滤条件收集本机中播放资源的信息,并将所述播放资源信息添加到代表本播放机的设备数据结构中;
在任一其他播放设备连接上本播放设备后,将收集的所有所述播放资源的信息以资源列表的方式发送到连接的该其它播放设备;
所述其他播放设备收到资源列表后,根据所述资源列表中包含的标识查找设备信息列表中对应的设备数据结构,并将所述资源列表中的播放资源信息存储在查找到的设备数据结构中。
在本发明上述技术方案中,提出了一个资源共享的过程,每个播放设备以资源列表的方式把自身的播放资源信息发送给网络中的其它播放设备,这样每个播放设备都接收到了其他播放设备的资源列表,并储存到对应的设备数据结构中。
优选地,当任一所述播放设备中的播放资源发生变化时,该播放设备更新自己的资源列表,然后发送到与之连接的其他播放设备;
其他播放设备接收资源列表后更新各自的设备信息列表中对应播放设备的设备数据结构。
在上述上述技术方案中,每次播放设备中的播放资源更新后,资源列表也会相应更新,并发送给其他播放设备去更新对应的设备数据结构。
优选地,根据所述播放需求建立各控播放设备与对应播放资源以及各播放设备之间的播放关系,具体包括:
主控播放设备根据播放需求从所有的播放资源中确定需要播放的播放资源;
根据所述设备数据结构建立每一需要播放的播放资源与对应播放设备的唯一标识的对应关系;
根据确定的需要播放的播放资源之间的播放时间关系建立各对应播放设备之间的播放协同关系;
根据所有的所述对应关系和所述播放协同关系形成所述播放关系。
本发明上述上述技术方案详细提供了一种播放关系形成的实施例,在本实施例中,先根据播放需求从所有的播放资源中确定出需要进行播放的播放资源,然后将这些播放资源与播放设备(即唯一标识)对应起来,最后,再根据播放资源之间的时间关系和播放设备的唯一标示建立播放设备之间的播放协同关系,最后根据对应关系和播放协同关系形成了整体的播放关系。
优选地,所述播放需求包括以下参数的一种或几种的集合:
播放资源的起始播放位置、播放结束位置、重复次数;
每一播放设备对应的需要播放的播放资源的播放顺序;
每一播放资源播放结束时的处理方式,例如:播放结束后是停在最后一帧还是继续播放下一个等。
上述的播放需求是对播放资源进行各项参数的设置要求。
较佳地,主控播放设备在形成了该方法还包括所述播放关系的同步过程:
主控播放设备在所述播放关系建立完成后,将所述播放关系以播放列表的方式通过互连的网络发送到其他所有从控播放设备中,其他从控播放设备根据接收到的播放列表更新自身的播放列表,以达到各播放设备之间完全同步的目的;
一般地,在原主控播放设备解除故障后,优选作为从控播放设备恢复工作。
优选地,所述预设规则包括:
每一从控播放设备根据所述设备信息列表获知当前发生异常的主控播放设备的标识号;
按照顺序标识号为当前主控播放设备的后一位的从控播放设备成为新的主控播放设备。
在本发明上述技术方案中,采取了顺序替换的原则,也就是在当前主控播放设备异常时,根据标识号顺序,下一位标识号对应的播放设备接替故障的主控播放设备成为新的主控播放设备。
本发明实施例,提供了一种星形结构的对等控制播放方法,通过设置播放设备的主控状态和从控状态,使每个播放设备不仅仅只具有播放的功能,还可以承担控制机具备的功能,从而在播放时,由于各个播放设备间的地位对等,在处于主控状态的播放设备发生故障时,能够通过状态的切换,及时由其它播放设备承担起主控播放设备的功能,使播放流程能够继续正常进行,整个流程不会脱离管控。
具体实施方式
由于现有技术中,在使用多台机器处理播放资源显示在大屏幕时,如果控制机异常,则执行命令的播放机则会全部陷入瘫痪状态,无法正常工作。
基于这种情况,本发明实施例提供了一种星形结构的对等控制播放方法,用以解决上述问题,提供一种集播放和控制功能为一体的方法,保证播放过程的顺利进行。
本发明实施例首先提供了一种星形结构的对等控制播放方法,如图1所示,该方法包括:
S101,在各播放设备之间通信连接建立完成后,播放设备之间进行播放资源信息的共享,并实时相互间进行工作状态的检测,在所有播放设备中,其中一个为起到主控功能的主控播放设备,其他为从控播放设备;
S102,所述主控播放设备在获得所有其它播放设备的播放资源信息后,根据播放需求建立各播放设备与对应播放资源以及各播放设备之间的播放关系;
S103,所述主控播放设备在接收到播放指令后,根据播放指令将所述播放关系转换成用于指示各播放设备播放对应播放资源的播放命令;
S104,所述主控播放设备将用于指示各从控播放设备的播放命令发送到对应的各从控播放设备,所有的播放设备根据播放命令和自身存储的播放资源控制播放;
S105,在检测到所述主控播放设备的工作状态异常时,根据预设规则从其他从控播放设备中选出新的主控播放设备。
在本发明实施例中,通过设置播放设备的主控状态和从控状态,使播放设备不仅具有播放的功能,还能够在播放设备处于主控状态时拥有控制的功能,起到传统控制机的作用。
简单来说,本发明中不存在单独的控制机,也就不存在控制机与播放机之间的上下级的概念,播放设备与播放设备之间是一种对等的地位,都是播放机具有播放的功能,只是处于控制状态的播放设备在具有播放功能的同时还具有控制功能。可以根据需要进行状态切换,那么每个播放设备均能够实现控制机的功能,避免单独设置控制机时,会导致的因为异常情况而使整个工作的瘫痪。
在各播放设备之间通信建立和资源共享完成后,主控播放设备可以了解每个播放设备中的播放资源,根据播放需求建立了播放关系,播放关系是播放设备根据播放需求建立的播放资源与播放设备、播放设备之间的播放协同关系的集合,可以根据播放指令转化为多条播放命令,经过转换后,主控播放设备将指示从控设备的命令分发到对应的各从控设备中,保留指示自身的播放命令,所有的播放设备根据播放命令进行对应的播放。
为了便于理解,上述播放需求,播放关系及播放指令的关系,下面提供一个简单的实时场景:
播放需求为对每个播放设备的播放要求,例如,要求播放设备A、B、C在同一时刻分别播放播放资源a、b、c,这就是一条播放需求。
主控播放设备可以根据播放需求建立对应的实际播放关系,也就是将“需求”转化为实际的设备可操作的命令。
由于播放关系可以是多条播放需求的集合,相当于一个播放列表,那么播放指令是所述播放列表的触发指令。例如播放列表上有10条节目,播放指令可以指定任意一条节目进行播放,那么在触发后就需要将该条节目转化为实际的与播放设备一一对应的播放指令,下发到对应的播放设备中以实现播放资源的播放,当然在需要的情况下,播放指令也可以将所有的节目转化为播放指令发送给对应的播放设备按照顺序播出。
可以理解的是,在日常的工作中,播放设备不可避免的由于一些原因在工作中会出现异常的情况,那么如果异常的播放设备正好是作为主控的播放设备,那么为了工作的继续正常进行,控制功能必须由其他播放设备承担,所以本实施例提供了一种重选过程,在其他播放设备发现当前主控的播放设备异常时,会自动按照提前预设好的规则或者算法决定出新的播放设备由从控状态切换为主控状态承担起控制命令的发送,保证业务的继续进行。该预设规则可以由人工采用现有技术下的规则提前任意制定,例如可以制定为顺序规则等等,本发明不对此进行限制。
作为一种本发明上述方法的一种实施例,可以采取顺序替代的原则,即前一个设备发生故障,由后者接替的原则。可以理解的是,还可以采取其他替代原则实现新主控设备的选择,例如随机选择、加权选择等。
在上述实施例的基础上,各播放设备的通讯连接过程包括:
在每一播放设备启动时通过网络广播启动消息,已启动的各播放设备接收到该启动消息后,将自身的网络连接参数反馈给新启动的播放设备,并根据启动消息中包含的网络连接参数连接新启动的播放设备;
新启动的设备根据所述反馈的网络连接参数连接对应的播放设备。
本发明上述实施例中,每个播放设备在启动后通过与已启动的播放设备交互网络连接参数以完成网络的连接过程。
为了相互间的区分,可以理解的是,每个播放设备均设有唯一标识,所述网络连接参数包含用于表征发送信息的播放设备的唯一标识,任一播放设备在接收到启动消息或启动反馈消息后,根据所述标识建立代表对应播放设备的设备数据结构,并将该设备数据结构添加到设备信息列表中,任一播放设备在启动后将代表自身的设备数据结构添加到设备信息列表中,当所有的播放设备都启动后,每一个播放设备都获得了代表所有播放设备的设备信息列表。
在本实施例中,每个播放设备内部均保存有设备信息列表,该表用于记载网络中各设备的一些具体信息,例如播放资源信息,标识信息等,便于每个播放设备掌握网络中各设备的具体信息。本实施例中每一播放设备通过网络连接的过程获得了其他设备的唯一标识,并建立了设备数据结构保存在设备信息列表中。
上述唯一标识即为设备ID,网络连接参数为设备ID、名字、IP和端口等信息的统称。
通过上述几个实施例的描述,可以理解的是,本方法中的每一个播放设备均可以在必要的情况下承担起传统主控机的功能,为了保证每一个设备均能控制其它所有的播放设备,所以所有播放设备中的任意两个播放设备相互间均通信连接。
可以理解的是,每个所述播放命令均应包含有所述唯一标识,所述处于主控状态的播放设备根据所述唯一标识进行播放命令的对应发送。
播放设备之间进行播放资源的信息共享,具体包括:
每一播放设备启动后根据预先设定过滤条件收集本机中播放资源的信息,并将所述播放资源信息添加到代表本播放机的设备数据结构中;
在任一其他播放设备连接上本播放设备后,将收集的所有所述播放资源的信息以资源列表的方式发送到连接的该其它播放设备;
所述其他播放设备收到资源列表后,根据所述资源列表中包含的标识查找设备信息列表中对应的设备数据结构,并将所述资源列表中的播放资源信息存储在查找到的设备数据结构中。
在本发明实施例中,提出了一个资源共享的过程,每个播放设备以资源列表的方式把自身的播放资源信息发送给网络中的其它播放设备,这样每个播放设备都接收到了其他播放设备的资源列表,并储存到对应的设备数据结构中。
至此,每一设备的设备信息列表记录了其他播放设备的唯一标识和播放资源信息。
可以理解的是,当任一所述播放设备中的播放资源发生变化时,该播放设备更新自己的资源列表,然后发送到与之连接的其他播放设备;
其他播放设备接收资源列表后更新各自的设备信息列表中对应播放设备的设备数据结构。
在上述实施例中,每次播放设备中的播放资源更新后,资源列表也会相应更新,并发送给其他播放设备去更新对应的设备数据结构。
在上述实施例的基础上,根据所述播放需求建立各控播放设备与对应播放资源以及各播放设备之间的播放关系,具体包括:
主控播放设备根据播放需求从所有的播放资源中确定需要播放的播放资源;
根据所述设备数据结构建立每一需要播放的播放资源与对应播放设备的唯一标识的对应关系;
根据确定的需要播放的播放资源之间的播放时间关系建立各对应播放设备之间的播放协同关系;
根据所有的所述对应关系和所述播放协同关系形成所述播放关系。
本发明上述实施例中详细提供了一种播放关系形成的实施例,在本实施例中,先根据播放需求从所有的播放资源中确定出需要进行播放的播放资源,然后将这些播放资源与播放设备(即唯一标识)对应起来,最后,再根据播放资源之间的时间关系和播放设备的唯一标示建立播放设备之间的播放协同关系,最后根据对应关系和播放协同关系形成了整体的播放关系。
上述播放关系可以以播放列表的形式存在,即主控播放设备将播放需求组合成为播放列表,然后通过网络发送给其它播放设备。具体地,主控播放设备可以通过TCP/IP方式以XML格式或二进制格式传输至所有从控播放设备。
所述播放需求包括以下参数的一种或几种的集合:
播放资源的起始播放位置、播放结束位置、重复次数;
每一播放设备对应的需要播放的播放资源的播放顺序;
每一播放资源播放结束时的处理方式,例如:播放结束后是停在最后一帧还是继续播放下一个等。
上述的播放需求是对播放资源进行各项参数的设置要求。
可以理解的是,主控播放设备在形成了该方法还包括所述播放关系的同步过程:
主控播放设备在所述播放关系建立完成后,将所述播放关系以播放列表的方式通过互连的网络发送到其他所有从控播放设备中,其他从控播放设备根据接收到的播放列表更新自身的播放列表,已达到各播放设备之间完全同步的目的;
为了保证播放设备之间的通信连接,任意两个播放设备之间均应保持通信连接,图2为一种播放设备之间星形连接的实施例,图中的每一个播放设备均与其它播放设备建立了通信连接。各播放设备将自身当前的播放状态发送至其他所有播放设备,其他播放设备根据接收的所述播放状态更新自身播放列表的状态。这样每一个播放设备能够实时掌握其他播放设备的播放状态。
可以理解的是,在原主控播放设备解除故障后,优选作为从控播放设备恢复工作。当然,在需要的情况下,原主控播放设备在解除故障后,也可从新主控播放设备“拿回”主控功能,作为主控播放设备恢复工作。
在本发明上述实施例中,所述预设规则包括:
每一从控播放设备根据所述设备信息列表获知当前发生异常的主控播放设备的标识号;
按照顺序标识号为当前主控播放设备的后一位的从控播放设备成为新的主控播放设备。
在本发明实施例中,采取了顺序替换的原则,也就是在当前主控播放设备异常时,根据标识号顺序,下一位标识号对应的播放设备接替故障的主控播放设备成为新的主控播放设备。
在本发明上述实施例的基础上,所述新的主控播放设备向工作状态正常的其他从控设备发出主控更新指令;
所述其他从控设备根据主控更新指令更新自身的设备信息列表,接收新的主控播放设备的控制命令。
在根据预设规则选出新的播放设备时,作为新的主控设备,会向其他的从控设备发送主控更新指令,以便让各从控设备更新设备信息列表,实现更新新的主控播放设备的目的。
可以理解的是,由于本发明是采取多个同样的播放设备协同工作的过程,那么各播放设备可以实现并行处理,协同工作的过程,具体的:
当播放机群需要完成一项耗时的工作时,由主控机将任务分解后发送到对应的播放机,各播放机接收任务后对各自的任务进行并行处理,从而充分调动各播放机的处理能力,进一步减少完成任务所需的时间,各播放机将处理的结果发送给需要反馈的播放机,其他播放机接收处理结果后改变任务状态或进一步处理其他工作。
与方法相对应,本发明实施例上述的多个播放设备组合在一起工作形成了一个播放资源的控制播放***,其中,对播放设备设置了主控状态和从控状态,指定一个播放设备为主控设备,使播放设备不仅具有播放的功能,还能够在播放设备处于主控状态时拥有控制功能,起到传统控制机的作用,其它的播放设备为从控设备,听从主控设备指挥进行实际的播放。
由于每个播放设备都可以根据需要进行主控状态和从控状态的切换,那么在当前的主控设备发生异常,不能完成主控任务时,其它从控设备的任一一个都可以及时的切换为主控状态继续完成主控任务,不会使整个***由于缺少主控设备而导致***瘫痪。
可以理解的是,多个播放设备在共同使用的过程中各自储存的播放资源肯定是有所区别的,那么在指定播放控制命令的时候,需要知道每个播放设备上可用的播放资源,才能针对该播放设备编辑播放命令,然而,播放设备又不可能将其存储的所有播放资源的信息全部提取出来,因为那样需要大量的时间,而且还存在传输的数据量大以及信息杂乱等问题。所以需要为每一个设置播放设备对应的初始访问路径,当播放设备启动后,根据配置的访问路径提取播放资源信息(该信息一般包括:全路径名、大小、预览图、时间长度、是否为文件夹等),然后通过互连的网络发送给其他播放设备,这样就相当于每个播放设备都了解了其他播放设备中可使用的播放资源,这样就可以针对不同的播放设备编辑节目,并通过处于主控状态的播放设备下发命令并播放,考虑到有时需要访问播放机中的资源信息,所以可以适当添加返回上级目录、进入子文件夹等操作。
另外,多数情况下,与播放资源存储在一起的还有类似文档、压缩包之类的文件,为了避免除播放资源外的其他文件对编辑节目造成干扰,需要给播放设备设定过滤条件,播放设备在列举播放资源信息时只选择符合条件的文件,从而避免了其他文件的干扰,也不会对其他文件造成损坏。通过上述的共享方式后,播放资源信息只有在播放装置群之间实现共享,而其他机器不能访问,从而提高了共享资源的安全性。
一般地,播放设备不仅可以接收播放指令,还可以接收发送命令,可以接收其他播放设备的发送命令并在本播放设备上进入指定的文件夹下并提取播放资源信息,然后通过互连的网络发送给命令指定的播放设备,从而添加了访问的灵活性。
可以理解的是,为了保证同时使用多个播放设备共同进行工作时,能够正常的连接各个播放设备,下面提供一个新启动的播放设备A加入***的流程:
以***中已经存在N(大于等于1)个播放设备的***为例,建立连接的过程如图3所示:
S201,A向***中所有的播放设备广播启动消息,所述启动消息包含自身的网络连接参数;
S202,已启动的播放设备在接收到所述启动消息后,根据A的网络连接参数建立对应的的设备数据结构,并将该设备数据结构添加到设备信息列表中;
S203,已启动的播放设备向A返回各自的网络连接参数;
S204,A根据每个已启动的播放设备反馈的网络连接参数建立对应的设备数据结构,并添加到设备信息列表中。
至此,A与***中每一个播放设备均建立通信完毕,在全部播放设备间建立上述连接后,播放设备群中的任意一个播放设备与余下所有的设备之间都建立了双向的通信机制,从而可以使用其中任意一个设备控制所有播放设备编辑节目、播放等。
本领域内的技术人员应明白,本发明的实施例可提供为方法、***、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。