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

基于网络的媒体处理工作流管理方法、系统以及存储介质与流程

2021-10-22 23:33:00 来源:中国专利 TAG:方法 工作流 系统 网络媒体 传输


1.本技术实施例涉及媒体处理以及流式传输方法和系统,更具体地,涉及基于网络的媒体处理(network

based media processing,nbmp)工作流管理方法、系统以及存储介质。


背景技术:

2.运动图像专家组(moving picture experts group,mpeg)基于网络的媒体处理nbmp项目已经开发了一种在云上处理媒体的概念。日期为2019年7月12日的iso/iec jtc 1/sc 29/wg 11(n 18657)的“iso/iec dis 23090

8基于网络的媒体处理的文本”全文并入本文。
3.第三代合作伙伴计划(3rd generation partnership project,3gpp)实时上行链路流式传输框架(framework for live uplink streaming,flus)协议提供了一种机制,该机制用于将多媒体内容从源设备上行链路流式传输到网络,并且将该内容发送/分发到至少一个目的地。日期为2019年9月的3gpp ts 26.238v16.2.0的“第三代合作伙伴计划;技术规范组服务和系统方面;上行链路流式传输(版本16)”全文并入本文。
4.当前的3gpp flus协议支持将nbmp工作流描述文档(wdd)包括在内,作为源设备进行会话控制更新的一部分。但是,在3gpp flus会话资源中携带有限的nbmp wdd的情况下,可能无法实现nbmp源与工作流管理器的完全交互。


技术实现要素:

5.在nbmp标准中,nbmp源是向工作流管理器提供工作流描述的实体,以创建,运行,管理和监视媒体工作流。nbmp源和工作流管理器之间的交互是通过一组nbmp操作应用程序编程接口(api)进行的。
6.在3gpp flus协议的情况下,媒体流的源设备通过网络与接收器建立上行链路会话。flus api允许源设备控制会话,也允许接收器提供对源设备的反馈或远程控制。
7.本技术的实施例可以解决以上问题,和/或,其他问题。
8.本技术实施例可以定义一种机制,将基于云的工作流处理用于上行链路流式传输,其中由客户端设备提供控制,该客户端设备可以是上行链路的源。本技术实施例可以提供一种架构,其中,源客户端是nbmp源,用于通过flus控制界面管理工作流。
9.根据实施例,提供了一种由实时上行链路流式传输框架(framework for live uplink streaming,flus)系统的基于网络的媒体处理(network

based media processing,nbmp)源执行的方法。所述nbmp源包括至少一个处理器,所述方法包括:经由flus源获取flus接收器的能力描述;以及,经由不包括所述flus源和所述flus接收器的路径,向所述flus系统的nbmp工作流管理器发送请求,从而基于获取的所述能力描述,创建或修改flus系统的工作流。
10.根据一个实施例,所述获取包括经由所述flus源获取包括所述能力描述的描述文
档。
11.根据一个实施例,所述获取包括:经由所述flus源获取包括所述能力描述的描述文档的地址;以及,使用获取的所述地址获取所述描述文档。
12.根据一个实施例,所述地址是统一资源定位符(uniform resource locator,url)。
13.根据一个实施例,所述方法还包括:向所述flus源发送请求,以获取所述flus接收器的能力描述。
14.根据一个实施例,所述方法还包括:经由所述flus源,从flus服务器获取flus接收器的列表,其中,基于所述flus接收器的列表中包含的flus接收器,发送获取所述flus接收器能力描述的请求。
15.根据一个实施例,所述方法还包括:经由所述flus源,获取指示支持基于网络的媒体处理的nbmp工作流管理器的标识符。
16.根据一个实施例,所述方法还包括:经由所述flus源,获取所述nbmp工作流管理器的地址,其中,通过使用获取的所述地址,将创建或修改所述flus系统工作流的请求发送到所述nbmp工作流管理器。
17.根据一个实施例,所述地址是统一资源定位符(url)。
18.根据一个实施例,所述方法还包括:经由所述flus源发送请求,以获取所述flus接收器的能力描述,其中,基于发送所述请求获取的描述,获取所述nbmp工作流管理器的地址和所述flus接收器的能力描述。
19.根据至少一个实施例,提供了一种系统。所述系统包括:至少一个存储器,用于存储计算机程序代码;以及,至少一个处理器,用于访问所述计算机程序代码,并按照所述计算机程序代码的指示进行操作,其中,所述计算机程序代码包括:工作流请求代码,用于使得所述至少一个处理器执行下列操作:使得实时上行链路流式传输框架(framework for live uplink streaming,flus)系统的基于网络的媒体处理(network

based media processing,nbmp)源,经由不包括flus源和所述flus系统的flus接收器的路径,向所述flus系统的nbmp工作流管理器发送请求,从而创建或修改所述flus系统的工作流;其中,所述请求基于所述nbmp源经过所述flus源获取的所述flus接收器的能力描述。
20.根据一个实施例,所述nbmp源用于,经过所述flus源,获取包含能力描述的描述文档;以及,所述计算机程序代码还包括获取代码,用于使得所述nbmp源从所述描述文档获取所述能力描述。
21.根据一个实施例,所述至少一个处理器还用于经由所述flus源接收描述文档的地址,其中,所述描述文档包括所述能力描述;以及,所述计算机程序代码还包括获取代码,用于使得所述nbmp源使用获取的所述地址获取所述描述文档。
22.根据一个实施例,所述地址是统一资源定位符(uniform resource locator,url)。
23.根据一个实施例,所述计算机程序代码还包括能力请求代码,用于使得所述nbmp源向所述flus源发送请求,以获取所述flus接收器的能力描述。
24.根据一个实施例,所述至少一个处理器还用于经由所述flus源,从flus服务器获取flus接收器的列表,其中,所述能力请求代码还用于使得所述nbmp源基于所述flus接收
器的列表中包含的flus接收器,发送获取所述flus接收器能力描述的请求。
25.根据一个实施例,所述至少一个处理器还用于经由所述flus源,获取所述nbmp工作流管理器的地址,以及,所述工作流请求代码还用于使得所述nbmp源通过使用获取的所述地址,发送创建或修改所述flus系统工作流的请求。
26.根据一个实施例,所述地址是统一资源定位符(url)。
27.根据一个实施例,所述计算机程序代码还包括能力请求代码,用于使得所述nbmp源向所述flus源发送请求,以获取所述flus接收器的能力描述,其中,基于所述请求获取的描述,所述nbmp源获取所述nbmp工作流管理器的地址和所述flus接收器的能力描述。
28.根据至少一个实施例,提供了一种非易失性计算机可读介质。所述非易失性计算机可读介质存储计算机代码,当被至少一个处理器执行时,所述计算机代码使得所述至少一个处理器实现上述方法。
29.本技术的实施例可以提供一种机制,使得nbmp源获得nbmp工作流管理器的统一资源定位符(url)之后,所述nbmp源可以直接完全控制nbmp工作流管理器。
附图说明
30.根据以下详细描述和附图,所公开的主题的进一步的特征,性质和各种优点将变得更加明显,其中:
31.图1a是根据实施例的其中可以实施本文描述的方法、装置和系统的环境的图。
32.图1b是根据实施例的由实时上行链路流式传输框架(framework for live uplink streaming,flus)系统的基于网络的媒体处理(network

based media processing,nbmp)源执行的方法流程图。
33.图2是图1a的至少一个设备的示例部件的框图。
34.图3是根据实施例的nbmp系统的框图。
35.图4是根据实施例的3gpp flus体系结构的框图。
36.图5是根据实施例的工作流处理的图。
37.图6是根据实施例的计算机代码的框图。
具体实施方式
38.图1a是根据实施例的,可以实施本文所描述的方法、装置和系统的环境100的示意图。如图1a所示,环境100可以包括用户设备110、平台120和网络130。环境100的设备可以通过有线连接、无线连接或有线和无线连接的组合进行互连。
39.用户设备110包括一个或多个设备,该一个或多个设备能够接收、生成、存储、处理和/或提供与平台120相关的信息。例如,用户设备110可以包括计算设备(例如,台式计算机、膝上型计算机、平板计算机、手持式计算机、智能扬声器、服务器等)、移动电话(例如,智能电话、无线电话等)、可穿戴设备(例如,智能眼镜或智能手表)或相似设备。在一些实施方式中,用户设备110可以从平台120接收信息和/或向平台120发送信息。
40.平台120包括如本文中其它地方所描述的一个或多个设备。在一些实施方式中,平台120可以包括云服务器或云服务器组。在一些实施方式中,平台120可以被设计成模块化,使得软件组件可以根据特定需要被换入或换出。这样,可以容易地和/或快速地重新配置平
台120以具有不同的用途。
41.在一些实施方式中,如图所示,平台120可以被托管(hosted)在云计算环境122中。值得注意的是,虽然本文所述的实施方式将平台120描述为托管在云计算环境122中,但是在一些实施方式中,平台120不是基于云的(即,可以在云计算环境外部实现)或者可以是部分基于云的。
42.云计算环境122包括托管平台120的环境。云计算环境122可以提供计算、软件、数据访问、存储等服务,这些服务不需要终端用户(例如,用户设备110)了解托管平台120的系统和/或设备的物理位置和配置。如图所示,云计算环境122可以包括一组计算资源124(统称为“计算资源(computing resources)124”并分别称为“计算资源(computing resource)124”)。
43.计算资源124包括一个或多个个人计算机、工作站计算机、服务器设备或其它类型的计算和/或通信设备。在一些实施方式中,计算资源124可以托管平台120。云资源可以包括在计算资源124中执行的计算实例、在计算资源124中提供的存储设备、由计算资源124提供的数据传输设备等。在一些实施方式中,计算资源124可以通过有线连接、无线连接或有线和无线连接的组合与其它计算资源124通信。
44.进一步如图1a所示,计算资源124包括一组云资源,例如一个或多个应用程序(“app”)124

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

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

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

4等。
45.应用程序124

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

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

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

1可以通过虚拟机124

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

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

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

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

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

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

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

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

4可以向客户操作系统提供虚拟操作平台,并且可以管理客户操作系统的执行。各种操作系统的多个
实例可以共享虚拟化硬件资源。
49.网络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))、专用网络、自组织网络、内联网、因特网、基于光纤的网络等,和/或这些或其它类型的网络的组合。
50.图1a所示的设备和网络的数量和排列被作为示例来提供。实际上,与图1a所示的设备和/或网络相比,可以有更多的设备和/或网络、更少的设备和/或网络、不同的设备和/或网络、或排列不同的设备和/或网络。此外,图1a所示的两个或更多个设备可以在单个设备内实现,或者图1a所示的单个设备可以实现为多个分布式设备。另外或可替代地,环境100的一组设备(例如,一个或多个设备)可以执行被描述为由环境100的另一组设备执行的一个或多个功能。
51.图1b是根据实施例的由实时上行链路流式传输框架(framework for live uplink streaming,flus)系统的基于网络的媒体处理(network

based media processing,nbmp)源执行的方法流程图。
52.图1b中的nbmp源包括至少一个处理器。如图1b所示,该方法包括下列步骤。
53.步骤101,从flus源获取flus接收器的能力描述。
54.步骤102,经由不包括所述flus源和所述flus接收器的路径,向所述flus系统的nbmp工作流管理器发送请求,从而基于获取的所述能力描述,创建或修改flus系统的工作流。
55.在一种具体的实施方式中,步骤101中从flus源获取flus接收器的能力描述可以包括:经由所述flus源获取包括所述能力描述的描述文档。
56.在另外一种具体的实施方式中,步骤101中从flus源获取flus接收器的能力描述可以包括:经由所述flus源获取包括所述能力描述的描述文档的地址;以及,使用获取的所述地址获取所述描述文档,其中,所述地址是统一资源定位符(uniform resource locator,url)。
57.在一种具体的实施方式中,在步骤101之前,所述方法还可以包括下列步骤1001(图1b中未示出):向所述flus源发送请求,以获取所述flus接收器的能力描述。
58.在执行步骤1001之前,所述方法还可以包括:经由所述flus源,从flus服务器获取flus接收器的列表,其中,基于所述flus接收器的列表中包含的flus接收器,发送获取所述flus接收器能力描述的请求。
59.在一种具体的实施方式中,比如,在步骤101之前,或者,在执行步骤101之后,并且在执行步骤102之前,或者,与步骤101并行执行,该方法还可以包括下列步骤:
60.经由所述flus源,获取指示支持基于网络的媒体处理的nbmp工作流管理器的标识符。
61.在一种具体的实施方式中,比如,在执行步骤101之后,并且在执行步骤102之前,所述方法还包括:经由所述flus源,获取所述nbmp工作流管理器的地址,其中,通过使用获
取的所述地址,将创建或修改所述flus系统工作流的请求发送到所述nbmp工作流管理器,其中,所述地址是统一资源定位符(url)。
62.在一种具体的实施方式中,所述方法还包括:经由所述flus源发送请求,以获取所述flus接收器的能力描述,其中,基于发送所述请求获取的描述,获取所述nbmp工作流管理器的地址和所述flus接收器的能力描述。
63.图2是图1a中一个或多个设备的示例组件的框图。设备200可以对应于用户设备110和/或平台120。如图2所示,设备200可以包括总线210、处理器220、存储器230、存储组件240、输入组件250、输出组件260和通信接口270。
64.总线210包括允许设备200的组件之间进行通信的组件。处理器220以硬件、固件或硬件和软件的组合来实现。处理器220是中央处理单元(cpu)、图形处理单元(gpu)、加速处理单元(apu)、微处理器、微控制器、数字信号处理器(dsp)、现场可编程门阵列(fpga)、专用集成电路(asic)或另一类型的处理组件。在一些实施方式中,处理器220包括一个或多个能够被编程以执行功能的处理器。存储器230包括随机存取存储器(ram)、只读存储器(rom)和/或另一类型的动态或静态存储设备(例如,闪存、磁存储器和/或光存储器),其存储供处理器220使用的信息和/或指令。
65.存储组件240存储与设备200的操作和使用相关的信息和/或软件。例如,存储组件240可以包括硬盘(例如,磁盘、光盘、磁光盘和/或固态盘)、光盘(cd)、数字通用盘(dvd)、软盘、盒式磁带、磁带和/或另一类型的非易失性计算机可读介质,以及相应的驱动器。
66.输入组件250包括允许设备200例如通过用户输入接收信息的组件,例如,触摸屏显示器、键盘、小键盘、鼠标、按钮、开关和/或麦克风。另外或可替代地,输入组件250可以包括用于感测信息的传感器(例如,全球定位系统(gps)组件、加速计、陀螺仪和/或致动器)。输出组件260包括提供来自设备200的输出信息的组件,例如,显示器、扬声器和/或一个或多个发光二极管(led)。
67.通信接口270包括类似收发器的组件(例如,收发器和/或单独的接收器和发送器),该组件使设备200能够例如通过有线连接、无线连接或有线和无线连接的组合与其它设备通信。通信接口270可以允许设备200从另一设备接收信息和/或向另一设备提供信息。例如,通信接口270可以包括以太网接口、光接口、同轴接口、红外接口、射频(rf)接口、通用串行总线(usb)接口、wi

fi接口、蜂窝网络接口等。
68.设备200可以执行本文中所描述的一个或多个过程。设备200可以响应于处理器220执行由非易失性计算机可读介质(例如存储器230和/或存储组件240)存储的软件指令来执行这些过程。计算机可读介质在本文中被定义为非易失性存储器设备。存储器设备包括单个物理存储设备内的存储空间或分布在多个物理存储设备上的存储空间。
69.软件指令可以通过通信接口270从另一计算机可读介质或从另一设备读入存储器230和/或存储组件240。当被执行时,存储在存储器230和/或存储组件240中的软件指令可以使处理器220执行本文中所描述的一个或多个过程。另外或可替代地,可以使用硬件连线电路来代替软件指令或与软件指令结合以执行本文中所描述的一个或多个过程。因此,本文中所描述的实施方式不限于硬件电路和软件的任何特定组合。
70.图2所示的组件的数量和排列被作为示例来提供。实际上,与图2所示的组件相比,设备200可能包括更多的组件、更少的组件、不同的组件或排列不同的组件。另外或可替代
地,设备200的一组组件(例如,至少一个组件)可以执行被描述为由设备200的另一组组件执行的一个或多个功能。
71.在本技术的一个实施例中,提供了nbmp系统300。参考图3,nbmp系统300包括nbmp源310、nbmp工作流管理器320、功能储存库330、至少一个媒体处理装置350、媒体源360和媒体接收器370。
72.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的功能。
73.nbmp源310可通过将工作流描述符文档发送到nbmp工作流管理器320,来请求nbmp工作流管理器320创建包括任务352的工作流,其中所述任务352将由至少一个媒体处理装置350执行。所述工作流描述符文档可包括若干个描述符,每个描述符可包括多个参数。
74.例如,nbmp源310可选择存储在功能储存库330中的功能,并向nbmp工作流管理器320发送工作流描述符文档,所述工作流描述符文档包括用于描述细节(诸如输入和输出数据、需要的功能以及工作流的要求)的多个描述符。工作流描述符文档可包括任务描述集,以及将由至少一个媒体处理装置350执行的任务352的输入和输出的连接映射。当nbmp工作流管理器320从nbmp源310接收此信息时,nbmp工作流管理器320可基于功能名称实例化任务,并根据连接映射连接任务来创建工作流。
75.可替代地或附加地,nbmp源310可以请求nbmp工作流管理器320使用一组关键词创建工作流。例如,nbmp源310可以将包括该组关键词的工作流描述符文档发送给nbmp工作流管理器320,nbmp工作流管理器320可以使用该组关键词来查找存储在功能储存库330中的适当的功能。当nbmp工作流管理器320从nbmp源310接收到此信息时,nbmp工作流管理器320可以使用在工作流描述符文档的处理描述符中指定的关键词来搜索适当的功能,以及使用工作流描述符文档中的其它描述符来提供和连接任务,从而创建工作流。
76.nbmp工作流管理器320可经由能力发现api 393与功能储存库330通信,其中,能力发现api 393可以与能力发现api 391相同或不同。并且,nbmp工作流管理器320可经由nbmp任务api 394,与至少一个媒体处理装置350通信。nbmp工作流管理器320可以包括至少一个处理器和存储代码的存储器,或者,nbmp工作流管理器320可以由至少一个处理器和存储代码的存储器实现,该代码被配置为使至少一个处理器执行nbmp工作流管理器320的功能。
77.nbmp工作流管理器320可使用nbmp任务api 394来设置、配置、管理和监视工作流的至少一个任务352,其中所述工作流的至少一个任务352可由至少一个媒体处理装置350执行。在一个实施例中,nbmp工作流管理器320可使用nbmp任务api 394来更新和销毁任务352。为了配置、管理和监视工作流的任务352,nbmp工作流管理器320可将诸如请求的消息发送到至少一个媒体处理装置350,其中每个消息可具有多个描述符,每个描述符可包括多个参数。任务352可包括媒体处理功能354,以及用于媒体处理功能354的配置353。
78.在一个实施例中,在从nbmp源310接收不包括任务列表(例如,包括关键词列表而非任务列表)的工作流描述符文档之后,nbmp工作流管理器320可基于工作流描述符文档中对任务的描述来选择任务,以经由能力发现api 393搜索功能储存库330,从而查找到适当的功能,以作为当前工作流的任务352运行。例如,nbmp工作流管理器320可基于工作流描述符文档中提供的关键词选择任务。在使用nbmp源310提供的关键词或一组任务描述集来标识适当的功能之后,nbmp工作流管理器320可使用nbmp任务api 394来配置工作流中的已选择任务。例如,nbmp工作流管理器320可从接收自nbmp源的信息中提取配置数据,并且基于配置数据配置任务352。
79.至少一个媒体处理装置350可被配置为从媒体源360接收媒体内容,根据包括任务352并由nbmp工作流管理器320创建的工作流来处理媒体内容,并且将处理的媒体内容输出到媒体接收器370。至少一个媒体处理装置350可各自包括至少一个处理器和存储代码的存储器,或者,至少一个媒体处理装置350可由至少一个处理器和存储代码的存储器实现,该代码被配置为使至少一个处理器执行媒体处理装置350的功能。
80.媒体源360可包括存储媒体的存储器,并且可与nbmp源310集成或分离。在一个实施例中,当工作流已经准备好时,nbmp工作流管理器320通知nbmp源310,并且媒体源360可基于工作流已准备好的通知,将媒体内容传输到至少一个媒体处理装置350。
81.媒体接收器370可包括至少一个处理器和至少一个显示器,或者,媒体接收器370可由至少一个处理器和至少一个显示器实现,所述至少一个显示器被配置为显示由至少一个媒体处理装置350处理的媒体。
82.第三方装置380可包括至少一个处理器和存储代码的存储器,或者,第三方装置380可由至少一个处理器和存储代码的存储器实现,该代码被配置为使至少一个处理器执行第三方装置380的功能。
83.如上所讨论,从nbmp源310到nbmp工作流管理器320的消息(例如,请求创建工作流的工作流描述符文档),以及从nbmp工作流管理器320到至少一个媒体处理装置350的消息(例如,使工作流被执行的消息)可包括多个描述符,每个描述符包括多个参数。在实施例中,使用api在nbmp系统300的任何组件之间进行的通信可包括多个描述符,每个所述描述符包括多个参数。
84.现在参考图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。
85.任何数量的nbmp源405、捕获设备406、控制源410、媒体源412、辅助接收器414和远程控制目标416可以由第一环境402的存储计算机指令的存储器和相同或不同的至少一个处理器实现。而且,任何数量的控制接收器424、媒体接收器426、辅助发送器420、远程控制器422和nbmp工作流管理器419可以由第二环境404的存储计算机指令的存储器和相同或不
同的至少一个处理器实现。
86.第一环境402和第二环境404之间的通信可以由例如网络提供。例如,可以经由链路491(例如f

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

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

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

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

function)。
88.控制源410可以经由链路491控制控制接收器424处理接收的媒体内容,以用于后续的下游分发,并且可以选择flus媒体实例化。链路491可以表示与flus接收器418的配置的创建和修改相关联的交互。例如,链路491可以允许控制源410选择flus媒体实例化,提供与flus会话中的每个媒体会话相关联的静态元数据,以及选择和配置处理和分发子功能。
89.媒体源412和媒体接收器426可以使用链路493经由媒体流建立至少一个媒体会话和随后的媒体数据传输。可以将flus媒体实例化定义为flus会话的一部分。可以为一个flus会话建立多个媒体流。媒体流可以包含至少一个媒体内容类型(例如,音频和/或视频)的媒体分量。flus会话可以包括至少一个媒体流,其中,例如,至少一个媒体流包含相同内容类型(例如,多个视频媒体流)。
90.辅助发送器420可以经由链路495将辅助消息发送到辅助接收器414。flus源408可以基于辅助消息,改变flus源408内的flus媒体功能的行为(例如,媒体源的媒体发送行为)。辅助消息内的辅助信息可以涉及,例如,网络相关状况、内容接收者的收视率或参与度信息,或者用户偏好数据。由辅助接收器414发布给媒体源412的示例建议如下。仅将视频的前5秒上载到flus接收器418,这是由于当前不存在实时上行链路流式传输内容的收视率。
91.远程控制器422可以经由链路497将控制消息发送到远程控制目标416。控制消息可以包括多个命令,例如,在flus源408中开始或停止媒体上行流式传输过程的命令。flus源408可以基于控制消息,改变媒体源412的行为。远程控制器422可以经由链路497将媒体接收器信息提供到flus源408,选择flus媒体实例化,并且确定捕获设备设置和其他flus源参数。
92.根据实施例,3gpp flus体系结构400可以包括至少一个flus发现点440,该至少一个flus发现点440存储flus接收器的列表。根据实施例,flus发现点440可以是flus服务器。
93.在3gpp flus规范中,仅针对flus会话定义通信机制。而且,作为更新flus接收器配置的一部分,可以提交wdd。最后,使用“获取flus接收器状态”,可以接收wdd。
94.根据本技术的实施例,可以提供nbmp源405和工作流管理器419,该nbmp源405和该工作流管理器419可以通过控制源410和控制接收器424通信,并且还可以彼此直接通信。例如,参考图5,nbmp源405可以定义工作流处理500,该工作流处理500可以包括直接nbmp工作
流创建。工作流处理500可以包括,例如,接收器发现阶段(阶段1)、能力发现阶段(阶段2)和工作流创建阶段(阶段3)。下面描述了这些阶段的示例。
95.阶段1,接收器发现:通过向flus源408发出请求(505),nbmp源405可以首先发现现有(flus)接收器,随后,flus源408可以将该请求(505)发送(510)到flus发现点440。作为响应,flus发现点440可以将(flus)接收器列表发送(515)到flus源,随后,flus源408将该(flus)接收器列表发送(520)到nbmp源405。
96.阶段2,能力发现:nbmp源405可以将请求(525)发送到flus源408,请求在接收器列表中列出的多个flus接收器中的一个flus接收器的能力的信息。例如,在接收器列表中包含flus接收器418的情况下,nbmp源405可以发送请求(525),请求flus接收器418的能力信息。flus源408可以将请求传递(530)到flus接收器418。在一些情况下,flus接收器418可能已经具有其平台的能力信息。flus接收器418可以将请求(532)提供到nbmp工作流管理器419。在flus接收器418不具有其能力信息的情况下,请求(532)可以包括从nbmp工作流管理器419获取flus接收器418的当前能力信息的请求。注意,flus接收器的能力可以根据当前运行的工作流而改变。
97.响应于该请求(532),nbmp工作流管理器419可以将包括请求(532)中请求信息的响应(534)发送到flus接收器418。响应(534)可以包括,例如,flus接收器418的能力描述、或能力描述的链接(例如url),以及其他信息。例如,其他信息可以包括nbmp方案标识符(例如,指示nbmp工作流管理器419支持nbmp的统一资源名(uniform resource name,urn),和/或,nbmp工作流管理器419的url)。然后,flus接收器418可以将响应(535)发送到flus源408,flus源408可以将该响应(535)发送(540)到nbmp源405。从flus接收器418发送到flus源408的响应(535)中的信息可以包括响应(534)中的全部或者部分信息,和/或,flus接收器418先前获得的其他信息,其中,响应(534)是从nbmp工作流管理器419发送到flus接收器418。例如,在flus接收器418从nbmp工作流管理器419接收能力描述(或链路)的情况下,或者在阶段2开始之前,flus接收器418中存在能力描述(或链路)的情况下,响应(535)可以包括flus接收器418的能力描述、或能力描述的链接(例如url)。根据上面的描述,flus源408和nbmp源405可以获取工作流能力,包括flus接收器能力。
98.根据实施例,可以将响应(535)通过flus接收器418经由flus源408提供(540)到nbmp源405,该响应(535)可以包括以下中的至少一个:
99.1、nbmp方案标识符:指示工作流管理器支持nbmp的urn。
100.2、nbmp方案标识符和位置的url(例如url),其中,从所述url可以获取接收器(例如,网络平台)的能力。
101.3、描述接收器能力的能力描述文档。
102.4、工作流管理器的url。
103.阶段3,创建工作流:nbmp源405可以读取在阶段2获取的能力描述。在nbmp源405接收能力描述的链接的情况下,nbmp源405可以使用该链接获取能力描述。然后,基于能力,nbmp源可以直接通过所获取的nbmp工作流管理器419的url,请求(545)创建nbmp工作流,在阶段2,经由flus接收器418和flus源408,将nbmp工作流管理器419的url从nbmp工作流管理器419提供到nbmp源405。nbmp工作流管理器419可以将响应(550)发送回nbmp源405。例如,参考图4,nbmp源405可以经由路径499将请求直接传送到nbmp工作流管理器419,并且nbmp
工作流管理器419可以经由路径499将响应发送回nbmp源405。基于nbmp源405的请求,nbmp工作流管理器419可以创建、运行、管理和/或监视工作流。
104.在阶段3之后,可以提供其他阶段。例如,flus源408的控制源410可以创建flus接收器配置呼叫,并建立与控制接收器424的会话(555)。可以在响应(560)的消息体中以flus会话id(例如“session

id=202”)标识会话,其中,将响应(560)从flus接收器418的控制接收器424发送到flus源408的控制源410。此后,可以由3gpp flus体系结构400提供nbmp和flus媒体会话565。
105.[扩展flus接收器资源]
[0106]
根据实施例,可以如下扩展flus接收器资源以携带信息。例如,flus接收器资源可以携带“处理描述(processing_description)”对象。该对象可以是flus接收器配置属性,并且可以提供定义后处理流水线的媒体处理描述文档。其中,flus接收器418可以将后处理流水线应用到接收的媒体分量。包括流水线描述的媒体处理描述还可以为媒体设置分发目标(例如,flus接收器418的存储)。该对象可以包括以下属性:(a)多用途因特网邮件扩展(multipurpose internet mail extensions,mime)类型,和(b)工作流管理器的url。可以在对flus接收器418的请求中提供(例如,通过nbmp工作流管理器419或flus源408)该对象,并且可以更新flus接收器418的配置。
[0107]
本技术的实施例可以单独使用或以任何顺序组合。此外,可以通过处理电路(例如,至少一个处理器或者至少一个集成电路)实现多个实施例(以及其方法)中的每一个实施例。例如,至少一个处理器可以执行存储在至少一个非易失性计算机可读介质中的计算机程序,以实现第一环境402和第二环境404中的至少一个(参考图4),或者实现第一环境402(例如,nbmp源405,和/或,flus源408)和第二环境(例如,flus接收器418,和/或,nbmp工作流管理器419)中的任何数量的部件,以及由这些部件执行的任何数量的功能。
[0108]
参考图5至图6,作为示例,根据本技术的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述图1b所示的方法。
[0109]
具体来说,本技术实施例可以包括计算机代码600,例如,请求代码610、响应代码620和获取代码630。nbmp源405、flus源408、flus发现点440、flus接收器418和nbmp工作流管理器419中的每一个可以包括此计算机代码的一部分,使得它们可以基于提供的计算机代码执行它们各自的功能。
[0110]
例如,请求代码610可以包括至少一个请求代码,所述至少一个请求代码用于使得nbmp源405请求接收器列表,flus接收器的能力,以及根据本技术的实施例创建或修改工作流,和/或,请求代码610可以包括至少一个请求代码,所述至少一个请求代码用于使得flus接收器418,根据本技术实施例,从nbmp工作流管理器419请求flus接收器418的能力信息(和/或,其他信息)。响应代码620可以包括至少一个响应代码,其中,所述至少一个响应代码使得,例如,flus源408、flus发现点440、flus接收器418和nbmp工作流管理器419提供(例如,创建或传递)针对本技术实施例描述的请求的响应。获取代码630可以包括至少一个获取代码,其中,所述至少一个获取代码使得nbmp源405,基于本技术实施例中存储能力描述文档的地址,获取能力描述文档。
[0111]
根据实施例,一种在flus中建立nbmp工作流的方法包括:通过多个flus发现和能力机制,发现网络平台的多个接收器和能力,其中,能力包括工作流管理器的url;以及通过nbmp工作流管理器创建、更新、检索和删除nbmp工作流,其中,nbmp源直接通过url请求创建nbmp工作流。
[0112]
前述公开内容提供了说明和描述,但并不旨在穷举或将实施方式限制为所公开的精确形式。根据以上公开,修改和变化是可能的,或者可以从实现的实践中获得修改和变化。
[0113]
如本文所用,术语“组件”旨在广义地解释为硬件,固件,或硬件和软件的组合。
[0114]
即使在权利要求中,和/或,说明书中公开了特征的组合,这些组合并不旨在对可能的实施方案的公开进行限制。事实上,这些特征中的许多特征可以以权利要求中未具体列举,和/或,说明书中未公开的方式组合。尽管下面列出的每个从属权利要求可以直接从属于仅一个权利要求,但是可能的实施方案的公开包括与权利要求组中的每个其他权利要求组合的每个从属权利要求。
[0115]
除非明确说明,否则本文中使用的元件、动作或指令均不得解释为关键或必要的。另外,如本文所使用的,冠词“一(a)”和“一个(an)”旨在包括一个或多个项,并且可以与“一个或多个”互换使用。此外,如本文所使用的,术语“集合”旨在包括一个或多个项(例如,相关项、不相关项、相关项和不相关项的组合等),并且可以与“一个或多个”互换使用。在仅希望一个项的情况下,则使用术语“一个”或类似语言。另外,如本文所使用的,术语“具有(has)”,“具有(have)”,“具有(having)”等旨在是开放式术语。进一步,短语“基于”旨在表示“至少部分地基于”,除非另外明确说明。
再多了解一些

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

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

相关文献

  • 日榜
  • 周榜
  • 月榜