一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

用于媒体处理和流式传输的方法、装置和介质与流程

2021-10-22 23:39:00 来源:中国专利 TAG:媒体 介质 传输 装置 流式


1.本技术涉及媒体处理技术领域,更具体的,涉及一种用于媒体处理和流式传输的方法、装置和介质。


背景技术:

2.网络和云平台用于运行各种应用程序。但是,没有基于标准的解决方案描述网络、或云平台、或者、网络和云平台元素的特征,或媒体源的特征、或接收器设备/平台在计算和存储资源方面的特征。
3.在一种情况下,第三代合作伙伴计划(3rd generation partnership project,3gpp)实时上行链路流式传输框架(framework for live uplink streaming,flus)协议提供了一种机制,该机制用于将多媒体内容从源设备上行链路流式传输到网络,并且将该内容发送/分发到至少一个目的地。例如,媒体流的源设备可以通过网络与接收器建立上行链路会话,并且,flus应用程序接口(application programming interface,api)允许源设备控制会话,还允许接收器提供对源设备的反馈或远程控制。当前的3gpp flus协议支持通过flus源检索接收器的能力。然而,将该能力记录为特定于供应商的统一资源名称(uniform resource names,urn)列表,并且如果flus源无法识别urn,则flus源不知道相应的能力。因此,无法实现跨供应商级别的互操作性。因此,当前的3gpp flus协议仅是特定于供应商的,并且不提供用于实现互操作性的任何详细描述。


技术实现要素:

4.本技术实施例可以解决以上问题,和/或,其他问题。
5.根据至少一个实施例,提供了一种由实现媒体系统的工作流管理器的至少一个处理器执行的方法。所述方法包括:获取包括至少一个描述符的描述,其中,所述描述符指示所述媒体系统中装置的能力,所述装置是媒体处理装置、媒体源或媒体接收器,并且,所述装置包括至少一个处理器;基于所述至少一个描述符确定所述装置的能力;以及,基于确定的所述装置的能力,管理媒体处理工作流。
6.根据一个实施例,所述至少一个描述符包括第一描述符,其中,所述第一描述符指示所述装置支持的至少一个功能储存库,以及,所述基于所述至少一个描述符确定所述装置的能力包括:根据所述第一描述符,从所述至少一个功能储存库检索所述装置支持的功能列表,确定所述装置的能力。
7.根据一个实施例,所述至少一个描述符还包括第二描述符,其中,所述第二描述符包括描述所述装置的硬件或软件能力的参数。
8.根据一个实施例,所述至少一个描述符包括描述所述装置支持的功能的第一描述符。
9.根据一个实施例,所述至少一个描述符还包括第二描述符,其中,所述第二描述符包括描述所述装置的硬件或软件能力的参数。
10.根据一个实施例,所述方法还包括:经由表述性状态转移(representational state transfer,rest)应用程序接口(application programming interface,api),通过获取包括所述描述的javascript对象表示法(javascript object notation,json)对象,获取所述描述。
11.根据一个实施例,其中,所述至少一个处理器实现包括所述装置的nbmp系统的基于网络的媒体处理(network based media processing,nbmp)工作流管理器,以及,由所述至少一个处理器管理的媒体处理工作流是nbmp工作流。
12.根据一个实施例,所述nbmp系统的装置是所述媒体处理装置。
13.根据一个实施例,所述nbmp系统的装置是所述媒体源或所述媒体接收器。
14.根据一个实施例,其中,所述至少一个处理器实现flus系统的实时上行链路流式传输框架(framework for live uplink streaming,flus)源,其中,所述flus系统包括作为所述装置的flus接收器。
15.根据至少一个实施例,提供了一种媒体系统的工作流管理器。所述工作流管理器包括:至少一个处理器;以及,包括计算机代码的存储器,其中,所述计算机代码包括:获取代码,用于使得所述至少一个处理器获取包括至少一个描述符的描述,其中,所述描述符指示所述媒体系统中装置的能力,所述装置是媒体处理装置、媒体源或媒体接收器,并且,所述装置包括至少一个处理器;确定代码,用于使得所述至少一个处理器基于所述至少一个描述符确定所述装置的能力;以及,管理代码,用于使得所述至少一个处理器基于确定的所述装置的能力,管理媒体系统的媒体处理工作流。
16.根据一个实施例,所述至少一个描述符包括第一描述符,其中,所述第一描述符指示所述装置支持的至少一个功能储存库,以及,所述确定代码用于使得所述至少一个处理器根据所述第一描述符,从所述至少一个功能储存库检索所述装置支持的功能列表,确定所述装置的能力。
17.根据一个实施例,所述至少一个描述符还包括第二描述符,其中,所述第二描述符包括描述所述装置的硬件或软件能力的参数。
18.根据一个实施例,所述方法还包括:所述至少一个描述符包括描述所述装置支持的功能的第一描述符。
19.根据一个实施例,所述至少一个描述符还包括第二描述符,其中,所述第二描述符包括描述所述装置的硬件或软件能力的参数。
20.根据一个实施例,所述获取代码还用于使得所述至少一个处理器经由表述性状态转移(representational state transfer,rest)应用程序接口(application programming interface,api),通过获取包括所述描述的javascript对象表示法(javascript object notation,json)对象,获取所述描述。
21.根据一个实施例,所述至少一个处理器实现包括所述装置的nbmp系统的基于网络的媒体处理(network based media processing,nbmp)工作流管理器,以及,由所述至少一个处理器管理的媒体处理工作流是nbmp工作流。
22.根据一个实施例,所述nbmp系统的装置是所述媒体处理装置。
23.根据一个实施例,所述nbmp系统的装置是所述媒体源或所述媒体接收器。
24.根据至少一个实施例,提供了一种存储计算机代码的非易失性计算机可读介质,
其中,当被实现媒体系统的工作流管理器的至少一个处理器执行时,所述计算机代码使得所述至少一个处理器执行上述方法。
25.本技术实施例可以实现nbmp标准,并描述网络,和/或,云平台及其元素的功能(例如,特性),和/或,媒体源,或接收器设备/平台。本技术实施例可以在跨供应商级别实现互操作性。
26.本技术实施例可以定义描述格式,用来描述网络或云资源功能,和/或,在媒体资源和媒体接收器设备/平台中的计算,存储和功率资源。云平台或网络元素,例如,实时上行链路流式传输框架(framework for live uplink streaming,flus)中的第三代合作伙伴计划(3rd generation partnership project,3gpp)框架可以使用该描述格式,以描述他们的处理和功能能力。nbmp工作流管理器可以使用该描述在媒体源,媒体接收器,和/或,媒体处理装置中运行工作流的至少一部分。
附图说明
27.根据以下详细描述和附图,所公开的主题的进一步的特征,性质和各种优点将变得更加明显,其中:
28.图1a是根据实施例的其中可以实施本文描述的方法、装置和系统的环境的图。
29.图1b是根据实施例的由实现媒体系统的工作流管理器的至少一个处理器执行的方法流程图。
30.图2是图1a的至少一个设备的示例部件的框图。
31.图3是根据实施例的nbmp系统的框图。
32.图4是根据实施例的3gpp flus体系结构的框图。
33.图5是根据实施例的参数的第一图表。
34.图6是根据实施例的参数的第二图表。
35.图7是根据实施例的计算机代码的框图。
具体实施方式
36.图1a是根据实施例的,可以实施本文所描述的方法、装置和系统的环境100的示意图。如图1a所示,环境100可以包括用户设备110、平台120和网络130。环境100的设备可以通过有线连接、无线连接或有线和无线连接的组合进行互连。
37.用户设备110包括一个或多个设备,该一个或多个设备能够接收、生成、存储、处理和/或提供与平台120相关的信息。例如,用户设备110可以包括计算设备(例如,台式计算机、膝上型计算机、平板计算机、手持式计算机、智能扬声器、服务器等)、移动电话(例如,智能电话、无线电话等)、可穿戴设备(例如,智能眼镜或智能手表)或相似设备。在一些实施方式中,用户设备110可以从平台120接收信息和/或向平台120发送信息。
38.平台120包括如本文中其它地方所描述的一个或多个设备。在一些实施方式中,平台120可以包括云服务器或云服务器组。在一些实施方式中,平台120可以被设计成模块化,使得软件组件可以根据特定需要被换入或换出。这样,可以容易地和/或快速地重新配置平台120以具有不同的用途。
39.在一些实施方式中,如图所示,平台120可以被托管(hosted)在云计算环境122中。
值得注意的是,虽然本文所述的实施方式将平台120描述为托管在云计算环境122中,但是在一些实施方式中,平台120不是基于云的(即,可以在云计算环境外部实现)或者可以是部分基于云的。
40.云计算环境122包括托管平台120的环境。云计算环境122可以提供计算、软件、数据访问、存储等服务,这些服务不需要终端用户(例如,用户设备110)了解托管平台120的系统和/或设备的物理位置和配置。如图所示,云计算环境122可以包括一组计算资源124(统称为“计算资源(computing resources)124”并分别称为“计算资源(computing resource)124”)。
41.计算资源124包括一个或多个个人计算机、工作站计算机、服务器设备或其它类型的计算和/或通信设备。在一些实施方式中,计算资源124可以托管平台120。云资源可以包括在计算资源124中执行的计算实例、在计算资源124中提供的存储设备、由计算资源124提供的数据传输设备等。在一些实施方式中,计算资源124可以通过有线连接、无线连接或有线和无线连接的组合与其它计算资源124通信。
42.进一步如图1a所示,计算资源124包括一组云资源,例如一个或多个应用程序(“app”)124

1、一个或多个虚拟机(“vm”)124

2、虚拟化存储(“vs”)124

3、一个或多个管理程序(“hyp”)124

4等。
43.应用程序124

1包括一个或多个软件应用程序,其可以提供给用户设备110和/或平台120,或由用户设备110和/或平台120访问。应用程序124

1无需在用户设备110上安装和执行软件应用程序。例如,应用程序124

1可以包括与平台120相关的软件,和/或,能够通过云计算环境122提供的任何其它软件。在一些实施方式中,一个应用程序124

1可以通过虚拟机124

2向或从一个或多个其它应用程序124

1发送/接收信息。
44.虚拟机124

2包括机器(例如,计算机)的软件实现,该机器执行程序,类似于物理机。虚拟机124

2可以是系统虚拟机,也可以是进程虚拟机,这取决于虚拟机124

2对任何真实机的使用和对应程度。系统虚拟机可以提供完整系统平台,其支持完整操作系统(“os”)的执行。进程虚拟机可以执行单个程序,并且可以支持单个进程。在一些实施方式中,虚拟机124

2可以代表用户(例如,用户设备110)执行,并且可以管理云计算环境122的基础架构,例如数据管理、同步或长期数据传输。
45.虚拟化存储124

3包括一个或多个存储系统和/或一个或多个设备,该一个或多个设备在计算资源124的存储系统或设备内使用虚拟化技术。在一些实施方式中,在存储系统的上下文内,虚拟化的类型可以包括块虚拟化和文件虚拟化。块虚拟化可以指逻辑存储从物理存储的抽象(或分离),以便可以在不考虑物理存储或异构结构的情况下访问存储系统。分离可以允许存储系统的管理员灵活地管理终端用户的存储。文件虚拟化可以消除在文件级别存取的数据与物理存储文件的位置之间的依赖性。这可以优化存储使用、服务器整合和/或无中断文件迁移的性能。
46.管理程序(hypervisor)124

4可以提供硬件虚拟化技术,其允许多个操作系统(例如,“客户操作系统”)在诸如计算资源124的主计算机上同时执行。管理程序124

4可以向客户操作系统提供虚拟操作平台,并且可以管理客户操作系统的执行。各种操作系统的多个实例可以共享虚拟化硬件资源。
47.网络130包括一个或多个有线和/或无线网络。例如,网络130可以包括蜂窝网络
(例如,第五代(fifth generation,5g)网络、长期演进(long

term evolution,lte)网络、第三代(third generation,3g)网络、码分多址(cdma)网络等)、公共陆地移动网络(public land mobile network,plmn)、局域网(local area network,lan)、广域网(wide area network,wan)、城域网(metropolitan area network,man)、电话网络(例如,公共交换电话网络(public switched telephone network,pstn))、专用网络、自组织网络、内联网、因特网、基于光纤的网络等,和/或这些或其它类型的网络的组合。
48.图1a所示的设备和网络的数量和排列被作为示例来提供。实际上,与图1a所示的设备和/或网络相比,可以有更多的设备和/或网络、更少的设备和/或网络、不同的设备和/或网络、或排列不同的设备和/或网络。此外,图1a所示的两个或更多个设备可以在单个设备内实现,或者图1a所示的单个设备可以实现为多个分布式设备。另外或可替代地,环境100的一组设备(例如,一个或多个设备)可以执行被描述为由环境100的另一组设备执行的一个或多个功能。
49.图1b是根据实施例的由实现媒体系统的工作流管理器的至少一个处理器执行的方法流程图。如图1b所示,该方法包括:
50.步骤101:获取包括至少一个描述符的描述,其中,所述描述符指示所述媒体系统中装置的能力,所述装置是媒体处理装置、媒体源或媒体接收器,并且,所述装置包括至少一个处理器。
51.步骤102:基于所述至少一个描述符确定所述装置的能力。
52.步骤103:基于确定的所述装置的能力,管理媒体处理工作流。
53.在一种具体的实施方式中,步骤102中的至少一个描述符包括第一描述符,其中,所述第一描述符指示所述装置支持的至少一个功能储存库,那么,步骤102中的基于所述至少一个描述符确定所述装置的能力包括:根据所述第一描述符,从所述至少一个功能储存库检索所述装置支持的功能列表,确定所述装置的能力。
54.在一种具体的实施方式中,步骤102中的至少一个描述符还包括第二描述符,其中,所述第二描述符包括描述所述装置的硬件或软件能力的参数,如下面表5和表6中的参数。
55.在一种具体的实施方式中,步骤102中的至少一个描述符包括描述所述装置支持的功能的第一描述符。在这种情况下,步骤102中的至少一个描述符还可以包括第二描述符,其中,所述第二描述符包括描述所述装置的硬件或软件能力的参数。
56.在一种具体的实施方式中,在步骤101之前,所述方法还包括:经由表述性状态转移(representational state transfer,rest)应用程序接口(application programming interface,api),通过获取包括所述描述的javascript对象表示法(javascript object notation,json)对象,获取所述描述。需要说明的是,还有很多其他获取所述描述的方法,该步骤仅为示例。
57.在一种具体的实施方式中,所述至少一个处理器实现包括所述装置的nbmp系统的基于网络的媒体处理(network based media processing,nbmp)工作流管理器,以及,由所述至少一个处理器管理的媒体处理工作流是nbmp工作流。其中,所述nbmp系统的装置是所述媒体处理装置,或者是所述媒体源或所述媒体接收器。
58.在一种具体的实施方式中,所述至少一个处理器实现flus系统的实时上行链路流
式传输框架(framework for live uplink streaming,flus)源,其中,所述flus系统包括作为所述装置的flus接收器。
59.图2是图1a中一个或多个设备的示例组件的框图。设备200可以对应于用户设备110和/或平台120。如图2所示,设备200可以包括总线210、处理器220、存储器230、存储组件240、输入组件250、输出组件260和通信接口270。
60.总线210包括允许设备200的组件之间进行通信的组件。处理器220以硬件、固件或硬件和软件的组合来实现。处理器220是中央处理单元(cpu)、图形处理单元(gpu)、加速处理单元(apu)、微处理器、微控制器、数字信号处理器(dsp)、现场可编程门阵列(fpga)、专用集成电路(asic)或另一类型的处理组件。在一些实施方式中,处理器220包括一个或多个能够被编程以执行功能的处理器。存储器230包括随机存取存储器(ram)、只读存储器(rom)和/或另一类型的动态或静态存储设备(例如,闪存、磁存储器和/或光存储器),其存储供处理器220使用的信息和/或指令。
61.存储组件240存储与设备200的操作和使用相关的信息和/或软件。例如,存储组件240可以包括硬盘(例如,磁盘、光盘、磁光盘和/或固态盘)、光盘(cd)、数字通用盘(dvd)、软盘、盒式磁带、磁带和/或另一类型的非易失性计算机可读介质,以及相应的驱动器。
62.输入组件250包括允许设备200例如通过用户输入接收信息的组件,例如,触摸屏显示器、键盘、小键盘、鼠标、按钮、开关和/或麦克风。另外或可替代地,输入组件250可以包括用于感测信息的传感器(例如,全球定位系统(gps)组件、加速计、陀螺仪和/或致动器)。输出组件260包括提供来自设备200的输出信息的组件,例如,显示器、扬声器和/或一个或多个发光二极管(led)。
63.通信接口270包括类似收发器的组件(例如,收发器和/或单独的接收器和发送器),该组件使设备200能够例如通过有线连接、无线连接或有线和无线连接的组合与其它设备通信。通信接口270可以允许设备200从另一设备接收信息和/或向另一设备提供信息。例如,通信接口270可以包括以太网接口、光接口、同轴接口、红外接口、射频(rf)接口、通用串行总线(usb)接口、wi

fi接口、蜂窝网络接口等。
64.设备200可以执行本文中所描述的一个或多个过程。设备200可以响应于处理器220执行由非易失性计算机可读介质(例如存储器230和/或存储组件240)存储的软件指令来执行这些过程。计算机可读介质在本文中被定义为非易失性存储器设备。存储器设备包括单个物理存储设备内的存储空间或分布在多个物理存储设备上的存储空间。
65.软件指令可以通过通信接口270从另一计算机可读介质或从另一设备读入存储器230和/或存储组件240。当被执行时,存储在存储器230和/或存储组件240中的软件指令可以使处理器220执行本文中所描述的一个或多个过程。另外或可替代地,可以使用硬件连线电路来代替软件指令或与软件指令结合以执行本文中所描述的一个或多个过程。因此,本文中所描述的实施方式不限于硬件电路和软件的任何特定组合。
66.图2所示的组件的数量和排列被作为示例来提供。实际上,与图2所示的组件相比,设备200可能包括更多的组件、更少的组件、不同的组件或排列不同的组件。另外或可替代地,设备200的一组组件(例如,至少一个组件)可以执行被描述为由设备200的另一组组件执行的一个或多个功能。
67.在本技术的一个实施例中,提供了nbmp系统300。参考图3,nbmp系统300包括nbmp
源310、nbmp工作流管理器320、功能储存库330、至少一个媒体处理装置350、媒体源360和媒体接收器370。
68.nbmp源310可从第三方装置380接收指令、可经由nbmp工作流api 392与nbmp工作流管理器320通信,并且可经由能力发现api 391与功能储存库330通信。例如,nbmp源310可将工作流描述文档(workflow description document,wdd)发送到nbmp工作流管理器320,并且可读取存储在功能储存库330的存储器中的各个功能的功能描述。所述功能可以包括媒体处理功能,例如媒体解码、特征点提取、相机参数提取、投影方法、接缝信息提取、混合、后处理和编码的功能。nbmp源310可以包括至少一个处理器和存储代码的存储器,或者,nbmp源310可以由至少一个处理器和存储代码的存储器实现,该代码被配置为使该至少一个处理器执行nbmp源310的功能。
69.nbmp源310可通过将工作流描述文档发送到nbmp工作流管理器320,来请求nbmp工作流管理器320创建包括任务352的工作流,其中所述任务352将由至少一个媒体处理装置350执行。所述工作流描述文档可包括若干个描述符,每个描述符可包括多个参数。
70.例如,nbmp源310可选择存储在功能储存库330中的功能,并向nbmp工作流管理器320发送工作流描述文档,所述工作流描述文档包括用于描述细节(诸如输入和输出数据、需要的功能以及工作流的要求)的多个描述符。工作流描述文档可包括任务描述集,以及将由至少一个媒体处理装置350执行的任务352的输入和输出的连接映射。当nbmp工作流管理器320从nbmp源310接收此信息时,nbmp工作流管理器320可基于功能名称实例化任务,并根据连接映射连接任务来创建工作流。
71.可替代地或附加地,nbmp源310可以请求nbmp工作流管理器320使用一组关键词创建工作流。例如,nbmp源310可以将包括该组关键词的工作流描述文档发送给nbmp工作流管理器320,nbmp工作流管理器320可以使用该组关键词来查找存储在功能储存库330中的适当的功能。当nbmp工作流管理器320从nbmp源310接收到此信息时,nbmp工作流管理器320可以使用在工作流描述文档的处理描述符中指定的关键词来搜索适当的功能,以及使用工作流描述文档中的其它描述符来提供和连接任务,从而创建工作流。
72.nbmp工作流管理器320可经由能力发现api 393与功能储存库330通信,其中,能力发现api 393可以与能力发现api 391相同或不同。并且,nbmp工作流管理器320可经由api 394(例如,nbmp任务api),与至少一个媒体处理装置350通信。nbmp工作流管理器320可以包括至少一个处理器和存储代码的存储器,或者,nbmp工作流管理器320可以由至少一个处理器和存储代码的存储器实现,该代码被配置为使至少一个处理器执行nbmp工作流管理器320的功能。
73.nbmp工作流管理器320可使用api 394来设置、配置、管理和监视工作流的至少一个任务352,其中所述工作流的至少一个任务352可由至少一个媒体处理装置350执行。在一个实施例中,nbmp工作流管理器320可使用api 394来更新和销毁任务352。为了配置、管理和监视工作流的任务352,nbmp工作流管理器320可将诸如请求的消息发送到至少一个媒体处理装置350,其中每个消息可具有多个描述符,每个描述符可包括多个参数。任务352可包括媒体处理功能354,以及用于媒体处理功能354的配置353。
74.在一个实施例中,在从nbmp源310接收不包括任务列表(例如,包括关键词列表而非任务列表)的工作流描述文档之后,nbmp工作流管理器320可基于工作流描述文档中对任
务的描述来选择任务,以经由能力发现api 393搜索功能储存库330,从而查找到适当的功能,以作为当前工作流的任务352运行。例如,nbmp工作流管理器320可基于工作流描述文档中提供的关键词选择任务。在使用nbmp源310提供的关键词或一组任务描述集来标识适当的功能之后,nbmp工作流管理器320可使用api 394来配置工作流中的已选择任务。例如,nbmp工作流管理器320可从接收自nbmp源的信息中提取配置数据,并且基于配置数据配置任务352。
75.至少一个媒体处理装置350可被配置为从媒体源360接收媒体内容,根据包括任务352并由nbmp工作流管理器320创建的工作流来处理媒体内容,并且将处理的媒体内容输出到媒体接收器370。至少一个媒体处理装置350可各自包括至少一个处理器和存储代码的存储器,或者,至少一个媒体处理装置350可由至少一个处理器和存储代码的存储器实现,该代码被配置为使至少一个处理器执行媒体处理装置350的功能。根据实施例,媒体处理装置350可以为,例如,云节点,计算资源,数据中心,至少一个服务器,等。
76.媒体源360可包括存储媒体的存储器,并且可与nbmp源310集成或分离。在一个实施例中,当工作流已经准备好时,nbmp工作流管理器320通知nbmp源310,并且媒体源360可基于工作流已准备好的通知,将媒体内容传输到至少一个媒体处理装置350。根据实施例,媒体源360可以为,例如,用户设备或服务器。
77.媒体接收器370可包括至少一个处理器和至少一个显示器,或者,媒体接收器370可由至少一个处理器和至少一个显示器实现,所述至少一个显示器被配置为显示由至少一个媒体处理装置350处理的媒体。根据实施例,媒体接收器370可以为,例如,用户设备。
78.第三方装置380可包括至少一个处理器和存储代码的存储器,或者,第三方装置380可由至少一个处理器和存储代码的存储器实现,该代码被配置为使至少一个处理器执行第三方装置380的功能。
79.如上所讨论,从nbmp源310到nbmp工作流管理器320的消息(例如,请求创建工作流的工作流描述文档),以及从nbmp工作流管理器320到至少一个媒体处理装置350的消息(例如,使工作流被执行的消息)可包括多个描述符,每个描述符包括多个参数。在实施例中,使用api在nbmp系统300的任何组件之间进行的通信可包括多个描述符,每个所述描述符包括多个参数。
80.本技术实施例可包括至少一个新的nbmp描述文档,其中,所述至少一个新的nbmp描述文档用于定义网络云平台能力,或用于定义源/接收器设备/平台能力。本技术实施例可使用nbmp标准(iso/iec 23090

8)的构造,但也可包括至少一个新的描述。至少一个新的描述可提供所支持的储存库、硬件资源以及设备或平台的特征的列表。
81.[媒体处理装置的功能描述]
[0082]
nbmp标准定义了3种不同的描述:工作流、功能和任务。本技术实施例可提供一个新描述,其中,所述新描述可用于描述至少一个媒体处理装置350的网络/云能力。可将该描述称为能力描述(capabilities description,cd)。cd的定义如下表1所示。
[0083]
表1——能力描述(capabilities description,cd)
[0084][0085][0086]
参考表1,cd可包括多个描述符,例如,下列描述符中的至少一个:至少一个模式描述符、至少一个通用描述符、至少一个储存库描述符、至少一个功能描述符、至少一个需求描述符和至少一个故障转移描述符。
[0087]
[源/接收器的能力描述]
[0088]
本技术实施例可提供一种新描述,其中,该新描述用于描述源或接收器设备/平台能力(例如,图3中媒体源360和媒体接收器370中的至少一个的能力)。可将该描述称为(源或接收器)能力描述((source or sink)capabilities description,sd)。sd的定义如下表2所示。
[0089]
表2——源/接收器能力描述(source/sink capabilities description,sd)
[0090]
[0091][0092]
参考表2,sd可包括多个描述符,例如,以下描述符的至少一个:至少一个模式描述符、至少一个通用描述符、至少一个储存库描述符、至少一个功能描述符、至少一个需求描述符和至少一个事件描述符。
[0093]
为了发信号通知媒体接收器(例如,媒体接收器370)或媒体源(例如,媒体源360)设备/平台的当前可用性,由于这些资源可以是动态的并且随时间改变,因此,可将参数作为硬件参数包括在sd中,以发信号通知可利用资源的百分比。根据实施例,硬件参数可作为“需求”描述符的一部分被包括在sd中。图5

6中的表500和600示出了此类硬件参数及其定义的示例。
[0094]
参考图5的表500和图6的表600,可包括诸如“虚拟中央处理单元(vcpu)”、“虚拟图形处理单元(vgpu)”、“随机存取存储器(ram)”、“磁盘(disk)”、“放置(placement)”、“位置(location)”、“虚拟中央处理单元(vcpu

availability)可用性”、“虚拟图形处理单元可用性(vgpu

availability)”、“随机存取存储器可用性(ram

availability)”、“磁盘可用性(disk

availability)”和“功率可用性(power

availability)”等参数。参数“虚拟中央处理单元(vcpu)”可指示为执行任务而预留的虚拟中央处理单元(vcpus)的数量。参数“虚拟图形处理单元(vgpu)”可指示为执行任务而预留的虚拟图形处理单元(vgpus)的数量。参数“随机存取存储器(ram)”可指示为执行任务而预留的内存。参数“磁盘(disk)”可指示工作流或任务要使用的本地磁盘的大小。参数“放置(placement)”可以是要在其中执行任务的数据中心的地理位置的标识符。参数“位置(location)”可以是源(例如,媒体源360)或接收器(例如,媒体接收器370)的位置标识符。参数“虚拟中央处理单元可用性(vcpu

availability)”可指示当前可用的源或接收器的虚拟中央处理单元的百分比。参数“虚拟图形处理单元可用性(vgpu

availability)”可指示当前可用的源或接收器的虚拟图形处理单元的百分比。参数“随机存取存储器可用性(ram

availability)”可指示当前可用的源或接收器中随机存取存储器的百分比。参数“磁盘可用性(disk

availability)”可指示当前可用的源或接收器的存储百分比。参数“功率可用性(power

availability)”可指示当前可用的源或接收器的电池百分比。根据实施例,可使用相同的描述符描述云平台、云节点或子平台的能力,或网络元件或子网络能力。
[0095]
[功能性能力]
[0096]
参考表1和图3,能力描述(cd或sd)的储存库描述符可以列出功能储存库330,其中,使用能力描述进行描述的装置支持该功能储存库330。每个支持的功能储存库330可包括所支持的功能的列表。或者,可在能力描述(cd或sd)中包括作为功能描述数组的所支持
的功能的描述。例如,可在能力描述的功能描述符中包括功能描述的数组。
[0097]
根据上面的描述,可通过获取能力描述来检索至少一个媒体处理装置350(或媒体源360或媒体接收器370)的特征,以及支持的功能列表。这些特征可包括,例如:
[0098]
1.支持的输入格式、编解码器和编解码器配置文件/级别、分辨率、帧速率。
[0099]
2.使用格式、输出编解码器、编解码器配置文件/级别、比特率等进行转码
[0100]
3.使用输出格式重新格式化,
[0101]
4.输入媒体流的组合,例如,基于网络的拼接、混合,
[0102]
5.媒体的识别或合成
[0103]
[描述文档及资源]
[0104]
本技术实施例还可以包括以下实体:
[0105]
1.能力描述文档(capabilities description document,cdd),可以是包含作为javascript对象表示法(javascript object notation,json)对象的媒体处理装置的能力描述(cd)的文档。
[0106]
2.能力资源(capabilities resource,cr),可以是包含cdd的表述性状态转移(representational state transfer,rest)资源。例如,根据实施例,cr可以是媒体处理装置350之一(参考图3)。
[0107]
3.源/接收器能力描述文档(source/sink capabilities description document,sdd),可以是包含作为json对象的媒体源或媒体接收器的能力描述(sd)的文档。
[0108]
4.源/接收器资源(source/sink resource,sr),可以是包含sdd的rest资源。例如,根据实施例,sr可以是媒体源360或媒体接收器370(参考图3)。
[0109]
[3gpp flus中的使用示例]
[0110]
本技术实施例的cd、cdd、cr、sd、sdd和sr可以在3gpp flus体系结构中实现。
[0111]
现在参考图4,图4描绘了本技术实施例中3gpp flus体系结构400的框图。3gpp flus体系结构400可以包括第一环境402(例如,包括至少一个用户设备的用户环境)和第二环境404(例如,用户环境或网络)。第一环境402可以包括nbmp源405(可以对应于nbmp源310)、至少一个捕获设备406和flus源408。flus源408可以包括控制源410、媒体源412、辅助接收器414和远程控制目标416。第二环境404可以包括flus接收器418、nbmp工作流管理器419(可以对应于nbmp工作流管理器320)、辅助发送器420、nbmp工作流421(例如,可以包括任务352,其中,任务352可以由第二环境4040或另一环境中的至少一个处理器和存储器执行),以及远程控制器422。flus接收器418可以包括控制接收器424和媒体接收器426。
[0112]
任何数量的nbmp源405、捕获设备406、控制源410、媒体源412、辅助接收器414和远程控制目标416可以由第一环境402的存储计算机指令的存储器和相同或不同的至少一个处理器实现。而且,任何数量的控制接收器424、媒体接收器426、辅助发送器420、远程控制器422和nbmp工作流管理器419可以由第二环境404的存储计算机指令的存储器和相同或不同的至少一个处理器实现。
[0113]
第一环境402和第二环境404之间的通信可以由例如网络提供。例如,可以经由链路491(例如f

c链路)、链路493(例如f

u链路)、链路495(例如f

a链路)和链路497(例如f

rc链路)来提供通信。链路491可以表示控制源410和控制接收器424之间的通信路由的端点。链路493可以表示媒体源412和媒体接收器426之间的通信路由的端点。链路495可以表
示辅助接收器414和辅助发送器420之间的通信路由的端点。链路497可以表示远程控制目标416和远程控制器422之间的通信路由的端点。
[0114]
flus源408可以从第一环境402内、或连接到第一环境的至少一个捕获设备406中接收媒体内容,并且将该媒体内容转发到媒体接收器426。媒体接收器426可以将媒体内容转发到第二环境404内的解码和再现功能(decoding and rendering function),和/或,处理或分发子功能(processing or distribution sub

function)。
[0115]
控制源410可以经由链路491控制控制接收器424处理接收的媒体内容,以用于后续的下游分发,并且可以选择flus媒体实例化。链路491可以表示与flus接收器418的配置的创建和修改相关联的交互。例如,链路491可以允许控制源410选择flus媒体实例化,提供与flus会话中的每个媒体会话相关联的静态元数据,以及选择和配置处理和分发子功能。
[0116]
媒体源412和媒体接收器426可以使用链路493经由媒体流建立至少一个媒体会话和随后的媒体数据传输。可以将flus媒体实例化定义为flus会话的一部分。可以为一个flus会话建立多个媒体流。媒体流可以包含至少一个媒体内容类型(例如,音频和/或视频)的媒体分量。flus会话可以包括至少一个媒体流,其中,例如,至少一个媒体流包含相同内容类型(例如,多个视频媒体流)。
[0117]
辅助发送器420可以经由链路495将辅助消息发送到辅助接收器414。flus源408可以基于辅助消息,改变flus源408内的flus媒体功能的行为(例如,媒体源的媒体发送行为)。辅助消息内的辅助信息可以涉及,例如,网络相关状况、内容接收者的收视率或参与度信息,或者用户偏好数据。由辅助接收器414发布给媒体源412的示例建议如下。仅将视频的前5秒上载到flus接收器418,这是由于当前不存在实时上行链路流式传输内容的收视率。
[0118]
远程控制器422可以经由链路497将控制消息发送到远程控制目标416。控制消息可以包括多个命令,例如,在flus源408中开始或停止媒体上行流式传输过程的命令。flus源408可以基于控制消息,改变媒体源412的行为。远程控制器422可以经由链路497将媒体接收器信息提供到flus源408,选择flus媒体实例化,并且确定捕获设备设置和其他flus源参数。
[0119]
根据3gpp flus规范,仅针对flus会话定义通信机制。而且,作为更新flus接收器配置的一部分,可以提交wdd。最后,使用“获取flus接收器状态”,可以接收wdd。
[0120]
根据实施例,nbmp源405可以在网络或目的地设备(例如,第二环境404)定义工作流处理。nbmp工作流管理器419和nbmp工作流421可以驻留在网络或目的地设备(例如,第二环境404)中。
[0121]
根据本技术实施例,flus接收器418的能力可以如下表3所述。
[0122]
表3:接收器资源的属性
[0123][0124]
flus源408可检索接收器资源(例如,flus接收器418)的资源描述,并根据表1的表项找出接收器资源的能力。但是,由于该列表可能包含供应商特定的urn,因此只有flus源408识别的urn才有意义。
[0125]
因此,本技术实施例可使用cdd而不是urn列表。例如,flus源408可以检索cdd。由于cdd可以使用标准形式提供能力的详细信息,flus源408可以识别并解析cdd,以获取flus接收器418的能力。
[0126]
[nbmp中的使用示例]
[0127]
根据实施例,参考图3,媒体处理装置350可以维护包括媒体处理装置350的能力描述(capabilities description,cd)的cdd,并且,在被请求经由api 394(或另一类似api)将cdd发送到nbmp工作流管理器320时,媒体处理装置350会将cdd发送到nbmp工作流管理器320。因此,nbmp工作流管理器320可以获取媒体处理装置350的能力,并基于获取的能力管理(例如,创建)工作流。例如,根据从多个媒体处理装置350中的每一个媒体处理装置350的cdd获得的多个媒体处理装置350的能力,nbmp工作流管理器320可以划分多个媒体处理装置350之间处理媒体的工作流。
[0128]
根据实施例,参考图3,媒体源360(或媒体接收器370)可以维护sdd,其中,所述sdd包括媒体源360(或媒体接收器370)的能力描述sd,并且在被请求经由api 395(或api 396)将sdd发送到nbmp工作流管理器320时,经由api 395(或在媒体接收器370维持sdd时,经由api 396)将sdd发送到nbmp工作流管理器320。因此,nbmp工作流管理器320可以获取媒体源360(或媒体接收器370)的能力,并根据使用sdd获取的能力管理(例如,创建)工作流。例如,根据获取的媒体源360(或媒体接收器370)的能力,nbmp工作流管理器320可以将任务分配给媒体源360(或媒体接收器370)。
[0129]
根据本技术实施例,可以提供至少一个处理器,以及存储计算机代码的存储器。当由至少一个处理器执行时,所述计算机代码用于执行本技术的任何方面。
[0130]
例如,参考图7,媒体系统的第一装置700可包括至少一个处理器,和存储计算机代码的存储器。计算代码可包括,例如,获取代码702、确定代码704和管理代码706。
[0131]
获取代码702可使第一装置700的至少一个处理器获取cdd或sdd,其中,所述cdd或sdd包括媒体系统的第二装置的能力描述(cd或sd)。例如,第一装置700的至少一个处理器可以向媒体系统的第二装置查询第二装置的能力,并且第二装置可以通过向第一装置发送cdd或sdd进行响应。根据实施例,能力描述可以是json对象,并且可通过表述性状态转移
(representational state transfer,rest)api进行查询。这样的api的示例可包括,例如图3中的api 394、api 395或api 396。
[0132]
确定代码704可使得第一装置700的至少一个处理器基于所获取的cdd或sdd中的能力描述,确定第二装置的能力。例如,第一装置700的至少一个处理器可以识别并解析cdd或sdd,以获取信息(例如,参数),从而确定第二装置的能力,和/或,在功能描述中列出功能存储库(例如,图3的功能存储库330)的情况下,基于列出的功能储存库,第一装置700的至少一个处理器可以查询相应的功能储存库,获取第二装置支持的功能列表,以确定第二装置的能力。
[0133]
管理代码706可使得第一装置700的至少一个处理器,基于确定代码704确定的第二装置的能力,管理媒体处理的工作流。例如,至少一个处理器可以基于能力确定工作流,包括如何在第二装置和其它装置之间划分工作流。
[0134]
根据实施例,参考图3

4,第一装置700可以是,例如,nbmp工作流管理器320或flus源408。根据实施例,第二装置可以是,例如,媒体源360、媒体处理装置350、媒体接收器370、或flus接收器418。根据实施例,参考图7所述的媒体系统可以是,例如,nbmp系统、flus系统、nbmp系统和flus系统的组合、或任何其它媒体系统。
[0135]
本技术的实施例可以单独使用或以任何顺序组合。此外,可以通过处理电路(例如,至少一个处理器或者至少一个集成电路)实现多个实施例(以及其方法)中的每一个实施例。在一个示例中,至少一个处理器可以执行存储在非易失性计算机可读介质中的程序。
[0136]
前述公开内容提供了说明和描述,但并不旨在穷举或将实施方式限制为所公开的精确形式。根据以上公开,修改和变化是可能的,或者可以从实现的实践中获得修改和变化。
[0137]
如本文所用,术语“组件”旨在广义地解释为硬件,固件,或硬件和软件的组合。
[0138]
即使在权利要求中,和/或,说明书中公开了特征的组合,这些组合并不旨在对可能的实施方案的公开进行限制。事实上,这些特征中的许多特征可以以权利要求中未具体列举,和/或,说明书中未公开的方式组合。尽管下面列出的每个从属权利要求可以直接从属于仅一个权利要求,但是可能的实施方案的公开包括与权利要求组中的每个其他权利要求组合的每个从属权利要求。
[0139]
除非明确说明,否则本文中使用的元件、动作或指令均不得解释为关键或必要的。另外,如本文所使用的,冠词“一(a)”和“一个(an)”旨在包括一个或多个项,并且可以与“一个或多个”互换使用。此外,如本文所使用的,术语“集合”旨在包括一个或多个项(例如,相关项、不相关项、相关项和不相关项的组合等),并且可以与“一个或多个”互换使用。在仅希望一个项的情况下,则使用术语“一个”或类似语言。另外,如本文所使用的,术语“具有(has)”,“具有(have)”,“具有(having)”等旨在是开放式术语。进一步,短语“基于”旨在表示“至少部分地基于”,除非另外明确说明。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜