一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种界面显示方法、装置、电子设备及存储介质与流程

2023-09-16 00:01:13 来源:中国专利 TAG:


1.本技术涉及数据处理技术领域,尤其涉及一种界面显示方法、装置、电子设备及存储介质。


背景技术:

2.在云桌面领域,spice客户端目前显示界面原理是,服务器端将图形变化数据通过glz、mjpeg、quic等压缩方式发送到客户端显示。客户端显示流程则是,接收压缩数据、解码数据、图形处理、最后显示,其中这些步骤都是串行处理,不能很好利用cpu多核性能,对于嵌入式设备来说,处理效率比较慢,延迟比较大。
3.对于如何优化客户端解码显示流程,利用硬件解码功能,加速显示,降低延迟,现有技术中缺少响应的解决手段。


技术实现要素:

4.有鉴于此,本技术实施例提供了一种界面显示方法、装置、电子设备及存储介质,能够降低显示延迟。
5.本技术实施例的技术方案是这样实现的:第一方面,本技术实施例提供一种界面显示方法,包括以下步骤:响应于针对第一消息的接收,对所述第一消息依次进行解码处理、图形处理和显示处理;若在对所述第一消息依次进行解码处理、图形处理和显示处理时,所述客户端接收了第二消息,且解码处理、图形处理和显示处理中任一处理过程对所述第一消息处理完毕后,开始对所述第二消息执行对应的处理过程,其中,解码处理、图形处理和显示处理的处理过程相互独立,任一处理过程依赖于前一处理过程的处理结果。
6.在一种可能的实施方式中,所述方法还包括:在所述客户端接收所述第一消息和所述第二消息之后,对所述第一消息和所述第二消息编入预设的处理标识,其中,所述处理标识用于表示所述第一消息和/或所述第二消息的处理顺序,所述处理标识按照消息的接收顺序依次编入。
7.在一种可能的实施方式中,所述客户端包括消息接收模块和处理消息队列,所述客户端通过以下方式接收所述第一消息和所述第二消息:通过所述消息接收模块持续接收所述第一消息和所述第二消息;将所述第一消息和所述第二消息按照接收顺序依次存入所述处理消息队列,其中,所述第一消息的顺序先于所述第二消息,所述处理消息队列为先进先出队列;将所述第一消息对应的第一副本发送至解码端,以使所述解码端基于所述第一副本对所述第一消息进行解码处理,且在所述解码端完成对所述第一消息的解码处理后,将所述第二消息对应的第二副本发送至解码端,以使所述解码端基于所述第二副本对所述第二消息进行解码处理。
8.在一种可能的实施方式中,所述解码端包括软件解码模块和硬件解码模块,所述解码端通过以下方式对所述第一消息和所述第二消息进行解码:确定所述第一副本或所述第二副本的目标格式,其中,所述目标格式包括glz、quic和mjepg;当所述目标格式为glz或quic时,按照接收消息的先后顺序通过所述软件解码模块进行解码,并将解码后的解码数据存入对应的glz解码缓存队列或quic解码缓存队列;当所述目标格式为mjepg时,按照接收消息的先后顺序通过所述硬件解码模块调用硬件解码sdk,将待解码数据传递至解码芯片,并在解码完成后发送获取通知,以使其他应用能够基于所述获取通知,获取解码后的解码数据。
9.在一种可能的实施方式中,所述客户端包括图形处理模块,所述客户端通过以下方式对所述第一消息和所述第二消息进行图形处理:确定所述第一消息或所述第二消息的消息类型;当所述消息类型与所述目标格式相匹配时,通过所述处理标识从所述解码端获取对应的解码数据,并基于所述解码数据进行图形处理,得到显示缓存数据,将所述显示缓存数据存储在显示缓存队列中;当所述消息类型与所述目标格式不匹配时,依次从所述处理消息队列中取出对应的消息并进行图形处理,得到显示缓存数据,将所述显示缓存数据存储在显示缓存队列中,其中,所述显示缓存队列为先进先出队列。
10.在一种可能的实施方式中,所述客户端包括显示模块,所述显示模块通过以下方式进行显示处理:基于垂直消影信号,从所述显示缓存队列中取出所述显示缓存数据;读取并显示所述显示缓存数据。
11.在一种可能的实施方式中,所述客户端包括cpu,所述解码处理、所述图形处理和所述显示处理中不同的处理过程基于所述cpu的多核性能,其中,所述cpu的核数大于等于处理过程的数量,每个处理过程占用至少一个处理核心。
12.第二方面,本技术实施例还提供一种界面显示装置,所述装置包括:第一处理模块,用于响应于针对第一消息的接收,对所述第一消息依次进行解码处理、图形处理和显示处理;第二处理模块,用于若在对所述第一消息依次进行解码处理、图形处理和显示处理时,客户端接收了第二消息,且解码处理、图形处理和显示处理中任一处理过程对所述第一消息处理完毕后,开始对所述第二消息执行对应的处理过程,其中,解码处理、图形处理和显示处理的处理过程相互独立,任一处理过程依赖于前一处理过程的处理结果。
13.第三方面,本技术实施例还提供一种电子设备,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行第一方面任一项所述的界面显示方法。
14.第四方面,本技术实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行第一方面任一项所述的界面显示方法。
15.本技术实施例具有以下有益效果:通过响应于针对第一消息的接收,对所述第一消息依次进行解码处理、图形处理和显示处理;若在对所述第一消息依次进行解码处理、图形处理和显示处理时,所述客户端接收了第二消息,且解码处理、图形处理和显示处理中任一处理过程对所述第一消息处理完毕后,开始对所述第二消息执行对应的处理过程,这样,由于解码处理、图形处理和显示处理的处理过程相互独立,客户端在接收到消息后可以对消息进行分流,对多条消息进行并行处理(单条消息依然是串行处理),能够提高处理效率,降低延迟。
附图说明
为了更清楚地说明本技术实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
16.图1是本技术实施例提供的步骤s101-s102的流程示意图;图2是现有技术中的串行显示流程图;图3是本技术实施例提供的并行显示流程图;图4是本技术实施例提供并行解码显示原理图;图5是本技术实施例提供的界面显示装置的结构示意图;图6是本技术实施例提供的电子设备的组成结构示意图。
具体实施方式
17.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,应当理解,本技术中附图仅起到说明和描述的目的,并不用于限定本技术的保护范围。另外,应当理解,示意性的附图并未按实物比例绘制。本技术中使用的流程图示出了根据本技术的一些实施例实现的操作。应该理解,流程图的操作可以不按顺序实现,没有逻辑的上下文关系的步骤可以反转顺序或者同时实施。此外,本领域技术人员在本技术内容的指引下,可以向流程图添加一个或多个其他操作,也可以从流程图中移除一个或多个操作。
18.在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
19.另外,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本技术实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本技术的实施例的详细描述并非旨在限制要求保护的本技术的范围,而是仅仅表示本技术的选定实施例。基于本技术的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。
20.在以下的描述中,所涉及的术语“第一\第二\第三”仅仅是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本技术实施例能够以除了在这里图示或描述的以外的顺
序实施。
21.需要说明的是,本技术实施例中将会用到术语“包括”,用于指出其后所声明的特征的存在,但并不排除增加其它的特征。
22.除非另有定义,本文所使用的所有的技术和科学术语与属于本技术的技术领域的技术人员通常理解的含义相同。本文中所使用的术语是为了描述本技术实施例的目的,不是在限制本技术。
23.参见图1,图1是本技术实施例提供的界面显示方法步骤s101-s102的流程示意图,将结合图1示出的步骤s101-s102进行说明。
24.步骤s101,响应于针对第一消息的接收,对所述第一消息依次进行解码处理、图形处理和显示处理;步骤s102,若在对所述第一消息依次进行解码处理、图形处理和显示处理时,所述客户端接收了第二消息,且解码处理、图形处理和显示处理中任一处理过程对所述第一消息处理完毕后,开始对所述第二消息执行对应的处理过程,其中,解码处理、图形处理和显示处理的处理过程相互独立,任一处理过程依赖于前一处理过程的处理结果。
25.上述界面显示方法,通过响应于针对第一消息的接收,对所述第一消息依次进行解码处理、图形处理和显示处理;若在对所述第一消息依次进行解码处理、图形处理和显示处理时,所述客户端接收了第二消息,且解码处理、图形处理和显示处理中任一处理过程对所述第一消息处理完毕后,开始对所述第二消息执行对应的处理过程,这样,由于解码处理、图形处理和显示处理的处理过程相互独立,客户端在接收到消息后可以对消息进行分流,对多条消息进行并行处理(单条消息依然是串行处理),能够提高处理效率,降低延迟。
26.下面分别对本技术实施例的上述示例性的各步骤进行说明。
27.在步骤s101中,响应于针对第一消息的接收,对所述第一消息依次进行解码处理、图形处理和显示处理。
28.在步骤s102中,若在对所述第一消息依次进行解码处理、图形处理和显示处理时,所述客户端接收了第二消息,且解码处理、图形处理和显示处理中任一处理过程对所述第一消息处理完毕后,开始对所述第二消息执行对应的处理过程,其中,解码处理、图形处理和显示处理的处理过程相互独立,任一处理过程依赖于前一处理过程的处理结果。
29.请参见图2,图2是现有技术中的串行显示流程图,如图2所示,现有技术中spice客户端目前显示界面原理是,服务器端将图形变化数据通过glz、mjpeg、quic等压缩方式发送到客户端显示。客户端显示流程则是,接收压缩数据(接收)、解码数据(解码)、图形处理(处理)、最后显示(显示),其中这些步骤都是串行处理,不能很好利用cpu多核性能,对于嵌入式设备来说,处理效率比较慢,延迟比较大。
30.请参见图3,图3是本技术实施例提供的并行显示流程图,如图3所示,客户端接收到消息后分为三个流程进行处理,解码流程(解码)、图形处理流程(处理)、显示流程(显示),三个流程并行工作,三个流程会有一个时间差,这个时间差即接收1条消息的时间。比如接收到1条消息(接收1)后进行解码(解码1),解码后转交给处理流程(处理1),随即进行第2条消息的接收(接收2),第2条消息的接收不需要和现有技术一样等待第1条消息处理并显示完后进行,同时在处理流程处理完后(处理1),即可进行对应的显示(显示1)。以此连续工作即可做到三个流程并行,缩短显示时间,降低延时。(多条消息做到并行处理,但是单条
消息依然是串行处理)。
31.在一些实施例中,所述方法还包括:在所述客户端接收所述第一消息和所述第二消息之后,对所述第一消息和所述第二消息编入预设的处理标识,其中,所述处理标识用于表示所述第一消息和/或所述第二消息的处理顺序,所述处理标识按照消息的接收顺序依次编入。
32.在一些实施例中,所述客户端包括消息接收模块和处理消息队列,所述客户端通过以下方式接收所述第一消息和所述第二消息:通过所述消息接收模块持续接收所述第一消息和所述第二消息;将所述第一消息和所述第二消息按照接收顺序依次存入所述处理消息队列,其中,所述第一消息的顺序先于所述第二消息,所述处理消息队列为先进先出队列;将所述第一消息对应的第一副本发送至解码端,以使所述解码端基于所述第一副本对所述第一消息进行解码处理,且在所述解码端完成对所述第一消息的解码处理后,将所述第二消息对应的第二副本发送至解码端,以使所述解码端基于所述第二副本对所述第二消息进行解码处理。
33.示例的,参见图4,图4是本技术实施例提供并行解码显示原理图,将原先接收解码处理显示串行流程分三个流程并行化,其中解码流程命名为并行流程1,图形处理命名为并行流程2,显示命名为并行流程3。消息接收模块接收到消息后对消息编入唯一的id(001、002、003
……
),消息接收模块持续不断地接收消息,并将收到的所有消息按照顺序发送至处理消息队列,同时将压缩消息以副本的形式发送至解码端。
34.在一些实施例中,所述解码端包括软件解码模块和硬件解码模块,所述解码端通过以下方式对所述第一消息和所述第二消息进行解码:确定所述第一副本或所述第二副本的目标格式,其中,所述目标格式包括glz、quic和mjepg;当所述目标格式为glz或quic时,按照接收消息的先后顺序通过所述软件解码模块进行解码,并将解码后的解码数据存入对应的glz解码缓存队列或quic解码缓存队列;当所述目标格式为mjepg时,按照接收消息的先后顺序通过所述硬件解码模块调用硬件解码sdk,将待解码数据传递至解码芯片,并在解码完成后发送获取通知,以使其他应用能够基于所述获取通知,获取解码后的解码数据。
35.示例的,继续参见图4,如图4所示,并行流程1:解码端根据接收消息内容分三种类型进行处理 :glz类型数据进入glz解码流程,解码完后进入glz缓存队列,mjpeg类型数据则利用硬件解码能力进行解码,解码完的数据放到jpeg缓存队列,quic类型数据进入quic解码流程,解码完后进入quic缓存队列。
36.在一些实施例中,所述客户端包括图形处理模块,所述客户端通过以下方式对所述第一消息和所述第二消息进行图形处理:确定所述第一消息或所述第二消息的消息类型;当所述消息类型与所述目标格式相匹配时,通过所述处理标识从所述解码端获取对应的解码数据,并基于所述解码数据进行图形处理,得到显示缓存数据,将所述显示缓存数据存储在显示缓存队列中;当所述消息类型与所述目标格式不匹配时,依次从所述处理消息队列中取出对应
的消息并进行图形处理,得到显示缓存数据,将所述显示缓存数据存储在显示缓存队列中,其中,所述显示缓存队列为先进先出队列。
37.示例的,继续参见图4,图形处理并行流程2:图形处理模块依次从处理消息队列中拿出消息,然后根据消息的类型和图像类型分别根据消息的唯一id从glz缓存队列,jpeg缓存队列,quic缓存队列取出相应的解码数据 ,然后才进行相应的图形处理操作,例如处理消息队列里id为001的消息为压缩消息,则从解码端的解码缓存队列中取id为001的解码数据进行关联,然后才到下一步处理。
38.之后图形处理模块对新的处理消息队列进行处理并发送至显示缓存队列。
39.在一些实施例中,所述客户端包括显示模块,所述显示模块通过以下方式进行显示处理:基于垂直消影信号,从所述显示缓存队列中取出所述显示缓存数据;读取并显示所述显示缓存数据。
40.示例的,继续参见图4,如图4所示,显示并行流程3:利用显示器垂直消影的信号,定时从显示缓存队列中取出数据,进行显示,具体的,显示器垂直消影信号一般根据显示帧率来触发,比如显示帧率为60hz,就是表示显示器1秒钟刷新60次,平均16.6ms刷新一下,也就是显示器垂直消影信号16.6ms就会触发一下。
41.在一些实施例中,所述客户端包括cpu,所述解码处理、所述图形处理和所述显示处理中不同的处理过程基于所述cpu的多核性能,其中,所述cpu的核数大于等于处理过程的数量,每个处理过程占用至少一个处理核心。
42.这里,可以根据cpu的核数来决定每个处理过程的占用数量,例如,在一个4核的cpu中,解码处理、图形处理和显示处理可以各占一个处理核心,多出来的一个处理核心可以分配至任意的处理过程,也可以闲置,但总体上,cpu的核数要大于等于处理过程的数量。
43.综上所述,通过本技术实施例具有以下有益效果:通过响应于针对第一消息的接收,对所述第一消息依次进行解码处理、图形处理和显示处理;若在对所述第一消息依次进行解码处理、图形处理和显示处理时,所述客户端接收了第二消息,且解码处理、图形处理和显示处理中任一处理过程对所述第一消息处理完毕后,开始对所述第二消息执行对应的处理过程,这样,由于解码处理、图形处理和显示处理的处理过程相互独立,客户端在接收到消息后可以对消息进行分流,对多条消息进行并行处理(单条消息依然是串行处理),能够提高处理效率,降低延迟。
44.基于同一发明构思,本技术实施例中还提供了与第一实施例中界面显示方法对应的界面显示装置,由于本技术实施例中的装置解决问题的原理与上述界面显示方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
45.如图5所示,图5是本技术实施例提供的界面显示装置500的结构示意图。界面显示装置500包括:第一处理模块501,用于响应于针对第一消息的接收,对所述第一消息依次进行解码处理、图形处理和显示处理;第二处理模块502,用于若在对所述第一消息依次进行解码处理、图形处理和显示处理时,客户端接收了第二消息,且解码处理、图形处理和显示处理中任一处理过程对所述第一消息处理完毕后,开始对所述第二消息执行对应的处理过程,其中,解码处理、图形处
理和显示处理的处理过程相互独立,任一处理过程依赖于前一处理过程的处理结果。
46.本领域技术人员应当理解,图5所示的界面显示装置500中的各单元的实现功能可参照前述界面显示方法的相关描述而理解。图5所示的界面显示装置500中的各单元的功能可通过运行于处理器上的程序而实现,也可通过具体的逻辑电路而实现。
47.在一种可能的实施方式中,第一处理模块501还包括:在所述客户端接收所述第一消息和所述第二消息之后,对所述第一消息和所述第二消息编入预设的处理标识,其中,所述处理标识用于表示所述第一消息和/或所述第二消息的处理顺序,所述处理标识按照消息的接收顺序依次编入。
48.在一种可能的实施方式中,第二处理模块502通过以下方式接收所述第一消息和所述第二消息:通过所述消息接收模块持续接收所述第一消息和所述第二消息;将所述第一消息和所述第二消息按照接收顺序依次存入所述处理消息队列,其中,所述第一消息的顺序先于所述第二消息,所述处理消息队列为先进先出队列;将所述第一消息对应的第一副本发送至解码端,以使所述解码端基于所述第一副本对所述第一消息进行解码处理,且在所述解码端完成对所述第一消息的解码处理后,将所述第二消息对应的第二副本发送至解码端,以使所述解码端基于所述第二副本对所述第二消息进行解码处理。
49.在一种可能的实施方式中,第二处理模块502通过以下方式对所述第一消息和所述第二消息进行解码:确定所述第一副本或所述第二副本的目标格式,其中,所述目标格式包括glz、quic和mjepg;当所述目标格式为glz或quic时,按照接收消息的先后顺序通过所述软件解码模块进行解码,并将解码后的解码数据存入对应的glz解码缓存队列或quic解码缓存队列;当所述目标格式为mjepg时,按照接收消息的先后顺序通过所述硬件解码模块调用硬件解码sdk,将待解码数据传递至解码芯片,并在解码完成后发送获取通知,以使其他应用能够基于所述获取通知,获取解码后的解码数据。
50.在一种可能的实施方式中,第二处理模块502通过以下方式对所述第一消息和所述第二消息进行图形处理:确定所述第一消息或所述第二消息的消息类型;当所述消息类型与所述目标格式相匹配时,通过所述处理标识从所述解码端获取对应的解码数据,并基于所述解码数据进行图形处理,得到显示缓存数据,将所述显示缓存数据存储在显示缓存队列中;当所述消息类型与所述目标格式不匹配时,依次从所述处理消息队列中取出对应的消息并进行图形处理,得到显示缓存数据,将所述显示缓存数据存储在显示缓存队列中,其中,所述显示缓存队列为先进先出队列。
51.在一种可能的实施方式中,第二处理模块502通过以下方式进行显示处理:基于垂直消影信号,从所述显示缓存队列中取出所述显示缓存数据;读取并显示所述显示缓存数据。
52.在一种可能的实施方式中,界面显示装置500包括cpu,所述解码处理、所述图形处
language)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。
61.作为示例,可执行指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。
62.上述计算机可读存储介质通过响应于针对第一消息的接收,对所述第一消息依次进行解码处理、图形处理和显示处理;若在对所述第一消息依次进行解码处理、图形处理和显示处理时,所述客户端接收了第二消息,且解码处理、图形处理和显示处理中任一处理过程对所述第一消息处理完毕后,开始对所述第二消息执行对应的处理过程,这样,由于解码处理、图形处理和显示处理的处理过程相互独立,客户端在接收到消息后可以对消息进行分流,对多条消息进行并行处理(单条消息依然是串行处理),能够提高处理效率,降低延迟。
63.在本技术所提供的几个实施例中,应该理解到,所揭露的方法和电子设备,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
64.所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
65.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
66.所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,平台服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。
67.以上仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以权利要求的保护范围为准。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表