虚拟桌面服务的制作方法

文档序号:6596483阅读:289来源:国知局
专利名称:虚拟桌面服务的制作方法
技术领域
本发明涉及通过网络提供对虚拟计算资源的访问。
背景技术
没有膝上计算机就旅行的或者出于某一原因而已经无法使用其膝上计算机的商务旅行者通常不具有用于确保计算机时间的诸多选项。一个选项是让自己利用对公共图书馆的计算机的免费公共访问。另一选项是对具有商务中心的办公用品供应店处的访问付费。一些专注于商务旅行的酒店具有如下专用商业中心,在该商业中心中,酒店客人可以为访问桌面或者膝上计算机进行付费。所有这些选项在便利性、使用小时、高峰使用可用性和接口定制(例如个人设置)方面具有明显不足。考虑一个在商务出行期间抵达酒店短暂逗留的典型商业旅行者。该人通常将在他的/她的逗留期间需要访问因特网服务和其他商业应用。虽然这些应用可以在客人的自有膝上计算机上很好地可用,但是也可能希望经由客人的房间内的电视提供对这样的服务的访问。这将允许客人利用这样的服务而不必携带膝上计算机并且不会潜在地违反针对公司 IT设备的使用策略。遗憾的是,经由电视变得可用的传统房间内娱乐设施(也称为交互电视服务)通常未提供对广泛应用(诸如因特网浏览、商业应用或者游戏)的访问,尽管这些应用中的一些应用近来已经变得以有限形式可用。例如交互TV系统可以提供web浏览器。然而可以使用这样的web浏览器来访问的web页面的范围和web内容的类型极为有限并且确实未代表因特网上如今可用的最流行web站点。例如面向媒体的web站点(例如YouTube或者News Channels)未正确操作使得让用户不能查看在线视频内容。在一些情况下,站点根本未操作或者视频回放体验有不佳质量并且经常无音频组成。此外,web浏览体验与使用现代桌面计算机的浏览速度相比可能经常很慢。这可能使得在线游戏web站点的使用不可能或者最多响应缓慢。简言之,不能通过如今可用的交互电视web浏览服务来拜访诸多如今存在的最流行的web站点。此外,传统交互电视服务完全未提供在现代个人计算机上普遍发现的广泛的其他应用类型(例如商业应用,游戏、社交联网系统、消息接发系统等)。这至少部分地归因于如下事实客人房间中的相对低功率机顶盒经常提供如下交互电视服务,这些电视服务由于它们不能在机顶盒环境内操作(错误的操作系统、不足的计算资源等)而不能提供这些类型的应用。

发明内容
根据本发明,提供用于提供虚拟计算服务的系统和方法。根据特定一类实施例,多个服务器中的每个服务器被配置成实例化和管理在服务器上运行的多个虚拟计算机的操作。每个服务器还被配置成关联在服务器上运行的一个或者多个应用与每个虚拟计算机。 每个虚拟计算机包括图形显示部件和音频输出部件。图形显示部件被配置成生成用于一个或者多个关联应用的图形显示数据。音频输出部件被配置成生成用于一个或者多个关联应用的音频输出数据。每个服务器也包括一个或者多个编码器。每个编码器被配置成对来自虚拟计算机中的对应一个的图形显示数据和音频输出数据编码用于通过网络传输,使得编码的图形显示数据和编码的音频输出数据同步。多个客户端中的每个客户端被配置成经由网络接收用于虚拟计算机中的分配的一个的编码图形显示数据和编码音频输出数据,并且在关联的显示器上呈现分配的虚拟计算机的表示。每个客户端包括解码器,解码器被配置成对编码的图形显示数据和编码的音频输出数据解码,使得分配的虚拟计算机的表示的可见和可听组成基本上同步。根据另一类实施例,实例化多个虚拟计算机。每个虚拟计算机包括图形显示部件和音频输出部件。一个或者多个应用与每个虚拟计算机关联。每个虚拟计算机的图形显示部件被配置成生成用于一个或者多个关联应用的图形显示数据。每个虚拟计算机的音频输出部件被配置成生成用于一个或者多个关联应用的音频输出数据。向请求客户端分配虚拟计算机之一。对来自分配的虚拟计算机的图形显示数据和音频输出数据编码用于通过网络向请求客户端传输,使得编码的图形显示数据和编码的音频输出数据同步。根据另一类实施例,接收虚拟计算机数据,该虚拟计算机数据表示在远程平台上操作的远程虚拟计算机。使用虚拟计算机数据在显示器上呈现远程虚拟计算机的表示。捕获用户输入数据,该用户输入数据表示用户与远程虚拟计算机的表示的交互。向远程虚拟计算机在其上操作的远程平台传输用户输入数据用于呈现给与远程处理计算机关联的应用。本地呈现光标表示用于与远程虚拟计算机的表示一起呈现。通过参照说明书的其余部分和附图来实现对本发明的性质和优点的进一步理解。


图1是本发明的实施例可以实施于其中的计算环境的简化图。图2是图示了本发明一个具体实施例的操作的流程图。图3是图示了本发明一个具体实施例的操作的流程图。
具体实施例方式现在将详细参照本发明的如下具体实施例,这些实施例包括发明人设想的用于实现本发明的最佳模式。在附图中图示这些具体实施例的例子。虽然结合这些具体实施例来描述本发明,但是将理解并非旨在使本发明限于描述的实施例。反言之,旨在于覆盖如可以在如所附权利要求书限定的本发明的精神和范围内包括的替代方案、修改和等效物。在下文描述中阐述具体细节以便提供对本发明的透彻理解。无这些具体细节中的一些或者所有细节也可以实现本发明。此外,可能尚未详细描述公知特征以免不必要地模糊本发明。本发明提供如下机制,这些机制经由交互电视服务实现对任意应用的访问。根据本发明的各种实施例,通过提供在一个或者多个服务器上运行的如下虚拟计算机(这里称为“虚拟桌面”)的池来使能这样的虚拟桌面服务,可以使用显示器(例如电视)和关联客户端(例如机顶盒或者STB)来访问、查看这些虚拟计算机并且这些虚拟计算机交互。在用户端(例如通过STB)捕获(例如来自键盘、STB遥控器和/或鼠标)的并且向服务器转发用户输入,并且用户输入用来控制向该用户分配的虚拟桌面或者否则与该虚拟桌面交互。为求安全,可以加密该输入流以防止偷听者截获个人数据。响应于转发的用户输入在服务器上(例如向虚拟图形显示器和虚拟音频设备)呈现虚拟桌面和在虚拟桌面上运行的任何应用,然后在视频和音频流中使用可以维持音频和视频流同步的多种编解码器中的任何编解码器对虚拟桌面和应用编码。向在用户端的客户端(例如STB)转发编码数据用于呈现于关联显示器上。根据具体实施例,保持从用户输入到在显示器上的视觉反馈的延时充分地低(例如350毫秒以下)使得未不利地影响需要大量鼠标或者键盘交互的应用;合理地在用户接口响应时间的可接受限度内。用户例如使用与STB关联的遥控器经由本地客户端发起对分配虚拟桌面的请求。 一旦分配发生,远程服务器开始对分配的桌面所生成的视频和音频流编码。也就是说,计算设备的视频和音频硬件通常将采用的虚拟桌面实例所生成的数据被压缩成然后通过网络向客户端传输的数据流。根据一个具体实施例,向客户端传输的编码视频包括每秒30次拍摄的虚拟桌面的视频状态的高清晰度(HD)分辨率“快照”。这些数据与关联音频流同步并且使用MPEG-2 标准来压缩。然而应当注意可以采用实质上任何适当压缩标准而不脱离本发明的范围。根据一个特定实施方式,每个虚拟桌面实例对应于X-Windows服务器进程的继而在Linux操作系统上操作的嵌套实例。主X-Windows服务器负责创建每个嵌套X-Windows 实例。每个嵌套X-Windows实例可以具有在下层Linux操作系统上运行的以该实例为目标的一个或者多个应用。例如,如果与特定桌面交互的用户想要运行web浏览器,则虚拟桌面池管理器进程指定来自web浏览器的特定实例的输出应当以哪个X-Windows实例为目标, 即web浏览器的操作应当在哪个虚拟桌面上可见和可听。下文讨论的实施例将出于示例的目的而假设如下环境,在该环境中,客户端实施于STB中。然而引用STB并非为了限制本发明的范围。STB例如使用关联遥控器或者其他更典型的机制(诸如鼠标或者键盘)(该机制可以连接到STB上的USB端口或者经由红外线或者其他无线通信链路(诸如蓝牙或者WiFi))来捕获来自用户的如下输入,该输入表示与在用户的电视上的虚拟桌面表示的交互。向服务器转发STB捕获的诸如鼠标点击、键盘录入等事件,该服务器然后将它们引向已经向该STB分配的虚拟桌面。如上文提到的那样,可以加密STB捕获的并且向服务器转发的事件数据以保证用户的诸如口令、银行信息等个人信息受保护。根据一些实施例,在STB本地驱动鼠标光标在显示器上的移动。根据本发明的具体实施例,同步虚拟桌面所生成的音频和视频流,并且当例如使用MPEG-2对两个流编码以用于传输时保留该同步,使得当机顶盒将它们呈现于用户的电视上时,在查看者看来就如同直接在他的或者她的膝上设备上直接使用应用那样。根据特定一类实施例,在与虚拟桌面关联的应用中呈现音频和视频流时捕获它们。这并非完全简单直接,因为通常没有将两个流相关的可用同步信息。因此在呈现每个流时实时捕获单独音频和视频流并且时间戳与同时期的数据关联。根据一个具体实施例,以当前时间作为虚拟桌面的虚拟图形状态的每个“快照” 的的时间戳。类似地,使用相同参考时钟以当前时间作为每个音频样本的时间戳。这些时间戳由编码器用来同步视频帧和音频帧,使得它们在由客户端解码和呈现时接近地同步。 因而例如在使用MPEG-2编解码器的实施例中,用于捕获的音频和视频的时间戳用作用于 MPEG-2编码的呈现时间戳(也称为PTS值)。根据一个特定实施方式,采用如下时间戳技术,该技术基于按照音频流的数据速率驱动的仿真时钟。也就是说,由于我们知道给定量的音频数据花费固定长度的时间来呈现(即变得可听),所以我们可以基于捕获的数据量计算连续音频捕获的相对时间戳。由于我们比视频数据频繁得多地捕获音频数据,所以我们以使用的最后音频时间戳作为每个视频捕获的时间戳。这意味着视频时间戳可能造成略微、但是可接受的时间抖动水平。图1示出了本发明的实施例可以实施于其中的计算网络环境的简化图。在该例子中,示出第一客户端0经由网络102来与服务器0交互以利用根据本发明的一个具体实施例实施的虚拟桌面服务。也示出了客户端1出于相同目的经由网络102来与服务器1交互。用于与本发明的实施例一起使用的客户端可以实施为在STB或者相似设备上运行的软件,或者可以替代地直接集成到其中制造商提供用于这样做的手段的现代数字电视中(例如Wiilips Digital Hospitality TV)。根据一些实施例,可以用硬件(例如解码器) 实施客户端中的至少一些软件功能。根据一个具体实施例,服务器0和1是在Linux操作系统上运行的X-Windows服务器,并且客户端0和1是能够提供交互电视(ITV)服务的机顶盒(STB)(诸如例如来自 Stirling, Scotland 的 ETV Interactive Ltd.的 STB(由 Salt Lake City, Utah ^ iBAHN 于2007年中获得))。可以在任何交互电视系统(例如包括有线电视系统、卫星电视系统等)中实施本发明的实施例。因此将根据用于那些上下文的适当标准实施这样的系统中的客户端和服务器以及通信协议。此外,网络102的性质可以根据上下文而明显变化。例如网络102可以是能够携带视频和IP (因特网协议)数据两者的任何网络。这可以例如是基于以太网或者通过DSL线的IPTV网络、混合光纤同轴网络(该网络具有带IP功能的返回路径)(诸如现代有线TV运营商使用的网络)、卫星电视网络、电信网络或者这些网络中的任何网络的组合。例如卫星电视网络可以采用以下组合,该组合包括用于向用户的机顶盒传输音频和视频数据的卫星链路与用于提供IP数据的一些其他路径(例如电话线)。这样的组合“网络”被明确地设想为在本发明的范围内。并且如将理解的那样,任意数量的服务器可以根据这样的实施例向任意数量的客户端提供虚拟桌面服务。出于示例的目的,下文描述将着重于在客户端0与服务器0之间的交互。当系统中的服务器(例如服务器0)初始地启动时,执行如下池管理器104,该管理器104读取配置文件以确定将创建多少虚拟桌面实例,例如106和108。根据一个具体实施例,每个虚拟桌面包括图形显示的可视表示、例如X-Windows服务器进程的实例,即X. Org Project (www. χ. org)提供的开源实施。每个虚拟桌面也包括音频输出设备(也称为音频宿)(例如PulseAudio声音服务器(参见http //pulseaudio. Org/))的可视表示。
当与虚拟桌面关联的应用(例如应用110-116)需要呈现视频和/或音频输出时, 它将它们呈现给它与之关联的虚拟桌面的这两个部件。池管理器104通过设置如下环境变量来将服务器上运行的每个应用(例如应用110-116)与特定虚拟桌面(例如106或者108) 关联,这些环境变量告知每个应用它应当使用哪个图形显示器以及哪个音频同步。采用窗口管理器应用(未示出)来管理与每个X-Windows实例关联的窗口的显示和与这些窗口的交互。具体一组默认应用(例如应用110-116)可以与每个虚拟桌面关联。这样的应用包括可以在标准个人计算机或者移动计算设备上部署的实质上任何类型的应用, 包括但不限于web浏览器、商业应用、字处理应用、游戏应用等。根据一些实施例,与特定虚拟桌面关联的默认应用组可以涉及特定用户类型的需要或者偏好。例如标准的业务应用组可以在面向商业的虚拟桌面上变得可用。替代地,一组娱乐和游戏应用可以在娱乐虚拟桌面上变得可用。如将理解的那样,应用和潜在应用集的类型实质上是无限的。虚拟桌面实例保持于用于服务于请求的未用虚拟桌面的“自由”池中。池管理器 104然后“监听”网络业务来寻找针对虚拟桌面服务的请求。如果所有可用虚拟桌面在使用中,则池管理器104可以创建附加虚拟桌面实例直至一些最大可编程限制。此外,如果存在在服务器上操作的太多可用虚拟桌面,则池管理器104可以关闭一些虚拟桌面以节约计算资源。当与客户端设备0关联的用户希望利用虚拟桌面服务时,他可以例如使用配置成与客户端ο交互的遥控器(未示出)经由客户端0在物理显示器118 (例如电视)上呈现的交互菜单来选择该选项。如上文提到的那样,客户端0可以是配置成促进ITV服务的独立 STB或者相似设备。替代地,客户端0可以与电视118集成。在图2的流程图中图示了一个特定实施例的操作例子。响应于用户选择虚拟桌面服务(202),客户端0中的桌面客户端119向部署于网络 102上的配置成提供这样的服务的多个服务器之一传输请求(204)。根据一个特定实施,桌面客户端119从已知服务器列表选择(例如随机、依次或者以别的方式)直至它可以建立连接(206)。以该方式,可以使一个或者多个虚拟桌面服务器离线而又仍然提供虚拟桌面服务。一旦进行连接,池管理器104可以服务于桌面客户端119的请求,或者如果在服务器0上无可用虚拟桌面(208),则池管理器104可以将客户端重定向至具有可用虚拟桌面的另一服务器(例如服务器1)(210)。也就是说,系统中的每个池管理器维护其他服务器上可用的虚拟桌面的列表。也可以实施负载平衡机制以保证在可用计算资源之间高效划分与提供虚拟桌面服务关联的负载。假设可以本地服务于桌面客户端119的请求(208),池管理器104向客户端0分配它的可用虚拟桌面之一(例如虚拟桌面106) (212)。由于该分配,虚拟桌面106生成的音频和视频流由桌面编码器120编码(214),并且传输到客户端0 (216)用于桌面解码器122 解码(218 ),并且呈现于电视118上(220 )。由于该分配而实例化桌面编码器120。根据各种实施例,桌面编码器120和桌面解码器122可以采用广泛多种编码方案中的任何编码方案对用于虚拟桌面的音频和视频流编码和解码,只要采用的编码方案允许维持在音频与视频之间的同步。同样重要的是注意应当仔细以保证与虚拟显示更新同步执行视频流的捕获和编码,以避免由于部分呈现的应用输出而在用户的显示器出现“视频撕裂”。适当编解码器的例子包括但不限于H. 263,H. 264.MPEG-2.MPEG-4等。根据一个具体实施例,使用MPEG-2 (诸多当前可用数字电视和STB中的硬件采用的标准)对音频和视频流编码。然而将理解其他适当替代在本发明的范围内。当客户端0在请求用户的电视上呈现虚拟桌面的表示时,与该虚拟桌面关联的一个或者多个应用(例如应用110和112)可以表示为打开和运行。替代地,可以向用户呈现具有如下应用图标的接口,用户可以用这些应用图标启动这样的应用。在一些实例中,可能希望前一方式,因为为用户提供更少选项可以允许更稳健和安全的系统操作。可以参照图3的流程图理解可以根据本发明的具体实施例的处理用户与虚拟桌面的交互的方式。回到图1,编码和压缩的音频和视频数据由桌面解码器122解码并且按照某一适用帧速率(例如每秒25或者30帧)呈现于显示器118上(302)。每帧表示虚拟桌面 106的图形状态的“快照”。通过与显示器118关联的(一个或多个)扬声器或者麦克风呈现 (例如按照44. IkH采样)的解码音频。可以从诸如STB遥控器、多种光标控制设备中的任何设备(例如鼠标、处理杆等)、 键盘、相机、游戏控制器、麦克风等多种设备捕获用户与虚拟桌面的交互(304)。桌面客户端 119向池管理器104传输这些输入(306),如果输入并非仅为光标移动(308),则该池管理器向分配的虚拟桌面(在该例子中为虚拟桌面106)提供用户输入信息,该用户输入信息然后被提供给用户与之交互的应用(例如110或者112)(310),导致对图形表示和/或音频同步的对应改变(314),该图形表示和/或音频同步然后被传播回到客户端(316)以用上文描述的方式呈现。以该方式处理的用户输入类型是如下输入,这些输入实现了改变用户与之交互的下层应用的状态,例如鼠标点击、键盘输入等。根据特定类实施方式,关联客户端本地呈现在用户的电视上的虚拟桌面图像中描绘的光标。也就是说,当桌面客户端119接收与光标的移动对应的输入(304)(即光标移动事件)时,它如上文针对其他输入类型描述的那样向池管理器104发送事件信息(306)。然而与针对光标移动不同地处理输入。在该情况(308)下,池管理器104经由虚拟桌面106 向下层应用提供移动和位置(318)。虚拟桌面基于新位置关于光标的形状和外观对池管理器做出响应(320)。池管理器104然后关于光标的形状和外观向桌面客户端119做出回应。 如果来自池管理器104的响应知识光标的形状和外观尚未改变(3M),则桌面客户端119在物理显示器118上本地呈现处于新位置并且具有相同外观的光标(3沈)。另一方面,如果虚拟桌面106向池管理器104指示光标已经改变(324)(即由于它在下层应用的图形表示中的新位置),则池管理器向桌面客户端119传输光标的新外观(例如用相同通信或者响应于来自客户端的请求)(3 ),该桌面客户端再次在物理显示器118 上本地显示处于新位置、但是具有新外观的光标(330 )。使用该“边带信道”,光标移动未来受到与经过编码器120和解码器122的路径关联的完全延迟,而是仍然维持光标关于下层应用为的正确外观。根据一些实施,在与后台的池管理器协商光标外观时,桌面客户端立即呈现光标移动。这在形状更新经由边带信道发生之时保持光标运动响应。一旦新的光标形状已知, 无论光标是否已经再次移动都在屏幕上立即更新光标形状。由于涉及到的时间延迟最小, 所以用户通常不会察觉是否已经短暂地呈现错误光标外观。
10
根据一些实施例,可以提供如下机制,用户可以通过该机制将外围设备连接到系统。也就是说,可以与如下客户端关联提供USB端口或者其他适当连接器(例如在STB或者关联设备(诸如辅助面板)上),用户可以将他自己的个人外围设备连接到该客户端就如同他连接到他自己的个人计算机。例如用户可以连接存储器设备(例如USB驱动、记忆棒等)、 音乐播放器(iPod等)、数字相机、便携打印机等。在图1中所示例子系统中,桌面客户端119将检测外围设备的连接并且向池管理器104传送该信息。池管理器104然后可以在服务器0上创建外围设备的本地虚拟实例, 使得用户与之交互的应用可以经由远程物理外围设备的本地虚拟实例来与该设备通信。将经由经过池管理器104和桌面客户端119的另一 “边带信道”进行这些通信作为一系列请求和响应。替代地,可以经由在物理设备与应用之间的这样的边带信道进行这些通信而未在服务器侧上创建虚拟实例。以该方式,用户可以上传和下载文件和数据到他的个人外围设备就如同他利用他自己的个人计算机那样。在一些实施的优点之中有如下事实虚拟桌面可以按照需要可用于酒店中的任何房间内的任何客人。这不仅方便用户(即无需离开个人的房间或者等待计算机变得可用), 也避免了使物理资源(在财产平方尺长度(square footage)以及硬件方面)专用于商业中心的创建和维护的需要。可以简单地通过为每个请求创建附加实例来提供如在任何跟定时间的需要一样多的虚拟桌面。此外,本发明的实施例还具有很好地同步音频和视频的优点。这在用户经由web 消费多媒体内容时特别重要。缺乏同步在用户查看例如来自YouTube或者相似内容提供商的视频剪辑时是完全无法接受的。另外,高清晰度(HD)电视和显示器的近来广泛部署已经帮助使本发明的实施例在商务上可行。也就是说,标准清晰度(SD)电视和显示器的分辨率(例如720x576或者 720x480)使得通常更高分辨率的计算机接口(例如102虹768)的外观在用SD呈现时看起来颗粒状并且无吸引力。例如诸多网页未被设计用于在少于800x600的屏幕上查看。对照而言,HD设备的分辨率(例如1280x720或者1920x1080)多于足以用清晰而有吸引力的方式呈现计算机界面。本发明的实施例也允许为个人用户和/或组织提供定制的计算资源和应用的能力。例如可以针对不同类型的用户提供以各种方式定制的不同类型的虚拟桌面。可以提供包括诸如字处理、电子表格、演示创建等标准商业或者办公室应用的商业桌面。可以提供包括各种类型的游戏软件的娱乐桌面。在特定背景中的实施方式可以提供该背景特有的应用和/或引擎、例如在接待背景中的旅行社预约引擎。可以在用于特定用户的虚拟桌面中存储和提供定制设置、偏好、应用集等,使得对应地增强每个用户的体验和/或遵守针对用户组织的策略。虽然已经参照本发明的具体实施例具体示出和描述本发明,但是本领域技术人员将理解可以做出对公开的实施例在形式和细节上的改变而未脱离本发明的精神或者范围。 例如这里已经参照接待行业的上下文,其中可以实施本发明的实施例以向酒店客人提供虚拟桌面服务。然而将理解本发明并不限于这样的上下文。实际上,可以在其中可以提供交互电视服务的任何上下文中实施本发明的实施例。因此例如可以在有线电视和卫星电视系统两者中提供根据本发明实施的虚拟桌面服务。
此外可以用广泛多种方式实施这里描述的功能而未脱离本发明的范围。例如可以使用在与执行这里描述的功能的特定计算设备关联的物理存储器(例如任何类型的RAM或者ROM)中存储的计算机程序指令来实施在此描述的功能。可以被适配用于这样的目的的为本领域技术人员所知的各种计算和编程工具和语言中的任何工具和语言都在本发明的范围内。替代地,可以使用诸如可编程逻辑设备、现场可编程门阵列、专用集成电路等其他类型的硬件来实施至少一些描述的功能。同样,适当替代将为本领域技术人员所清楚。最后,虽然这里已经参照各种实施例讨论本发明的各种优点、方面和目的,但是将理解引用这样的优点、方面和目的不应限制本发明的范围。实际上,应当参照所附权利要求书来确定本发明的范围。
权利要求
1.一种用于提供虚拟计算服务的系统,包括一个或者多个服务器,每个服务器被配置成实例化和管理在所述服务器上运行的多个虚拟计算机的操作,每个服务器还被配置成关联在所述服务器上运行的一个或者多个应用与每个虚拟计算机,每个虚拟计算机包括图形显示部件和音频输出部件,所述图形显示部件被配置成生成用于一个或者多个关联应用的图形显示数据,所述音频输出部件被配置成生成用于所述一个或者多个关联应用的音频输出数据,每个服务器也包括一个或者多个编码器,每个编码器被配置成对来自所述虚拟计算机中的对应一个的所述图形显示数据和所述音频输出数据编码用于通过网络传输,使得同步编码的图形显示数据和编码的音频输出数据;以及多个客户端,用于与关联显示器一起使用,每个客户端被配置成经由所述网络接收用于所述虚拟计算机中的分配的一个虚拟计算机的所述编码的图形显示数据和所述编码的音频输出数据,并且在所述关联显示器上呈现分配的虚拟计算机的表示,每个客户端包括解码器,所述解码器被配置成对所述编码的图形显示数据和所述编码的音频输出数据解码,使得所述分配的虚拟计算机的所述表示的可见和可听组成基本上同步。
2.根据权利要求1所述的系统,其中每个客户端实施于机顶盒中,所述机顶盒被配置成在所述关联显示器上提供交互电视服务。
3.根据权利要求2所述的系统,其中所述网络包括基于IP的传输基础设施、同轴线缆传输基础设施、卫星通信基础设施或者电信基础设施中的一个或者多个。
4.根据权利要求1所述的系统,其中每个客户端还被配置成捕获用户输入数据,所述用户输入数据表示用户与所述分配的虚拟计算机的所述表示的交互,并且向管理所述分配的虚拟计算机中的所述服务器中的第一服务器传输所述用户输入数据,所述第一服务器被配置成向与所述分配的虚拟计算机关联的所述一个或者多个应用提供所述用户输入数据。
5.根据权利要求4所述的系统,其中所述用户输入数据由键盘、鼠标、遥控器、游戏控制器、操纵杆、相机或者麦克风中的一个或者多个生成。
6.根据权利要求4所述的系统,其中每个客户端呈现的所述分配的虚拟计算机的所述表示包括光标表示,每个客户端被配置成本地呈现所述光标表示。
7.根据权利要求6所述的系统,其中所述第一服务器还被配置成与向与所述分配的虚拟计算机关联的一个或者多个应用提供所述用户输入数据结合来标识用于所述光标表示的相对于所述一个或者多个应用的可视外观,并且向与所述分配的虚拟计算机对应的所述客户端中的第一客户端传送所述虚拟外观,所述第一客户端被配置成将所述光标表示呈现为具有所述可视外观。
8.根据权利要求1所述的系统,其中所述编码器和所述解码器采用编解码器,所述编解码器被配置成采用与所述图形显示数据和所述音频输出数据关联的时间戳对所述图形显示数据和所述音频输出数据编码,与所述图形显示数据和所述音频输出数据关联的所述时间戳根据单个参考时钟来导出。
9.根据权利要求1所述的系统,其中所述编码器和所述解码器采用编解码器,所述编解码器被配置成采用与所述图形显示数据和所述音频输出数据关联的时间戳对所述图形显示数据和所述音频输出数据编码,与所述图形显示数据和所述音频输出数据关联的所述时间戳参照对应量的所述音频输出数据的生成来导出。
10.根据权利要求1所述的系统,其中每个客户端与所述关联显示器集成。
11.一种用于提供虚拟计算服务的计算机实施的方法,包括实例化多个虚拟计算机,每个虚拟计算机包括图形显示部件和音频输出部件; 关联一个或者多个应用与每个虚拟计算机,每个虚拟计算机的所述图形显示部件被配置成生成用于所述一个或者多个关联应用的图形显示数据,每个虚拟计算机的所述音频输出部件被配置成生成用于所述一个或者多个关联应用的音频输出数据; 向请求客户端分配所述虚拟计算机之一;并且对来自分配的虚拟计算机的所述图形显示数据和所述音频输出数据编码用于通过网络向所述请求客户端传输,使得同步编码的图形显示数据和编码的音频输出数据。
12.根据权利要求11所述的方法,其中所述网络包括基于IP的传输基础设施、同轴线缆传输基础设施、卫星通信基础设施或者电信基础设施中的一个或者多个。
13.根据权利要求11所述的方法,还包括接收用户输入数据,所述用户输入数据表示用户与所述分配的虚拟计算机的表示的交互;并且向与所述分配的虚拟计算机关联的所述一个或者多个应用提供所述用户输入数据。
14.根据权利要求13所述的方法,还包括与向与所述分配的虚拟计算机关联的所述一个或者多个应用提供所述用户输入数据结合来标识用于光标表示的相对于所述一个或者多个应用的可视外观;向所述请求客户端传送所述可视外观用于所述请求客户端本地呈现所述光标表示。
15.根据权利要求11所述的方法,其中对所述图形显示数据和所述音频输出数据编码包括使用单个参考时钟来为所述图形显示数据和所述音频输出数据中的每个生成时间戳;并且使用所述时间戳作为向编码器的输入来对所述图形显示数据和所述音频输出数据编码。
16.根据权利要求11所述的方法,其中对所述图形显示数据和所述音频输出数据编码包括参照对应量的所述音频输出数据的生成来为所述图形显示数据和所述音频输出数据中的每个生成时间戳;并且使用所述时间戳作为向编码器的输入来对所述图形显示数据和所述音频输出数据编码。
17.一种用于提供虚拟计算服务的计算机实施的方法,包括接收虚拟计算机数据,所述虚拟计算机数据表示在远程平台上操作的远程虚拟计算机;使用所述虚拟计算机数据在显示器上呈现所述远程虚拟计算机的表示; 捕获用户输入数据,所述用户输入数据表示用户与所述远程虚拟计算机的所述表示的交互;向所述远程虚拟计算机在其上操作的所述远程平台传输所述用户输入数据用于呈现给与所述远程虚拟计算机关联的应用;本地呈现光标表示用于与所述远程虚拟计算机的所述表示一起呈现。
18.根据权利要求17所述的方法,其中所述用户输入数据由键盘、鼠标、遥控器、游戏控制器、操纵杆、相机或者麦克风中的一个或者多个生成。
19.根据权利要求17所述的方法,还包括从所述远程平台接收可视外观信息,所述可视外观信息涉及所述光标表示相对于与所述远程虚拟计算机关联的所述应用而言的可视外观,并且其中本地呈现所述光标表示包括将所述光标表示呈现为具有所述可视外观。
20.根据权利要求17所述的方法,其中所述接收、呈现、捕获、传输和呈现由实施于机顶盒中的客户端执行,所述机顶盒被配置成在所述显示器上提供交互电视服务。
21.根据权利要求17所述的方法,其中使用网络来实现所述接收和传输,所述网络包括基于IP的传输基础设施、同轴线缆传输基础设施、卫星通信基础设施或者电信基础设施中的一个或者多个。
22.根据权利要求17所述的方法,其中对虚拟计算机数据编码,所述方法还包括对编码的虚拟计算机数据解码,使得所述远程虚拟计算机的所述表示的所述可视和可听组成基本上同步。
全文摘要
描述了用于使用远程虚拟桌面池经由交互电视服务提供对任意应用的访问的方法和装置。
文档编号G06F3/00GK102460407SQ200980159934
公开日2012年5月16日 申请日期2009年6月2日 优先权日2009年4月16日
发明者赫尔斯 D., 托马斯 J., R. 杜克 T. 申请人:iBAHN综合控股公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1