CN110456994B - 一种远程显示***及方法 - Google Patents
一种远程显示***及方法 Download PDFInfo
- Publication number
- CN110456994B CN110456994B CN201910654391.1A CN201910654391A CN110456994B CN 110456994 B CN110456994 B CN 110456994B CN 201910654391 A CN201910654391 A CN 201910654391A CN 110456994 B CN110456994 B CN 110456994B
- Authority
- CN
- China
- Prior art keywords
- display
- layer
- module
- control information
- data
- 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
Images
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/1454—Digital output to display device ; Cooperation and interconnection of the display device with other functional units involving copying of the display data of a local workstation or window to a remote workstation or window so that an actual copy of the data is displayed simultaneously on two or more displays, e.g. teledisplay
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Liquid Crystal Display Device Control (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
一种远程显示***,包括,第一显示***、第二显示***,所述第一显示***,其将应用渲染的显示数据按照显示层进行存储,将解析出的每一显示层的物理地址与层显示控制信息一起发送给所述第二显示***;所述第二显示***,其将接收到的每一显示层的物理地址映射为虚拟地址空间,获取每一显示层的显示数据,并根据层显示控制信息对所有层的显示数据进行合成并进行显示。本发明还提供一种远程显示方法,直接把应用需要投影的显示数据按照显示层映射到远端,同时把各个显示层应该如何合成的信息映射到远端操作***,远端操作***直接根据上述信息进行合成后上屏显示,免除了数据的多次拷贝,降低了***带宽需求。
Description
技术领域
本发明实施例涉及图像显示及传输技术领域,尤其涉及一种远程显示***及方法。
背景技术
车载***通常包括车载液晶仪表***和车载中控操作***,随着集成电路技术的提高,车载液晶仪表***和车载中控操作***有集成化趋势,多个具有不同功能的***会运行在单一芯片。
在车载单芯片方案中,常常需要把一个操作***中应用的显示数据投影到另一操作***控制的显示器上,比如把车载中控导航数据投影到车载液晶仪表显示器上。传统的实现方案一般会在车载中控操作***中把应用显示数据图层进行合成后发送给液晶仪表操作***,液晶仪表操作***接收到合成好的图层数据后交由显示控制器进行显示。在上述远程显示过程中,由于涉及到显存在两个操作***间的传递,涉及到多次数据合成写入读出,会显著增加***带宽需求,进而可能影响到显示帧率,使得***显示卡顿。
发明内容
为了解决现有技术存在的不足,本发明提供一种远程显示***及方法,将一个操作***中应用显示的显示层数据通过共享内存方式映射到另一操作***,减少***的带宽需求。
为实现上述目的,本发明提供的远程显示***,包括,第一显示***、第二显示***,其中,
所述第一显示***,其将应用渲染的显示数据按照显示层进行存储,将解析出的每一显示层的物理地址与层显示控制信息一起发送给所述第二显示***;
所述第二显示***,其将接收到的每一显示层的物理地址映射为虚拟地址空间,获取每一显示层的显示数据,并根据层显示控制信息对所有层的显示数据进行合成并进行显示。
进一步地,所述层显示控制信息,包括,像素格式信息、显示位置信息、层与层先后顺序关系以及透明度。
进一步地,所述第一显示***,进一步包括,应用模块、共享内存模块,以及第一映射模块,其中,
所述应用模块,其将渲染好的显示数据按照显示层存入所述共享内存模块中;
所述共享内存模块,其将应用渲染好的显示数据按照显示层进行存储;
所述第一映射模块,其将每一显示层的虚拟地址空间进行解析,并将解析出的物理地址与层显示控制信息一起映射到所述第二显示***。
更进一步地,所述第二显示***,进一步包括,第二映射模块、显示合成模块,以及显示模块,其中,
所述第二映射模块,其从所述第一显示***接收每一显示层的物理地址及层显示控制信息,将映射每一显示层的物理地址到虚拟地址空间;将所述虚拟地址空间及层显示控制信息发送到所述显示合成模块;
所述显示合成模块,其从所述虚拟地址空间获取每一显示层的显示数据,并根据层显示控制信息将所有层的显示数据合成为屏显图像发送给所述显示模块;
所述显示模块,其接收所述显示合成模块发送的屏显图像并进行显示。
为实现上述目的,本发明还提供了一种远程显示方法,包括以下步骤:
第一显示***将显示数据按照显示层进行存储;
将解析出的物理地址及层显示控制信息发送给第二显示***;
将物理地址映射为虚拟地址空间获取每一显示层的显示数据,根据所述层显示控制信息,对显示数据进行合成显示。
进一步地,所述层显示控制信息,包括,像素格式信息、显示位置信息、层与层先后顺序关系以及透明度。
进一步地,所述第一显示***将显示数据按照显示层进行存储的步骤,包括,
应用模块将渲染的显示数据按照显示层存储到共享内存模块;
所述共享内存模块将每一显示层虚拟地址空间及层显示控制信息发送给第一映射模块。
更进一步地,所述将解析出的物理地址及层显示控制信息发送给第二显示***的步骤,包括,
第一映射模块根据每一显示层的虚拟地址空间解析出物理地址;
将所述物理地址及层显示控制信息发送给所述第二显示***。
为实现上述目的,本发明还提供一种计算机可读存储介质,其上存储有程序,所述程序可被处理器执行,实现上述远程显示方法的步骤。
本发明提供的远程显示***及方法,直接把应用需要投影的显示数据按照显示层(layer)映射到远端,同时把各个显示层(layer)应该如何合成的层显示控制信息映射到远端。远端显示***直接根据上述信息进行合成后上屏显示,免除了数据的多次拷贝,降低了***带宽需求。相对于现有技术,本发明的技术效果在于,降低远程显示(remote display)场景对带宽的需求;应用本发明后远程显示(remote display)与本地显示(localdisplay)一样, 不会带来额外的单宽需求;提升性能,减少由于显示帧率变慢导致的客户体验下降;降级***功耗,低的带宽开销同时也降低***功耗。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,并与本发明的内容和实施例一起,用于解释本发明,并不构成对本发明的限制。在附图中:
图1为根据本发明的远程显示***架构图;
图2为根据本发明的一个实施例一结构示意图;
图3为根据本发明的远程显示系方法流程图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的实施例仅用于说明和解释本发明,并不用于限定本发明。
本发明的实施例中,直接将应用需要投影的显示数据按照显示层存储的物理地址映射到远端, 同时把各个显示层应该如何合成的层显示控制信息映射到远端,远端操作***直接根据上述信息进行合成后上屏显示,免除了数据的多次拷贝。
被投影的应用往往带有多个显示层(layer), 应用使用2D/3D技术进行渲染,把渲染好的数据按照显示层(layer)放入不同的显存, 显存在虚拟地址空间是连续,但是在物理地址上可能是不连续的,因此由本地解析这些不同显示层(layer)的显存的物理地址并且通过操作***间事件通道(event channel)传递给远端操作***。远端操作***获取上述地址信息后重新映射这些显示层(layer)的物理地址到连续的虚拟地址空间,这样远端就能够正确获取这些需要合成的显示数据。
图1为根据本发明的远程显示***架构图,如图1所示,本发明的远程显示***,包括,第一显示***10、第二显示***20,其中,
第一显示***10,将应用渲染的显示数据按照显示层进行保存,从连续的虚拟地址空间中解析出每一显示层的物理地址(物理地址可能不是连续的),并将每一显示层的物理地址和层显示控制信息一起映射到第二显示***20。
第二显示***20,其接收第一显示***10发送的每一显示层的物理地址和层显示控制信息,将每一显示层的物理地址映射为连续的虚拟地址空间,从连续的虚拟地址空间获取每一显示层的显示数据,并根据层显示控制信息将所有层的显示数据合成为合成为屏显图像后进行显示。
层显示控制信息,包括,
像素格式(pixel format)信息;
显示位置信息:显示宽度(content width)/显示高度(content height)/显示xoffset/y offset/display width/display height;
层与层先后顺序关系(z-order);
透明度(Alpha)。
第一显示***10,进一步包括,应用模块101、共享内存模块102,以及第一映射模块103,
应用模块101,其利用2D/3D技术进行渲染,将渲染好的显示数据按照显示层(layer)存入共享内存模块102中;
共享内存模块102,其用于将应用渲染好的显示数据按照显示层进行存储,并将每一显示层的虚拟地址空间及层显示控制信息发送给第一映射模块103;
第一映射模块103,其将每一显示层的虚拟地址空间进行解析,并将解析出的每一显示层的物理地址及层显示控制信息映射到第二显示***20。
第二显示***20,进一步包括,第二映射模块201、显示合成模块202,以及显示模块203,
第二映射模块201,其从第一显示***10接收每一显示层的物理地址及层显示控制信息,将映射每一显示层的物理地址到每一显示层的虚拟地址空间;将每一显示层的虚拟地址空间及层显示控制信息发送到显示合成模块202;
显示合成模块202,其从每一显示层的虚拟地址空间获取每一显示层的显示数据,并根据层显示控制信息将所有层的显示数据合成为屏显图像发送给显示模块203;
显示模块203,其接收显示合成模块202发送的屏显图像并进行显示。
实施例一
图2为根据本发明的一个实施例一结构示意图,如图2所示,本发明实施例一的远程显示***,有两个操作***:本地操纵***为中控操作***(IVI),远端操作***为仪表操作***(cluster)。
其中,中控操作***为Android+Linux***,仪表软件***可以是QT+LINUX或者是QNX,两个操作***通过共享内存交互数据。待投影的应用有3个显示层(layer),一个显示层(layer)进行2D渲染,另外两层需要3D 渲染,并最终合成为一个显示层(layer),上述两层数据是需要投影到远端操作***。
本地操作***控制上述两层如何进行合成,同样需要重新映射到远端。
映射模块将待映射的应用显示层数据以及描述如何合成的层显示控制(displaycontrol)信息,在中控操作***中通过组成这些数据的虚拟地址页(VA)倒找物理地址页(PA),再把物理地址页通过操作***间事件通道(event channel)传递给远端仪表(cluster)操作***,远端操作***把层数据物理地址重新映射成硬件显示控制器可以访问的虚拟地址空间。远端操作***根据映射的显示控制(display control)信息对显示层(layer)的数据的进行读取与进行2D操作。
实施例二
图3为根据本发明的远程显示方法流程图,下面将参考图3对本发明的远程显示方法进行详细描述。
首先,在步骤301,应用进行渲染,并将渲染的显示数据按照显示层进行存储。
在一个实施例中,应用模块101将渲染的显示数据按照显示层存储到共享内存模块102中。
在步骤302,解析显示层的虚拟地址空间,得到显示层的物理地址。
在一个实施例中,第一映射模块103解析共享内存模块102存储每一显示层的虚拟地址空间,得到存储每一显示层的物理地址。
在步骤303,发送每一显示层的物理地址及层显示控制信息。
在一个实施例中,第一映射模块103将每一显示层的物理地址及层显示控制信息发送给第二显示***20。
在一个实施例中,层显示控制信息,包括,
像素格式(pixel format)信息;
显示位置信息:显示宽度(content width)/显示高度(content height)/显示xoffset/y offset/display width/display height;
层与层先后顺序关系(z-order);
透明度(Alpha)。
在步骤304,将每一显示层的物理地址映射为虚拟地址空间。
在一个实施例中,第二映射模块201接收第一映射模块103发送的每一显示层的物理地址及层显示控制信息,并将每一显示层的物理地址映射为虚拟地址空间。
在步骤305,将所有显示层的显示数据进行合成并进行显示。
在一个实施例中,显示合成模块202从每一显示层的虚拟地址空间获取每一显示层的显示数据,并根据层显示控制信息将所有层的显示数据合成为屏显图像发送给显示模块203;显示模块203接收显示合成模块202发送的屏显图像并进行显示。
本发明的实施例中,由于需要显示数据在操作***流程时免拷贝,因此本地投影应用申请显示内存时数据需要从共享内存(share memory)中申请,后续被投影应用的显示渲染数据都会写入此共享内存。共享内存(share memory)是启动阶段就已经设定好的两个操作***共享内存。
本发明一实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有程序,所述程序可被处理器执行,以实现任一实施例所述的远程显示方法方法的步骤。
所述计算机可读存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
本领域普通技术人员可以理解,上文中所发明方法中的全部或某些步骤、***、***中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些组件或所有组件可以被实施为由处理器,如数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
虽然本发明所揭露的实施方式如上,但所述的内容仅为便于理解本发明而采用的实施方式,并非用以限定本发明。任何本发明所属领域内的技术人员,在不脱离本发明所揭露的精神和范围的前提下,可以在实施的形式及细节上进行任何的修改与变化,但本发明的专利保护范围,仍须以所附的权利要求书所界定的范围为准。
Claims (7)
1.一种远程显示***,包括,第一显示***、第二显示***,其特征在于,
所述第一显示***,其将应用渲染的显示数据按照显示层进行存储,将解析出的每一显示层的物理地址与层显示控制信息一起发送给所述第二显示***;
所述第二显示***,其将接收到的每一显示层的物理地址映射为虚拟地址空间,获取每一显示层的显示数据,并根据层显示控制信息对所有层的显示数据进行合成并进行显示;
所述层显示控制信息,包括,像素格式信息、显示位置信息、层与层先后顺序关系以及透明度。
2.如权利要求1所述的远程显示***,其特征在于,所述第一显示***,进一步包括,应用模块、共享内存模块,以及第一映射模块,其中,
所述应用模块,其将渲染好的显示数据按照显示层存入所述共享内存模块中;
所述共享内存模块,其将应用渲染好的显示数据按照显示层进行存储;
所述第一映射模块,其将每一显示层的虚拟地址空间进行解析,并将解析出的物理地址与层显示控制信息一起映射到所述第二显示***。
3.如权利要求1所述的远程显示***,其特征在于,所述第二显示***,进一步包括,第二映射模块、显示合成模块,以及显示模块,其中,
所述第二映射模块,其从所述第一显示***接收每一显示层的物理地址及层显示控制信息,将映射每一显示层的物理地址到虚拟地址空间;将所述虚拟地址空间及层显示控制信息发送到所述显示合成模块;
所述显示合成模块,其从所述虚拟地址空间获取每一显示层的显示数据,并根据层显示控制信息将所有层的显示数据合成为屏显图像发送给所述显示模块;
所述显示模块,其接收所述显示合成模块发送的屏显图像并进行显示。
4.一种远程显示方法,该方法包括以下步骤:
第一显示***将显示数据按照显示层进行存储;
将解析出的物理地址及层显示控制信息发送给第二显示***;
将物理地址映射为虚拟地址空间获取每一显示层的显示数据,根据所述层显示控制信息,对显示数据进行合成显示;
所述层显示控制信息,包括,像素格式信息、显示位置信息、层与层先后顺序关系以及透明度。
5.如权利要求4所述的远程显示方法,其特征在于,所述第一显示***将显示数据按照显示层进行存储的步骤,包括,
应用模块将渲染的显示数据按照显示层存储到共享内存模块;
所述共享内存模块将每一显示层虚拟地址空间及层显示控制信息发送给第一映射模块。
6.如权利要求4所述的远程显示方法,其特征在于,所述将解析出的物理地址及层显示控制信息发送给第二显示***的步骤,包括,
第一映射模块根据每一显示层的虚拟地址空间解析出物理地址;
将所述物理地址及层显示控制信息发送给所述第二显示***。
7.一种计算机可读存储介质,其上存储有程序,其特征在于,所述程序可被处理器执行权利要求4-6任一项所述的远程显示方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910654391.1A CN110456994B (zh) | 2019-07-19 | 2019-07-19 | 一种远程显示***及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910654391.1A CN110456994B (zh) | 2019-07-19 | 2019-07-19 | 一种远程显示***及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110456994A CN110456994A (zh) | 2019-11-15 |
CN110456994B true CN110456994B (zh) | 2023-03-10 |
Family
ID=68481542
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910654391.1A Active CN110456994B (zh) | 2019-07-19 | 2019-07-19 | 一种远程显示***及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110456994B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111114320B (zh) * | 2019-12-27 | 2022-11-18 | 深圳市众鸿科技股份有限公司 | 一种车载智能座舱共享显示方法及*** |
CN111415636B (zh) * | 2020-03-31 | 2022-03-11 | 惠州华阳通用电子有限公司 | 一种画面共享***及其实现方法 |
CN114461158B (zh) * | 2021-12-29 | 2024-02-09 | 沈阳中科创达软件有限公司 | 一种应用投屏方法、装置、车载终端及可读存储介质 |
CN115086755A (zh) * | 2022-06-08 | 2022-09-20 | 亿咖通(湖北)技术有限公司 | 一种投屏方法、装置、设备和介质 |
CN115334293B (zh) * | 2022-07-11 | 2023-10-13 | 岚图汽车科技有限公司 | 显示***及其投影控制方法、主副显示*** |
CN116052617B (zh) * | 2023-03-29 | 2023-06-27 | 南京芯驰半导体科技有限公司 | 一种屏幕亮度控制***、方法、装置、设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1831790A (zh) * | 2005-03-08 | 2006-09-13 | 微软公司 | 虚拟机环境中的客机物理地址虚拟化方法和*** |
WO2016033718A1 (zh) * | 2014-09-01 | 2016-03-10 | 华为技术有限公司 | 访问文件的方法、装置和存储*** |
CN107729159A (zh) * | 2017-09-29 | 2018-02-23 | 华为技术有限公司 | 一种共享内存的地址映射方法及装置 |
WO2018103022A1 (zh) * | 2016-12-07 | 2018-06-14 | 深圳前海达闼云端智能科技有限公司 | 帧缓存实现方法、装置、电子设备和计算机程序产品 |
-
2019
- 2019-07-19 CN CN201910654391.1A patent/CN110456994B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1831790A (zh) * | 2005-03-08 | 2006-09-13 | 微软公司 | 虚拟机环境中的客机物理地址虚拟化方法和*** |
WO2016033718A1 (zh) * | 2014-09-01 | 2016-03-10 | 华为技术有限公司 | 访问文件的方法、装置和存储*** |
WO2018103022A1 (zh) * | 2016-12-07 | 2018-06-14 | 深圳前海达闼云端智能科技有限公司 | 帧缓存实现方法、装置、电子设备和计算机程序产品 |
CN107729159A (zh) * | 2017-09-29 | 2018-02-23 | 华为技术有限公司 | 一种共享内存的地址映射方法及装置 |
Non-Patent Citations (2)
Title |
---|
分布共享存储***中的数据预送技术;谢向辉等;《计算机学报》;19990312(第03期);全文 * |
基于嵌入式ARM的LCD图像显示***设计;储光等;《电子工程师》;20070815(第08期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN110456994A (zh) | 2019-11-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110456994B (zh) | 一种远程显示***及方法 | |
US6833835B1 (en) | Method and apparatus for antialiased imaging of graphical objects | |
US9129581B2 (en) | Method and apparatus for displaying images | |
CN113515396B (zh) | 图形渲染方法、装置、电子设备与存储介质 | |
WO2009133675A1 (ja) | 表示制御装置及び表示制御方法 | |
EP3364289A1 (en) | Display switching method for terminal, and terminal | |
US10929079B2 (en) | Video display method, electronic device and computer program product | |
US5790125A (en) | System and method for use in a computerized imaging system to efficiently transfer graphics information to a graphics subsystem employing masked span | |
KR100941029B1 (ko) | 그래픽 가속기 및 그래픽 가속 방법 | |
US20150189012A1 (en) | Wireless display synchronization for mobile devices using buffer locking | |
US20060181538A1 (en) | Displaying apparatus and data writing device | |
CN115312006B (zh) | 一种电子墨水屏驱动方法、墨水屏设备和存储介质 | |
US8593473B2 (en) | Display device and method for optimizing the memory bandwith | |
CN105378645A (zh) | 用于多监视器环境的虚拟化应用 | |
CN116527978A (zh) | 一种多屏互动的控制方法及装置 | |
EP0803798A1 (en) | System for use in a computerized imaging system to efficiently transfer graphics information to a graphics subsystem employing masked direct frame buffer access | |
CN111785229B (zh) | 一种显示方法、装置及*** | |
US12020343B2 (en) | Vehicle device and vehicle device control method | |
CN116705101B (zh) | 多psram颗粒芯片的数据处理方法、电子设备及存储介质 | |
CN113840171B (zh) | 视频数据处理方法及装置 | |
CN102271272B (zh) | 2d图像和3d图像的图像数据存储、传输方法和装置 | |
CN116504202A (zh) | 显示模组的驱动方法及装置、显示装置 | |
US20240161229A1 (en) | Image processing device and method using video area splitting, and electronic system including the same | |
CN115309356A (zh) | 一种车机屏幕分享的方法、***、装置和存储介质 | |
CN114461121A (zh) | 一种用于实现uefi全屏显示的虚拟图层 |
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 |