用于使用图形建模来管理、监控并控制广播和多媒体系统的系统和方法与流程

文档序号:12701338阅读:355来源:国知局
用于使用图形建模来管理、监控并控制广播和多媒体系统的系统和方法与流程

本申请要求2014年8月22日提交的标题为“Systems and Methods for Using Graph Modeling to Manage,Monitor and Control Broadcast and Multimedia Systems”的美国临时申请No.62/040,786的权益和优先权,该临时申请的全部内容通过引用被并入本文。

技术领域

本申请涉及用于广播环境管理的系统和方法。在一个方面中,本申请针对用于广播环境的动态的基于图形的建模、分析、监控和控制系统。



背景技术:

典型的广播环境(例如电视或无线电演播室或相关制作环境)可包括数百个分立的媒体源和目的地以及数千个潜在的信号路径。例如,小的电视新闻演播室可包括三个摄像机,每个摄像机具有高清和标清视频输出馈送、返回视频监视器馈送、以及去往和来自摄像机操作员头戴式耳机的音频馈送;演播室监视器和讲词提示器;几个佩带式麦克风和/或悬挂式麦克风;用于提示目的或用于从制作人到节目主持人的通信的耳内音频监控器;用于已录制的片段的音频和视频播放系统;用于现场或直播远程馈送的远程通信系统;音频混合控制台;视频交换机和路由器;卫星上行链路发射机;到陆地发射机的连接;或很多其它这样的设备以及实质上数英里的布线。随着演播室在尺寸上增加,设备和互连的数量可以指数地增长。

设计和维护广播环境需要对在每个设备之间的信号路径的深入理解。作为结果,工程师一般创建大系统图以示出每个物理互连连接;按照源、目的地、类型、长度等识别在系统中的每个电线的电线列表;以及示出典型设置(例如直播演播室中的广播、具有一个远程站点的广播、具有两个远程站点的广播、预先录制的会谈等)的多个信号流图。这些系统图可能是复杂的和非直观的,创建以及维护(特别地在部件被升级或更换时)起来很难且昂贵,且对检修故障或创建新系统配置而言可能不是有用的。



技术实现要素:

本公开描述了用于广播环境的动态的基于图形的建模和分析系统的系统和方法。图形建模提供在节点之间的关系的无索引邻接,与关系数据库不同,且对大量的、高度可变的半结构化和密集连接的数据是理想的。特别是且与其它基于图形的建模系统不同,在本文讨论的系统和方法提供知悉在部件之间并穿过图形模型从源(例如摄像机、麦克风、数字播放系统、卫星接收机等)通过处理和路由到目的地(例如记录设备、发射机、网络连接等)的信号流的建模系统。此外,系统可能知悉信号类型和格式,并可实施互连规则(例如HD视频输出连接到HD视频输入,立体声音频输出连接到立体声音频输入,反馈环消除等)。系统还可实时地执行以提供在整个广播环境中多个路由器的动态和帧准确的控制。

在一个方面中,本公开涉及经由基于图形的模型来管理广播资源的方法。该方法包括由广播环境的管理系统识别多个广播资源中的每个的特征,所述特征至少包括输入或输出。该方法还包括由管理系统基于所识别的特征来产生多个广播资源的基于图形的模型。该方法还包括由管理系统接收对将信号从多个广播资源的第一广播资源路由到多个广播资源的第二广播资源的请求。该方法还包括由管理系统基于多个广播资源中的每个的所识别的特征来选择经由至少一个额外的广播资源从第一广播资源到第二广播资源的路径;以及由管理系统命令第一广播资源、第二广播资源和至少一个额外的广播资源沿着所选择的路径发送和接收信号。

在一些实施方式中,特征还包括至少一个输入信号类型和至少一个输出信号类型。在另一实现中,第一广播资源具有第一信号类型,第二广播资源具有第二信号类型,以及选择从第一广播资源到第二广播资源的路径还包括选择经由具有第一信号类型的输入信号类型和第二信号类型的输出信号类型的第三广播资源的路径。

在其它实现中,选择从第一广播资源到第二广播资源的路径还包括经由基于图形的模型来识别最短路径。在另一实现中,该方法包括识别经由图形的最少数量的媒介节点从第一广播资源到第二广播资源的路径,每个节点代表广播资源。在另一另外的实现中,该方法包括识别具有最短总时延的从第一广播资源到第二广播资源的路径,图形的每个广播资源具有相关联的处理时延。

在又一些其它实现中,所选择的从第一广播资源到第二广播资源的路径经由第三广播资源,且该方法包括由管理系统接收对将信号从第四广播资源路由到第五广播资源的请求;由管理系统选择经由第三广播资源从第四广播资源到第五广播资源的路径;由管理系统确定第三广播资源不能够同时承载在第一和第二广播资源之间的路径以及在第四和第五广播资源之间的路径;由管理系统选择经由第六广播资源从第一广播资源到第二广播资源的第二路径;以及命令第一广播资源、第二广播资源和第六广播资源沿着所述第二路径发送和接收信号。在另一实现中,该方法包括识别经由第三广播资源从第一广播资源到第二广播资源的路径的第一成本;识别经由第三广播资源从第四广播资源到第五广播资源的路径的第二成本;确定第一成本超过第二成本;以及响应于第一成本超过第二成本的确定来选择第二路径。在又一实现中,该方法包括识别经由第六广播资源从第一广播资源到第二广播资源的路径的第三成本;识别经由第七广播资源从第四广播资源到第五广播资源的路径的第四成本;确定第三成本小于第四成本;以及响应于第三成本小于第四成本的确定来选择第二路径。在再一实现中,该方法包括确定在第三成本和第一成本之间的差异小于在第四成本和第二成本之间的差异;以及响应于在第三成本和第一成本之间的差异小于在第四成本和第二成本之间的差异的确定来选择第二路径。在另一另外的实现中,识别经由第三广播资源从第一广播资源到第二广播资源的路径的第一成本还包括识别路径的总长度、路径的总时延、由路径经过的多个资源、由路径经过的多个独特资源或可用的多个替代路径。

在另一方面中,本公开涉及用于经由基于图形的模型来管理广播资源的系统。该系统包括处理器,其执行经由系统的网络接口与多个广播资源中的至少一个通信的管理代理。管理代理配置成:识别多个广播资源中的每个的特征,所述特征至少包括输入或输出;以及基于所识别的特征来产生多个广播资源的基于图形的模型。管理代理还配置成接收对将信号从多个广播资源的第一广播资源路由到多个广播资源的第二广播资源的请求。管理代理还配置成基于多个广播资源中的每个的所识别的特征来选择经由至少一个额外的广播资源从第一广播资源到第二广播资源的路径,并命令第一广播资源、第二广播资源和至少一个额外的广播资源沿着所选择的路径发送和接收信号。

在一些实施方式中,特征识别输入信号类型和输出信号类型,第一广播资源具有第一信号类型,第二广播资源具有第二信号类型,以及管理代理还配置成选择经由具有第一信号类型的输入信号类型和第二信号类型的输出信号类型的第三广播资源的路径。在其它实现中,管理代理还配置成经由基于图形的模型来识别最短路径,并选择最短路径作为从第一广播资源到第二广播资源的路径。在另一实现中,管理代理还配置成识别经由图形的最少数量的媒介节点或具有最低时延的从第一广播资源到第二广播资源的路径,每个节点代表广播资源。

在一些实现中,所选择的从第一广播资源到第二广播资源的路径经由第三广播资源,且管理代理还配置成响应于确定对在额外广播资源之间的第三路径使用第三广播资源来选择经由第四广播资源从第一广播资源到第二广播资源的第二路径;并命令第一广播资源、第二广播资源和第四广播资源沿着第二路径发送和接收信号。在另一实现中,管理代理还配置成识别经由第三广播资源从第一广播资源到第二广播资源的路径的第一成本;并响应于第一成本超过第三路径的成本来选择第二路径。在另一另外的实现中,管理代理还配置成响应于第一广播资源和第二广播资源小于第三广播资源的所有功能来增加第一成本。在再一另外的实现中,管理代理还配置成基于路径的总长度或路径的总时延来识别第一成本。在又一另外的实现中,管理代理还配置成基于由路径经过的多个资源、由路径经过的多个独特资源或可用的多个替代路径来识别所述第一成本。

附图说明

图1A-1B分别是广播环境的模板和使用这样的模板的环境的示例性实施方式的图解;

图1C是广播环境的模板的示例性实施方式的图解;

图2是广播环境的基于图形的模型的示例实施方式的概要图;

图3A是用于产生、分析和维护广播环境的基于图形的模型的示例性系统的方框图;

图3B和3C分别是图形编辑接口的示例性截屏的左半部分和右半部分;

图3D和3E分别是在实时视图中的图形编辑接口的另一示例性截屏的左半部分和右半部分;

图4A和4B是使用图形建模来管理、监控并控制广播环境的方法的实现的流程图;以及

图5是对实施本文所述的方法和系统有用的示例性计算设备的方框图。

在附图中,相似的参考数字通常指示相同的、在功能上类似的和/或在结构上类似的元件。

具体实施方式

为了示例性目的,下面的描述结合上面提到的附图阐述了各种实施方式,其决不意欲限制所描述的方法或系统的范围。相关领域中的技术人员可以用各种方式修改所述方法和系统而不偏离所述方法和系统的最宽范围。因此,本文所述的方法和系统的范围不应由任何示例性实施方式限制,且应根据所附的权利要求及其等效形式来限定。

本公开描述了用于广播环境的动态的基于图形的建模和分析系统的系统和方法,并描述了知悉在部件之间并穿过图形模型从源(例如摄像机、麦克风、数字播放系统、卫星接收机等)通过处理和路由到目的地(例如记录设备、发射机、网络连接等)的信号流的建模系统。同时,系统可能知悉信号类型和格式,并可实施互连规则(例如HD视频输出连接到HD视频输入,立体声音频输出连接到立体声音频输入,反馈环消除等)。系统还可实时地执行以提供在整个广播环境中多个路由器的动态和帧准确的控制。

图形模型提供灵活性,因为顶点和边可具有多个键-值对和文档。顶点和边还可使用对象建模来支持继承、约束、可重用性、子类、便利性和面向对象建模的其它益处。在一些实现中,可经由NoSQL数据库系统、关系数据库管理系统、图形数据库系统或任何其它类型和形式的数据库系统来产生图形模型。数据库系统可识别对象、类以及类和/或对象的簇。

图形可由具有灵活查询的系统实时地分析,包括:

●什么是在源A和目的地B之间的最短、最便宜的路径?

●我应使用什么路径来将720p60格式的源信号切换到1080i30目的地?

●我如何使用资源来使用混合路由器来执行跨越多个视频信号的音频的16个音轨的无序播放?

●我如何在小于1秒内执行涉及5个路由器的多跳联络线采取?

●什么是最多使用和忙碌的路径?

●我能创建复杂的商业规则来进行在信号路径中的自动可预测的控制吗?

●什么是这个失败的根本原因?

●什么是在系统中的相关警报以及我应聚焦于解决哪些警报?

●如果我移除系统中的这个设备将发生什么?

●我需要做什么来支持添加新的HD通道?

●什么是当我们错过播送广告时的2个星期之前的信号路径和所有设备的状态?

相应地,图形模型的实现开辟了很多其它可能性来执行高级图形分析并创建了关于历史数据的广泛的报告和度量。

在一些实现中,图形模型可包括由一个或多个边E连接的一个或多个顶点V。每个顶点V和边E可包括可以被扩展地定义的一个或多个关键属性或参数-值对。如下面更详细讨论的,图形模型可被建模并与由专用应用、web浏览器或其它这样的应用提供的接口一起在应用级处被使用。相应地,图形模型不需要复杂的额外层来将关系数据映射到具有关系的对象,允许快得多的开发和维护的减少。

模型也可被扩展,且新对象可被包括在模型中而无需改变代码。例如,可使用识别端口和信号类型的现有模板容易地将新产品和设备添加到模型,而不需要为每个对象创建详细的记录。在一些实现中,图形模型可在必要时动态地被装入,提供存储器有效和快速的访问,甚至在有限的系统上,或提供用于有效查询的粒度,甚至对大数据库。

在很多实现中,图形模型可代表系统的静止状态,并可由用户或工程师使用以从单个顶点到包括多个顶点和边互连的整个设备的各种尺寸的模板来产生。在一些实现中,模板可甚至对一般信号路径(例如麦克风到前置放大器到信号处理器到模数转换器,每个至少包括输入和输出的顶点,在每个设备内和设备之间有边互连)更大。图形的例子还可显示随着时间的变化或作为穿过广播环境的信号流,且相应地,模型可具有多个尺寸。

首先参考图1A,示出典型的小广播环境的示例性模板的图解。虽然以自由形式格式示出,但在一些实现中,应用或浏览器可显示以正交或径向格式的图形。为了清楚起见,每个节点102和边104的定制属性没有在图形上示出,但可被链接到每个节点102和边104并可包括多个类型的记录,其包括简单值、键-值或参数-值对、字母数字串、预定类型或范围、文档或嵌入式文档或任何其它类型和格式的数据以及复杂的数据类型,例如列表、图谱、集合等。节点102也可分组成子类别。例如,摄像机、处理器、路由器和服务器都可被识别为类别“设备”的部分,并继承所有“设备”所共有的属性(例如包括至少一个端口顶点等)。在另一例子中,演播室顶点102d可被识别为类别“区域”的部分,并相应地可包括至少一个设备顶点(例如“摄像机模板”、“控制器模板”、“处理器模块”102b等)。类似地,边104可被分组成类别,例如信号类型或格式104d(标清视频、720p60视频、1080i50视频等)的类别、互连类型(例如铜上模拟音频、铜上数字音频例如以音频工程协会(AES)格式的音频、光纤上数字视频、串行数字接口(SDI)互连、互联网协议(IP)或其它分组化连接或任何其它类型和形式的互连,如下面讨论的)的类别、或任何其它这样的类别。在一些实施方式中,类别和属性继承可以是分级的,具有多个级别。

仍然参考图1A且更详细地,节点可在整个图形100中被重新使用,并可被分配唯一的标识符。例如,每个设备(例如摄像机、处理器、路由器、服务器等)可经由边(例如“连接”边104b)连接到端口模块102c。相应地且如所示,图形100可包括多个端口模板102c和相应的连接边102c。如上面讨论的,设备可属于组102a。在一些实现中,组可被绘制为在图形内的区域,虽然在其它实现中且如所示,组可包括经由“属于”边104a而连接的设备所属的节点(例如组模板102a)。类似地,设备可属于经由所有权边104c而连接的区域(例如演播室节点102d)。区域可包括资源的容器,且将常常由于物理位置但也由于功能、所有权或逻辑组织而紧密相关的东西组合在一起。区域可由控制器组管理,意味着在区域中的所有资源都由紧密合作的控制器的单个集群来管理。

资源可包括由区域管理的实体。资源可包括设备、用户和设备图形。例如,简要参考图1C,示出图形100”的另一例子,其示出经由组来管理实体。在所示例子中,区域B拥有用户、设备图形B1和B2以及这些图形参考的所有设备组和设备。设备图形对象120(例如设备图形B1和B2或A1-A3)代表由系统定义的配置,并包括设备组122以及它们的互连,其继而包含设备实例124、它们的输入和输出物理端口和它们的互连,如图1A-1B所示。设备可被分组在可包括一个或多个设备124的设备组122中。类似地,控制器组126可包括一组一个或多个控制器(例如物理或虚拟服务器、系统控制器、自动化系统等)。在一些实现中,在设备组中的设备和/或在控制器组中的控制器可以是负载平衡的或在故障的情况下被用作热备份以提供冗余。

共享设备128可包括用于使信号对下游区域变得可用的伪设备或虚拟设备。共享模板可以是可用于创建包含单个共享“设备”128的设备组122的设备模板。来自于设备图形中的设备组122的输出可连接到共享设备组,其可包括在设备图形中的输入。每个这样的连接可导致导入模板在其它区域中变得可用。

类似地,导入器130是用于从上游区域接收信号的伪设备或虚拟设备。导入器130可经由导入模板来创建,并可维护信息的两个基本要素:导入器130正导入的上游设备组,以及共享128,它正通过该共享128导入它。在区域中的导入模板显示在其他区域中共享的设备组122。导入模板可被投入到设备图形内以创建导入器实例130。导入模板可包括信息的两个基本要素:共享对象128和被共享的设备组(因为多个设备组可连接到共享,导致多个导入模板)。在图1C中所示的示例性实施方式中,共享设备128可导致两个导入模板,因为它链接到两个上游设备组122:“路由器”和“Proc”设备组。

如图1C所示,在很多实现中,每个区域可具有被定义为“活动(live)”图形132的一个设备图形。活动图形可包括区域的控制器组当前通过控制各种交换机和路由器正实施或实现的配置。设备可被考虑为活动的,如果它们由当前活动的设备图形提到。

工作组134代表可能的系统配置,其可以是当前活动配置、离线配置、工作拷贝、版本化拷贝或其组合。工作组134包括一个或多个设备图形,包括在当前区域图形中的每区域一个设备图形。工作组134可包括列表或数据表,其包括到一个或多个设备图形的显式直接链接和对未指定的那些的当前活动132的设备图形的组合。工作组134提供上下文以评估它定义的可能系统配置的有效性和一致性。在一些实现中,工作组134可通过允许图形部署的虚拟重路由和分析来允许某个水平的“如果…将会怎么样”情形评估。在一些实现中,工作组134可按照名称保存到存储库用于以后取回(recall),并可被称为节目136。节目136不与特定的用户相关,与典型的工作组134不同,且可以是任何用户在取回时可访问的。在取回期间,任何显式设备图形链接可变成活动132,如果它们不是已经是活动;具有未指定的设备图形的其余区域可保持原样。节目136的配置也可包括各种设置和行动,其在节目变成活动时需要被应用或触发(例如“取回在这个处理器上的用户配置文件#2”、“激活路由器保留条款#1”、“在多浏览器上加载布局A”等)。由于节目136本身是工作组134,可能在任何时间评估节目的配置的一致性,包括恰好在实际上触发任何切换或命令之前分析将节目实现为活动组的效应。

在一些实现中,管理员可通过选择包含控制器组、一个或多个区域和用户的区域图形来创建图形,例如图1C所示的图形。管理员可接着通过添加几个互连的设备组(例如2个摄像机、1个路由器、3个处理器,如所示)来编辑设备图形(例如区域A的设备图形A1)。管理员可添加共享设备组,其将自动创建共享设备128。管理员可将共享组连接到路由器和处理器设备组。这将使系统为来自区域A的路由器和来自区域B中的区域A的处理器自动创建两个相应的导入模板。管理员可切换到区域B并编辑设备图形(例如设备图形B2)以添加交换机设备组。管理员可接着使用导入模板来将来自区域A的处理器添加到区域B,使系统创建导入器设备实例130。来自区域B的交换机可接着连接到来自区域A的设备组的处理器。

在一些实现中,共享信号的不同区域可由不同的控制器管理。相应地,为了允许来自其它区域的导入模板的使用,来自导入器设备实例130的链接可被处理为远程链接而不是在拓扑内的本地边。

返回到图1A,如所示,图形100可示出从源到目的地的信号流的潜在路径。源和目的地都可以是设备,且相应地可以是节点(例如经由“是”边连接到源模板102e节点的“摄像机模板”节点102g;或经由“是”边连接到目的地模板102f的“服务器模板”节点102h)。用户可直观地遵循从源节点到目的地节点的信号流,且系统可动态地识别最短路径,在出故障的设备周围路由,识别在设备之间的公共属性,例如所有权、格式类型、连接类型等,或执行任何其它这样的特征。

在图形内的每个模板节点可代表实体类型,例如设备、端口、源、目的地、信号处理器、媒体源、用户或操作员、物理或虚拟区域或任何其它类型和形式的设备。这些模板可组合以创建代表广播环境的逻辑或物理基础设施的端对端路径模板。其它数据结构、模板和属性可被添加到图形以对逻辑结构内的实体进行分组、加标签并组织。例如,标签对象可包括由用户或管理员为了图形的容易搜索而创建的元数据,并可链接到实体对象。

从节点到节点的信号流可以是经由各种类型的互连,包括SDI互连,例如由电影电视工程师协会(SMPTE)公布的259M标准或SMPTE 372M双链路互连格式或任何其它类型的串行或并行格式。这样的格式除了音频和/或视频以外还可包括辅助数据通道。在其它实现中,信号流可以经由分组化协议,例如经由双绞线电缆(例如1000BASET以太网)、光纤或任何其它类型和形式的物理互连的IP数据。在一些这样的实现中,交换机或路由器可作为节点被包括在图形内,而在其它实现中,交换机或路由器可被认为是与基于信号流的图形模型分离的物理层的部分。这样的互连类型可向系统提供动态重路由功能,以及经由在广域网上的虚拟专用网提供远程互连,等等。

图1B是显示图1A的系统的实例的示例图形100’的图示,特定的设备和节点被标识出。如所示,摄像机102g可以是“新闻HD”类别102e的成员(由“是”边连接显示),并可相应地继承类别102e的所有属性,包括属于设备的摄像机(CAM)类别,由用户或“操作员”操作,以及继承各种音频和视频格式和级别102f、102f’。类似地,摄像机102g也可属于“演播室摄像机”组102a(由“属于”边连接104a显示)。摄像机102g可连接到或更常见地具有内部端口102c,其可连接到属于演播室处理器组的处理器。处理器的输出端口102c可连接到核心路由器,其本身可连接到新闻服务器102h的端口102c,端口102c可以是高清(HD)5.1目的地102f和标清(SD)立体声目的地。未示出的其它源和目的地可包括服务器、工作站、桌上型机器或模块化系统,例如刀片服务器或安装在底盘或框架上的卡上系统、基于卡片的播放设备或任何其它类型和形式的源或目的地。在很多实现中,图形100、100’的每个实例可具有单个源(例如连接到源模板102e的摄像机1 102g)并可具有一个或多个目的地。信号流可快速被可视化为从源到目的地的越过图形的流。

相应地,经由图形100’,可通过遍历图形来快速执行复杂的分析,例如“谁是CAM 1的操作员”、“什么是属于支持HD 5.1并具有光纤连接的演播室的所有摄像机”等。查询可嵌套有用作对下一查询的输入的一个查询的结果。

图2是示出基于图形的模型的节点和边连接的概要图200。如所示,第一顶点202可包括逻辑源或目的地(例如摄像机或播放服务器或记录服务器、发射机、上行链路等)。源或目的地顶点202可包括一个或多个唯一标识符、名称、描述或别名的值或与一个或多个唯一标识符、名称、描述或别名的值相关联。顶点202可包括标记、串或其它预定值以指示顶点是源还是目的地。

如所示,顶点202可经由相应的一个或多个边204a-204n连接到一个或多个其它顶点206a-206n。在很多实现中,边204a-204n(以及边208a-208b、210a-210b和216a-216b)可包括标签以识别在顶点之间的关系的种类,但可以不包括任何其它属性。在其它实现中,边可具有另外的属性,例如唯一标识符、格式、类型、方向性约束或任何其它类型或形式的属性。

在所示例子中,源或目的地节点202可经由相应的边204a-204n映射到一个或多个虚拟级映射206a-206n。虚拟级映射可代表指定的输入或输出通道,例如音频通道或视频通道。如所示,每个虚拟级映射206a-206n可包括唯一标识符、名称、描述或任何其它这样的信息或与唯一标识符、名称、描述或任何其它这样的信息相关联。源或目的地节点202可映射到多个虚拟级映射206,允许用户使用单个按钮按下来切换多个级别(和相应地端口和/或信号)。

每个虚拟级映射206a-206n可经由端口分配边208a-208b被分配到物理端口212a-212b。如同其它顶点一样,物理端口212a-212b可与唯一标识符、名称、描述或任何其它这样的信息相关联。在很多实现中,物理端口212a-212b也可由方向(例如输入或输出)以及代表物理格式的物理级标识符(例如光纤连接器、XLR模拟音频连接器、BNC视频连接器等)识别。类似地,每个虚拟级映射206a-206n可经由分配边210a-210b被分配到虚拟级顶点214a-214b。除了唯一标识符、名称和/或描述以外,每个虚拟级顶点214a-214b还可包括关于所映射的通道的信息(例如信号类型、格式、增益控制和/或任何其它类型和形式的通道或格式相关参数)或与关于所映射的通道的信息相关联。此外,如所示,每个物理端口212a-212b可经由父设备边216a-216b与设备218a-218b相关联。设备顶点218a-218b可包括唯一标识符、名称和/或描述和在一些实施方式中的设备类型,或与唯一标识符、名称和/或描述和在一些实施方式中的设备类型相关联。

相应地,设备可与端口相关联,端口可与通道映射和参数相关联,并可被识别为特定信号流的源或目的地。每个节点可继承所连接的节点的属性,相应地创建可应用于任何信号流的一组属性。

可由系统使用用于解释基础数据库模型的任何适当的系统或应用来产生图形,例如图1A和1B所示的那些图形。例如,在一个实现中,图形可以以GraphML格式产生并使用任何类型和形式的图形可视化工具来被可视化。

现在参考图3A,其被示为用于产生、分析并维护广播环境的基于图形的模型的示例性系统300的方框图,系统300有时被称为管理系统、管理代理、资源管理器或按照任何其它类似的术语。所示系统可由客户端或服务器以仅仅较小的变化或通过例示具有不同属性的系统来使用。公共核心数据模型用于服务器侧和客户端侧操作。简要地概述,系统包括公共模型堆栈302和分布式服务模块304。系统还包括分布式数据服务306,其提供数据库应用编程接口(API)308和图形表示API 310。系统还包括帧接口312、域模型引擎314和视图模型引擎316。应用(例如专用图形浏览器和交互作用应用318或web浏览器应用320)用于与基于图形的模型交互作用并观察基于图形的模型。在很多实现中,系统300可包括模型视图viewmodel(MVVM)架构以分离用户接口与模型逻辑。

域模型引擎314是用于访问数据库并创建数据对象以由应用318、320使用的应用、服务、服务器、例程、后台程序或其它可执行逻辑。域模型引擎314向视图模型引擎316提供可观察的图案,视图模型引擎316可更新用户接口、操纵用户接口事件和/或以其他方式引导应用318、320更新可视化图形模型。类似地,视图模型引擎316可包括用于渲染用户接口的应用、服务、服务器、例程、后台程序或其它可执行逻辑。由视图模型引擎316产生的所渲染的用户接口可以以任何类型和格式,例如JavaFX格式视图或超文本标记语言v5(HTML5)格式视图。

在一些实现中,域模型引擎314可实现用于数据配置和控制的接口。例如,在一个这样的实现中,可对支持切换的任何设备利用基本切换接口。控制面板可被提供以控制任何这样的设备,如路由器。其它接口可构建在切换接口的顶部上,使得公共设备控制API可实现用于功能(例如对信号加标签、命名设备、锁住交换机等)的多个接口。在一些实现中,一般的接口或一般的设备控制接口可用于发现可被控制的设备的参数。域模型引擎314也可经由用户接口提供动态监控。

视图模型引擎316和域模型引擎314可包括用于暴露图形(作为相互关联的域对象的集合)的帧接口312或API。帧接口312可提供数据概要以将图形模型的方面表示为对象和关系,用于更直观的控制和分析。

系统可包括分布式服务304,例如包括web服务器的一个或多个服务器、远程桌面或可视化服务或用于向应用318、320提供对模型的访问的任何其它类型和形式的分布式服务。类似地,分布式数据服务306可提供一个或多个数据服务器,其用于提供数据,包括构成图形模型的基础的数据库。可提供数据库API 308和/或图形表示API 310,用于通过应用318、320和/或视图模型引擎316和域模型引擎314来访问并编辑数据库。这样的API可以以任何类型和形式,例如代表性状态传输(RESTful)接口或任何其它这样的接口。

如上面讨论的,在系统内的图形模型可以是非常简单的,具有一组图形、顶点和边,具有可从简单的键-值对扩展到更复杂的结构——包括嵌入式文档、图谱、表格或其它这样的数据——的属性。可从图形模型内的顶点和边得到所有其它域模型,包括设备、链路、路径、源、目的地、区域。

图形可为了历史而与每当在从源到目的地的信号路径内的某些事情改变时产生的拷贝放在一起。在一些实现中,图形可被保持数周、数月的时期或任何其它这样的持续时间。在一个实现中,事件顶点可用于每个暂时实例或配置,具有到在所述配置内的顶点的边连接。这允许用户观看信号路径的完整状态并在用户接口内在任何指定的过去时间重新创建它。事件顶点也可用于允许用户创建虚拟重配置或“如果…将会怎么样”情形,其可按需要被取回并快速实现。

公共模型堆栈302可包括用于支持域模型引擎314和视图模型引擎316的特定实体和接口的下层架构模型。公共模型堆栈302可包括数据库、数据文件、数据访问对象或其它这样的数据,并可定义代表系统内的顶点、边和图形的基本类别。

如上面讨论的,域模型引擎314可提供用于在图形模型上执行查询和分析的功能。例如,域模型引擎314可允许在广播环境内的约束的查询,例如信号是否可响应于可用的信号路径、格式、转码器(如果需要)等而从设备A的指定端口切换到设备B的指定端口。在一些实现中,数据库的查询可以是多形态的,例如“得到设备,其中…”或“得到路由器,其中…”等。在很多实现中,可在复杂的搜索期间(例如当历史数据例如日志被搜索时)返回部分结果。可首先显示最近的信息,且当期望结果被发现时查询的用户可取消进一步的搜索。

在一些实现中,查询可使用路径发现和确定算法,包括单次交易算法,例如Bron-Kerbosch算法、基于度中心性的算法、A*搜索算法、广度优先搜索算法、深度优先搜索算法、最短路径算法、Bellman-Ford算法、Dijkstra算法或任何其它这样的算法;或分布式顶点中心算法,例如顶点中心网页排名算法或任何其它类型和形式的算法。这样的路径发现查询可用于识别警报、检修故障、找到信号路由的最低时延路径、识别潜在的循环或执行任何其它这样的任务。例如在一个这样的实现中,用户可请求将720p视频信号源切换到1080i信号目的地。系统可使用路径发现查询来确定在源和目的地之间的最短路径,其经由具有720p输入和1080i输出的升档视频处理器行进。在一些另外的实现中,系统可在必要时动态地切换并重新路由信号以释放信号路径或处理器来执行所请求的任务。例如,如果第一信号正穿过处理器流到目的地,仅仅因为它是最低时延路径的部分,但不需要处理器的资源,则系统可经由稍微更长的路径重新路由第一信号以释放处理器用于将第二信号升档。

图形模型和模型引擎的多个版本可经由一个或多个虚拟机或引擎的不同实例在服务器上同时运行。这可提供动态模块系统,允许广播环境的重配置而不重新启动系统。例如,服务器可包括执行特定的功能(例如SD-HD转换器、混合器、路由器等)的多个媒体播放卡。如果管理员希望安装具有接口软件的较新的不兼容版本的额外播放卡,则不同版本的模型引擎的多个实例可同时运行,允许与每个卡或设备通信而无需整个系统的重新启动或遗留部件的升级。

图3B和3C分别是图形编辑接口330A-330B的示例性截屏的左半部分和右半部分。如图3B所示,有时被称为拓扑配置器的用户接口330A的第一部分可包括基于图形的示意性工具以对系统拓扑和互连建模。在一些实施方式中,用户可将按照类别组织的设备组从库或可滚动列表拖放到图形内,或可从手动输入或自动发现的设备组的列表选择。设备组可包括输入和输出端口,其可以是单向或双向的。例如,串行数字接口可以是单向的,而基于以太网或互联网协议的接口可以是双向的。新设备类型可由用户建模,且用户可复制来自现有设备类型的各种属性。在一些实现中,设备类型可组合或分离。

在连接模式中,显示兼容端口,其示出在图形中的哪些设备可被互连。用户接口330A可提供多种方式来使设备组互连。在第一方法中,用户可在端口上点击(或轻击,经由基于触摸的接口)。在第二方法中,用户可点击或触摸并拖动以连接两个端口。在第三方法中,在输入“连接”模式之后,用户可一起拖动并触摸节点以创建连接。这在将很多设备连接到另一设备(例如SDI路由器或IP交换机)时可能是特别有用的。

用户也可使用如图3C所示的属性编辑器330B来成批地或单独地配置设备组。可在示意图中直接地(例如经由弹簧或滑块控件)来指定设备数量。在其它实现中,用户可经由鼠标/键盘或触摸/虚拟键盘与控件交互作用。

图3D和3E分别是在图形编辑接口的另一示例性截屏的左半部分和右半部分。一旦设备被配置且互连被指定,用户就可使用如图3D和3E所示的物理连接用户接口340A-340B来指定各个端口连接。用户接口340A-340B可响应于用户对设备的选择来显示每个设备的输入和输出端口。过滤器可用于搜索和/或限制所显示的端口,例如端口类型过滤器(例如SDI或IP);端口的状态(例如被连接、未连接、这两者);活动信号的状态(例如格式、存在、错误等);或任何其它类型和形式的信息。用户也可通过遥摄和变焦或使用栅格控制来导航以选择显示特定的卡和/或端口。在一些实现中,可提供搜索框,使得用户可按照ID号、设备名称或任何其它这样的信息来搜索。

在一些实现中,用户可选择多个端口,用于经由控制-点击或移动-点击、多点触摸接口或其它这样的接口来互连。用户也可缩小或放大以为任何端口显示更多或更少的信息。在一些实现中,用户可通过在设备上点击来在图形或示意图中的设备(在图3D的左边可见)之间导航,而在其它实现中,用户可通过在接口340A-340B中选择从另一设备到设备的物理连接来选择设备。在一些实现中,用户可以右击、触摸并保持或以其他方式选择设备以在设备上设置焦点,允许另外的交互作用而不需要指定设备。在一些实现中,用户接口330A-33B或340A-340B可识别错误或规则违反,例如未连接的端口、太少的设备、连接循环、没有卡的帧或其它这样的问题。

在活动模式中,当信号沿着拓扑切换时,用户接口330A-33B或340A-340B可基于在系统中的切换网络的状态实时地显示操作视图。例如,在节点之间的路径可被加亮、着色、制成动画和/或加上阴影以表示信号流。如上面讨论的,在其它实现中,用户接口330A-33B或340A-340B可用于显示历史系统配置,允许例如导致错误的过去条件的可视化。

图4A是使用图形建模来管理、监控并控制广播环境的方法400的实现的流程图。简要地概述,在步骤402,在一些实现中,管理服务器或代理可传输发现信号或以其他方式发现在环境中的广播资源。如果响应被接收到,则在步骤404,管理代理可记录资源的特征。这可重复,直到所有资源都被识别出为止。在步骤406,管理代理可产生表示广播环境及其互连的图形模型。

在步骤408,管理代理可接收路由请求或对将信号从第一广播设备或资源连接或路由到第二广播设备或资源的请求。在步骤410,管理代理可识别将信号从第一资源路由到第二资源所需的特征。

在步骤412,管理代理可选择从第一广播资源到第二广播资源的路径。在步骤414,在一些实施方式中,管理代理可识别和/或调节选定路径的成本。在一些实现中,管理代理可确定路径是否是最低或最小成本路径。如果否,则步骤412-414可重复。如果路径是最小成本路径,则管理代理可确定该路径是否当前在使用中。如果是,在一些实施方式中,管理代理可确定选定路径对第一和第二广播资源是否具有比当前使用路径的资源的路径的成本更低的成本。如果否,则步骤412-414可对下一最低成本路径重复。在步骤416,可指定路径用于使用,且管理代理可将一个或多个路由或配置请求发送到广播资源以发起路径的使用,用于将信号从第一广播资源路由道第二广播资源。

仍然参考图4A且更详细地,在步骤402,在一些实现中,管理服务器或代理可传输发现信号或以其他方式发现在环境中的广播资源。在资源经由IP网络被连接的一些实现中,发现资源可包括经由网络来传输或广播发现分组或类似的请求。在其它实现中,可查询在系统内的资源的子集,例如IP交换机或路由器或可具有关于连接到每个交换机或路由器的源和/或目的地的信息的音频或视频路由器。例如,路由器可使用所连接的资源的标识被预先编程,并可被查询以取回这些标识。在类似的实现中,路由器可按照类型(例如HDMI、平衡模拟音频、AES/EBU数字音频等)识别所连接的信号源和目的地。在又一些其它实现中,可通过在管理代理的控制下命令交换机资源以做出各种连接并确定有效信号是否经由交换机被传递来执行自动发现过程。例如,可命令交换机将第一输出连接到第一输入,并报告有效音频或视频信号是否经由该连接被提供。每个输入可以连续地连接到每个输出,反之亦然,以便探查每个资源的能力。在又一些其它实现中,管理员或工程师可手动地输入每个广播资源的标识和/或它们的特征。在一些实现中,管理代理可提供用户接口,如上面讨论的,用于允许管理员添加资源并配置它们的特征。

在使用发现分组、信号或过程的实现中,可接收响应,该响应包括关于资源和/或它的特征的信息,例如设备标识符或名称、设备类型、输入的数量和类型(例如数字视频、数字音频、模拟音频、HDMI、H.264、IEEE 1394等)、输出的数量和类型、处理能力(例如帧再同步、音频或视频编码或解码、复用或解复用、混合、均衡、环绕声编码、转码或转换、升档或降档等)、从输入到输出的时延(有和/或没有处理被施加)或任何其它这样的特征。在其它实现中,特征可从路由器或交换机或其它设备被取回或可由管理员或工程师手动输入。在步骤404,管理代理可记录资源的特征。特征可被记录在数据库、数据表格、索引、平面文件或任何其它类型和形式的数据结构(例如上面关于图2讨论的数据结构)中。步骤402-404可重复,直到所有资源被识别出为止。在步骤406,管理代理可产生代表广播环境及其互连的图形模型。图形模型可经由如上讨论的图形API来产生,并可经由用户接口显现给用户或管理员,如上面讨论的。图形模型的节点或顶点可代表广播资源(例如源、目的地、路由器、处理器等),且边可代表在资源之间的物理互连。在一些实现中,每个边可具有一个或多个特征,例如能够由该边承载的信号的类型(例如平衡模拟音频、数字视频等)以及长度、时延或任何其它这样的信息。

如上面讨论的,图形可用于识别信号路由可能性并提供基于路径的路由和管理。在步骤408,在一些实现中,管理代理可接收路由请求或对将信号从第一广播设备或资源连接或路由到第二广播设备或资源的请求。例如,该请求可以是将信号从摄像机路由到记录设备或从卫星接收机路由到多功能浏览器。该请求可由用户或操作员、由管理员、由自动化系统或任何其它这样的实体提供。在一些实现中,可经由管理代理的用户接口来做出该请求,而在其它实现中,可经由网络接口或API调用从另一应用接收该请求。

在步骤410,管理代理可识别将信号从第一资源路由到第二资源所需的特征。如上面讨论的,第一广播资源和第二广播资源可具有各种特征,其可以是或可以不是互补的。例如,如果第一资源具有不平衡的模拟输出而第二资源具有不平衡的模拟输入,则信号可经由在步骤412识别的路径容易地从第一资源路由到第二资源(假设足够的路由器或互连存在)。然而,如果第一资源具有不平衡音频输出的8个通道且第二资源具有经由光纤的多通道AES10,则这两个特征不是互补的。替代地,管理代理可识别具有互补的输入和输出的另一资源或多个资源,使得信号可经由执行任何必要的信号转换的其它资源从第一资源提供到第二资源。例如,管理代理可识别具有模数音频转换器的资源。类似地,在另一实现中,第一资源可输出720p60格式视频,而第二资源可接收1080i30格式视频作为输入。管理代理可相应地识别能够升档和降低帧速率的视频转换器。

在一些实现中,如果不能识别具有对应于第一资源和第二资源的输入和输出特征的单个资源,在步骤412,管理代理可反复搜索图形以查找资源对,该资源对一起具有对应于第一资源和第二资源的输入和输出特征以及在它们之间的互补特征。在一个这样的实现中,在第一资源输出第一格式的信号以及第二资源输入第二格式的信号的情况下,管理代理可识别具有能够接收第一格式的信号的输入的一组资源。从所识别的组中,管理代理可确定任何资源是否具有能够提供第二格式的信号的输出。如果是,则这样的资源可用作第一和第二资源的媒介物。如果否,在一个实现中,管理代理可识别具有能够提供第二格式的信号的输出的第二组资源。管理代理可比较第一组和第二组资源以找到能够经由第三格式传递信号的一对资源。该对可接着用作第一和第二资源的媒介物。如果必要,这个过程可通过从第一组和第二组所识别的资源选择一对资源并识别另外组的媒介资源(就好像所选择的对是第一和第二资源一样)来迭代地重复。例如,给定源A和目的地Z,管理代理可识别能够从源A接收信号的媒介物B和能够将信号提供到目的地Z的媒介物Y。如果媒介物B和Y不共享公共信号特征,则管理代理可识别能够从B接收信号的媒介物C和能够将信号提供到Y的媒介物X。这可对资源B和Y的不同对或对媒介物对的不同迭代重复,直到从第一资源到第二资源的完整信号路径可被识别出为止。该路径可在步骤412被选择为从第一资源到第二资源的潜在信号流路径。

在很多实现中,很多潜在信号流路径经由不同的媒介资源、交换机等存在于广播环境中。例如,第一路径可直接从第一资源到第二资源。第二路径可经由第三资源,例如交换机。第三路径可经由第四资源(例如编码器)和第五资源(例如解码器)。可经由在环境内的资源的任何组合来潜在地路由信号。然而,每个信号可具有与它相关联的不同成本,且相应地,路径可从最合乎需要或最有效的到最不合乎需要或最不有效的进行排列。在一个这样的实现中,可基于路径长度例如由路径经过的顶点和边(或资源和互连)的数量来确定成本。在这样的实现中,最短路径优先算法可用于选择潜在路径,例如Dijkstra算法,路径一旦由其它资源利用就被移除。在另一这样的实现中,对每个路径可基于该路径的总时延来确定成本。沿着路径经过的每个资源和互连可增加小数量的时延,在很多广播环境中常常是毫秒数量级。当更多的资源被经过时,时延可接近或超过视频的全部帧,可能导致嘴唇同步误差或需要其它信号的单独的延迟和再同步。在又一实现中,可基于具有相同能力的替代资源是否是可用的或媒介设备的能力是否未由路径充分利用来确定路径成本。例如,如上面讨论的,在一些实现中,媒介设备或资源可用于从第一信号格式转换成第二信号格式。这样的媒介设备典型地具有可被利用的其它额外的功能或处理能力,且相应地,对路径的成本计算可增加,如果路径未利用那些特征。例如,很多数字音频记录设备能够接收模拟输入并提供数字输出。虽然这些设备可在通过模式中被用作简单的模数转换器,这并不利用设备的音频记录和播放能力。相应地,经由这样的资源的路径可被认为比经由没有其它功能的简单模数转换器的路径更昂贵。这允许管理代理自动选择媒介资源来保持额外的功能是可用的,直到没有其它选项是可用的为止。同样,在一些实现中,经由指定类型的最后一个资源的路径的成本可以更昂贵。例如,给定具有从一种信号类型转换到另一种信号类型的能力以及其它处理功能的三个潜在媒介资源,且资源中的两个具有相同的类型(例如记录器、均衡器等),管理代理可增加使用第三资源的成本或以其他方式选择两个相同的资源之一来对随后的路由请求维持灵活性。

相应地,在步骤414,在一些实现中,管理代理可识别和/或调节选定路径的成本。简要参考图4B,其示出用于在步骤414调节路径的成本的方法450的一个实现。一旦在412选择了路径,系统就可确定具有相同功能的替代资源是否是可用的。如果否,则在步骤452,路径或在路径内的资源的成本可增加预定的数量。管理代理也可确定资源是否被充分利用,或资源的功能是否将在沿着路径的信号流期间被利用(例如编码或解码功能、记录功能等)。如果是,则路径或资源的成本可在步骤454降低预定的数量。在其它实现中,可基于使用、冗余、负载平衡或其它特征来应用其它类似的成本操纵。

参考图4A,在一些实现中,管理代理可确定路径是否是最低或最少成本路径。可在不同的实现中使用各种最短路径或图形搜索算法,包括Dijkstra算法、Bellman-Ford算法、回溯算法或用于经由顶点和边的权重或成本的图形遍历的任何其它类似的算法。在一些实现中,为了确定最低成本路径,多个路径可被识别、如果必要的话在步骤414被调节、并被比较,直到最少成本路径被识别出为止。如上面讨论的,成本可基于所遍历的资源或节点的数量、总时延、功能的唯一性或路径节点的未使用的功能或任何其它这样的特征。

如果路径是最少成本路径,则在一些实现中,管理代理可确定路径或路径的一部分是否当前正用于另一信号流或路由。如果是,则在一些实现中,管理代理可确定选定路径对第一和第二广播资源是否具有比当前使用路径的资源的路径的成本更低的成本。例如,如果选定路径已经用于路由在另一对资源之间的信号,但对于那些资源,该路径具有较高的成本(例如另一对资源不使用媒介资源的所有功能,路径对于另一对资源而言比第一和第二广播资源更长,等等),则在一些实现中,管理代理可将路径的使用切换到第一和第二广播资源,并为另一对资源选择新路径。这允许管理代理动态地调节到变化的条件并找到最佳路由配置。在另一实现中,管理代理可确定在第一和第二广播资源的选定路径和替代路径之间的成本差异是否大于在另一对资源的选定路径和替代路径之间的成本差异,并响应于该确定来切换路径的使用。相反,在一些实现中,如果使用第一和第二广播资源的更低效或更长路径的额外成本小于使用另一对资源的替代路径的额外成本,则管理代理可确定第一和第二广播资源应使用替代路径。

在步骤416,一旦路径被选择并被确认为可用的,管理代理可以将一个或多个路由或配置请求发送到广播资源以发起路径的使用,用于将信号从第一广播资源路由到第二广播资源。发送路由或配置请求可包括将命令传输到一个或多个路由交换机、IP交换机或其它切换实体,和/或将配置命令传输到一个或多个资源(例如以选择输入或输出格式,执行转码,等等)。

相应地,经由在本文讨论的系统和方法,广播环境可经由图形模型被映射并使用基于加权边和顶点搜索算法动态确定的路由功能而被管理。系统可提供在故障的情况下的自动重路由、优化和负载平衡,并满足具有多个级别的媒介转码的复杂的路由要求。

如上面讨论的,可在各种计算设备——包括服务器、工作站、桌上型或膝上型计算机、虚拟服务器或云服务器或任何其它类型和形式的计算设备——上维护或执行系统。图5是对实施本文所述的方法和系统有用的示例性计算设备的方框图。计算设备500可包括膝上型计算机、桌上型计算机、由物理计算机执行的虚拟机、平板计算机(例如由苹果有限公司制造的iPad平板计算机或基于Android的平板计算机,例如由三星有限公司或摩托罗拉有限公司制造的平板计算机)、智能电话或PDA(例如由苹果有限公司制造的iPhone品牌/基于iOS的智能电话、基于Android的智能电话例如三星Galaxy或HTC Droid智能电话)、或任何其它类型和形式的计算设备。计算设备500可包括中央处理单元501;主存储器单元502;视觉显示设备524;一个或多个输入/输出设备530a-530b(通常使用参考数字530来提到),例如键盘526,其可以是虚拟键盘或物理键盘,和/或指示设备527,例如鼠标、触控板或电容或电阻单点或多点触摸输入设备;以及与中央处理单元501通信的高速缓存存储器540。

中央处理单元501是对从主存储器单元502和/或存储装置528取出的指令做出响应并进行处理的任何逻辑电路。中央处理单元可由微处理器单元提供,微处理器单元例如是由加利福尼亚州圣克拉拉的因特尔公司制造的处理器;由伊利诺斯州绍姆堡的摩托罗拉公司制造的处理器;由加利福尼亚州库珀蒂诺的苹果有限公司制造的处理器,或任何其他单核或多核处理器,或能够如本文所述进行操作的任何其它处理器,或两个或更多个单核或多核处理器的组合。主存储器单元502可以是能够存储数据并允许任何存储位置直接由微处理器501访问的一个或多个存储器芯片,例如任何类型的随机存取存储器(RAM)。在一些实施方式中,主存储器单元502可包括高速缓存存储器或其它类型的存储器。

计算设备500可支持任何适当的安装设备516,例如软盘驱动器、CD-ROM驱动器、CD-R/RW驱动器、DVD-ROM驱动器、各种格式的磁带驱动器、USB/闪存设备、硬盘驱动器或适合于安装软件和程序(例如任何客户端应用555)的任何其它设备,或其部分。计算设备500还可包括用于存储操作系统和其它相关软件并用于存储应用软件程序(例如与客户端应用555有关的任何程序)的存储装置528,例如一个或多个硬盘驱动器或独立磁盘冗余阵列。客户端应用555可包括web浏览器、应用或用于访问由如上面讨论的媒体分发和管理系统提供的用户接口的其它接口。

此外,计算设备500可包括网络接口518以通过各种连接——包括但不限于标准电话线、LAN或WAN链接(例如以太网、T1、T3、56kb、X.25)、宽带连接(例如ISDN、帧中继、ATM)、无线连接、(802.11a/b/g/n/ac、蓝牙)、蜂窝连接或上述连接中的任一个或全部的某种组合——通过接口连接到局域网(LAN)、广域网(WAN)或互联网。网络接口518可包括内置网络适配器、网络接口卡、PCMCIA网卡、卡总线网络适配器、无线网络适配器、USB网络适配器、蜂窝调制解调器或适合于将计算设备500通过接口连接到能够通信并执行本文所述的操作的任何类型的网络的任何其它设备。

各种各样的I/O设备530a-430n可存在于计算设备500中。输入设备包括键盘、鼠标、轨迹板、轨迹球、麦克风、绘图平板计算机和单点或多点触摸屏。输出设备包括视频显示器、扬声器、头戴式耳机、喷墨打印机、激光打印机和染料升华打印机。I/O设备530可由如图5所示的I/O控制器523控制。I/O控制器可控制一个或多个I/O设备,例如键盘526和指示设备527,例如鼠标、光笔或多点触摸屏。此外,I/O设备还可为计算设备500提供存储装置528和/或安装介质516。计算设备500可提供USB连接以接收手持USB存储设备(例如由加利福尼亚州洛斯阿拉米托斯的Twintech工业有限公司制造的设备的USB闪存驱动线)。

计算设备500可包括或连接到多个显示设备524a-524n,其每个可具有相同或不同的类型和/或形式。如此,I/O设备530a-530n中的任一个和/或I/O控制器523可包括任何类型和/或形式的适当硬件、体现在有形介质上的软件或硬件和软件的组合以支持、启用或提供由计算设备500对多个显示设备524a-524n的连接和使用。例如,计算设备500可包括任何类型和/或形式的视频适配器、视频卡、驱动器和/或库以通过接口连接、通信、连接或以其他方式使用显示设备524a-524n。视频适配器可以包括多个连接器,以通过接口连接到多个显示设备524a-524n。计算设备500可包括多个视频适配器,每个视频适配器连接到一个或多个显示设备524a-524n。计算设备500的操作系统的任何部分可配置成使用多个显示设备524a-524n。此外,一个或多个显示设备524a-524n可由一个或多个其它计算设备(例如经由例如网络连接到计算设备500的计算设备500a和500b)提供。这些实施方式可包括在有形介质上体现的任何类型的软件,其被设计和构造成使用另一计算机的显示设备作为计算设备500的第二显示设备524a。本领域中的普通技术人员将认识到并意识到计算设备500可被配置成具有多个显示设备524a-524n的各种方式和实施方式。可经由本地通信总线540来连接各种部件,本地通信总线540可包括任何类型和形式的模块间或部件间通信总线,包括USB、PCIe或任何其它这样的总线。

在图5中描绘的种类的计算设备500一般在操作系统(例如任何版本的Windows操作系统、不同版本的Unix和Linux操作系统、Macintosh计算机的任何版本的Mac 任何嵌入式操作系统、任何实时操作系统、任何开源操作系统、任何专用操作系统、移动计算设备的任何操作系统或能够在计算设备上运行并执行本文所述的操作的任何其它操作系统)的控制下操作。

计算设备500可具有与设备一致的不同的处理器、操作系统和输入设备。例如在一个实施方式中,计算机500是包含多点触摸屏的苹果iPhone或摩托罗拉Droid智能电话或苹果iPad或三星Galaxy Tab平板计算机。而且,计算设备500可以是任何工作站、桌上型计算机、膝上型计算机或笔记本计算机、服务器、手持计算机、移动电话、任何其它计算机或能够通信并具有足够的处理器能力和存储器容量以执行本文所述的操作的其它形式的计算或电信设备。

应理解,上面所述的系统可提供那些部件中的任一个或每个的多个实例,且这些部件可设置在独立机器上或在一些实施方式中在分布式系统中的多个机器上。上面所述的系统和方法可被实现为使用编程和/或工程设计技术来产生在有形介质上体现的软件、固件、硬件或其任何组合的方法、装置或制品。此外,上面所述的系统和方法可被提供为在一个或多个制品上或中体现的一个或多个计算机可读程序。在本文中使用的术语“制品”意欲包括可从一个或多个计算机可读设备、固件、可编程逻辑、存储器设备(例如EEPROM、ROM、PROM、RAM、SRAM等)、硬件(例如集成电路芯片、现场可编程门阵列(FPGA)、专用集成电路(ASIC)等)、电子设备、计算机可读非易失性存储单元(例如CD-ROM、软盘、硬盘驱动器等)可访问的代码或逻辑,以及在其中嵌入的代码或逻辑。制品可以是从文件服务器可访问的,其中经由网络传输线、无线传输介质、通过空间传播的信号、无线电波、红外信号等提供对计算机可读程序的访问。制品可以是闪存卡或磁带。制品包括硬件逻辑以及嵌在计算机可读介质中的由处理器执行的软件或可编程代码。通常,可以用任何编程语言例如LISP、PERL、C、C++、C#、PROLOG或用任何字节代码语言例如JAVA来实现计算机可读程序。软件程序可存储在一个或多个制品上或中作为对象代码。

系统也可作为基于云或基于网络的服务或作为寄载的应用或在软件即服务(SaaS)或平台即服务(PaaS)输送模型下被输送,且相应地可在一个或多个计算设备或服务器和/或由一个或多个计算设备执行的一个或多个虚拟服务器或虚拟机上执行。在一些这样的实现中,系统可包括一个或多个负载平衡器、访问控制服务器或用于向远程设备部署并提供服务的其它这样的设备。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1