基于云的音频/视频操作系统

文档序号:1220274 发布日期:2020-09-04 浏览:9次 >En<

阅读说明:本技术 基于云的音频/视频操作系统 (Cloud-based audio/video operating system ) 是由 格里特·艾伯特斯·罗森博姆 于 2018-12-21 设计创作,主要内容包括:公开了用于建立和管理多个虚拟机的技术,每个虚拟机具有音频,视频和控制(AVC)操作系统(OS)。该技术还可以建立和管理基于云的AVC OS。实施此技术的服务器可以执行实时AVC处理,以及软的和非实时处理,并且可以承载多个,独立的,虚拟AVC OS。每个AVC OS可以执行AVC设置的处理。AVC OS的每个可以由在服务器上运行的管理程序控制的相应虚拟机操作。基于云的AVC OS可以对包含多个AVC装置的相应远程AVC设置执行处理。AVC路由系统可能导致来自特定AVC设置的AVC信号到达相应的云AVC OS,反之可能导致来自AVC OS的信号到达正确的目的地装置。(Techniques are disclosed for establishing and managing multiple virtual machines, each having an audio, video, and control (AVC) Operating System (OS). The techniques may also build and manage a cloud-based AVC OS. A server implementing this technique can perform real-time AVC processing, as well as soft and non-real-time processing, and can carry multiple, independent, virtual AVC OSs. Each AVC OS can perform processing of AVC settings. Each of the AVC OSs may be operated by a respective virtual machine controlled by a hypervisor running on the server. The cloud-based AVC OS can perform processing on respective remote AVC settings that contain multiple AVC devices. The AVC routing system may cause AVC signals from particular AVC settings to reach the corresponding cloud AVC OS, and vice versa may cause signals from the AVC OS to reach the correct destination device.)

具体实施方式

,可以更好地理解这里介绍的技术,在附图中,相同的附图标记表示相同或功能相似的元件。

具体实施方式

本技术的一些示例提供一种管理程序操作系统,该管理程序操作系统被配置为建立和管理多个虚拟机,每个虚拟机具有访问者音频,视频和控制操作系统。可以配置在虚拟机(VM)上运行的AVC应用中执行实时音频,视频,和控制处理,以及软的和非实时处理的能力,以允许单个服务器容纳多个,独立的,虚拟AVC操作系统(OS),并由IT部门作为标准服务器进行管理。每个AVC OS都可以执行AVC系统的处理,并且可以独立于其他AVC OS启动,停止,和更新。除了执行实时音频和视频信号处理外,AVC OS还可以使用由运行在服务器上的管理程序提供的切换,通过服务器的硬件接口(例如,网络和USB)来获取和同步实时音频和视频流。为了确保无故障的实时操作,可以将虚拟机上的每个AVC OS排他地分配给一个或多个CPU核,核数由分配给该虚拟机的AVC系统设计的处理要求确定。

本技术的一些示例提供了一个或多个基于云的AVC OS,每个被配置为执行用于对应的AVC设置的处理。AVC设置可以包括一组一个或多个AVC装置,其中每个设置可以与其他AVC设置分开管理。例如,AVC设置可以包括位于某一楼层上,建筑物的某区域,一组会议室,一个或多个事件空间等的所有AVC设备。

AVC路由系统可以使来自特定AVC设置的AVC信号到达相应的云AVC OS,反之可以使来自云AVC OS的信号到达正确的目的地装置。在一些实现方式中,AVC路由系统可以包括基于与AVC信号相关联的网络地址执行AVC信号的路由的网络装置。在一些实现方式中,AVC路由系统可以使用AVC装置或设置到云AVC OS的映射,以确定将AVC信号路由到何处。

AVC系统,无论是在虚拟机下操作还是作为计算装置的主要操作系统,可以被配置为管理和控制音频特征,视频特征,和控制特征的功能。例如,可以将AVC系统配置为与联网的麦克风,相机,放大器,和/或控制器一起使用。AVC系统还可以包括多个相关特征,例如回声消除,音频音调控制和滤波,音频动态范围控制,音频/视频混合和路由,音频/视频延迟同步,公共地址寻呼,视频对象检测,验证和识别,多媒体播放器和流媒体功能,用户控制界面,调度,第三方控制,IP语音(VoIP)和会话初始协议(SIP)功能,脚本平台功能,音频和视频桥接,公共地址功能,其他音频和/或视频输出功能等。AVC系统的一个例子被包含在QSC,LLC的Q-Sys技术中。

在本公开中,操作系统(OS)可以是管理计算机硬件和软件资源并为计算机程序提供通用服务的系统软件。操作系统可以被配置为调度任务以有效使用系统,并且还可以包括用于对处理器时间,大容量存储,打印,和其他资源进行成本分配的会计软件。操作系统还可以充当程序和计算机硬件之间的中介,以控制硬件功能,例如输入和输出以及存储器分配。

下面参考附图更详细地讨论几种实现方式。图1是示出了可以在其上操作所公开技术的一些实现方式的装置的概述的框图。装置可以包括具有管理程序OS 162的装置100的硬件组件,该管理程序OS 162管理多个虚拟机,每个具有访问者OS 164。虚拟机可以是用于创建允许用户同时在一台计算机上运行多个操作系统的虚拟环境的一个或多个计算机应用。装置100可以包括一个或多个输入装置120,其向CPU(处理器)110提供输入,并向其通知动作。这些动作可以由硬件控制器来中介,该硬件控制器解释从输入装置接收的信号,并使用通信协议将该信息传达给CPU 110。输入装置120包括例如鼠标,键盘,触摸屏,红外传感器,触摸板,可穿戴输入装置,基于相机或图像的输入装置,麦克风,或其他用户输入装置。

CPU 110可以是装置中的单个处理单元或多个处理单元,或分布在多个装置上。例如,可以使用诸如PCI总线或SCSI总线之类的总线将CPU 110耦接至其他硬件装置。CPU 110可以与诸如显示器130之类的装置的硬件控制器通信。显示器130可以用于显示文本和图形。在一些实现方式中,显示器130向用户提供图形和文本视觉反馈。在一些实现方式中,诸如当输入装置是触摸屏或配备有眼睛方向监视系统时,显示器130包括输入装置作为显示器的一部分。在一些实现方式中,显示器与输入装置分开。显示装置的示例是:LCD显示屏,LED显示屏,投影,全息,或增强现实显示器(例如平视显示装置或头戴式装置)等。其他I/O装置140也可以耦接到处理器,例如网卡,视频卡,音频卡,USB,火线或其他外部装置,相机,打印机,扬声器,CD-ROM驱动器,DVD驱动器,磁盘驱动器,或蓝光装置。

在一些实现方式中,装置100还包括能够与网络节点无线或有线通信的通信装置。通信装置可以使用例如TCP/IP协议,Q-LAN协议,等通过网络与另一装置或服务器通信。装置100可以利用通信装置在多个网络装置之间分配操作。

CPU 110可以访问在一个装置中或分布在多个装置中的存储器150。存储器包括用于易失性和非易失性存储的多种硬件装置中的一个或多个,并且可以包括只读和可写存储器。例如,存储器可以包括随机存取存储器(RAM),多种缓存,CPU寄存器,只读存储器(ROM),和可写的非易失性存储器,例如闪存,硬盘驱动器,软盘,CD,DVD,磁存储装置,磁带驱动器,装置缓冲,等。存储器不是与基础硬件分离的传播信号;因此,存储器是非暂时性的。存储器150可以包括存储程序和软件的程序存储器160,例如管理程序OS 162,AVC OS 164,以及其他应用程序166。存储器150还可以包括数据存储器170,其可以包括要被应用操作的数据,配置数据,设置,选项或优选项等,这些数据可以被提供给程序存储器160或装置100的任何元件。

一些实现方式可以与许多其他计算系统环境或配置一起操作。可能适合与该技术一起使用的计算系统,环境,和/或配置的例子包括但不限于个人计算机,AVC I/O系统,联网的AVC***设备,视频会议控制台,服务器计算机,手持式或膝上型装置,蜂窝电话,可穿戴电子产品,游戏机,平板装置,多处理器系统,基于微处理器的系统,机顶盒,可编程消费电子产品,网络PC,小型计算机,大型计算机,包括上述任何系统或装置的分布式计算环境,等。

图2是说明所公开技术的一些实现方式可在其中操作的环境200的概括的框图。环境200可以包括一个或多个客户端计算装置205A-H,其示例可以包括装置100。在所示的示例中,装置205A是无线智能电话或平板电脑,装置205B是台式计算机,装置205C是计算机系统,装置205D是无线笔记本电脑,装置205E是音频系统,装置205F是视频系统,装置205G是麦克风系统,和装置205H是联网的相机系统。这些仅仅是一些装置的示例,并且其他示例可以包括其他计算装置。例如,装置205C可以是具有实现能够创建和管理多个AVC实时操作系统(RTOS)的OS的服务器,该AVCOS为***装置(无论是本地的还是联网的)及其之间提供多种音频和视频处理以及连接性。这些处理和连接性特征可以由装置205C的主机AVC OS提供,同时支持一个或多个虚拟机。音频和视频处理可以包括增益和电平调整,回声减少或消除,音频音调控制和滤波,音频动态范围控制,音频/视频混合和路由,音频/视频延迟同步,公共地址寻呼,视频对象检测,验证和识别,混合,编码/解码,分辨率调整,裁剪,延迟控制,VoIP/SIP接口控制,输入控制,等。客户端计算装置205可以使用通过网络230到一台或多台远程计算机(例如服务器计算装置)的逻辑连接210在联网的环境中运行。在一些实现方式中,在环境200中可以包括附加的未示出的音频和视频处理和路由组件,例如:本地地连接到装置205或I/O卡的AVC设备,该I/O卡为AVC设备提供联网的连接点,在Q-LAN协议上操作的交换机等。

在一些实现方式中,服务器210可以是边缘服务器,其接收客户端请求并通过诸如服务器220A-C之类的其他服务器协调这些请求的实现。服务器计算装置210和220可以包括诸如装置100之类的计算系统。尽管每个服务器计算装置210和220在逻辑上被显示为单个服务器,但是服务器计算装置可以每个是包含位于相同物理位置或地理位置不同的物理位置的多个计算装置的分布式计算环境。在一些实现方式中,每个服务器220对应于一组服务器。

客户端计算装置205以及服务器计算装置210和220可以各自充当其他服务器/客户端装置的服务器或客户端。服务器210可以连接到数据库215。每个服务器220A-C可以各连接到对应的数据库225A-C。如上所述,每个服务器220可以对应于一组服务器,并且这些服务器中的每个可以共享数据库或者可以具有它们自己的数据库。数据库215和225可以仓储(例如,存储)信息。尽管数据库215和225在逻辑上显示为单个单元,但是数据库215和225每个可以是包含多个计算装置的分布式计算环境,可以位于其对应的服务器内,或者可以位于相同或地理位置不同的物理位置。

网络230可以是局域网(LAN)或广域网(WAN),但是也可以是其他有线或无线网络。在一些实现方式中,网络230的部分可以是实现Q-LAN协议的LAN或WAN,Q-LAN协议是来自QSC音频产品的Q-Sys音频信号处理平台的IP网络上的音频技术。网络230的部分可以是因特网或一些其他公共或专用网络。客户端计算装置205可以通过网络接口,例如通过有线或无线通信,连接到网络230。虽然服务器210和服务器220之间的连接被示为单独的连接,但是这些连接可以是任何种类的局域网,广域网,有线,或无线网络,包括网络230或单独的公共或专用网络。

图3是示出了组件300的框图,在一些实现方式中,组件300可以在采用所公开技术的系统中使用。组件300包括硬件302,通用软件320,和专用组件340。如上所述,实现所公开技术的系统可以使用多种硬件,包括处理单元304(例如,CPU,GPU,APU等),工作存储器306,储存存储器308(本地储存器或作为到远程储存器的接口,例如储存器215或225),以及输入和输出装置310。在多种实现方式中,存储器308可以是以下一项或多项:本地装置,到远程储存装置的接口,或其组合。例如,储存存储器308可以是可通过系统总线访问的一组一个或多个硬盘驱动器(例如,独立磁盘冗余阵列(RAID)),或者可以是云存储提供商或可通过一个或多个通信网络可访问的其他网络储存器(例如,网络可访问储存(NAS)装置,例如储存器215或通过另一个服务器220提供的储存器)。组件300可以在诸如客户端计算装置205的客户端计算装置中或在诸如服务器计算装置210或220的服务器计算装置中实现。

通用软件320可以包括多种应用,包括管理程序操作系统322,本地程序324,和基本输入输出系统(BIOS)326。在某些实现方式中,专用组件340可以是一个或多个通用软件应用320的子组件,例如AVC OS 322。专用组件340可以包括管理程序344,资源分配器346,信号交换机348,以及可用于提供用户界面,传输数据,和控制专用组件的组件,例如接口342。在一些实现方式中,组件300可以位于跨多个计算装置分布的计算系统中,或者可以是执行一个或多个专用组件340的基于服务器的应用的接口。

管理程序344可以实例化多个虚拟机,每个虚拟机具有对应的AVC OS。管理程序344还可以利用资源分配器346将资源分配给每个虚拟机,并且可以包括虚拟交换机348,该虚拟交换机348可以在相应的AVC设置中在虚拟机和AVC装置之间路由AVC信号。

资源分配器346可以采用AVC设置描述,并为执行AVC OS的虚拟机确定适当的资源分配,以管理该AVC设置。资源分配器346可以通过以下方式为特定的AVC设置完成此任务:为AVC设置进行设置和初始资源分配;以及为AVC设置通过AVC编译器运行AVC设置描述和资源分配;根据AVC编译器的结果,确定资源分配是否足以进行AVC设置。如果资源分配不足,则可以增加资源分配,并且可以再次执行编译过程,直到结果表示资源分配足够为止。

信号交换机348可以从多种AVC设置的AVC装置接收AVC信号,并将其路由到相应的虚拟机。信号交换机348可以基于AVC设置中的装置与对应虚拟机之间的映射,来确定将AVC信号路由至的正确虚拟机。在一些实现方式中,可以在为AVC设置创建虚拟机时建立此映射,并且可以包括AVC设置中的装置标识符到虚拟机的标识符的映射。如果修改了AVC设置,则可以对映射进行相应的修改。在多种实现方式中,标识符可以是IP地址,MAC地址,主机名,端口标识符,或在AVC系统内唯一地指定装置的其他标识符。信号交换机348还可以从虚拟机接收AVC信号,并将该AVC信号路由到AVC设置或AVC设置内的特定装置。

在一些实现方式中,代替具有信号交换机348,系统300可以使用分配给由管理程序344发起的每个虚拟机的虚拟网络接口卡(NIC)。每个虚拟NIC可以具有分配的地址或地址(例如IP地址,MAC地址等)。当信号到达寻址到分配给虚拟NIC之一的地址之一的系统300时,该虚拟NIC可以配置为控制I/O 310中的网络硬件以接收为其分配的虚拟机的信号。而且,当虚拟机之一需要发送信号时,管理程序344可以表示要使用的I/O 310的网卡之一,并且虚拟机可以使用与该网卡相对应的虚拟NIC来控制所表示的网卡以发送信号。

本领域技术人员将理解,上述图1-3中所示的组件以及下面讨论的每个流程图中的组件可以以多种方式进行更改。例如,可以重新排列逻辑的顺序,可以并行执行子步骤,可以省略图示的逻辑,可以包括其他逻辑,等等。在一些实现方式中,上述一个或多个组件可以执行一个或多个如下所述的过程。

图4是示出在一些实现方式中使用的过程400的流程图,该过程用于在对应的虚拟机中建立多个AVC访问者OS并向该虚拟机提供AVC信号路由。过程400开始于框402,然后继续至框404。在框404,过程400可以利用虚拟交换机将管理程序安装在主机中。管理程序是可以监视和管理特定计算系统内的多个虚拟机的应用。尽管本文的多种讨论将管理程序称为由主机的主机操作系统运行的应用,但是在这些情况中的某些情况下,管理程序可以直接在与主机操作系统分离的主机硬件上运行。虚拟交换机可以协调将AVC信号从多种AVC设置传递到在AVC操作系统上执行的相应虚拟机。然后,管理程序可以建立在管理程序控制下运行的多个虚拟机。下面针对图6A讨论使用管理程序的示例环境。在一些实现方式中,代替使用管理程序,每个虚拟机可以具有一个或多个虚拟网络接口卡(NIC),每个虚拟网络接口卡可以连接到相应的物理NIC并控制相应的物理NIC。下面参考图6B讨论虚拟机使用虚拟NIC的示例环境。

在框406处,可以基于对应的AVC设置将主机计算系统的资源分配给每个虚拟机。每个AVC设置可以包括一组多个AVC装置,其中该组可以与其他AVC设置分开管理。例如,AVC设置可以包括在某个楼层上,在建筑物的某区域中,用于一组会议室,用于一个或多个事件空间等的所有AVC设备。在某些实现方式中,资源(例如CPU核)通过分配初始资源量,可以将其分配给用于AVC设置的虚拟机;使用这些资源评估AVC设置,以确定这些资源是否足以管理AVC设置;如果不是,则添加其他资源并进行迭代,直到确定分配的资源量足以用于AVC设置。下面结合图5提供有关为AVC设置向虚拟机分配资源的其他详细信息。在某些实现方式中,随着AVC设置的更改,或者如果AVC设置使用的资源比预期的多,则可以为AVC设置将额外资源分配给该虚拟机。

在框408中,过程400可以将音频,视频,控制(AVC)OS安装到每个已建立的虚拟机中。在某些实现方式中,AVC OS可以是实时操作系统(RTOS)。可以将执行AVC OS的每个虚拟机映射到在相应AVC设置中的装置的装置标识符。装置和虚拟机标识符可以包括例如IP地址,MAC地址,主机名,或其他标识符。

在框410,主机AVC OS的虚拟交换机可以接收AVC信号。AVC信号可以来自AVC设置之一中包含的网络装置,也可以来自虚拟机之一。在框412,虚拟交换机可以确认将AVC信号路由至的目的地。当AVC信号源自AVC设置中的装置时,虚拟交换机可以基于源装置的标识符到AVC设置的虚拟机之间的映射,将目地的确认为虚拟机之一,源装置是AVC设置的一部分。在一些实现方式中,该映射可以包括装置标识符到虚拟机标识符的列表。在一些实现方式中,该映射可以包括装置标识符到AVC设置标识符的映射,该AVC设置标识符又被映射到特定虚拟机。当AVC信号源自虚拟机之一时,AVC信号可以与虚拟交换机的特定目的地或装置标识符关联,以将AVC信号路由到该虚拟机。在某些实现方式中,虚拟机可以将AVC信号直接发送到AVC设置或已确认的***装置,而无需通过虚拟交换机。在框414处,可以将AVC信号路由到在框412处确定的目的地。当从***装置或虚拟机接收到额外的AVC信号时,可以重复过程400的步骤410至414。

图5是示出在一些实现方式中用于确定AVC设置的资源分配的过程500的流程图。在一些实现方式中,过程500可以作为过程400的框406的一部分被启动。过程500在框502开始并且继续到框504。在框504,过程500可以接收对AVC设置的描述。AVC设置的描述可以确认该AVC设置中包括的AVC设备和软件组件。AVC设置的描述也可以指定AVC设备如何互连。AVC设置的描述还可以指定额外信息,例如装置标识符,预期使用率,连接带宽,设备细节(specifics)等。

在框506,过程500可以为所描述的AVC设置指定初始资源分配。在多种实现方式中,初始资源分配可以是默认分配,例如用于任何AVC设置的最小资源量(例如,一个CPU核),或者可以是基于AVC设置描述确定的资源分配。例如,具有指定数量的装置的AVC设置可以具有相应的初始资源分配。资源分配可以包括多个CPU,一定数量的存储器空间,或其他专用硬件或软件资源。

在框508,过程500可以通过AVC编译器运行AVC设置描述,并在框506或512处设置当前资源分配。AVC编译器可以将AVC设置组织成期望最大化性能和/或最小化资源使用的配置。AVC编译器还可以提供给定资源分配情况下AVC设置将如何执行的预测。例如,AVC设置的每个软件组件都可能需要一定数量的资源,例如一个或多个CPU容量,存储器,磁盘空间等的一部分。AVC编译器可以处理AVC设置以积累该AVC设置的多种设备和组件所需的资源。

在框510处,过程500可以确定来自AVC编译器的结果是否表示资源分配将为AVC设置提供足够的性能。如果是,则过程500继续到框514。如果不是,则过程500继续到框512。

在框512,过程500可以增加当前资源分配。例如,在以CPU核衡量资源的情况下,可以将附加的CPU核添加到当前资源分配中。在某些实现方式中,可以增加其他资源分配,例如专用高速缓存,其他存储器空间等。

可以重复框508和512之间的循环,直到编译器结果表示资源分配足以满足所描述的AVC设置为止。在这一点上,过程500继续到框514。在框514,过程500可以返回所确定的足够的资源分配。然后,过程500可以继续到框516,在此结束。

图6A是说明具有管理程序系统602的示例环境600的概念图,管理程序系统602管理多个虚拟机604A-N,每个虚拟机具有AVC OS。每个虚拟机604可以具有分配的资源,例如CPU核606。例如,核606A被分配给虚拟机604A;核606B被分配给虚拟机604B;且核606N被分配给虚拟机604N。管理程序OS 602可以包括虚拟交换机608,该虚拟交换机608被配置为将来自AVC设置610A-N的装置(例如618A-D)的AVC信号路由到与该AVC设置相对应的虚拟机604。

在示例环境600的操作中,可以将信号从联网的装置618通过LAN 620传递到虚拟交换机608。使用装置标识符到对应于虚拟机的AVC设置的映射,虚拟交换机608可以将信号路由到适当的虚拟机,以通过相应的AVC OS进行AVC处理。

在示例环境600的进一步操作中,一旦虚拟机604处理了AVC信号,就可以将该信号传递回虚拟交换机608,以路由到AVC设置610的适当装置或其他本地或联网的目的地。

图6B是示出具有多个虚拟机604的示例环境650的概念图,每个虚拟机具有AVC OS和一个或多个虚拟网络接口卡(NIC)652。

与示例环境600类似,在示例环境650中,每个虚拟机604可以具有分配的资源,例如CPU核606。每个虚拟机604可以利用一个或多个虚拟NIC652。例如,虚拟机604A可以利用虚拟NIC 652A以连接并控制NIC 654A。另外,虚拟机604N可以利用虚拟NIC 652N-1与NIC654A连接并对其进行控制,并且可以利用虚拟NIC 652N-2与NIC 654N连接并对其进行控制。NIC 654的每个可以通过利用来自虚拟机604之一的对应虚拟NIC来为多个IP/MAC地址接收/发送数据。例如,当诸如虚拟机604B的虚拟机需要发送信号时,它可以访问虚拟NIC652B,其配置为连接到NIC 654A并控制NIC 654A传输信号,例如,至装置618之一。在虚拟NIC 652B控制NIC 654A时,NIC 654A可以使用分配给虚拟NIC 652B的地址(例如IP,MAC,等)。同样,当虚拟机604B通过虚拟NIC 652B利用NIC 654A时,在NIC 654A处接收的其他传入和传出流量可以排队,直到虚拟机604B的传输完成并且虚拟NIC 652B放弃对NIC 654A的控制或可以由另一个网卡654处理。

作为另一个例子,NIC 654A可以通过LAN 620从装置(例如,装置618A-D中的一个)接收AVC信号。可以将AVC信号寻址到特定地址(例如IP地址,MAC地址,网络名称等)。可以给每个虚拟NIC 652分配一个地址,并且NIC 654A可以选择具有分配的地址的虚拟NIC,AVC信号被发送到该分配的地址。然后,与所选虚拟NIC对应的虚拟机可以使用所选虚拟NIC接收AVC信号。

图7是示出了在一些实现方式中使用的过程700的流程图,该过程用于在云环境中建立AVC OS并为AVC OS提供AVC信号路由。过程700开始于框702,并且继续进行至框703和/或704。框703和704可以同时或在不同时间执行。在一些情况下,可以首先执行框703,而在其他情况下,可以首先执行框704。

在框703,过程700可以建立一个或多个“AVC设置”组。每个AVC设置可以包含一个或多个AVC装置。AVC设置组中的装置可以与其他AVC设置分开管理。例如,AVC设置可以包括在某个楼层,建筑物的某区域,用于一组会议室,用于一个或多个事件空间等的所有AVC设备。在某些实现方式中,组成AVC设置的装置的组可以由管理员指定。例如,可以提供允许管理员创建AVC设置组并将装置分配给这些组的用户界面。在一些实现方式中,可以基于物理位置(例如,在同一房间,在同一楼层,或在同一建筑物中的装置被分配给同一组),基于虚拟位置(将在同一VPN的所有装置被分配给同一组),基于寻址(例如,将具有特定IP地址范围的所有装置分配给同一组),等等,自动创建AVC设置。

在框704处,过程700可以在一个或多个云计算装置中安装一个或多个音频,视频,控制(AVC)OS。在一些实现方式中,如上所述,可以将多个AVC OS安装在虚拟机中的一台或多台服务器下的云计算环境中。在一些实现方式中,可以将AVC OS安装为计算装置的主要OS。在一些实现方式中,响应于AVC设置的创建,可以例如在云系统的服务器或虚拟机中生成每个AVC OS。例如,当AVC设置需要AVC OS对其执行处理时,可以创建AVC OS。在其他实现方式中,可以在建立AVC设置之前创建一个或多个AVC OS,以准备根据需要分配给AVC设置。

在框705,过程700可以将来自框703的一个或多个AVC设置中的每一个分配给来自框704的AVC OS的一个,以对在AVC设置中的AVC装置组执行AVC处理。AVC OS和AVC设置之间的对应关系可以作为安装AVC OS的过程的一部分来建立,可以作为创建AVC设置的过程的一部分来执行,也可以是单独的过程。在多种实现方式中,可以例如通过使用GUI的管理员来手动执行分配,或者可以例如通过响应于AVC设置在新的虚拟机中创建AVC OS,或通过将可用的,先前创建的AVC OS分配到AVC设置,而自动执行分配。在多种实现方式中,可以将分配建立为A)AVC装置/AVC设置与B)AVC OS之间的映射,或者可以将分配作为在个体AVC装置中设置的配置,以指定应向其发送AVC信号的AVC OS的地址。

在框706处,AVC路由系统可以接收AVC信号。AVC信号可以来自在AVC设置之一中包含的AVC装置,也可以来自云环境中的AVC OS之一。AVC信号可以源自与AVC路由系统在地理上远程的源(例如,跨广域网(WAN))。AVC信号也可以从AVC路由系统发送到地理位置远程的目的地。在一些实现方式中,在框704处安装的多种AVC OS可以被配置为处理来自不同组织或实体的AVC信号。因此,过程700可以为多个实体或组织提供集中式AVC处理,从而消除了成本,复杂性以及与每个组织/实体均具有自己的AVC处理设施相关联的潜在故障的多个点。在多种实现方式中,该集中式AVC处理可以在共享硬件上执行,或者可以在每个组织/实体具有专用硬件处执行。

在框708,AVC路由系统可以确认应将AVC信号路由到的目的地。在一些实现方式中,在云环境中运行的每个AVC OS可以具有指定的地址(例如,IP地址)。可以将特定AVC设置中的装置配置为向其AVC信号发送AVC OS的地址。这可以是专用于该装置或一组装置的AVC处理的AVC OS。类似地,由AVC OS接收的AVC信号可以与在AVC OS完成AVC处理之后AVCOS可以向其发送信号的目的地装置的地址相关联。因此,在一些实现方式中,AVC路由系统可以是一个或多个网络装置(例如,路由器,交换机,集线器等)。

在其他实现方式中,AVC路由系统可以是作为AVC设置的一部分或在云环境中驻留的实体。该AVC路由系统可以从AVC设置中的装置接收AVC信号,并将其发送到云环境中的相应AVC OS。相反,AVC路由系统可以从AVC OS接收经过处理的AVC信号,并将其发送到目的地装置。在一些实现方式中,AVC路由系统可以使用映射来完成该路由,如以上关于框705所讨论的。在多种实现方式中,映射可以使用诸如IP地址,MAC地址,主机名,端口标识符,或唯一指定AVC系统中的目的地的其他标识符。映射可以将装置索引到配置为对那些装置执行AVC处理的AVC OS。映射还可以将装置索引到AVC设置指派(designation),并且可以进一步将AVC设置指派索引到该AVC设置的相应AVC OS。

在框710中,可以将AVC信号路由到在框708中确定的目的地。当目的地是AVC OS时,则可以通过该AVC OS处理AVC信号,并将其发送到目的地,例如,使用步骤706-710。随着从装置或AVC OS接收到附加的AVC信号,可以重复过程700的步骤706至710。

图8是示出具有在云环境802中操作的AVC OS 806的示例环境800的概念图。每个云计算装置804A-804N可以安装一个或多个AVC OS。例如,计算装置804A具有安装的AVC OS806A,而计算装置804N主管多个虚拟机,每个虚拟机具有对应的AVC OS(如以上关于图3-6所讨论的)。

在示例环境800的操作中,可以将信号从联网的装置818通过网络820传递到云计算环境802。使用装置标识符到对应于AVC OS的AVC设置的映射,云计算环境802的路由系统可以将信号路由到适当的AVC OS 806以进行AVC处理。

在示例环境800的进一步操作中,一旦AVC OS 806处理了AVC信号,就可以将该信号传递回云计算环境802的路由系统,以路由到AVC设置810上的适当装置或另一个本地或联网的目的地。

上面参考附图描述了所公开技术的几种实现方式。可以在其上实现所述技术的计算装置可以包括一个或多个中央处理单元,存储器,输入装置(例如,键盘和指向装置),输出装置(例如,显示装置),储存装置(例如,磁盘驱动器),和网络装置(例如,网络接口)。存储器和储存装置是计算机可读储存介质,其可以存储实现所描述技术的至少一部分的指令。另外,可以通过诸如通信链路上的信号之类的数据传输介质来存储或传输数据结构和消息结构。可以使用多种通信链接,例如因特网,局域网,广域网,或点对点拨号连接。因此,计算机可读介质可以包括计算机可读储存介质(例如,“非暂时性”介质)和计算机可读传输介质。

在本说明书中对“实现方式”(例如,“一些实现方式”,“多种实现方式”,“一个实现方式”,“一种实现方式”等)的引用是指结合实现方式描述的特定特征,结构,或特性被包括在本公开的至少一种实现方式中。这些短语在说明书中多个地方的出现不一定都指的是同一实现方式,单独或替代的实现方式也不一定是与其他实现方式互斥。而且,描述了可以由一些实现方式而不是其他实现方式展现的多种特征。类似地,描述了多种要求,其可能是一些实现方式的要求,而不是其他实现方式的要求。

如本文中所使用的,高于阈值意味着比较中的项目的值高于指定的其他值,比较中的项目处于某种指定数量的具有最大值的项目之中,或比较的项目具有在指定的最高百分比值内的值。如本文所使用的,低于阈值意味着比较中的项目的值低于指定的其他值,比较中的项目处于某些指定数量的具有最小值的项目之中,或者比较中的项目具有指定的底部百分比值内的值。如本文中所使用的,在阈值内意味着比较中的项目的值在两个指定的其他值之间,比较中的项目在中间指定的项目数之间,或者比较中的项目具有中间的指定的百分比范围内的值。相对的术语,例如高或不重要,如果没有其他定义,则可以理解为分配一个值并确定该值与已建立的阈值如何比较。例如,短语“选择快速连接”可以理解为表示选择具有分配的值的连接,该分配的值对应于其高于阈值的连接速度。

如本文所使用的,单词“或”是指一组项目的任何可能的排列。例如,短语“A,B,或C”是指A,B,C的至少一个,或其任何组合,诸如以下任一项:A;B;C;A和B;A和C;B和C;A,B和C;或任何项目的倍数,诸如A和A;B,B,和C;A,A,B,C,和C;等等。

尽管已经以特定于结构特征或方法动作的语言描述了主题,但是应当理解,所附权利要求书中定义的主题不必限于上述特定特征或动作。为了说明的目的,这里已经描述了特定的示例和实现方式,但是可以在不脱离示例和实现方式的范围的情况下进行多种修改。上面描述的特定特征和动作被公开为实现所附权利要求的示例形式。因此,除了所附权利要求书外,示例和实现方式不受限制。

以上提及的任何专利,专利申请,和其他参考文献均通过引用并入本文。如果需要,可以对方面进行修改,以采用上述多种参考文献的系统,功能,和概念来提供进一步的实现方式。如果通过引用并入的文档中的陈述或主题与本申请的陈述或主题冲突,则以本申请为准。

23页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:多种音频/视频操作系统的服务器支持

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!