CN109164997A - 分布式画面渲染和画面播放控制方法、装置及设备 - Google Patents
分布式画面渲染和画面播放控制方法、装置及设备 Download PDFInfo
- Publication number
- CN109164997A CN109164997A CN201810960451.8A CN201810960451A CN109164997A CN 109164997 A CN109164997 A CN 109164997A CN 201810960451 A CN201810960451 A CN 201810960451A CN 109164997 A CN109164997 A CN 109164997A
- Authority
- CN
- China
- Prior art keywords
- picture
- player
- distributed
- data
- control
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
- G06F3/1423—Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display
- G06F3/1446—Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display display composed of modules, e.g. video walls
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Multimedia (AREA)
- User Interface Of Digital Computer (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种分布式画面渲染和画面播放控制方法,包括播放器监控画面分布式渲染显示、播放器监控画面控件动作同步和画面控件数据同步;本发明提供的大屏可视化平台的分布式播放软件系统,通过异步的、事件驱动的网络应用程序框架把控制命令及控件数据直接推送至相关订阅的客户端,实现了分布式播放器软件画面控件动作及数据的实时同步,有效地解决了超大分辨率或多个图形工作站展示同一画面时的画面渲染和同步问题。
Description
技术领域
本发明涉及一种基于Netty的分布式画面渲染和画面播放控制方法,属于图像处理领域。
背景技术
现有技术,就大屏硬件系统而言,一般是由一台图形工作站、拼接控制器和大屏幕构成,在此模式下,播放器软件播放模式是单屏模式,软件程序是运行在一台图形工作站主机上,通过全屏模式渲染展示监控画面全部内容。然而,随着大屏尺寸分辨率的不断增加,单一图形工作站已不足以支撑整个大屏图像显示,传统的方式是通过拼接控制器拉伸图形工作站的各路图像信号,可以将图形工作站输出的图像信号铺满大屏区域,但当通过大屏可视化软件平台加载监控画面后,会导致监控画面内容模糊变形,影响大屏展示效果,或者单独采购高性能外置图像显卡处理器,但硬件成本较高。
现有技术中,CN1878260A公开一种多画面同屏播放方法,在硬件层次,通过处理多路视频信号为一路信号,实现多路视频画面在一个显示屏上显示的技术,属于视频信号处理。本专利介绍的是在大屏领域(大屏幕是由多个显示屏拼接而成),通过可视化平台业务软件实现将一个监控页面分屏展示的技术,并非是视频信号处理技术。
CN104104987A公开了视频播放中画面与声音同步方法,仅涉及多媒体视频文件的处理技术。
发明内容
本发明的目的是针对现有大屏可视化方案的不足,公开一种基于Netty的分布式画面渲染和画面播放控制方法,克服了传统的堵塞IO多线程模式不能满足大屏可视化平台分布式播放控制命令以及画面数据实时、同步、稳定传输的问题。
为达到以上目的,本发明采用以下技术方案来实现。
一种基于Netty的分布式画面渲染和画面播放控制方法,包括以下步骤:S1,基于若干个播放器对同一画面进行分屏渲染,通过分布式播放器的播放参数计算每个播放器在大屏上的位置、大小和展示监控画面的区域内容,以使若干个播放器显示一个监控画面;
S2,将监控画面上的交互动作广播到所有分布式播放器,以使分布式播放器执行动作同步命令相应的动作,完成与其他分布式播放器的动作同步。
较优地,步骤S2之后,还包括:S3,将分布式播放器上的相同控件的数据同步刷新,实现分布式播放器渲染的大屏画面的控件数据整体同步刷新。
步骤S1具体包括以下步骤:
设置加载画面命令中的自适参数,发送加载画面命令给各分布式播放器;根据分布式播放器解析的各加载画面命令的播放参数设置各个播放器在大屏上的位置和大小;
在根据用户名和密码验证画面使用权限后,基于自适应参数和加载画面命令的画面ID加载画面数据;控制分布式播放器自适应或者非自适应显示画面数据,若自适应参数为启动自适应,则将画面数据自适应在大屏中满屏展示;若自适应参数为不启动自适应,根据各播放器画面展示的左偏移量、上偏移量设置画面数据的偏移量,基于大屏的物理分辨率和画面尺寸大小计算画面的缩放比;
控制各分布式播放器渲染展示画面的相应区域,完成分布式播放器渲染展示同一画面。
所述S2具体包括以下步骤:
建立播放器Netty通信通道,对播放器内的每个控件设置监听事件,当监听事件发生,发送控件命令给所述播放器,接收到所述播放器根据控件命令的Guid和动作类型封装的消息后,通过Netty通道广播发送动作同步命令给所有播放器。
所述S3具体包括以下步骤:
通过Netty通道注册播放器加载画面的控件绑定的数据集;
根据数据集的推送频率,生成Quartz时间表达式,相同推送频率的数据集注册到同一个任务列表中,每个任务列表为一个调度任务,为每个调度任务分配唯一的调度任务ID,同时,建立Quartz时间表达式与调度任务ID的映射关系列表;
创建公共的调度任务执行类;创建Quartz的JobDetail对象,将调度任务执行类注册到JobDetail对象中,同时将调度任务ID存储于JobDetail的数据集DataMap中;创建Quartz的CronTrigger对象,将生成的时间表达式注册到CronTrigger对象中;基于JobDetai对象和CronTrigger对象创建一个Job任务实例注册到Quartz调度器中;
基于JobDetai对象和CronTrigger对象将生成的Quartz时间表达式、调度任务执行类和对应的调度任务ID生成一个Job任务实例注册到Quartz调度器中;Quartz调度器根据注册的时间表达式定时触发调度任务执行类,在调度任务执行类中,根据JobDetail对象的数据集DataMap中的任务ID参数获取调度任务下的数据集列表,根据数据集列表的各个数据集信息进行数据库数据查询;
将查询的数据集数据分装成VSDataset数据对象,通过Netty通道推送至各个分布式播放器,实现各个播放器的控件数据同步刷新。
一种基于Netty的分布式画面渲染和画面播放控制装置,包括播放器画面分布式渲染显示单元和播放器画面控件动作同步单元;
播放器画面分布式渲染显示单元基于若干个播放器对同一画面进行分屏渲染,实现对大屏(分辨率10000以上)画面的整体显示,通过分布式播放器的播放参数计算每个播放器在大屏上的位置、大小和展示监控画面的区域内容,实现若干个播放器显示一个监控画面;
播放器画面控件动作同步单元用于将画面上的交互动作广播到所有分布式播放器,分布式播放器接收到动作同步命令后,执行同步命令相应的动作,完成与其他分布式播放器的动作同步。
较优地,所述装置还包括画面控件数据同步单元;
所述画面控件数据同步单元,用于将分布式播放器上的相同控件的数据同步刷新,实现分布式播放器渲染的大屏画面的控件数据整体同步刷新。播放器画面分布式渲染显示单元用于设置加载画面命令中的自适参数,发送加载画面命令给各分布式播放器;根据分布式播放器解析的各加载画面命令的播放参数设置各个播放器在大屏上的位置和大小;
根据用户名和密码验证画面使用权限;基于自适应参数和加载画面命令的画面ID加载画面数据;控制分布式播放器自适应或者非自适应显示画面数据,若自适应参数为启动自适应,则将画面数据自适应在大屏中满屏展示;若自适应参数为不启动自适应,根据各播放器画面展示的左偏移量、上偏移量设置画面数据的偏移量,基于大屏的物理分辨率和画面尺寸大小计算画面的缩放比;
控制各分布式播放器渲染展示画面的相应区域,完成分布式播放器渲染展示同一画面。
播放器画面控件动作同步单元用于建立播放器Netty通信通道,对播放器内的每个控件设置监听事件,当监听事件发生,发送控件命令给所述播放器,接收到所述播放器根据控件命令的Guid和动作类型封装的消息后,通过Netty通道广播发送动作同步命令给所有播放器。
画面控件数据同步单元用于通过Netty通道注册播放器加载画面的控件绑定的数据集;
根据数据集的推送频率,生成Quartz时间表达式,相同推送频率的数据集注册到同一个任务列表中,每个任务列表为一个调度任务,为每个调度任务分配唯一的调度任务ID,同时,建立Quartz时间表达式与调度任务ID的映射关系列表;
创建公共的调度任务执行类;创建Quartz的JobDetail对象,将调度任务执行类注册到JobDetail对象中,同时将调度任务ID存储于JobDetail的数据集DataMap中;创建Quartz的CronTrigger对象,将生成的时间表达式注册到CronTrigger对象中;基于JobDetai对象和CronTrigger对象创建一个Job任务实例注册到Quartz调度器中;
基于JobDetai对象和CronTrigger对象将生成的Quartz时间表达式、调度任务执行类和对应的调度任务ID生成一个Job任务实例注册到Quartz调度器中;Quartz调度器根据注册的时间表达式定时触发调度任务执行类,在调度任务执行类中,根据JobDetail对象的数据集DataMap中的任务ID参数获取调度任务下的数据集列表,根据数据集列表的各个数据集信息进行数据库数据查询;
将查询的数据集数据分装成VSDataset数据对象,通过Netty通道推送至各个分布式播放器,实现各个播放器的控件数据同步刷新。
一个或多个处理器、存储器以及一个或多个程序,其中一个或多个程序存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于执行分布式画面渲染和画面播放控制方法。
一种存储一个或多个程序的计算机可读存储介质,其特征在于,所述一个或多个程序包括指令,所述指令当由计算设备执行时,使得所述计算设备执行分布式画面渲染和画面播放控制方法。
与现有技术相比,本发明有益效果包括:
本发明提供的基于Netty的分布式画面渲染和画面播放控制方法,通过异步的、事件驱动的网络应用程序框架把通讯消息命令以及数据直接推送至相关订阅的客户端,实现了对各个客户端动作的实时控制及画面数据实时更新,保障了分布式播放器动作和画面数据的同步性,克服了传统的堵塞IO多线程模式不能满足大屏可视化平台分布式播放控制命令以及画面数据实时、同步、稳定传输的问题。
本发明公开一种基于Netty的分布式画面渲染和画面播放控制方法,通过分布式展示方案配置的属性值计算每个播放器软件在大屏上的位置、大小以及展示画面的区域,实现多个播放器显示同一监控画面内容;通过将用户的交互事件命令广播给播放器组,组内播放器接收到交互事件命令后去执行相应的事件动作,实现多个播放器画面上的事件动作同步;将不同播放器画面上相同推送频率的数据集注册到同一个任务列表中,通过Quartz调度器定时执行各个任务列表中的数据集查询,并将查询结果集实时推送至相关订阅的播放器客户端,实现了多个播放器画面的数据同步;其中,通讯消息命令以及数据集均通过Netty的Socket模式通道传输,以便保证数据的实时性和同步性,实现了通过多个图形工作站上的画面播放器软件分布式展示同一监控画面的效果。
附图说明
图1为本发明一种基于Netty的分布式画面渲染和画面播放控制方法流程图;
图2播放器画面分布式渲染显示的流程图;
图3播放器画面控件动作同步流程图;
图4画面控件数据同步流程图。
具体实施方式
下面结合附图对本发明作更进一步的说明。
如图1所示,一种基于Netty的分布式画面渲染和画面播放控制方法,包括播放器画面分布式渲染显示、播放器画面控件动作同步和画面控件数据同步;
播放器画面分布式渲染显示基于若干个播放器对同一画面进行分屏渲染,实现对大屏(分辨率10000以上)画面的整体显示,通过分布式播放器的播放参数计算每个播放器在大屏上的位置、大小和展示监控画面的区域内容,以使若干个播放器显示一个监控画面;
播放器画面控件动作同步用于将画面上的交互动作广播到所有分布式播放器,以使分布式播放器接收到动作同步命令后,执行动作同步命令相应的动作,完成与其他分布式播放器的动作同步;
画面控件数据同步将分布式播放器上的相同控件的数据同步刷新,实现分布式播放器渲染的大屏画面的控件数据整体同步刷新。
画面分布式渲染显示时,各个播放器在大屏上的位置与各个播放器渲染的画面的位置区域对应,从而实现多个播放器播放同一画面的效果。
如图2所示,播放器画面分布式渲染显示具体包括以下步骤:
本实施例中,可以通过上位机或者控制器或者后台服务或者程序执行方法。
(1-1)设置加载画面命令中的自适参数,发送加载画面命令给各分布式播放器;
(1-2)根据分布式播放器解析的各加载画面命令的播放参数设置各个播放器在大屏上的位置和大小;播放参数包括播放器左边距left、播放器上边距top、播放器宽度width、播放器高度height、画面ID、用户名username、密码pwd、画面展示的左偏移量moveleft、画面展示的上偏移量movetop;
(1-3)根据用户名和密码验证画面使用权限;
(1-4)基于自适应参数和加载画面命令的画面ID加载画面数据;;
(1-5)控制分布式播放器自适应或者非自适应显示画面数据,若画面内容需要自适应,自适应参数为1,则将画面内容自适应在大屏中满屏展示;若画面内容不需要自适应,自适应参数为0,根据各播放器画面展示的左偏移量、上偏移量设置画面内容的偏移量,根据大屏的物理分辨率和画面尺寸大小计算画面的缩放比;
(1-6)控制各分布式播放器渲染展示画面的相应区域,完成分布式播放器渲染展示同一画面。
如图3所示,画面控件动作同步具体包括以下步骤:
(2-1)每个播放器启动后,对播放器内的每个控件设置监听事件;
(2-2)当监听事件发生(有用户点击控件的时候),控件发送命令给播放器,播放器根据控件的Guid和动作类型(如:点击,双击等)封装消息,发送给后台应用服务;
(2-3)接收到所述播放器根据控件命令的Guid和动作类型封装的消息后,通过Netty通道广播发送动作同步命令给所有播放器。
不同播放器接收到动作同步命令后,解析命令,根据命令执行命令相应的动作。
动作同步命令消息格式如下:
如图4所示,画面控件数据同步具体包括以下步骤:
(3-1)播放器启动后与后台建立Netty通信通道,加载完画面后,通过Netty通道向后台服务注册控件绑定数据集;
本实施例,当播放器加载完画面后,通过Netty通道向后台服务注册控件绑定数据集,根据数据集能够注册数据集定时查询任务。后台服务包括三个注册数据变量,schemaidAndcronExpr、cronAndTaskGuid、reveDefTasks,为了处理并发注册的情况,此三个变量都为ConcurrentHashMap类型,其中,schemaidAndcronExpr是用来注册数据集ID与时间表达式的关系,cronAndTaskGuid是用来注册时间表达是与任务的关系,reveDefTasks是用来注册任务与数据集的关系。
(3-2)根据数据集的推送频率,生成Quartz时间表达式,相同推送频率的数据集注册到同一个任务列表中,每个任务列表为一个调度任务,为每个调度任务分配唯一的调度任务ID,同时,建立Quartz时间表达式与调度任务ID的映射关系列表(由于每个监控画面上的指标刷新频率有多种,因此调度任务会有多个,每个调度任务对应一个Quartz时间表达式);
(3-3)创建公共的调度任务执行类,用于执行所有调度任务的业务操作;创建Quartz的JobDetail对象,将调度任务执行类注册到JobDetail对象中,同时将调度任务ID存储于JobDetail的数据集DataMap中(用于在触发调度任务执行类时,根据任务ID参数获取该调度任务下的数据集);创建Quartz的CronTrigger对象,将生成的时间表达式注册到CronTrigger对象中;基于JobDetai对象和CronTrigger对象创建一个Job任务实例注册到Quartz调度器中;
(3-4)基于JobDetai对象和CronTrigger对象将生成的Quartz时间表达式、调度任务执行类和对应的调度任务ID生成一个Job任务实例注册到Quartz调度器中;
Quartz调度器Scheduler里面有定时调度任务Job对象,每个Job对象是由JobDetail、CronTrigger组成,JobDetail对象中主要包含调度任务执行类、任务组、名称等,CronTrigger对象中主要包含触发定时任务的Quartz时间表达式、任务组、名称等;
(3-5)Quartz调度器根据注册的时间表达式定时触发调度任务执行类,在调度任务执行类中,根据JobDetail对象的数据集DataMap中的任务ID参数获取调度任务下的数据集列表,根据数据集列表的各个数据集信息进行数据库数据查询;
(3-6)将查询的数据集数据分装成VSDataset数据对象,通过Netty通道推送至各个分布式播放器,播放器接收到数据后刷新控件数据,实现各个播放器的控件数据同步刷新。
一种基于Netty的分布式画面渲染和画面播放控制装置,包括播放器画面分布式渲染显示单元、播放器画面控件动作同步单元和画面控件数据同步单元;
所述播放器画面分布式渲染显示单元基于若干个播放器对同一画面进行分屏渲染,实现对大屏(分辨率10000以上)画面的整体显示,通过分布式播放器的播放参数计算每个播放器在大屏上的位置、大小和展示监控画面的区域内容,实现若干个播放器显示一个监控画面;
所述播放器画面控件动作同步单元用于将画面上的交互动作广播到所有分布式播放器,分布式播放器接收到动作同步命令后,执行同步命令相应的动作,完成与其他分布式播放器的动作同步;
画面控件数据同步单元将分布式播放器上的相同控件的数据同步刷新,实现分布式播放器渲染的大屏画面的控件数据整体同步刷新。
一种基于Netty的分布式画面渲染和画面播放控制装置还包括控制器和后台应用服务;控制器用来发送控制命令的客户端,发送的控制命令经由后台应用服务转发给目标播放器。
播放器画面分布式渲染显示单元进行分屏渲染具体包括以下步骤:
(1-1)控制器发送加载画面命令给各分布式播放器;
(1-2)分布式播放器解析各加载画面命令获取播放参数;,播放参数包括播放器左边距left、播放器上边距top、播放器宽度width、播放器高度height、画面ID、用户名username、密码pwd、画面展示的左偏移量moveleft、画面展示的上偏移量movetop;
(1-3)分布式播放器根据播放参数设置各个播放器在大屏上的位置和大小;
(1-4)根据用户名和密码验证画面使用权限;
(1-5)分布式播放器根据画面ID加载画面数据;
(1-6)若画面内容需要自适应,自适应参数为1,则将画面内容自适应在大屏中满屏展示;若画面内容不需要自适应,自适应参数为0,根据各播放器画面展示的左偏移量、上偏移量设置画面内容的偏移量,根据大屏的物理分辨率和画面尺寸大小计算画面的缩放比;
(1-7)各分布式播放器渲染展示画面的相应区域,完成分布式播放器渲染展示同一画面。
控制器发送加载画面命令给分布式播放器,收到加载命令消息后,启动各自播放器进程,并将画面命令传递给各个播放器进程(其中播放参数包括画面templateId、播放器左边距left、播放器上边距top、播放器宽度width、播放器高度height、用户名username、密码pwd、画面展示的左偏移量moveleft、画面展示的上偏移量movetop)。播放器解析出画面命令的参数后,根据播放器左边距left、播放器上边距top、播放器宽度width、播放器高度height来设置播放器的位置和大小;之后根据用户名和密码验证画面使用权限;权限认证通过后各个播放器进程根据画面templateId从后台服务端获取画面文件,通过解析画面文件获取画面XML,最后通过画面XML来完成画面内容渲染;接下来会根据自适应标记adaptive来确定播放器是否自适应展示画面,若自适应标记为1,表示需要自适应展示,设置画面展示起始位置为坐标原点,将画面内容自适应撑满播放器展示,若自适应标记为0,表示不需要自适应展示,根据各播放器画面展示的左偏移量moveleftt、上偏移量movetop参数设置画面内容的偏移量,根据大屏物理分辨率和画面尺寸大小计算画面的缩放比。至此,各分布式播放器即可渲染展示画面的相应区域,完成分布式播放器渲染展示同一画面的效果。
所述画面控件动作同步单元将画面上的交互动作广播到所有分布式播放器,具体包括以下步骤:
(2-1)每个播放器启动后,对播放器内的每个控件设置监听事件;
(2-2)当监听事件发生(有用户点击控件的时候),控件发送命令给播放器,播放器根据控件的Guid和动作类型(如:点击,双击等)封装消息,发送给后台应用服务;
(2-3)后台服务接收到动作同步命令后,广播转发给所有播放器;
(2-4)不同播放器接收到动作同步命令后,解析命令,根据命令执行命令相应的动作。
所述画面控件数据同步单元将分布式播放器上的相同控件的数据同步刷新,具体包括以下步骤:
(3-1)播放器启动后与后台建立Netty通信通道,加载完画面后,通过Netty通道向后台服务注册控件绑定数据集;
(3-2)根据数据集的推送频率,生成Quartz时间表达式,相同推送频率的数据集注册到同一个任务列表中,每个任务列表为一个调度任务,为每个调度任务分配唯一的调度任务ID,同时,建立Quartz时间表达式与调度任务ID的映射关系列表(由于每个监控画面上的指标刷新频率有多种,因此调度任务会有多个,每个调度任务对应一个Quartz时间表达式);
(3-3)创建公共的调度任务执行类,用于执行所有调度任务的业务操作;创建QuartzJobDetail对象,将调度任务执行类注册到JobDetail对象中,同时将调度任务ID存储于JobDetail的数据集DataMap中(用于在触发调度任务执行类时,根据任务ID参数获取该调度任务下的数据集);创建QuartzCronTrigger对象,将生成的时间表达式注册到CronTrigger对象中;基于JobDetai对象和CronTrigger对象创建一个Job任务实例注册到Quartz调度器中;
(3-4)基于JobDetai对象和CronTrigger对象将生成的Quartz时间表达式、调度任务执行类和对应的调度任务ID生成一个Job任务实例注册到Quartz调度器中;
(3-5)Quartz调度器根据注册的时间表达式定时触发调度任务执行类,在调度任务执行类中,根据JobDetail对象的数据集DataMap中的任务ID参数获取调度任务下的数据集列表,根据数据集列表的各个数据集信息进行数据库数据查询;
(3-6)将查询的数据集数据分装成VSDataset数据对象,通过Netty通道推送至各个分布式播放器,播放器接收到数据后刷新控件数据,实现各个播放器的控件数据同步刷新。
一个或多个处理器、存储器以及一个或多个程序,其中一个或多个程序存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于执行一种基于Netty的分布式画面渲染和画面播放控制方法的指令。
一种存储一个或多个程序的计算机可读存储介质,所述一个或多个程序包括指令,所述指令当由计算设备执行时,使得所述计算设备执行一种基于Netty的分布式画面渲染和画面播放控制方法。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下被实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多特征。更确切地说,如权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员应当理解在本文所公开的示例中的设备的模块或单元或组间可以布置在如该实施例中所描述的设备中,或者可替换地可以定位在与该示例中的设备不同的一个或多个设备中。前述示例中的模块可以组合为一个模块或者此外可以分成多个子模块。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组间组合成一个模块或单元或组间,以及此外可以把它们分成多个子模块或子单元或子组间。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
此外,所述实施例中的一些在此被描述成可以由计算机系统的处理器或者由执行所述功能的其它装置实施的方法或方法元素的组合。因此,具有用于实施所述方法或方法元素的必要指令的处理器形成用于实施该方法或方法元素的装置。此外,装置实施例的在此所述的元素是如下装置的例子:该装置用于实施由为了实施该发明的目的的元素所执行的功能。
这里描述的各种技术可结合硬件或软件,或者它们的组合一起实现。从而,本发明的方法和设备,或者本发明的方法和设备的某些方面或部分可采取嵌入有形媒介,例如软盘、CD-ROM、硬盘驱动器或者其它任意机器可读的存储介质中的程序代码(即指令)的形式,其中当程序被载入诸如计算机之类的机器,并被所述机器执行时,所述机器变成实践本发明的设备。
在程序代码在可编程计算机上执行的情况下,计算设备一般包括处理器、处理器可读的存储介质(包括易失性和非易失性存储器和/或存储元件),至少一个输入装置,和至少一个输出装置。其中,存储器被配置用于存储程序代码;处理器被配置用于根据该存储器中存储的所述程序代码中的指令,执行本发明的光伏消纳能力的评价方法。
以示例而非限制的方式,计算机可读介质包括计算机存储介质和通信介质。计算机可读介质包括计算机存储介质和通信介质。计算机存储介质存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息。通信介质一般以诸如载波或其它传输机制等已调制数据信号来体现计算机可读指令、数据结构、程序模块或其它数据,并且包括任何信息传递介质。以上的任一种的组合也包括在计算机可读介质的范围之内。
如在此所使用的那样,除非另行规定,使用序数词“第一”、“第二”、“第三”等等来描述普通对象仅仅表示涉及类似对象的不同实例,并且并不意图暗示这样被描述的对象必须具有时间上、空间上、排序方面或者以任意其它方式的给定顺序。
尽管根据有限数量的实施例描述了本发明,但是受益于上面的描述,本技术领域内的技术人员明白,在由此描述的本发明的范围内,可以设想其它实施例。此外,应当注意,本说明书中使用的语言主要是为了可读性和教导的目的而选择的,而不是为了解释或者限定本发明的主题而选择的。因此,在不偏离所附权利要求书的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。对于本发明的范围,对本发明所做的公开是说明性的,而非限制性的,本发明的范围由所附权利要求书限定。以上所述仅是本发明的优选实施方式,应当指出:对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种分布式画面渲染和画面播放控制方法,其特征在于,包括以下步骤:
S1,基于若干个分布式播放器对同一画面进行分屏渲染,通过分布式播放器的播放参数计算每个播放器在大屏上的位置、大小和展示监控画面的区域内容,以使若干个播放器显示一个监控画面;
S2,将监控画面上的交互动作广播到所有分布式播放器,以使分布式播放器执行动作同步命令相应的动作,完成与其他分布式播放器的动作同步。
2.根据权利要求1所述的一种分布式画面渲染和画面播放控制方法,其特征在于:步骤S2之后,还包括:
S3,将分布式播放器上的相同控件的数据同步刷新,实现分布式播放器渲染的大屏画面的控件数据整体同步刷新。
3.根据权利要求1所述的一种分布式画面渲染和画面播放控制方法,其特征在于:
步骤S1具体包括以下步骤:
设置加载画面命令中的自适参数,发送加载画面命令给各分布式播放器;根据分布式播放器解析的各加载画面命令的播放参数设置各个播放器在大屏上的位置和大小;
在根据用户名和密码验证画面使用权限后,基于自适应参数和加载画面命令的画面ID加载画面数据;控制分布式播放器自适应或者非自适应显示画面数据若自适应参数为启动自适应,则将画面数据自适应在大屏中满屏展示;若自适应参数为不启动自适应,根据各播放器画面展示的左偏移量、上偏移量设置画面数据的偏移量,基于大屏的物理分辨率和画面尺寸大小计算画面的缩放比;
控制各分布式播放器渲染展示画面的相应区域,完成分布式播放器渲染展示同一画面。
4.根据权利要求1所述的分布式画面渲染和画面播放控制方法,其特征在于:
所述S2具体包括以下步骤:
建立播放器Netty通信通道,对播放器内的每个控件设置监听事件,当监听事件发生,发送控件命令给所述播放器,接收到所述播放器根据控件命令的Guid和动作类型封装的消息后,通过Netty通道广播发送动作同步命令给所有播放器。
5.根据权利要求2所述的分布式画面渲染和画面播放控制方法,其特征在于:
所述S3具体包括以下步骤:
通过Netty通道注册播放器加载画面的控件绑定的数据集;
根据数据集的推送频率,生成Quartz时间表达式,相同推送频率的数据集注册到同一个任务列表中,每个任务列表为一个调度任务,为每个调度任务分配唯一的调度任务ID,同时,建立Quartz时间表达式与调度任务ID的映射关系列表;
创建公共的调度任务执行类,创建Quartz的JobDetail对象,将调度任务执行类注册到JobDetail对象中,同时将调度任务ID存储于JobDetail的数据集DataMap中;创建Quartz的CronTrigger对象,将生成的时间表达式注册到CronTrigger对象中;基于JobDetai对象和CronTrigger对象创建一个Job任务实例注册到Quartz调度器中;
基于JobDetai对象和CronTrigger对象将生成的Quartz时间表达式、调度任务执行类和对应的调度任务ID生成一个Job任务实例注册到Quartz调度器中;Quartz调度器根据注册的时间表达式定时触发调度任务执行类,在调度任务执行类中,根据JobDetail对象的数据集DataMap中的任务ID参数获取调度任务下的数据集列表,根据数据集列表的各个数据集信息进行数据库数据查询;
将查询的数据集数据分装成VSDataset数据对象,通过Netty通道推送至各个分布式播放器,实现各个播放器的控件数据同步刷新。
6.一种分布式画面渲染和画面播放控制装置,其特征在于:
包括播放器画面分布式渲染显示单元和播放器画面控件动作同步单元;
所述播放器画面分布式渲染显示单元,用于基于若干个播放器对同一画面进行分屏渲染,通过分布式播放器的播放参数计算每个播放器在大屏上的位置、大小和展示监控画面的区域内容,实现若干个播放器显示一个监控画面;
所述播放器画面控件动作同步单元,用于将画面上的交互动作广播到所有分布式播放器,分布式播放器接收到动作同步命令后,执行同步命令相应的动作,完成与其他分布式播放器的动作同步。
7.根据权利要求6所述的一种分布式画面渲染和画面播放控制装置,其特征在于:所述装置还包括画面控件数据同步单元;
所述画面控件数据同步单元,用于将分布式播放器上的相同控件的数据同步刷新,实现分布式播放器渲染的大屏画面的控件数据整体同步刷新。
8.根据权利要求7所述的一种分布式画面渲染和画面播放控制装置,其特征在于:
播放器画面分布式渲染显示单元,用于设置加载画面命令中的自适参数,发送加载画面命令给各分布式播放器;根据分布式播放器解析的各加载画面命令的播放参数设置各个播放器在大屏上的位置和大小;在根据用户名和密码验证画面使用权限后,基于自适应参数和加载画面命令的画面ID加载画面数据;控制分布式播放器自适应或者非自适应显示画面数据,若自适应参数为启动自适应,则将画面数据自适应在大屏中满屏展示;若自适应参数为不启动自适应,根据各播放器画面展示的左偏移量、上偏移量设置画面数据的偏移量,基于大屏的物理分辨率和画面尺寸大小计算画面的缩放比;控制各分布式播放器渲染展示画面的相应区域,完成分布式播放器渲染展示同一画面;
所述播放器画面控件动作同步单元,用于建立播放器Netty通信通道,对播放器内的每个控件设置监听事件,当监听事件发生,发送控件命令给所述播放器,接收到所述播放器根据控件命令的Guid和动作类型封装的消息后,通过Netty通道广播发送动作同步命令给所有播放器;
所述画面控件数据同步单元用于通过Netty通道注册播放器加载画面的控件绑定的数据集;根据数据集的推送频率,生成Quartz时间表达式,相同推送频率的数据集注册到同一个任务列表中,每个任务列表为一个调度任务,为每个调度任务分配唯一的调度任务ID,同时,建立Quartz时间表达式与调度任务ID的映射关系列表;创建公共的调度任务执行类;创建Quartz的JobDetail对象,将调度任务执行类注册到JobDetail对象中,同时将调度任务ID存储于JobDetail的数据集DataMap中;创建Quartz的CronTrigger对象,将生成的时间表达式注册到CronTrigger对象中;基于JobDetai对象和CronTrigger对象创建一个Job任务实例注册到Quartz调度器中;基于JobDetai对象和CronTrigger对象将生成的Quartz时间表达式、调度任务执行类和对应的调度任务ID生成一个Job任务实例注册到Quartz调度器中;Quartz调度器根据注册的时间表达式定时触发调度任务执行类,在调度任务执行类中,根据JobDetail对象的数据集DataMap中的任务ID参数获取调度任务下的数据集列表,根据数据集列表的各个数据集信息进行数据库数据查询;将查询的数据集数据分装成VSDataset数据对象,通过Netty通道推送至各个分布式播放器,实现各个播放器的控件数据同步刷新。
9.一种设备,其特征在于,包括:
一个或多个处理器、存储器以及一个或多个程序,其中一个或多个程序存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于执行根据权利要求1至5所述的方法中的任一方法的指令。
10.一种存储一个或多个程序的计算机可读存储介质,其特征在于,所述一个或多个程序包括指令,所述指令当由计算设备执行时,使得所述计算设备执行根据权利要求1至5所述的方法中的任一方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810960451.8A CN109164997B (zh) | 2018-08-22 | 2018-08-22 | 分布式画面渲染和画面播放控制方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810960451.8A CN109164997B (zh) | 2018-08-22 | 2018-08-22 | 分布式画面渲染和画面播放控制方法、装置及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109164997A true CN109164997A (zh) | 2019-01-08 |
CN109164997B CN109164997B (zh) | 2021-08-24 |
Family
ID=64896565
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810960451.8A Active CN109164997B (zh) | 2018-08-22 | 2018-08-22 | 分布式画面渲染和画面播放控制方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109164997B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110446087A (zh) * | 2019-08-30 | 2019-11-12 | 徐汉阳 | 一种基于社区院线播放设备的同幕播放系统 |
CN110471772A (zh) * | 2019-08-19 | 2019-11-19 | 上海云绅智能科技有限公司 | 一种分布式系统及其渲染方法、客户机 |
CN111031194A (zh) * | 2019-12-12 | 2020-04-17 | 北京东土科技股份有限公司 | 一种多路解码器同步控制方法、设备及存储介质 |
CN111314764A (zh) * | 2020-03-04 | 2020-06-19 | 南方电网科学研究院有限责任公司 | 跨屏动画在分布式渲染环境中的同步方法 |
CN111741349A (zh) * | 2020-07-14 | 2020-10-02 | 北京简元科技有限公司 | 多媒体信息异形屏发布方法和装置及设备 |
CN111966474A (zh) * | 2020-08-11 | 2020-11-20 | 武汉遂意语联网络科技有限公司 | 控制定时任务的方法及装置 |
CN113590555A (zh) * | 2021-10-08 | 2021-11-02 | 天津卓朗科技发展有限公司 | 数据处理方法、装置及系统 |
CN115529492A (zh) * | 2022-08-22 | 2022-12-27 | 海信视像科技股份有限公司 | 一种图像渲染方法、装置和电子设备 |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1878260A (zh) * | 2006-07-14 | 2006-12-13 | 杭州国芯科技有限公司 | 多画面同屏播放方法 |
CN101093653A (zh) * | 2007-06-26 | 2007-12-26 | 广东威创日新电子有限公司 | 一种拼墙多用户互动控制和拼墙显示信息回放装置及方法 |
CN101286314A (zh) * | 2008-05-26 | 2008-10-15 | 杭州华三通信技术有限公司 | 一种多画面拼接方法和装置 |
US20090106689A1 (en) * | 2007-10-17 | 2009-04-23 | United States Of America As Represented By The Secretary Of The Navy | Method of using a real time desktop image warping system to mitigate optical distortion |
CN201563007U (zh) * | 2009-12-04 | 2010-08-25 | 无锡市恒通电器有限公司 | 基于无线网状自组网的电能实时监控及线损分析系统 |
CN102542933A (zh) * | 2012-01-16 | 2012-07-04 | 深圳市创维群欣安防科技有限公司 | 一种基于大屏幕液晶拼接显示的开窗控制器 |
CN103077246A (zh) * | 2013-01-18 | 2013-05-01 | 国网电力科学研究院 | 一种基于Netty的大屏可视化平台数据推送系统 |
CN104125494A (zh) * | 2014-07-07 | 2014-10-29 | 四川中电启明星信息技术有限公司 | 一种大屏幕分布式播放场景画面拼接方法 |
CN104238984A (zh) * | 2014-08-28 | 2014-12-24 | 国家电网公司 | 一种多机并行同步输出图像的方法及系统 |
US20150281763A1 (en) * | 2014-03-25 | 2015-10-01 | Cisco Technology Inc. | System and Method for Synchronized Presentation of Video Timeline Metadata |
CN105761635A (zh) * | 2016-04-14 | 2016-07-13 | 康佳集团股份有限公司 | 无缝拼接单元及显示装置 |
CN107273025A (zh) * | 2017-05-26 | 2017-10-20 | 努比亚技术有限公司 | 一种分屏显示方法、终端及计算机可读存储介质 |
CN107707947A (zh) * | 2017-09-12 | 2018-02-16 | 西安万像电子科技有限公司 | 画面数据控制方法及系统 |
CN107870955A (zh) * | 2016-09-28 | 2018-04-03 | 国家电网公司 | 基于Netty的画面处理方法、装置及系统 |
-
2018
- 2018-08-22 CN CN201810960451.8A patent/CN109164997B/zh active Active
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1878260A (zh) * | 2006-07-14 | 2006-12-13 | 杭州国芯科技有限公司 | 多画面同屏播放方法 |
CN101093653A (zh) * | 2007-06-26 | 2007-12-26 | 广东威创日新电子有限公司 | 一种拼墙多用户互动控制和拼墙显示信息回放装置及方法 |
US20090106689A1 (en) * | 2007-10-17 | 2009-04-23 | United States Of America As Represented By The Secretary Of The Navy | Method of using a real time desktop image warping system to mitigate optical distortion |
CN101286314A (zh) * | 2008-05-26 | 2008-10-15 | 杭州华三通信技术有限公司 | 一种多画面拼接方法和装置 |
CN201563007U (zh) * | 2009-12-04 | 2010-08-25 | 无锡市恒通电器有限公司 | 基于无线网状自组网的电能实时监控及线损分析系统 |
CN102542933A (zh) * | 2012-01-16 | 2012-07-04 | 深圳市创维群欣安防科技有限公司 | 一种基于大屏幕液晶拼接显示的开窗控制器 |
CN103077246A (zh) * | 2013-01-18 | 2013-05-01 | 国网电力科学研究院 | 一种基于Netty的大屏可视化平台数据推送系统 |
US20150281763A1 (en) * | 2014-03-25 | 2015-10-01 | Cisco Technology Inc. | System and Method for Synchronized Presentation of Video Timeline Metadata |
CN104125494A (zh) * | 2014-07-07 | 2014-10-29 | 四川中电启明星信息技术有限公司 | 一种大屏幕分布式播放场景画面拼接方法 |
CN104238984A (zh) * | 2014-08-28 | 2014-12-24 | 国家电网公司 | 一种多机并行同步输出图像的方法及系统 |
CN105761635A (zh) * | 2016-04-14 | 2016-07-13 | 康佳集团股份有限公司 | 无缝拼接单元及显示装置 |
CN107870955A (zh) * | 2016-09-28 | 2018-04-03 | 国家电网公司 | 基于Netty的画面处理方法、装置及系统 |
CN107273025A (zh) * | 2017-05-26 | 2017-10-20 | 努比亚技术有限公司 | 一种分屏显示方法、终端及计算机可读存储介质 |
CN107707947A (zh) * | 2017-09-12 | 2018-02-16 | 西安万像电子科技有限公司 | 画面数据控制方法及系统 |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110471772A (zh) * | 2019-08-19 | 2019-11-19 | 上海云绅智能科技有限公司 | 一种分布式系统及其渲染方法、客户机 |
CN110471772B (zh) * | 2019-08-19 | 2022-03-15 | 上海云绅智能科技有限公司 | 一种分布式系统及其渲染方法、客户机 |
CN110446087A (zh) * | 2019-08-30 | 2019-11-12 | 徐汉阳 | 一种基于社区院线播放设备的同幕播放系统 |
CN110446087B (zh) * | 2019-08-30 | 2024-03-26 | 徐汉阳 | 一种基于社区院线播放设备的同幕播放系统 |
CN111031194A (zh) * | 2019-12-12 | 2020-04-17 | 北京东土科技股份有限公司 | 一种多路解码器同步控制方法、设备及存储介质 |
CN111031194B (zh) * | 2019-12-12 | 2022-05-17 | 北京东土科技股份有限公司 | 一种多路解码器同步控制方法、设备及存储介质 |
CN111314764A (zh) * | 2020-03-04 | 2020-06-19 | 南方电网科学研究院有限责任公司 | 跨屏动画在分布式渲染环境中的同步方法 |
CN111741349A (zh) * | 2020-07-14 | 2020-10-02 | 北京简元科技有限公司 | 多媒体信息异形屏发布方法和装置及设备 |
CN111966474A (zh) * | 2020-08-11 | 2020-11-20 | 武汉遂意语联网络科技有限公司 | 控制定时任务的方法及装置 |
CN111966474B (zh) * | 2020-08-11 | 2024-04-02 | 武汉遂意语联网络科技有限公司 | 控制定时任务的方法及装置 |
CN113590555A (zh) * | 2021-10-08 | 2021-11-02 | 天津卓朗科技发展有限公司 | 数据处理方法、装置及系统 |
CN115529492A (zh) * | 2022-08-22 | 2022-12-27 | 海信视像科技股份有限公司 | 一种图像渲染方法、装置和电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN109164997B (zh) | 2021-08-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109164997A (zh) | 分布式画面渲染和画面播放控制方法、装置及设备 | |
US7667704B2 (en) | System for efficient remote projection of rich interactive user interfaces | |
WO2020083021A1 (zh) | 视频录制方法、视频播放方法、装置、设备及存储介质 | |
KR0138845B1 (ko) | 엠핵(mheg)엔진에서의 멀티미디어 정보 동기 제어기 및 그 제어방법 | |
WO2017113730A1 (zh) | 复合用户界面控件的生成和控制方法及系统 | |
CN101937325A (zh) | 一种拼接墙控制方法和一种拼接墙控制系统 | |
US10419826B2 (en) | Using a webpage to insert graphical elements into a video program stream | |
CN103581754A (zh) | 一种数据显示方法及智能设备 | |
CN110796712A (zh) | 素材处理方法、装置以及电子设备、存储介质 | |
CN103562862A (zh) | 全局合成系统 | |
CN105190701B (zh) | 基于原语的合成系统及方法 | |
CN105094289B (zh) | 一种实现图形用户交互界面的方法、设备及系统 | |
CN102006489B (zh) | 用于立体显示的帧频转换装置及方法 | |
CN104281426A (zh) | 一种图像显示方法及装置 | |
CN110024411A (zh) | 用于流传输内容的网络流量分发 | |
CN103973940B (zh) | 多机多通道投影同步方法 | |
US20080055317A1 (en) | Synchronization and coordination of animations | |
CN104768034B (zh) | 一种分配资源的方法及装置 | |
WO2024067159A1 (zh) | 视频生成方法、装置、电子设备及存储介质 | |
CN106155677A (zh) | 一种界面显示的方法和系统 | |
DE102022107672A1 (de) | Cloud-ausführung von audio/video compositing-anwendungen | |
CN104661089A (zh) | 一种终端桌面展现方法、装置及终端 | |
CN106454554A (zh) | 一种氛围光电视时间同步方法和氛围光电视 | |
CN107147938A (zh) | 一种视频节目的多画面展示方法和装置 | |
CN104836970B (zh) | 基于gpu实时视频处理的多投影融合方法和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |