CN116737307B - 一种界面显示方法、装置、电子设备及存储介质 - Google Patents
一种界面显示方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN116737307B CN116737307B CN202311029303.1A CN202311029303A CN116737307B CN 116737307 B CN116737307 B CN 116737307B CN 202311029303 A CN202311029303 A CN 202311029303A CN 116737307 B CN116737307 B CN 116737307B
- Authority
- CN
- China
- Prior art keywords
- message
- processing
- decoding
- display
- queue
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 157
- 230000008569 process Effects 0.000 claims abstract description 106
- 230000004044 response Effects 0.000 claims abstract description 10
- 238000004891 communication Methods 0.000 claims description 4
- 230000008030 elimination Effects 0.000 claims description 4
- 238000003379 elimination reaction Methods 0.000 claims description 4
- 238000004590 computer program Methods 0.000 claims description 2
- 230000015654 memory Effects 0.000 description 14
- 238000010586 diagram Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 5
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 235000013599 spices Nutrition 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- FFBHFFJDDLITSX-UHFFFAOYSA-N benzyl N-[2-hydroxy-4-(3-oxomorpholin-4-yl)phenyl]carbamate Chemical compound OC1=C(NC(=O)OCC2=CC=CC=C2)C=CC(=C1)N1CCOCC1=O FFBHFFJDDLITSX-UHFFFAOYSA-N 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Digital Computer Display Output (AREA)
Abstract
本申请提供了一种界面显示方法、装置、电子设备及存储介质,该方法包括:响应于针对第一消息的接收,对第一消息依次进行解码处理、图形处理和显示处理;若在对第一消息依次进行解码处理、图形处理和显示处理时,客户端接收了第二消息,且解码处理、图形处理和显示处理中任一处理过程对第一消息处理完毕后,开始对第二消息执行对应的处理过程,其中,解码处理、图形处理和显示处理的处理过程相互独立,任一处理过程依赖于前一处理过程的处理结果。本申请能够降低显示延迟。
Description
技术领域
本申请涉及数据处理技术领域,尤其涉及一种界面显示方法、装置、电子设备及存储介质。
背景技术
在云桌面领域,SPICE客户端目前显示界面原理是,服务器端将图形变化数据通过glz、mjpeg、quic等压缩方式发送到客户端显示。客户端显示流程则是,接收压缩数据、解码数据、图形处理、最后显示,其中这些步骤都是串行处理,不能很好利用CPU多核性能,对于嵌入式设备来说,处理效率比较慢,延迟比较大。
对于如何优化客户端解码显示流程,利用硬件解码功能,加速显示,降低延迟,现有技术中缺少响应的解决手段。
发明内容
有鉴于此,本申请实施例提供了一种界面显示方法、装置、电子设备及存储介质,能够降低显示延迟。
本申请实施例的技术方案是这样实现的:
第一方面,本申请实施例提供一种界面显示方法,包括以下步骤:
响应于针对第一消息的接收,对所述第一消息依次进行解码处理、图形处理和显示处理;
若在对所述第一消息依次进行解码处理、图形处理和显示处理时,所述客户端接收了第二消息,且解码处理、图形处理和显示处理中任一处理过程对所述第一消息处理完毕后,开始对所述第二消息执行对应的处理过程,其中,解码处理、图形处理和显示处理的处理过程相互独立,任一处理过程依赖于前一处理过程的处理结果。
在一种可能的实施方式中,所述方法还包括:
在所述客户端接收所述第一消息和所述第二消息之后,对所述第一消息和所述第二消息编入预设的处理标识,其中,所述处理标识用于表示所述第一消息和/或所述第二消息的处理顺序,所述处理标识按照消息的接收顺序依次编入。
在一种可能的实施方式中,所述客户端包括消息接收模块和处理消息队列,所述客户端通过以下方式接收所述第一消息和所述第二消息:
通过所述消息接收模块持续接收所述第一消息和所述第二消息;
将所述第一消息和所述第二消息按照接收顺序依次存入所述处理消息队列,其中,所述第一消息的顺序先于所述第二消息,所述处理消息队列为先进先出队列;
将所述第一消息对应的第一副本发送至解码端,以使所述解码端基于所述第一副本对所述第一消息进行解码处理,且在所述解码端完成对所述第一消息的解码处理后,将所述第二消息对应的第二副本发送至解码端,以使所述解码端基于所述第二副本对所述第二消息进行解码处理。
在一种可能的实施方式中,所述解码端包括软件解码模块和硬件解码模块,所述解码端通过以下方式对所述第一消息和所述第二消息进行解码:
确定所述第一副本或所述第二副本的目标格式,其中,所述目标格式包括glz、quic和mjepg;
当所述目标格式为glz或quic时,按照接收消息的先后顺序通过所述软件解码模块进行解码,并将解码后的解码数据存入对应的glz解码缓存队列或quic解码缓存队列;
当所述目标格式为mjepg时,按照接收消息的先后顺序通过所述硬件解码模块调用硬件解码SDK,将待解码数据传递至解码芯片,并在解码完成后发送获取通知,以使其他应用能够基于所述获取通知,获取解码后的解码数据。
在一种可能的实施方式中,所述客户端包括图形处理模块,所述客户端通过以下方式对所述第一消息和所述第二消息进行图形处理:
确定所述第一消息或所述第二消息的消息类型;
当所述消息类型与所述目标格式相匹配时,通过所述处理标识从所述解码端获取对应的解码数据,并基于所述解码数据进行图形处理,得到显示缓存数据,将所述显示缓存数据存储在显示缓存队列中;
当所述消息类型与所述目标格式不匹配时,依次从所述处理消息队列中取出对应的消息并进行图形处理,得到显示缓存数据,将所述显示缓存数据存储在显示缓存队列中,其中,所述显示缓存队列为先进先出队列。
在一种可能的实施方式中,所述客户端包括显示模块,所述显示模块通过以下方式进行显示处理:
基于垂直消影信号,从所述显示缓存队列中取出所述显示缓存数据;
读取并显示所述显示缓存数据。
在一种可能的实施方式中,所述客户端包括CPU,所述解码处理、所述图形处理和所述显示处理中不同的处理过程基于所述CPU的多核性能,其中,所述CPU的核数大于等于处理过程的数量,每个处理过程占用至少一个处理核心。
第二方面,本申请实施例还提供一种界面显示装置,所述装置包括:
第一处理模块,用于响应于针对第一消息的接收,对所述第一消息依次进行解码处理、图形处理和显示处理;
第二处理模块,用于若在对所述第一消息依次进行解码处理、图形处理和显示处理时,客户端接收了第二消息,且解码处理、图形处理和显示处理中任一处理过程对所述第一消息处理完毕后,开始对所述第二消息执行对应的处理过程,其中,解码处理、图形处理和显示处理的处理过程相互独立,任一处理过程依赖于前一处理过程的处理结果。
第三方面,本申请实施例还提供一种电子设备,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行第一方面任一项所述的界面显示方法。
第四方面,本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行第一方面任一项所述的界面显示方法。
本申请实施例具有以下有益效果:
通过响应于针对第一消息的接收,对所述第一消息依次进行解码处理、图形处理和显示处理;若在对所述第一消息依次进行解码处理、图形处理和显示处理时,所述客户端接收了第二消息,且解码处理、图形处理和显示处理中任一处理过程对所述第一消息处理完毕后,开始对所述第二消息执行对应的处理过程,这样,由于解码处理、图形处理和显示处理的处理过程相互独立,客户端在接收到消息后可以对消息进行分流,对多条消息进行并行处理(单条消息依然是串行处理),能够提高处理效率,降低延迟。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1是本申请实施例提供的步骤S101-S102的流程示意图;
图2是现有技术中的串行显示流程图;
图3是本申请实施例提供的并行显示流程图;
图4是本申请实施例提供并行解码显示原理图;
图5是本申请实施例提供的界面显示装置的结构示意图;
图6是本申请实施例提供的电子设备的组成结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,应当理解,本申请中附图仅起到说明和描述的目的,并不用于限定本申请的保护范围。另外,应当理解,示意性的附图并未按实物比例绘制。本申请中使用的流程图示出了根据本申请的一些实施例实现的操作。应该理解,流程图的操作可以不按顺序实现,没有逻辑的上下文关系的步骤可以反转顺序或者同时实施。此外,本领域技术人员在本申请内容的指引下,可以向流程图添加一个或多个其他操作,也可以从流程图中移除一个或多个操作。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
另外,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
在以下的描述中,所涉及的术语“第一\第二\第三”仅仅是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。
需要说明的是,本申请实施例中将会用到术语“包括”,用于指出其后所声明的特征的存在,但并不排除增加其它的特征。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语是为了描述本申请实施例的目的,不是在限制本申请。
参见图1,图1是本申请实施例提供的界面显示方法步骤S101-S102的流程示意图,将结合图1示出的步骤S101-S102进行说明。
步骤S101,响应于针对第一消息的接收,对所述第一消息依次进行解码处理、图形处理和显示处理;
步骤S102,若在对所述第一消息依次进行解码处理、图形处理和显示处理时,所述客户端接收了第二消息,且解码处理、图形处理和显示处理中任一处理过程对所述第一消息处理完毕后,开始对所述第二消息执行对应的处理过程,其中,解码处理、图形处理和显示处理的处理过程相互独立,任一处理过程依赖于前一处理过程的处理结果。
上述界面显示方法,通过响应于针对第一消息的接收,对所述第一消息依次进行解码处理、图形处理和显示处理;若在对所述第一消息依次进行解码处理、图形处理和显示处理时,所述客户端接收了第二消息,且解码处理、图形处理和显示处理中任一处理过程对所述第一消息处理完毕后,开始对所述第二消息执行对应的处理过程,这样,由于解码处理、图形处理和显示处理的处理过程相互独立,客户端在接收到消息后可以对消息进行分流,对多条消息进行并行处理(单条消息依然是串行处理),能够提高处理效率,降低延迟。
下面分别对本申请实施例的上述示例性的各步骤进行说明。
在步骤S101中,响应于针对第一消息的接收,对所述第一消息依次进行解码处理、图形处理和显示处理。
在步骤S102中,若在对所述第一消息依次进行解码处理、图形处理和显示处理时,所述客户端接收了第二消息,且解码处理、图形处理和显示处理中任一处理过程对所述第一消息处理完毕后,开始对所述第二消息执行对应的处理过程,其中,解码处理、图形处理和显示处理的处理过程相互独立,任一处理过程依赖于前一处理过程的处理结果。
请参见图2,图2是现有技术中的串行显示流程图,如图2所示,现有技术中SPICE客户端目前显示界面原理是,服务器端将图形变化数据通过glz、mjpeg、quic等压缩方式发送到客户端显示。客户端显示流程则是,接收压缩数据(接收)、解码数据(解码)、图形处理(处理)、最后显示(显示),其中这些步骤都是串行处理,不能很好利用CPU多核性能,对于嵌入式设备来说,处理效率比较慢,延迟比较大。
请参见图3,图3是本申请实施例提供的并行显示流程图,如图3所示,客户端接收到消息后分为三个流程进行处理,解码流程(解码)、图形处理流程(处理)、显示流程(显示),三个流程并行工作,三个流程会有一个时间差,这个时间差即接收1条消息的时间。比如接收到1条消息(接收1)后进行解码(解码1),解码后转交给处理流程(处理1),随即进行第2条消息的接收(接收2),第2条消息的接收不需要和现有技术一样等待第1条消息处理并显示完后进行,同时在处理流程处理完后(处理1),即可进行对应的显示(显示1)。以此连续工作即可做到三个流程并行,缩短显示时间,降低延时。(多条消息做到并行处理,但是单条消息依然是串行处理)。
在一些实施例中,所述方法还包括:
在所述客户端接收所述第一消息和所述第二消息之后,对所述第一消息和所述第二消息编入预设的处理标识,其中,所述处理标识用于表示所述第一消息和/或所述第二消息的处理顺序,所述处理标识按照消息的接收顺序依次编入。
在一些实施例中,所述客户端包括消息接收模块和处理消息队列,所述客户端通过以下方式接收所述第一消息和所述第二消息:
通过所述消息接收模块持续接收所述第一消息和所述第二消息;
将所述第一消息和所述第二消息按照接收顺序依次存入所述处理消息队列,其中,所述第一消息的顺序先于所述第二消息,所述处理消息队列为先进先出队列;
将所述第一消息对应的第一副本发送至解码端,以使所述解码端基于所述第一副本对所述第一消息进行解码处理,且在所述解码端完成对所述第一消息的解码处理后,将所述第二消息对应的第二副本发送至解码端,以使所述解码端基于所述第二副本对所述第二消息进行解码处理。
示例的,参见图4,图4是本申请实施例提供并行解码显示原理图,将原先接收解码处理显示串行流程分三个流程并行化,其中解码流程命名为并行流程1,图形处理命名为并行流程2,显示命名为并行流程3。消息接收模块接收到消息后对消息编入唯一的ID(001、002、003……),消息接收模块持续不断地接收消息,并将收到的所有消息按照顺序发送至处理消息队列,同时将压缩消息以副本的形式发送至解码端。
在一些实施例中,所述解码端包括软件解码模块和硬件解码模块,所述解码端通过以下方式对所述第一消息和所述第二消息进行解码:
确定所述第一副本或所述第二副本的目标格式,其中,所述目标格式包括glz、quic和mjepg;
当所述目标格式为glz或quic时,按照接收消息的先后顺序通过所述软件解码模块进行解码,并将解码后的解码数据存入对应的glz解码缓存队列或quic解码缓存队列;
当所述目标格式为mjepg时,按照接收消息的先后顺序通过所述硬件解码模块调用硬件解码SDK,将待解码数据传递至解码芯片,并在解码完成后发送获取通知,以使其他应用能够基于所述获取通知,获取解码后的解码数据。
示例的,继续参见图4,如图4所示,并行流程1:解码端根据接收消息内容分三种类型进行处理 :glz类型数据进入glz解码流程,解码完后进入glz缓存队列,Mjpeg类型数据则利用硬件解码能力进行解码,解码完的数据放到jpeg缓存队列,Quic类型数据进入quic解码流程,解码完后进入quic缓存队列。
在一些实施例中,所述客户端包括图形处理模块,所述客户端通过以下方式对所述第一消息和所述第二消息进行图形处理:
确定所述第一消息或所述第二消息的消息类型;
当所述消息类型与所述目标格式相匹配时,通过所述处理标识从所述解码端获取对应的解码数据,并基于所述解码数据进行图形处理,得到显示缓存数据,将所述显示缓存数据存储在显示缓存队列中;
当所述消息类型与所述目标格式不匹配时,依次从所述处理消息队列中取出对应的消息并进行图形处理,得到显示缓存数据,将所述显示缓存数据存储在显示缓存队列中,其中,所述显示缓存队列为先进先出队列。
示例的,继续参见图4,图形处理并行流程2:图形处理模块依次从处理消息队列中拿出消息,然后根据消息的类型和图像类型分别根据消息的唯一ID从glz缓存队列,jpeg缓存队列,quic缓存队列取出相应的解码数据 ,然后才进行相应的图形处理操作,例如处理消息队列里ID为001的消息为压缩消息,则从解码端的解码缓存队列中取ID为001的解码数据进行关联,然后才到下一步处理。
之后图形处理模块对新的处理消息队列进行处理并发送至显示缓存队列。
在一些实施例中,所述客户端包括显示模块,所述显示模块通过以下方式进行显示处理:
基于垂直消影信号,从所述显示缓存队列中取出所述显示缓存数据;
读取并显示所述显示缓存数据。
示例的,继续参见图4,如图4所示,显示并行流程3:利用显示器垂直消影的信号,定时从显示缓存队列中取出数据,进行显示,具体的,显示器垂直消影信号一般根据显示帧率来触发,比如显示帧率为60hz,就是表示显示器1秒钟刷新60次,平均16.6ms刷新一下,也就是显示器垂直消影信号16.6ms就会触发一下。
在一些实施例中,所述客户端包括CPU,所述解码处理、所述图形处理和所述显示处理中不同的处理过程基于所述CPU的多核性能,其中,所述CPU的核数大于等于处理过程的数量,每个处理过程占用至少一个处理核心。
这里,可以根据CPU的核数来决定每个处理过程的占用数量,例如,在一个4核的CPU中,解码处理、图形处理和显示处理可以各占一个处理核心,多出来的一个处理核心可以分配至任意的处理过程,也可以闲置,但总体上,CPU的核数要大于等于处理过程的数量。
综上所述,通过本申请实施例具有以下有益效果:
通过响应于针对第一消息的接收,对所述第一消息依次进行解码处理、图形处理和显示处理;若在对所述第一消息依次进行解码处理、图形处理和显示处理时,所述客户端接收了第二消息,且解码处理、图形处理和显示处理中任一处理过程对所述第一消息处理完毕后,开始对所述第二消息执行对应的处理过程,这样,由于解码处理、图形处理和显示处理的处理过程相互独立,客户端在接收到消息后可以对消息进行分流,对多条消息进行并行处理(单条消息依然是串行处理),能够提高处理效率,降低延迟。
基于同一发明构思,本申请实施例中还提供了与第一实施例中界面显示方法对应的界面显示装置,由于本申请实施例中的装置解决问题的原理与上述界面显示方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
如图5所示,图5是本申请实施例提供的界面显示装置500的结构示意图。界面显示装置500包括:
第一处理模块501,用于响应于针对第一消息的接收,对所述第一消息依次进行解码处理、图形处理和显示处理;
第二处理模块502,用于若在对所述第一消息依次进行解码处理、图形处理和显示处理时,客户端接收了第二消息,且解码处理、图形处理和显示处理中任一处理过程对所述第一消息处理完毕后,开始对所述第二消息执行对应的处理过程,其中,解码处理、图形处理和显示处理的处理过程相互独立,任一处理过程依赖于前一处理过程的处理结果。
本领域技术人员应当理解,图5所示的界面显示装置500中的各单元的实现功能可参照前述界面显示方法的相关描述而理解。图5所示的界面显示装置500中的各单元的功能可通过运行于处理器上的程序而实现,也可通过具体的逻辑电路而实现。
在一种可能的实施方式中,第一处理模块501还包括:
在所述客户端接收所述第一消息和所述第二消息之后,对所述第一消息和所述第二消息编入预设的处理标识,其中,所述处理标识用于表示所述第一消息和/或所述第二消息的处理顺序,所述处理标识按照消息的接收顺序依次编入。
在一种可能的实施方式中,第二处理模块502通过以下方式接收所述第一消息和所述第二消息:
通过所述消息接收模块持续接收所述第一消息和所述第二消息;
将所述第一消息和所述第二消息按照接收顺序依次存入所述处理消息队列,其中,所述第一消息的顺序先于所述第二消息,所述处理消息队列为先进先出队列;
将所述第一消息对应的第一副本发送至解码端,以使所述解码端基于所述第一副本对所述第一消息进行解码处理,且在所述解码端完成对所述第一消息的解码处理后,将所述第二消息对应的第二副本发送至解码端,以使所述解码端基于所述第二副本对所述第二消息进行解码处理。
在一种可能的实施方式中,第二处理模块502通过以下方式对所述第一消息和所述第二消息进行解码:
确定所述第一副本或所述第二副本的目标格式,其中,所述目标格式包括glz、quic和mjepg;
当所述目标格式为glz或quic时,按照接收消息的先后顺序通过所述软件解码模块进行解码,并将解码后的解码数据存入对应的glz解码缓存队列或quic解码缓存队列;
当所述目标格式为mjepg时,按照接收消息的先后顺序通过所述硬件解码模块调用硬件解码SDK,将待解码数据传递至解码芯片,并在解码完成后发送获取通知,以使其他应用能够基于所述获取通知,获取解码后的解码数据。
在一种可能的实施方式中,第二处理模块502通过以下方式对所述第一消息和所述第二消息进行图形处理:
确定所述第一消息或所述第二消息的消息类型;
当所述消息类型与所述目标格式相匹配时,通过所述处理标识从所述解码端获取对应的解码数据,并基于所述解码数据进行图形处理,得到显示缓存数据,将所述显示缓存数据存储在显示缓存队列中;
当所述消息类型与所述目标格式不匹配时,依次从所述处理消息队列中取出对应的消息并进行图形处理,得到显示缓存数据,将所述显示缓存数据存储在显示缓存队列中,其中,所述显示缓存队列为先进先出队列。
在一种可能的实施方式中,第二处理模块502通过以下方式进行显示处理:
基于垂直消影信号,从所述显示缓存队列中取出所述显示缓存数据;
读取并显示所述显示缓存数据。
在一种可能的实施方式中,界面显示装置500包括CPU,所述解码处理、所述图形处理和所述显示处理中不同的处理过程基于所述CPU的多核性能,其中,所述CPU的核数大于等于处理过程的数量,每个处理过程占用至少一个处理核心。
上述界面显示装置通过响应于针对第一消息的接收,对所述第一消息依次进行解码处理、图形处理和显示处理;若在对所述第一消息依次进行解码处理、图形处理和显示处理时,所述客户端接收了第二消息,且解码处理、图形处理和显示处理中任一处理过程对所述第一消息处理完毕后,开始对所述第二消息执行对应的处理过程,这样,由于解码处理、图形处理和显示处理的处理过程相互独立,客户端在接收到消息后可以对消息进行分流,对多条消息进行并行处理(单条消息依然是串行处理),能够提高处理效率,降低延迟。
如图6所示,图6为本申请实施例提供的电子设备600的组成结构示意图,所述电子设备600,包括:
处理器601、存储介质602和总线603,所述存储介质602存储有所述处理器601可执行的机器可读指令,当电子设备600运行时,所述处理器601与所述存储介质602之间通过总线603通信,所述处理器601执行所述机器可读指令,以执行本申请实施例所述的界面显示方法的步骤。
实际应用时,所述电子设备600中的各个组件通过总线603耦合在一起。可理解,总线603用于实现这些组件之间的连接通信。总线603除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图6中将各种总线都标为总线603。
上述电子设备通过响应于针对第一消息的接收,对所述第一消息依次进行解码处理、图形处理和显示处理;若在对所述第一消息依次进行解码处理、图形处理和显示处理时,所述客户端接收了第二消息,且解码处理、图形处理和显示处理中任一处理过程对所述第一消息处理完毕后,开始对所述第二消息执行对应的处理过程,这样,由于解码处理、图形处理和显示处理的处理过程相互独立,客户端在接收到消息后可以对消息进行分流,对多条消息进行并行处理(单条消息依然是串行处理),能够提高处理效率,降低延迟。
本申请实施例还提供了一种计算机可读存储介质,所述存储介质存储有可执行指令,当所述可执行指令被至少一个处理器601执行时,实现本申请实施例所述的界面显示方法。
在一些实施例中,存储介质可以是磁性随机存取存储器(FRAM,FerromagneticRandom Access Memory)、只读存储器(ROM,Read Only Memory)、可编程只读存储器(PROM,Programmable Read-Only Memory)、可擦除可编程只读存储器(EPROM,ErasableProgrammable Read-Only Memory)、电可擦除可编程只读存储器(EEPROM,ElectricallyErasable Programmable Read-Only Memory)、快闪存储器(Flash Memory)、磁表面存储器、光盘、或只读光盘(CD-ROM,Compact Disc Read-Only Memory)等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
作为示例,可执行指令可以但不一定对应于文件系统中的文件,可以被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(HTML,HyperTextMarkupLanguage)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。
作为示例,可执行指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。
上述计算机可读存储介质通过响应于针对第一消息的接收,对所述第一消息依次进行解码处理、图形处理和显示处理;若在对所述第一消息依次进行解码处理、图形处理和显示处理时,所述客户端接收了第二消息,且解码处理、图形处理和显示处理中任一处理过程对所述第一消息处理完毕后,开始对所述第二消息执行对应的处理过程,这样,由于解码处理、图形处理和显示处理的处理过程相互独立,客户端在接收到消息后可以对消息进行分流,对多条消息进行并行处理(单条消息依然是串行处理),能够提高处理效率,降低延迟。
在本申请所提供的几个实施例中,应该理解到,所揭露的方法和电子设备,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,平台服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (7)
1.一种界面显示方法,其特征在于,应用于客户端,包括以下步骤:
响应于针对第一消息的接收,对所述第一消息依次进行解码处理、图形处理和显示处理;
在所述客户端接收所述第一消息和第二消息之后,对所述第一消息和所述第二消息编入预设的处理标识,其中,所述处理标识用于表示所述第一消息和/或所述第二消息的处理顺序,所述处理标识按照消息的接收顺序依次编入;
若在对所述第一消息依次进行解码处理、图形处理和显示处理时,所述客户端接收了第二消息,且解码处理、图形处理和显示处理中任一处理过程对所述第一消息处理完毕后,开始对所述第二消息执行对应的处理过程,其中,解码处理、图形处理和显示处理的处理过程相互独立,任一处理过程依赖于前一处理过程的处理结果;
所述客户端包括消息接收模块和处理消息队列,所述客户端通过以下方式接收所述第一消息和所述第二消息:
通过所述消息接收模块持续接收所述第一消息和所述第二消息;
将所述第一消息和所述第二消息按照接收顺序依次存入所述处理消息队列,其中,所述第一消息的顺序先于所述第二消息,所述处理消息队列为先进先出队列;
将所述第一消息对应的第一副本发送至解码端,以使所述解码端基于所述第一副本对所述第一消息进行解码处理,且在所述解码端完成对所述第一消息的解码处理后,将所述第二消息对应的第二副本发送至解码端,以使所述解码端基于所述第二副本对所述第二消息进行解码处理;
所述解码端包括软件解码模块和硬件解码模块,所述解码端通过以下方式对所述第一消息和所述第二消息进行解码:
确定所述第一副本或所述第二副本的目标格式,其中,所述目标格式包括glz、quic和mjepg;
当所述目标格式为glz或quic时,按照接收消息的先后顺序通过所述软件解码模块进行解码,并将解码后的解码数据存入对应的glz解码缓存队列或quic解码缓存队列;
当所述目标格式为mjepg时,按照接收消息的先后顺序通过所述硬件解码模块调用硬件解码SDK,将待解码数据传递至解码芯片,并在解码完成后发送获取通知,以使其他应用能够基于所述获取通知,获取解码后的解码数据。
2.根据权利要求1所述的方法,其特征在于,所述客户端包括图形处理模块,所述客户端通过以下方式对所述第一消息和所述第二消息进行图形处理:
确定所述第一消息或所述第二消息的消息类型;
当所述消息类型与所述目标格式相匹配时,通过所述处理标识从所述解码端获取对应的解码数据,并基于所述解码数据进行图形处理,得到显示缓存数据,将所述显示缓存数据存储在显示缓存队列中;
当所述消息类型与所述目标格式不匹配时,依次从所述处理消息队列中取出对应的消息并进行图形处理,得到显示缓存数据,将所述显示缓存数据存储在显示缓存队列中,其中,所述显示缓存队列为先进先出队列。
3.根据权利要求2所述的方法,其特征在于,所述客户端包括显示模块,所述显示模块通过以下方式进行显示处理:
基于垂直消影信号,从所述显示缓存队列中取出所述显示缓存数据;
读取并显示所述显示缓存数据。
4.根据权利要求1所述的方法,其特征在于,所述客户端包括CPU,所述解码处理、所述图形处理和所述显示处理中不同的处理过程基于所述CPU的多核性能,其中,所述CPU的核数大于等于处理过程的数量,每个处理过程占用至少一个处理核心。
5.一种界面显示装置,其特征在于,所述装置包括:
第一处理模块,用于响应于针对第一消息的接收,对所述第一消息依次进行解码处理、图形处理和显示处理;在客户端接收所述第一消息和第二消息之后,对所述第一消息和所述第二消息编入预设的处理标识,其中,所述处理标识用于表示所述第一消息和/或所述第二消息的处理顺序,所述处理标识按照消息的接收顺序依次编入;
第二处理模块,用于若在对所述第一消息依次进行解码处理、图形处理和显示处理时,客户端接收了第二消息,且解码处理、图形处理和显示处理中任一处理过程对所述第一消息处理完毕后,开始对所述第二消息执行对应的处理过程,其中,解码处理、图形处理和显示处理的处理过程相互独立,任一处理过程依赖于前一处理过程的处理结果;
所述客户端包括消息接收模块和处理消息队列,所述客户端通过以下方式接收所述第一消息和所述第二消息:
通过所述消息接收模块持续接收所述第一消息和所述第二消息;
将所述第一消息和所述第二消息按照接收顺序依次存入所述处理消息队列,其中,所述第一消息的顺序先于所述第二消息,所述处理消息队列为先进先出队列;
将所述第一消息对应的第一副本发送至解码端,以使所述解码端基于所述第一副本对所述第一消息进行解码处理,且在所述解码端完成对所述第一消息的解码处理后,将所述第二消息对应的第二副本发送至解码端,以使所述解码端基于所述第二副本对所述第二消息进行解码处理;
所述解码端包括软件解码模块和硬件解码模块,所述解码端通过以下方式对所述第一消息和所述第二消息进行解码:
确定所述第一副本或所述第二副本的目标格式,其中,所述目标格式包括glz、quic和mjepg;
当所述目标格式为glz或quic时,按照接收消息的先后顺序通过所述软件解码模块进行解码,并将解码后的解码数据存入对应的glz解码缓存队列或quic解码缓存队列;
当所述目标格式为mjepg时,按照接收消息的先后顺序通过所述硬件解码模块调用硬件解码SDK,将待解码数据传递至解码芯片,并在解码完成后发送获取通知,以使其他应用能够基于所述获取通知,获取解码后的解码数据。
6.一种电子设备,其特征在于,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行如权利要求1至4任一项所述的界面显示方法。
7.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如权利要求1至4任一项所述的界面显示方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311029303.1A CN116737307B (zh) | 2023-08-16 | 2023-08-16 | 一种界面显示方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311029303.1A CN116737307B (zh) | 2023-08-16 | 2023-08-16 | 一种界面显示方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116737307A CN116737307A (zh) | 2023-09-12 |
CN116737307B true CN116737307B (zh) | 2023-12-01 |
Family
ID=87919078
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311029303.1A Active CN116737307B (zh) | 2023-08-16 | 2023-08-16 | 一种界面显示方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116737307B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010006793A1 (de) * | 2008-07-16 | 2010-01-21 | Pepperl+Fuchs Gmbh | Umsetzen einer remote desktop protocol session und deren darstellung auf mehreren bildschirmen |
CN104660687A (zh) * | 2015-02-02 | 2015-05-27 | 上海视聪网络信息技术有限公司 | 虚拟桌面显示的实现方法和系统 |
CN107329838A (zh) * | 2017-05-23 | 2017-11-07 | 努比亚技术有限公司 | 一种业务交互方法、终端和计算机可读存储介质 |
CN112860428A (zh) * | 2019-11-28 | 2021-05-28 | 华为技术有限公司 | 一种高能效的显示处理方法及设备 |
CN114860401A (zh) * | 2022-05-07 | 2022-08-05 | 中国电信股份有限公司 | 异构云桌面调度系统、方法、服务系统、装置及介质 |
CN116048757A (zh) * | 2023-01-05 | 2023-05-02 | 北京达佳互联信息技术有限公司 | 任务处理方法、装置、电子设备和存储介质 |
-
2023
- 2023-08-16 CN CN202311029303.1A patent/CN116737307B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010006793A1 (de) * | 2008-07-16 | 2010-01-21 | Pepperl+Fuchs Gmbh | Umsetzen einer remote desktop protocol session und deren darstellung auf mehreren bildschirmen |
CN104660687A (zh) * | 2015-02-02 | 2015-05-27 | 上海视聪网络信息技术有限公司 | 虚拟桌面显示的实现方法和系统 |
CN107329838A (zh) * | 2017-05-23 | 2017-11-07 | 努比亚技术有限公司 | 一种业务交互方法、终端和计算机可读存储介质 |
CN112860428A (zh) * | 2019-11-28 | 2021-05-28 | 华为技术有限公司 | 一种高能效的显示处理方法及设备 |
CN114860401A (zh) * | 2022-05-07 | 2022-08-05 | 中国电信股份有限公司 | 异构云桌面调度系统、方法、服务系统、装置及介质 |
CN116048757A (zh) * | 2023-01-05 | 2023-05-02 | 北京达佳互联信息技术有限公司 | 任务处理方法、装置、电子设备和存储介质 |
Non-Patent Citations (2)
Title |
---|
The Meteorological Cloud Desktop System of CMA Meteorological Observation Center;Yimeng Wang;2019 International Conference on Meteorology Observations;213-217 * |
基于GPU的战场态势实时处理与显示技术优化;张志明;牟海波;;指挥控制与仿真;第39卷(第03期);115-120 * |
Also Published As
Publication number | Publication date |
---|---|
CN116737307A (zh) | 2023-09-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105338358A (zh) | 对图像进行解码的方法及装置 | |
CN111681157B (zh) | 图像渲染方法及系统 | |
CN111865708A (zh) | 物联网系统的性能测试方法、平台、设备及存储介质 | |
CN114327318A (zh) | 云桌面的显示方法和系统 | |
CN111046245A (zh) | 多源异构数据源融合计算方法、系统、设备和存储介质 | |
CN116737307B (zh) | 一种界面显示方法、装置、电子设备及存储介质 | |
CN111476858B (zh) | 一种基于WebGL的2d引擎渲染方法、装置及设备 | |
US11195248B2 (en) | Method and apparatus for processing pixel data of a video frame | |
CN111798365B (zh) | 深度抗锯齿数据读取方法、装置、设备和存储介质 | |
CN110012003B (zh) | 一种云应用抓屏方法和装置 | |
CN109067864B (zh) | 通知消息推送方法、装置及电子设备 | |
CN116263982B (zh) | 图形处理器、系统、方法、电子装置及设备 | |
CN111858624A (zh) | 一种车辆使用情况更新方法及装置 | |
CN115988265A (zh) | 一种显示画面的渲染方法、装置和终端设备 | |
CN111338932B (zh) | 图片渲染方法、装置和电子设备 | |
CN113157226A (zh) | 远程数据的显示方法、装置、设备及机器可读存储介质 | |
CN112416489A (zh) | 工程图纸显示方法及相关装置 | |
CN110837589A (zh) | 一种信息展示方法及装置 | |
CN110598106B (zh) | 资源信息的推送方法及装置、存储介质、电子设备 | |
CN110673931A (zh) | 单证合成的分布式计算方法、单证合成系统及其控制装置 | |
CN110796587A (zh) | Drawcall调用处理方法、装置、终端及存储介质 | |
CN116681575B (zh) | 图形处理单元、图形渲染方法、存储介质、终端设备 | |
CN109983435A (zh) | 图形处理方法及相关装置和设备 | |
CN116132423B (zh) | 一种数据传输方法、发送端、接收端、装置及存储介质 | |
CN115661316A (zh) | 点云数据渲染方法、装置、设备及存储介质 |
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 |