用于虚拟显示器的系统和方法_2

文档序号:9383060阅读:来源:国知局
各种结构(在图1中未示出)。这些结构可以包括一个或多个处理器、存储器、图形电路、I/O设备、总线控制器等。在图11中示出了并在下文详细描述了这种计算设备的一个实施例。
[0029]在图1中所示的实例中,除了物理地连接到显示器120和160之外,计算设备110还利用从经由连接180连接到外部接口 170的发射器172发射的射频信号142,向未物理地连接到计算设备110的外部显示器190传送显示数据。接口 170可以是任何类型的标准有线接口或专有有线接口。可以将给定接口 170理解为具有“数据宽度”(例如,管脚数量),其指示该接口能够一次传输多少数据。在图1中,连接180是设备110和发射器172之间连接的逻辑表示。在一些实施例中,连接180可以包括一个或多个居间的硬件部件。像主显示器120那样,外部显示器190可以是任何适当类型的设备。例如,在一些实施例中,夕卜部显示器190可以是高清晰度TV(HDTV)兼容的设备或投影设备。
[0030]在图1中所示的实例中,除了物理地连接到显示器120和160之外,计算设备110还利用网络102向未物理地连接到计算设备110的远程外部显示器192传送显示数据,网络102与远程外部显示器192连接到的远程计算设备112通信。
[0031]在一些实施例中,计算设备110上的一个或多个处理器利用操作系统创建一个或多个显示器接口,它们是用于与显示设备,诸如显示器120和外部显示器160通信的软件部件。该显示器接口是用于在用于计算设备110上执行的应用的应用层和一个或多个显示设备之间传送显示数据和用户输入事件的接口。显示设备诸如显示器120和外部显示器160中的每个显示器,都物理地连接到由操作系统管理的计算系统,诸如计算设备110。计算设备110的操作系统还创建用于在应用层和一个或多个虚拟显示设备之间传送显示数据和用户输入事件的一个或多个虚拟显示器接口,其包括存储系统和通信系统,用于管理一个或多个未物理地连接到由操作系统管理的计算系统,诸如计算设备110的虚拟显示设备。
[0032]计算设备110在应用层中执行一个或多个应用。一个或多个应用中的至少一个应用利用显示器接口中的至少一个显示器接口,诸如显示器120和外部显示器160,向一个或多个显示设备中的至少一个显示设备传送显示数据并从其接收用户输入事件,一个或多个应用中的至少一个其他应用利用一个或多个虚拟显示器接口中的至少一个虚拟显示器接口向一个或多个虚拟显示设备中的至少一个虚拟显示设备传送显示数据并从其接收用户输入事件。在一些实施例中,虚拟显示器接口是用于通过射频连接,例如射频信号142,向目标虚拟显示设备,例如外部显示器190,例如通过发射器172,传输来自一个或多个应用中的至少一个应用的显示数据的数据构造。在一些实施例中,虚拟显示器接口用于通过网络连接,例如网络102,向远程计算系统,例如容纳(或通过其他方式连接到)目标虚拟显示设备,例如远程外部显示器192的远程计算设备112传输来自一个或多个应用中的至少一个应用的显示数据。在一些实施例中,计算设备110执行验证容纳(或通过其他方式连接到)目标显示设备,例如远程外部显示器192的远程计算系统、远程计算设备112的许可,以显示显示数据,并通过网络连接,例如网络102,向容纳(或通过其他方式连接到)目标虚拟显示设备,例如远程外部显示器192的远程计算系统传输来自一个或多个应用中的至少一个其他应用的显示数据。
[0033]一些实施例利用计算设备110的处理器执行生成至少一个其他应用的输出以向一个或多个虚拟显示设备的至少一个虚拟显示设备传送,并利用计算设备110的图形处理单元提供的硬件加速从至少一个其他应用的输出渲染用于在虚拟显示设备上显示的显示数据。在各种实施例中,计算设备110可以操作以生成数据的显示帧。一般来讲,帧可以是描述要显示的图像的数据。帧可包括用于描述被包括在帧中的像素的像素数据(例如,依据诸如RGB或YCrCb的各种色彩空间),并且可包括诸如用于混合的α值的元数据。静态帧可以为不是视频序列的一部分的帧。另选地,视频帧可以是视频序列中的帧。视频序列中的每个帧能够以针对视频序列的指定的速率(例如15-30帧每秒)在如一帧之后显不。视频帧还可以是完整的图像,或者是指序列中其他图像的压缩图像。如果帧是压缩的,则设备110中的视频管线可以将帧解压缩。
[0034]在一些实施例中,设备110内的显示发生单元可以被配置为生成(即呈现)、获取和/或处理帧数据,以提供像素值流进行显示。在一些实施例中,可以将显示生成单元配置为显示管线。另外,显示生成单元可被配置为将多个帧混合以产生输出帧。例如,在一个实施例中,每个帧像素可具有相关联的α值以指示其不透明度。
[0035]—般来讲,像素值流中的像素值可以是要在耦接到设备110的显示器上显示的像素的表示。像素值可包括一个或多个色彩空间值。例如,在RGB色彩空间中,像素值包括红色值、绿色值和蓝色值。每个值可在O至2Ν-1的范围内,并描述该像素颜色的强度。类似地,在YCrCb色彩空间中,像素值包括Y值、Cr值和Cb值。可从相应的像素值在像素流中的位置推断出像素在显示器上的位置。例如,像素流可以是一系列像素行,每行形成显示屏上的一行。在渐进模式的显示中,行以连续的顺序画出,因此像素流中的下一行紧邻上一行。在隔行模式的显示中,在显示器上的连续划线将画出偶数行和奇数行,因此像素流中的下一行与像素流中的上一行跳过一行。简单地说,像素值的流可被称为像素流,或像素的流。可以配置设备110之内的像素处理单元以对像素流执行各种像素操作,并可以向相应的物理接口(PHY)或显示驱动器提供经处理的像素流。例如,像素操作可包括如下一项或多项:彩色空间转换、背光控制、伽马校正、对比度改善、过滤、抖动等。PHY —般可以包括物理控制对应显示器的电路。PHY可以驱动控制信号,其响应于像素值物理地控制相应显示器面板。因此,例如,用于受RGB信号控制的显示器的PHY可以在对应于像素的R、G和B分量的R、G和B信号上传输电压。还可以有显示器时钟,其可以由PHY传输,或者显示器时钟可以嵌入控制信号中的一个控制信号中。针对不同显示器的不同PHY可以具有在不同时钟域之内的时钟。
[0036]图2是示出了针对包括物理显示器和虚拟显示器的计算机系统的一个实施例的软件模块的框图。在具有一个或多个处理器的计算机系统200中,有几个应用210a-201b在应用层270中执行。这些应用通过操作系统225的介入而与计算机系统200交互,计算栈的操作系统层存在于分界线220和240之间。计算栈的物理层275位于分界线250和240之间。窗口服务器230为应用210a-210b处理显示数据205a_205b和用户事件数据215a-215b。在一些实施例中,窗口服务器230是操作系统225的内部构造,并且应用201a-210b利用API (未示出)与窗口服务器230通信。窗口服务器230向内核I/O帧缓冲器260a-260b传送输出数据245a_245b并从其接收输入数据255a_255b,在此通过物理连接将其路由到物理显示设备265a-265b。
[0037]虚拟显示数据处理器235为应用210c处理显示数据205c和用户事件数据215c。在一些实施例中,虚拟显示数据处理器235是操作系统225的内部构造,应用201c利用API (未示出)与虚拟显示数据处理器235通信。虚拟显示数据处理器235向存储器另选装置260c传送输出数据245c并从其接收输入数据255c,在此如本文所述可以将其路由到虚拟显示设备265c。
[0038]操作系统225通过指定I/O帧缓冲器260a_260b来创建一个或多个显示器接口。一个或多个显示器接口(例如I/O帧缓冲器260a-260b)是用于在应用层270和一个或多个显不设备例如物理显不设备265a_265b之间传送显不数据205a_205b和用户输入事件215a-215b的接口,每个接口都物理地连接到由操作系统管理的计算系统。操作系统225创建用于在应用层270和一个或多个虚拟显示设备265c之间传送显示数据205c和用户输入事件215c的一个或多个虚拟显示器接口,诸如存储器另选装置260c,。一个或多个虚拟显示设备265c未物理地连接到由操作系统226管理的计算系统。一个或多个应用210a-210c在应用层270中执行。一个或多个应用210a-210b中的至少一个应用利用显示器接口260a-260b中的至少一个显示器接口向一个或多个显示设备265a_265b中的至少一个显示设备传送显示数据205a-205b并从其接收用户输入事件215a-215b。一个或多个应用210c中的至少一个其他应用利用一个或多个虚拟显示器接口 260c中的至少一个虚拟显示器接口向一个或多个虚拟显示设备265c中的至少一个虚拟显示设备传送显示数据205c并从其接收用户输入事件215c。在一些实施例中,显示器接口 260c是虚拟I/O帧缓冲器。
[0039]在一些实施例中,应用户通过用于窗口服务器或另一操作系统部件的用户界面280做出的请求,对虚拟显示器接口 260c进行配置以支持虚拟显示设备265c。可以使用用户界面280指定远程设备(例如远程外部显示器192或图1的外部显示器190)作为虚拟显示设备265c,并将远程设备与虚拟显示器接口 260c相关联,还配置虚拟显示设备265c的参数。
[0040]在一些实施例中,可以使用用户界面280发起与远程设备(例如,远程外部显示器192或图1的外部显示器190)的通信,以从物理显示设备自身获得扩展显示标识数据(H)ID),其可以包括制造信息、型号和/或序列号、针对受支持显示模式的显示参数值和/或其他消费电子设备配置文件信息。可以由各种消费电子设备自动提供此类信息(例如在启动时,在系统初始化期间,或在其附接在系统中时),或者在不同实施例中,响应于系统对这种信息的查询而提供。在一些实施例中,此类信息是通过用户界面280手动输入的。并非仅仅在一个显示器上镜像复制在另一个上所做的内容,一些实施例支持没有物理实施例的虚拟显示器。
[0041]需注意,除了所有EDID块中提供的信息之外,随着时间推移,已经提出(在一些情况下被大范围采用)的标准有各种扩展。例如,大部分电视制造商实施的是本文称为CEA-861扩展块的扩展,其包括表示优选视频模式的信息。在一些情况下,优选视频模式可能不是针对给定设备广告所称(或由其支持)的最高分辨率模式。例如,尽管制造商可能广告声称
当前第2页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1