首页 / 专利分类库 / 电通信技术 / 基于网络的媒体处理系统的装置和方法

基于网络的媒体处理系统的装置和方法

申请号 CN202010316536.X 申请日 2020-04-21 公开(公告)号 CN111835704B 公开(公告)日 2024-04-23
申请人 腾讯美国有限责任公司; 发明人 索达加伊拉吉;
摘要 一种用于基于网络的媒体处理(NBMP)系统的装置和方法。所述NBMP系统包括第一装置和第二装置。所述方法包括:所述NBMP系统的所述第一装置从所述NBMP系统的所述第二装置接收 请求 ,该请求包括一个具有请求值的参数,用于请求所述第一装置使用所述参数的所述请求值执行一个动作;所述NBMP系统的所述第一装置向所述第二装置发送应答信息,该应答信息用于指示所述第一装置对所述参数的所述请求值的应答结果。
权利要求

1.一种用于基于网络的媒体处理NBMP系统的方法,其特征在于,所述NBMP系统包括第一装置和第二装置,所述方法包括:
所述NBMP系统的所述第一装置从所述NBMP系统的所述第二装置接收请求,该请求包括一个具有请求值的参数,用于请求所述第一装置使用所述参数的所述请求值执行一个动作;
所述NBMP系统的所述第一装置向所述第二装置发送应答信息,该应答信息用于指示所述第一装置对所述参数的所述请求值的应答结果;
其中,当所述第一装置为NBMP工作流管理器,所述第二装置为NBMP源时,所述NBMP源,将所述请求作为请求所述NBMP工作流管理器创建工作流的请求,发送给所述NBMP工作流管理器,所述工作流将由至少一个媒体处理装置执行,所述至少一个媒体处理装置用于处理待显示的媒体,所述NBMP工作流管理器用于创建所述工作流,并且使所述至少一个媒体处理装置执行所述工作流。
2.根据权利要求1所述的方法,其特征在于,发送给所述第二装置的所述应答信息为第一值时,指示所述第一装置接受了所述请求值,以与所述参数一起使用,并执行所述动作。
3.根据权利要求1所述的方法,其特征在于,发送给所述第二装置的所述应答信息为第二值时,指示所述第一装置未接受所述参数的所述请求值。
4.根据权利要求1所述的方法,其特征在于,发送给所述第二装置的所述应答信息为第三值时,指示所述第一装置不支持所述参数。
5.根据权利要求1所述的方法,其特征在于,发送给所述第二装置的所述应答信息为第四值时,指示已经给由所述第一装置使用的所述参数分配了一个指定的量。
6.根据权利要求1所述的方法,其特征在于,发送给所述第二装置的所述应答信息包括最高级应答,该最高级应答用于指示所述第一装置是否接受了所述请求中的所有参数的所有请求值,包括所述参数的所述请求值。
7.根据权利要求1~6项任一项所述的方法,其特征在于,
所述第一装置接收的所述请求中包括一个描述符,该描述符包括具有所述请求值的所述参数,并且
发送给所述第二装置的所述应答信息包括描述符级应答,该描述符级应答用于指示所述第一装置是否接受了所述请求的所述描述符的所有参数的所有请求值,包括所述参数的所述请求值。
8.根据权利要求1~6项任一项所述的方法,其特征在于,
所述第一装置接收的所述请求中包括一个描述符,所述描述符包括具有所述请求值的所述参数,并且
发送给所述第二装置的所述应答信息包括参数级确认应答,该参数级确认应答用于指示所述第一装置是否接受了所述描述符的所述参数的所述请求值,或者所述第一装置是否支持所述参数。
9.根据权利要求1所述的方法,其特征在于,
当所述第一装置为媒体处理装置,所述第二装置为NBMP工作流管理器时,所述NBMP工作流管理器,将所述请求作为请求所述媒体处理装置以预定方式执行媒体的处理的请求,发送给所述媒体处理装置;所述媒体处理装置用于执行所述媒体的所述处理。
10.一种基于网络的媒体处理NBMP系统,其特征在于,至少包括第一装置和第二装置,所述第一装置为NBMP工作流管理器,所述第二装置为NBMP源;
所述NBMP源,向所述NBMP工作流管理器发送创建工作流的请求,该请求包括一个具有请求值的参数,用于请求所述NBMP工作流管理器使用所述参数的所述请求值创建工作流,所述工作流将由至少一个媒体处理装置执行,所述至少一个媒体处理装置用于处理待显示的媒体;
所述NBMP工作流管理器用于接收所述创建工作流的请求,根据该创建工作流的请求,创建所述工作流,并且使所述至少一个媒体处理装置执行所述工作流,所述NBMP工作流管理器还向所述NBMP源发送应答信息,该应答信息用于指示所述NBMP工作流管理器对所述参数的所述请求值的应答结果。
11.一种基于网络的媒体处理NBMP工作流管理器,其特征在于,其包括:
请求接收模,用于从NBMP系统的NBMP源接收请求,该请求包括一个具有请求值的参数,用于请求通过使用所述参数的所述请求值执行一个动作;
应答模块,用于使所述NBMP工作流管理器向所述NBMP源发送应答信息,该应答信息用于指示所述NBMP工作流管理器对所述参数的所述请求值的应答结果;
动作执行模块,用于创建工作流,并且使至少一个媒体处理装置执行所述工作流;
其中,所述NBMP源将所述请求作为请求所述NBMP工作流管理器创建工作流的请求,发送给所述NBMP工作流管理器,所述工作流将由所述至少一个媒体处理装置执行,所述至少一个媒体处理装置用于处理待显示的媒体。
12.一种存储计算机指令的非易失性计算机可读存储介质,其特征在于,当所述计算机指令由基于网络的媒体处理NBMP系统的至少一个处理器执行时,使得所述至少一个处理器执行如权利要求1至9任一项所述的方法。

说明书全文

基于网络的媒体处理系统的装置和方法

[0001] 本申请要求2019年4月23日提交的第62/837,594号美国临时申请的优先权,以及2020年4月2日递交的第16/838,579号美国正式申请的优先权,所述两个申请的内容通过引用并入本文。

技术领域

[0002] 本申请涉及媒体处理系统,更具体地涉及基于网络的媒体处理系统中的媒体处理应答装置和方法。

背景技术

[0003] 运动图像专家组(Moving Pictures Experts Group,MPEG)的基于网络的媒体处理(Network Based Media Processing,NBMP)项目开发了上处理媒体的概念。当前的NBMP规范限定了其接口中使用的各种描述符。然而,当前的NBMP设计没有提供任何多层次、具体的应答方法。发明内容
[0004] 根据本申请实施例,提供了一种用于基于网络的媒体处理(NBMP)系统的方法,该NBMP系统包括第一装置和第二装置。所述方法包括:所述NBMP系统的所述第一装置从所述NBMP系统的所述第二装置接收请求,该请求包括一个具有请求值的参数,用于请求所述第一装置使用所述参数的所述请求值执行一个动作;所述NBMP系统的所述第一装置向所述第二装置发送应答信息,该应答信息用于指示所述第一装置对所述参数的所述请求值的确认结果。
[0005] 在本申请实施例中,发送给所述第二装置的所述应答信息为第一值时,指示所述第一装置接受了所述请求值,以与所述参数一起使用,并执行所述动作。在一个实施例中,发送给所述第二装置的所述应答信息为第二值时,指示所述第一装置未接受所述参数的所述请求值。在一个实施例中,发送给所述第二装置的所述应答信息为第三值时,指示所述第一装置不支持所述参数。发送给所述第二装置的所述应答信息为第四值时,指示已经给由所述第一装置使用的所述参数分配了一个指定的量。
[0006] 在本申请实施例中,发送给所述第二装置的所述应答信息包括最高级(top level)应答,该最高级应答用于指示所述第一装置是否接受了所述请求中的所有参数的所有请求值,包括所述参数的所述请求值。在一个实施例中,所述第一装置接收的所述请求中包括一个描述符,该描述符包括具有所述请求值的所述参数,并且发送给所述第二装置的所述应答信息包括描述符级应答,该描述符级应答用于指示所述第一装置是否接受了所述请求的所述描述符的所有参数的所有请求值,包括所述参数的所述请求值。在一个实施例中,所述第一装置接收的所述请求中包括一个描述符,所述描述符包括具有所述请求值的所述参数,并且发送给所述第二装置的所述应答信息包括参数级应答,该参数级应答用于指示所述第一装置是否接受了所述描述符的所述参数的所述请求值,或者所述第一装置是否支持所述参数。
[0007] 在本申请实施例中,所述第一装置包括NBMP工作流管理器,所述第二装置包括NBMP源,所述NBMP源,将所述请求作为请求所述NBMP工作流管理器创建工作流的请求,发送给所述NBMP工作流管理器,所述工作流将由至少一个媒体处理装置执行,所述至少一个媒体处理装置用于处理待显示的媒体,所述NBMP工作流管理器用于创建所述工作流,并且使所述至少一个媒体处理装置执行所述工作流。
[0008] 在本申请实施例中,所述第一装置包括媒体处理装置,所述第二装置包括NBMP工作流管理器,所述NBMP工作流管理器,将所述请求作为请求所述媒体处理装置以预定方式执行媒体的处理的请求,发送给所述媒体处理装置,所述媒体处理装置用于执行所述媒体的所述处理。
[0009] 根据本申请实施例,提供了基于网络的媒体处理(NBMP)系统的子系统。所述子系统包括:至少一个存储器,用于存储计算机程序代码;以及至少一个处理器,用于从所述NBMP系统的包括至少一个处理器的另一子系统接收请求,该请求包括一个具有请求值的参数,用于请求通过使用所述参数的所述请求值执行一个动作,其中所述子系统的所述至少一个处理器用于访问所述计算机程序代码,并且按照所述计算机程序代码的指示进行操作,所述计算机程序代码包括:应答代码,用于使所述子系统的所述至少一个处理器向所述另一子系统发送应答信息,该应答信息用于指示所述子系统对所述参数的所述请求值的应答结果。
[0010] 在本申请实施例中,发送给所述另一子系统的所述应答信息为第一值时,指示所述子系统接受了所述请求值,以与所述参数一起使用,并执行所述动作。在一个实施例中,发送给所述另一子系统的所述应答信息为第二值时,指示所述子系统未接受所述参数的所述请求值。在一个实施例中,发送给所述另一子系统的所述应答信息为第三值时,指示所述子系统不支持所述参数。在一个实施例中,发送给所述另一子系统的所述应答信息为第四值时,指示已经给由所述子系统使用的所述参数分配了一个指定的量。
[0011] 在本申请实施例中,发送给所述另一子系统的所述应答信息包括最高级应答,该最高级应答用于指示所述子系统是否接受了所述请求中的所有参数的所有请求值,包括所述参数的所述请求值。在一个实施例中,所述请求包括一个描述符,该描述符包括具有所述请求值的所述参数,并且发送给所述另一子系统的所述应答包括描述符级应答,该描述符级应答用于指示所述子系统是否接受了所述请求的所述描述符的所有参数的所有请求值,包括所述参数的所述请求值。在一个实施例中,所述请求中包括一个描述符,所述描述符包括具有所述请求值的所述参数,并且发送给所述另一子系统的所述应答包括参数级应答,该参数级应答指示所述子系统是否接受了所述描述符的所述参数的所述请求值,或者所述子系统是否支持所述参数。
[0012] 在本申请实施例中,所述子系统包括NBMP工作流管理器,所述另一子系统包括NBMP源,所述NBMP源,将所述请求作为请求所述NBMP工作流管理器创建工作流的请求,发送给所述NBMP工作流管理器,所述工作流将由至少一个媒体处理装置来执行,所述至少一个媒体处理装置包括至少一个处理器,并且所述至少一个媒体处理装置用于处理用于显示的媒体,所述NBMP工作流管理器的所述计算机程序代码进一步包括:动作执行代码(action performance code),用于使所述NBMP工作流管理器的所述至少一个处理器创建所述工作流,并且使所述至少一个媒体处理装置执行所述工作流。
[0013] 在本申请实施例中,所述子系统包括媒体处理装置,所述另一子系统包括NBMP工作流管理器;所述NBMP工作流管理器,将所述请求作为请求所述媒体处理装置以预定方式执行媒体的处理的请求,发送给所述媒体处理装置,并且所述媒体处理装置的所述计算机程序代码进一步包括:动作执行代码,用于使所述媒体处理装置的所述至少一个处理器执行所述媒体的所述处理。
[0014] 根据本申请实施例,提供了一种基于网络的媒体处理(NBMP)系统,至少包括第一装置和第二装置,所述第一装置包括NBMP工作流管理器,所述第二装置包括NBMP源;所述NBMP源,向所述NBMP工作流管理器发送创建工作流的请求,该请求包括一个具有请求值的参数,用于请求所述NBMP工作流管理器使用所述参数的所述请求值创建工作流,所述工作流将由至少一个媒体处理装置执行,所述至少一个媒体处理装置用于处理待显示的媒体;所述NBMP工作流管理器用于接收所述创建工作流的请求,根据该创建工作流的请求,创建所述工作流,并且使所述至少一个媒体处理装置执行所述工作流,所述NBMP工作流管理器还向所述NBMP源发送应答信息,该应答信息用于指示所述NBMP工作流管理器对所述参数的所述请求值的应答结果。
[0015] 根据本申请实施例,提供了一种基于网络的媒体处理(NBMP)系统的装置,所述装置包括:请求接收模,用于从所述NBMP系统的另一装置接收请求,该请求包括一个具有请求值的参数,用于请求通过使用所述参数的所述请求值执行一个动作;应答模块,用于使所述装置向所述另一装置发送应答信息,该应答信息用于指示所述装置对所述参数的所述请求值的应答结果。
[0016] 根据本申请实施例,提供了一种存储计算机指令的非易失性计算机可读存储介质,当所述计算机指令由基于网络的媒体处理(NBMP)系统的至少一个处理器执行时,使得所述至少一个处理器:从所述NBMP系统的另外的至少一个处理器接收请求,该请求包括一个具有请求值的参数,用于请求通过使用所述参数的所述请求值执行一个动作;向所述NBMP系统的所述另外的至少一个处理器发送应答信息,该应答信息用于指示所述NBMP系统的所述至少一个处理器对所述参数的所述请求值的应答结果。
[0017] 本申请的一些实施例提供了用信号发送多级应答的系统和方法,而不仅仅是发送通过或失败应答。本申请的一些实施例提供了一些系统和方法,能够使得工作流管理器与媒体处理装置之间可进行详细的通信,并因此能够以更为灵活的方式分配资源和建立工作流。附图说明
[0018] 结合以下详细描述和附图,本申请主题的其他特征、本质和各种优点将会变得更加清楚,其中:
[0019] 图1示出了本申请实施例的NBMP系统的示意图。
[0020] 图2示出了本申请实施例的NBMP系统执行的方法的流程图
[0021] 图3示出了本申请实施例的NBMP系统存储的计算机程序代码的示意图。
[0022] 图4示出了本申请实施例的NBMP系统中的装置的模块结构示意图。

具体实施方式

[0023] 基于网络的媒体处理(NBMP)系统,通过发挥公共云服务、私有云服务和混合云服务的优势,在提高媒体处理效率、以更快的速度和更低的成本部署媒体服务、提供大规模部署的能方面,展现出巨大的潜力。
[0024] 在本申请的实施例中,提供了一个NBMP系统100。参考图1所示,NBMP系统100包括NBMP源110、NBMP工作流管理器120、功能存储库(function repository)130、网络控制器140、一个或多个媒体处理装置150、媒体源160、媒体接收器(media sink)170。
[0025] NBMP源110可从第三方装置180接收指令,可经由NBMP工作流应用程序接口(API)192与NBMP工作流管理器120通信,并且可经由功能发现API 191与功能存储库130通信。例如,NBMP源110可将工作流描述符文档发送到NBMP工作流管理器120,并且可读取存储在功能存储库130的存储器中的各个功能的功能描述,所述功能可包括媒体处理功能,例如,媒体解码、特征点提取、相机参数提取、投影方法、接缝信息(seam information)提取、混合、后期处理、编码等功能。NBMP源110可包括至少一个处理器和存储代码的存储器,所述代码用于使所述至少一个处理器执行NBMP源110的功能。
[0026] NBMP源110可通过将工作流描述文档发送到NBMP工作流管理器120,来请求NBMP工作流管理器120创建包括任务152的工作流,其中所述任务152将由所述一个或多个媒体处理装置150执行。所述工作流描述文档可包括若干描述符,每个描述符可具有若干参数。
[0027] 例如,NBMP源110可选择存储在功能存储库130中的一个或多个功能,并向NBMP工作流管理器120发送工作流描述文档,所述工作流描述文档包括用于描述细节(诸如输入和输出数据、所需的功能、工作流要求等)的描述符。工作流描述文档可进一步包括任务描述集,以及将由所述一个或多个媒体处理装置执行的各个任务152的输入和输出连接映射(map)。当NBMP工作流管理器120从NBMP源110接收到此信息时,NBMP工作流管理器120可基于功能名称将任务实例化,并根据所述连接映射连接任务152来创建工作流。
[0028] 可替代地或附加地,NBMP源110可通过使用一组关键词,请求NBMP工作流管理器120创建工作流。例如,NBMP源110可将包括一组关键词的工作流描述文档发送给NBMP工作流管理器120,NBMP工作流管理器120可使用该组关键词查找存储在功能存储库130中的适当的一个或多个功能。当NBMP工作流管理器120从NBMP源110接收到此信息时,NBMP工作流管理器120可使用在工作流描述文档的处理描述符(Processing Descriptor)中指定的关键词来搜索适当的一个或多个功能,以及使用工作流描述文档中的其它描述符来提供和连接任务,从而创建工作流。
[0029] NBMP工作流管理器120可经由功能发现API 193与功能存储库130通信,功能发现API 193可是与功能发现API 191相同或不同的API,并且NBMP工作流管理器120可经由NBMP任务API 194、NBMP链路API 195、功能发现API 196,通过网络控制器140与所述一个或多个媒体处理装置150通信,功能发现API 196可是与功能发现API 193和功能发现API 191相同或不同的API。NBMP工作流管理器120可包括至少一个处理器和存储代码的存储器,所述代码被配置为使所述至少一个处理器执行NBMP工作流管理器120的功能。
[0030] NBMP工作流管理器120可使用NBMP任务API 194来设置、配置、管理和监测工作流的任务152中的一个或多个,其中所述工作流的任务152中的一个或多个可由一个或多个媒体处理装置150执行。在实施例中,NBMP工作流管理器120可使用NBMP任务API 194更新和销毁任务152。为了配置、管理和监测工作流的任务152,NBMP工作流管理器120可将诸如请求的消息发送到所述一个或多个媒体处理装置150,其中每个消息可具有若干描述符,每个描述符具有若干参数。每个任务152可都包括一个或多个媒体处理功能154,以及用于一个或多个媒体处理功能154的一个或多个配置153。
[0031] 在实施例中,在从NBMP源110接收到不包括任务列表(例如,包括关键词列表,而非任务列表)的工作流描述文档之后,NBMP工作流管理器120可基于工作流描述文档中的任务描述,选择任务,以经由功能发现API193搜索功能存储库130,从而查找到一个或多个适当的功能,作为当前工作流的任务152而运行。例如,NBMP工作流管理器120可基于工作流描述文档提供的关键词选择任务。在使用NBMP源110提供的关键词或任务描述集识别一个或多个适当的功能之后,NBMP工作流管理器120可使用NBMP任务API 194来配置已选择的工作流中的任务。例如,NBMP工作流管理器120可从接收自NBMP源的信息中提取配置数据,并且基于配置数据配置任务152。
[0032] 所述一个或多个媒体处理装置150可被配置为从媒体源160接收媒体内容,根据包括任务150并由NBMP工作流管理器120创建的工作流来处理接收的媒体内容,并且将处理后的媒体内容输出到媒体接收器(media sink)170。所述一个或多个媒体处理装置150可各自包括至少一个处理器和存储代码的存储器,所述代码被配置为使至少一个处理器执行一个或多个媒体处理装置150的功能。
[0033] 网络控制器140可包括至少一个处理器和存储代码的存储器,所述代码被配置为使所述至少一个处理器执行网络控制器140的功能。
[0034] 媒体源160可包括存储媒体的存储器,并且可与NBMP源110集成或分离。在实施例中,当工作流准备好时,NBMP工作流管理器120通知NBMP源110和/或媒体源,并且媒体源160可基于工作流已准备好的通知,将媒体内容传输到所述一个或多个媒体处理装置150。
[0035] 媒体接收器170可包括至少一个处理器和至少一个显示器,所述至少一个显示器被配置为显示由所述一个或多个媒体处理装置150处理的媒体内容。
[0036] 第三方装置180可包括至少一个处理器和存储代码的存储器,所述代码被配置为使所述至少一个处理器执行第三方装置180的功能。
[0037] 如上所讨论,从NBMP源110到NBMP工作流管理器120的消息(例如,请求创建工作流的工作流描述文档),以及从NBMP工作流管理器120到所述一个或多个媒体处理装置150的消息(例如,使工作流得以执行的消息)可包括若干描述符,每个描述符都可具有若干参数。在实施例中,使用API在NBMP系统100的任何装置之间进行的通信可包括若干描述符,每个描述符都可包括若干参数。
[0038] 本申请的一些实施例允许上述一个或多个API中的多级应答信令,包括工作流API 192、任务API 194、链路API 195、功能发现API 191、193和196。
[0039] 例如,本申请的一些实施例使所述一个或多个媒体处理装置150和/或NBMP工作流管理器120,能够分别向NBMP源和NBMP工作流管理器120确认资源的满足(accommodation),每个描述符或每个参数应答一次。此外,本申请的一些实施例通过定义添加何种级别的支持,使得能够发出不止于“是”/“否”响应的信令。
[0040] 下面描述本申请的应答方案,其中作为示例,所述应答方案用于所述一个或多个媒体处理装置150向NBMP工作流管理器120应答。
[0041] 为了使媒体处理装置150提供标准的详细应答信息,可使用与提供给媒体处理装置150的描述符相同的描述符,作为应答信息。然而,应答信息中的描述符的每个参数的值不是提供给媒体处理装置150的描述符的值,而是例如表1中标识的下列可能值中的一个:
[0042] 表1—应答信息的可能值
[0043]
[0044]
[0045] 使用下面表2的启动延迟(startup delay)描述符作为示例性描述符,帮助描述本申请实施例的应答方案。
[0046] 表2—延迟描述符
[0047] 参数名称 描述 数据类型Delay(延迟) 任务启动前的延迟量。 数字
[0048] 启动延迟描述符可具有以下JSON模式(schema):
[0049]
[0050] 当NBMP工作流管理器120请求特定的启动延迟时,可将下列描述符添加到待发送给媒体处理装置150的请求中:
[0051]
[0052] 媒体处理装置150可使用下列描述符中的一个描述符进行应答:
[0053] 1.Accepted(已接受):
[0054]
[0055]
[0056] 2.Failure(失败):
[0057]
[0058] 3.NotSupported(不支持):
[0059]
[0060] 4.Supported for 40sec(支持40秒):
[0061]
[0062] 本申请的实施例可提供多级应答信息。例如,响应于一个请求,所述一个或多个媒体处理装置150或NBMP工作流管理器120可向所述请求的来源提供最高级应答、描述符级应答或参数级应答。最高级应答可表示能够满足整个请求。描述符级应答可表示可满足所述请求的某些描述符,但不能满足所述请求的其它描述符。参数级应答可表示可满足所述请求的某些参数,但不能满足所述请求的其它参数。
[0063] 下面提供最高级应答、描述符级应答、参数级应答的示例。
[0064] 使用下面表3的应答描述符作为示例性描述符,描述本申请实施例的多级应答方案。
[0065] 表3—应答描述符
[0066]
[0067] 应答描述符可具有以下JSON模式:
[0068]
[0069]
[0070] 最高级应答的示例如下:
[0071]
[0072] 关于描述符级应答,相同的应答对象可用于每个描述符。例如,可按以下方式应答处理描述符(Processing descriptor):
[0073]
[0074] 关于参数级应答,相同的应答对象可用于每个参数。例如,可按以下方式应答处理描述符的带宽参数:
[0075]
[0076] 可替代地,关于参数级应答,可改变描述符的请求值,以对一个或多个参数进行应答。例如,可按以下方式应答处理描述符的带宽参数:
[0077]
[0078]
[0079] 本申请的系统(包括NBMP系统100)可包括一个或多个装置,该一个或多个装置基于从另一个装置接收到一个请求,而执行本申请的任何应答方案,包括上述应答方案。
[0080] 参考图2所示,本申请中的系统的装置可通过执行方法200,实施本申请的应答方案。例如,本申请中的系统的第一装置从系统的第二装置接收请求,该请求包括一个具有请求值的参数,用于请求所述第一装置执行例如可能与媒体处理相关的动作(210)。随后,第一装置可直接地或间接地向第二装置发送应答信息(220),该应答信息用于指示所述第一装置对所述参数的所述请求值的应答结果。进一步地,如果所述动作是可执行的,则第一装置可执行所述动作(230)。尽管方法200在步骤220之后描述了步骤230,但是在各种实施例中,步骤230可替代地发生在步骤220之前或期间。
[0081] 在图2所示的方法200中,发送给所述第二装置的所述应答信息为第一值时,指示所述第一装置接受了所述请求值,以与所述参数一起使用,并执行所述动作。发送给所述第二装置的所述应答信息为第二值时,指示所述第一装置未接受所述参数的所述请求值。发送给所述第二装置的所述应答信息为第三值时,指示所述第一装置不支持所述参数。发送给所述第二装置的所述应答信息为第四值时,指示已经给由所述第一装置使用的所述参数分配了一个指定的量。
[0082] 根据本申请实施例,发送给所述第二装置的所述应答信息包括最高级应答,该最高级应答用于指示所述第一装置是否接受了所述请求中的所有参数的所有请求值,包括所述参数的所述请求值。
[0083] 根据本申请实施例,所述第一装置接收的所述请求中包括一个描述符,该描述符包括具有所述请求值的所述参数,并且发送给所述第二装置的所述应答信息包括描述符级应答,该描述符级应答用于指示所述第一装置是否接受了所述请求的所述描述符的所有参数的所有请求值,包括所述参数的所述请求值。
[0084] 根据本申请实施例,所述第一装置接收的所述请求中包括一个描述符,所述描述符包括具有所述请求值的所述参数,并且发送给所述第二装置的所述应答信息包括参数级应答,该参数级应答用于指示所述第一装置是否接受了所述描述符的所述参数的所述请求值,或者所述第一装置是否支持所述参数。
[0085] 所述第一装置包括NBMP工作流管理器,所述第二装置包括NBMP源;所述NBMP源,将所述请求作为请求所述NBMP工作流管理器创建工作流的请求,发送给所述NBMP工作流管理器,所述工作流将由至少一个媒体处理装置执行,所述至少一个媒体处理装置用于处理待显示的媒体,所述NBMP工作流管理器用于创建所述工作流,并且使所述至少一个媒体处理装置执行所述工作流。
[0086] 或者,所述第一装置包括媒体处理装置,所述第二装置包括NBMP工作流管理器;所述NBMP工作流管理器,将所述请求作为请求所述媒体处理装置以预定方式执行媒体的处理的请求,发送给所述媒体处理装置;所述媒体处理装置用于执行所述媒体的所述处理。
[0087] 参考图3所示,本申请的系统(包括NBMP系统100)可包括代码300。
[0088] 例如,系统的第一装置可包括存储应答代码320和动作执行(action performance)代码330的存储器,以及执行应答代码320和动作执行代码330的至少一个处理器。系统的第二装置可包括存储请求代码310的存储器和执行请求代码310的至少一个处理器。
[0089] 请求代码310可使第二装置的至少一个处理器向系统的第一装置发送请求,请求执行例如可能与媒体处理相关的动作。
[0090] 系统的第一装置接收到所述请求之后,应答代码320可根据本申请的应答方案,使第一装置的至少一个处理器向系统的第二装置发送应答信息。另外,如果所述动作是可执行的,则动作执行代码330可使第一装置的至少一个处理器执行所述动作。
[0091] 图4是本申请实施例的NBMP系统的一个装置的模块结构示意图。如图4所示,所述装置400包括:请求接收模块410,用于从所述NBMP系统的另一装置接收请求,该请求包括一个具有请求值的参数,用于请求通过使用所述参数的所述请求值执行一个动作;应答模块420,用于使所述装置向所述另一装置发送应答信息,该应答信息用于指示所述装置对所述参数的所述请求值的应答结果。
[0092] 根据本申请一个实施例,发送给所述另一装置的所述应答信息为第一值时,指示所述装置接受了所述请求值,以与所述参数一起使用,并执行所述动作。根据本申请另一个实施例,发送给所述另一装置的所述应答信息为第二值时,指示所述装置未接受所述参数的所述请求值。根据本申请的再一个实施例,发送给所述另一装置的所述应答信息为第三值时,指示所述装置不支持所述参数。根据本申请的再一个实施例,发送给所述另一装置的所述应答信息为第四值时,指示所述装置已经给由所述装置使用的所述参数分配了一个指定的量。
[0093] 根据本申请实施例,发送给所述另一装置的所述应答包括最高级应答,该最高级应答用于指示所述装置是否接受了所述请求中的所有参数的所有请求值,包括所述参数的所述请求值。
[0094] 根据本申请实施例,所述请求包括一个描述符,该描述符包括具有所述请求值的所述参数,并且发送给所述另一装置的所述应答信息包括描述符级应答,该描述符级应答用于指示所述装置是否接受了所述请求的所述描述符的所有参数的所有请求值,包括所述参数的所述请求值。
[0095] 根据本申请另一个实施例,所述请求中包括一个描述符,所述描述符包括具有所述请求值的所述参数,并且发送给所述另一装置的所述应答包括参数级应答,该参数级应答指示所述装置是否接受了所述描述符的所述参数的所述请求值,或者所述装置是否支持所述参数。
[0096] 根据本申请实施例,所述装置包括NBMP工作流管理器,所述另一装置包括NBMP源;所述NBMP源,将所述请求作为请求所述NBMP工作流管理器创建工作流的请求,发送给所述NBMP工作流管理器,所述工作流将由至少一个媒体处理装置来执行,所述至少一个媒体处理装置用于处理用于显示的媒体,并且所述装置进一步包括:动作执行模块430,用于创建所述工作流,并且使所述至少一个媒体处理装置执行所述工作流。
[0097] 或者,根据本申请实施例,所述装置是媒体处理装置,所述另一装置是NBMP工作流管理器;所述NBMP工作流管理器,将所述请求作为请求所述媒体处理装置以预定方式执行媒体的处理的请求,发送给所述媒体处理装置,并且所述装置进一步包括:动作执行模块430,用于执行所述媒体的所述处理。
[0098] 在一个实施例中,图1所示的NBMP工作流管理器120和NBMP源110,可分别与图2‑图3描述的第一装置和第二装置关联。例如,NBMP工作流管理器120可基于从NBMP源110接收到创建工作流的请求,向NBMP源110提供应答信息,所述工作流将由至少一个媒体处理装置
150执行,以处理待显示的媒体。
[0099] 可替代地或附加地,媒体处理装置150可基于从NBMP工作流管理器120接收到例如控制媒体处理装置150(用于处理待显示的媒体)的请求,向NBMP工作流管理器120提供应答信息。即,媒体处理装置150可是与图2‑图3描述的第一装置关联,NBMP工作流管理器120可是与图2‑图3描述的第二装置关联。发送给媒体处理装置150的请求可涉及例如配置、管理和/或监测待由媒体处理装置150执行的、用于处理媒体的一个或多个任务152。
[0100] 本申请的系统和方法可单独使用或以任何顺序组合使用。此外,本申请中的每一种方法和系统中的每一个装置可通过处理电路(例如,一个或多个处理器,或一个或多个集成电路)实施。例如,每种方法和每个装置中的一个或多个处理器可执行存储在非易失性计算机可读存储介质中的程序,以使每种方法和每个装置中的一个或多个处理器执行它们各自的功能。在一个实施例中,系统100中的一个或多个装置可在云计算环境中实施。例如,第三方装置180、NBMP源110、NBMP工作流管理器120、功能存储库130、网络控制器140、媒体源160、媒体处理装置150、媒体接收器170中的一个或多个可在包括至少一个处理器的相同或不同的云计算环境中实施。
[0101] 前文的公开内容提供了说明和描述,但并不旨在穷举或将实施方式限制为所公开的精确形式。根据上述公开内容,修改和变化是可能的,或者是可从对所述实施方式的实践中获得的。
[0102] 如本申请中所使用的,术语“装置”旨在广义地解释为硬件固件或硬件和软件的组合。
[0103] 即使在权利要求中记载了一些特征的组合和/或在说明书中公开了一些特征的组合,这些组合也不旨在限制可能的实施方式的公开。实际上,这些特征中的许多特征可以没有在权利要求中具体记载和/或在说明书中公开的方式组合。虽然每个从属权利要求可仅直接从属于一个权利要求,但是可能的实施方式的公开内容包括权利要求集中的每个从属权利要求与每个其它权利要求的组合。
[0104] 本申请中使用的元件、动作或指令不应解释为是关键的或必需的,除非明确说明。此外,如本申请中所使用,冠词“一个(a)”和“一个(an)”旨在包括一个或多个项,并且可与“一个或多个”互换使用。此外,如本申请中所使用,术语“集”(set)旨在包括一个或多个项(例如,相关项、不相关项、相关项和不相关项的组合等),并且可与“一个或多个”互换使用。
在仅意指一个项的情况下,使用术语“一个(one)”或类似语言。此外,如本文中所使用,术语“具有(has)”、“具有(have)”、“具有(having)”等旨在为开放式术语。此外,短语“基于”旨在表示“至少部分地基于”,除非另有明确说明。
QQ群二维码
意见反馈