CN114731343A - 云服务的方法和装置 - Google Patents

云服务的方法和装置 Download PDF

Info

Publication number
CN114731343A
CN114731343A CN202180006274.XA CN202180006274A CN114731343A CN 114731343 A CN114731343 A CN 114731343A CN 202180006274 A CN202180006274 A CN 202180006274A CN 114731343 A CN114731343 A CN 114731343A
Authority
CN
China
Prior art keywords
nbmp
entity
workflow
media processing
media
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202180006274.XA
Other languages
English (en)
Inventor
索达加·伊拉吉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent America LLC
Original Assignee
Tencent America LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent America LLC filed Critical Tencent America LLC
Publication of CN114731343A publication Critical patent/CN114731343A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/222Secondary servers, e.g. proxy server, cable television Head-end
    • H04N21/2223Secondary servers, e.g. proxy server, cable television Head-end being a public access point, e.g. for downloading to or uploading from clients
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1069Session establishment or de-establishment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/752Media network packet handling adapting media to network capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Business, Economics & Management (AREA)
  • Business, Economics & Management (AREA)
  • Mathematical Physics (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Abstract

本申请实施例提供了用于基于网络的媒体处理的方法和装置。例如,一种云中的用于基于网络的媒体处理(NBMP)的装置包括处理电路。所述处理电路接收与云中的用于NBMP的实体相关的信息。所述处理电路从所述实体相关的信息中获取NBMP实体标识符。然后,所述处理电路基于所述NBMP实体标识符解释所述实体相关的信息。

Description

云服务的方法和装置
通过引用并入本文
本申请要求于2021年5月20日提交的、申请号为17/326,049、名称为“云服务的方法和装置”的美国专利申请的优先权,其要求于2020年10月5日提交的、申请号为63/087,730、名称为“云中媒体网络元素的网络实体标识符”的美国临时申请的优先权。在先申请的全部公开内容通过引用整体并入本文。
技术领域
本公开描述了总体上涉及云服务的实施例。
背景技术
本文所提供的背景描述旨在总体上呈现本公开的背景。在背景技术部分以及本说明书的各个方面中所描述的目前已署名的发明人的工作所进行的程度,并不表明其在本公开提交时作为现有技术,且从未明示或暗示其被承认为本公开的现有技术。
各种媒体应用和服务需要强大的处理能力。在一些示例中,原本会在客户端设备上执行的工作负载可以卸载到远程服务器,因此云处理是优选的。由于远程服务器具有更高的计算能力,因此复杂的媒体处理任务可以由远程服务器执行,然后可以将最终结果或接近最终结果发送到客户端设备。
发明内容
本公开的方面提供了用于基于网络的媒体处理的方法和装置。在一些示例中,一种云中的用于基于网络的媒体处理(NBMP)的装置包括处理电路。所述处理电路接收与云中的用于NBMP的实体相关的信息。所述处理电路从所述实体相关的信息中获取NBMP实体标识符。然后,所述处理电路基于所述NBMP实体标识符解释所述实体相关的信息。
在一些示例中,一种云中的用于NBMP的装置的处理电路可以将NBMP实体标识符包括在与所述云中的用于NBMP的实体相关的信息中,并传输包括所述NBMP实体标识符的信息。
在一些示例中,所述NBMP实体标识符指示所述实体遵守的支持标准。进一步地,在示例中,所述NBMP实体标识符指示所述支持标准的版本。
在一些示例中,所述NBMP实体标识符指示所述云中的用于NBMP的实体的功能。
在一些示例中,所述NBMP实体标识符指示用于与所述实体通信的应用编程接口(API)。
在一些示例中,所述NBMP标识符指示工作流管理器、媒体处理实体(MPE)、NBMP源和功能储存库中的一个。
在一些示例中,所述NBMP实体标识符采用统一资源名称(URN)的形式。
本公开的方面还提供了一种非易失性计算机可读介质,用于存储指令,当所述指令由用于云服务的计算机执行时,使所述计算机执行所述用于云服务的方法。
附图说明
根据以下详细描述和附图,所公开的主题的其他特征、性质和各种优点将进一步明确,其中:
图1示出了根据本公开实施例的示例性媒体处理系统。
图2示出了根据本公开实施例的图的示例。
图3示出了根据本公开一些实施例的NBMP实体标识符表。
图4示出了在本公开的一些示例中概述过程的流程图。
图5示出了在本公开的一些示例中概述另一过程的流程图。
图6是根据实施例的计算机系统的示意图。
具体实施方式
云计算是指使用网络(例如,互联网)上的远程服务器网络来传递信息计算服务(例如,云服务)的实践。将云服务提供给服务消费者(例如,客户端)的网络架构(例如,包括硬件和软件)称为云。云计算提供对各种服务的访问,例如数据处理、媒体处理、服务器、存储、网络、应用、在线服务等。在一些示例中,媒体处理变得计算密集,因此可以使用媒体处理云将重要的媒体处理工作负载卸载到远程服务器。
通常,云计算系统包括一个网络、一个或多个服务器、以及一个或多个客户端设备。网络便于服务器和客户端设备之间的通信。客户端设备可以是例如智能手机、平板电脑、膝上型电脑、个人计算机、可穿戴设备、头戴式显示器(HMD)等。服务器可以包括能够为一个或多个客户端设备提供计算服务的任何合适的计算或处理设备。例如,每个服务器可以包括一个或多个处理设备、一个或多个存储指令和数据的存储器、以及一个或多个便于网络通信的网络接口。在一些实施例中,服务器包括工作流管理器,该工作流管理器可以选择功能并构建工作流流水线以执行处理任务。
本公开的一些方面提供了在云处理中识别基于网络的媒体处理实体的技术。在一些相关示例中,例如在ISO/IEC JTC1/SC29/WG11/N19439中描述的,一个通用标识符被用于云中的用于基于网络的媒体处理(NBMP)实体。因此,在操作期间,需要额外的处理时间或通信来识别实体的各种属性,以便部署基于网络的媒体处理。
根据本公开的一些方面,云中的用于NBMP的每个实体可以用唯一的NBMP实体标识符来定义。因此,在一些实施例中,唯一的NBMP实体标识符可以实现基于NBMP实体标识符的属性识别,因此可以更有效地部署基于网络的媒体处理。
媒体处理系统可以包括具有不同功能的各种实体,例如工作流管理器、功能储存库、媒体处理实体(MPE)、NBMP源等。
在媒体处理系统中,NBMP源描述所请求的媒体处理并提供有关媒体数据的性质和格式的信息。因此,NBMP工作流管理器可以建立媒体处理工作流,并通知NBMP源该工作流已准备就绪,然后媒体处理就可以开始了。例如,一个或多个媒体源可以开始将媒体传输到网络进行处理。
在一些实施例中,NBMP工作流包括媒体处理任务,这些媒体处理任务基于它们之间的输入/输出关系进行连接。每个媒体处理任务执行媒体处理操作,例如视频解码、视频拼接、视频编码等。在示例中,第一媒体处理任务基于输入执行媒体处理操作并生成输出。第一媒体处理任务的输出可以用作与第一媒体处理任务连接的第二媒体处理任务的输入。换句话说,NBMP工作流可以被视为媒体处理任务的连接图。
工作流管理器可以通过配置和监测每个任务以及工作流输出来确保工作流的正确操作。在一些示例中,工作流管理器被配置为基于从NBMP源接收的工作流描述来选择媒体处理功能,并将媒体处理功能实例化为任务。
在媒体处理系统中,可以执行适当的交互以建立、加载、实例化和监测将运行媒体处理任务的媒体处理实体。在一些示例中,可以在NBMP源和工作流管理器之间定义应用程序接口(API);工作流管理器和一个或多个任务;并且定义一个API以发现一个或多个适当的功能。在一些示例中,媒体处理系统被配置为与媒体格式和协议无关。媒体处理系统可以为在媒体源、工作流管理器和任务之间交换的数据识别并发信号通知媒体、元数据和辅助信息格式。
在一些示例中,可以定义多个接口,这些接口包括数据格式和多个实体之间的应用程序接口(API),该多个实体通过数字网络进行连接以用于媒体处理。用户可以远程访问和配置用户操作,以进行高效、智能的处理。可以描述和管理要应用于媒体数据的工作流。可以将媒体数据上传到网络,并且可以实例化和配置媒体处理任务。在一些实施例中,实现了媒体处理流水线的动态创建,以及以实时或延迟方式访问处理后的媒体数据和元数据。还指定了在媒体处理流水线中的媒体源、工作流管理器和媒体处理实体之间使用的媒体和元数据格式。
在示例中,客户端(例如,数字媒体的创建者、服务提供商和消费者)可以描述要由网络中的媒体处理实体执行的媒体处理操作。工作流可以通过组成一组媒体处理功能来描述,这些媒体处理功能可通过接口(例如,NBMP API)来访问。媒体处理实体(MPE)可以运行应用于媒体的处理任务、以及从一个或多个媒体源或其它任务接收的相关元数据。MPE可以提供配置、管理和监测处理任务的能力。媒体处理任务可以是一个的过程,该过程应用于媒体和一个或多个元数据输入,并产生一个或多个数据和相关元数据输出,以供媒体接收器或其它媒体处理任务使用。
媒体处理系统可以支持各种传递方法,例如流式传输、文件传递、基于推送的渐进式下载、混合传递、多路径和异构网络环境。
图1示出了根据本公开实施例的示例性媒体处理系统(例如,NBMP系统、NBMP参考架构、NBMP架构)(100)。媒体处理系统(100)可以包括多个实体,例如NBMP源(101)、工作流管理器(例如,NBMP工作流管理器)(103)、功能储存库(105)、媒体源(111)、媒体处理实体(MPE)(113)、媒体接收器(115)、第三方实体,等等。媒体处理系统(100)可以包括附加的一个或多个媒体源、一个或多个媒体接收器和/或媒体处理实体。媒体处理系统(100)可以跨网络中的一个或多个处理实体处理媒体数据。诸如各种媒体和媒体的控制信息(或控制数据)之类的信息可以在媒体处理系统(100)中的多个实体之间传达。
为了提供一个上下文以用于讨论的目的,下面将媒体处理系统(100)描述为NBMP系统(100)。这些描述可以适当地适用于任何媒体处理系统。
NBMP源(101)可以描述或以其它方式指示网络中的媒体处理。功能储存库(105)可以包括各种NBMP功能的NBMP功能描述。NBMP源(101)和工作流管理器(103)可以从功能储存库(105)中检索NBMP功能描述或功能。NBMP功能可以指独立且自包含的媒体处理操作的实现和/或操作的相应描述。
处理任务或任务可以指由MPE(113)执行的NBMP功能的运行时实例(runtimeinstance)。NBMP工作流或工作流可以由一个或多个连接的任务的图(graph)(例如,有向无环图(DAG,directed acyclic graph))来表示,该一个或多个任务实现所请求的媒体处理。工作流管理器(103)可以例如基于工作流描述文档(WDD,workflow descriptiondocument)来提供一个或多个任务并且连接该一个或多个任务,以创建、控制、管理和监测工作流。
媒体源(111)可以提供要由工作流处理的媒体内容(例如,媒体数据、补充信息)。补充信息可以包括与媒体数据相关的元数据或辅助信息。媒体源(111)可以向工作流提供输入。媒体接收器(115)可以使用工作流的输出。MPE(113)可以运行一个或多个媒体处理任务来处理媒体内容。
NBMP系统(100)中的不同实体(例如,NBMP源(101)、工作流管理器(103)和MPE(113))可以使用API来调用和响应媒体服务请求。API可以包括NBMP工作流API或工作流API、功能发现API和任务API。工作流API可以提供NBMP源(101)和工作流管理器(103)之间的接口。任务API可以提供工作流管理器(103)和媒体处理任务之间的接口。功能发现API可以提供工作流管理器(103)/NBMP源(101)和功能储存库(105)之间的接口。
上述NBMP接口可用于创建和控制网络中的媒体处理工作流。NBMP系统(100)可分为控制平面和媒体平面(或媒体数据平面)。控制平面可以包括工作流API、功能发现API和任务API。
NBMP源(101)可以使用工作流API来创建和控制媒体处理工作流。NBMP源(101)可以使用工作流API与工作流管理器(103)通信,以配置和控制网络中的媒体处理。当NBMP源(101)通过在工作流API的操作中包括工作流资源(WR)来向工作流管理器(103)发送请求时,工作流管理器(103)可以解析该WR、所包括的WDD和对应的描述符,并根据所请求的操作采取适当的动作。然后,工作流管理器(103)可以用响应来确认该请求。工作流API操作可以包括创建工作流(例如,CreateWorkflow)、更新工作流(例如,UpdateWorkflow)、删除工作流(例如,DeleteWorkflow)、检索工作流(例如,RetrieveWorkflow)等。
功能发现API可以为工作流管理器(103)和/或NBMP源(101)提供发现媒体处理功能的手段,这些媒体处理功能可以作为媒体处理工作流的一部分被加载。
工作流管理器(103)可以使用任务API在运行时配置和监测一个或多个任务(例如,由MPE(113)运行的任务1和任务2)。例如,在MPE(113)中分配了用于任务的资源之后,任务API可以定义一个或多个接口,用于工作流管理器(103)配置媒体处理任务。任务API操作可以包括创建任务(例如,CreateTask)、更新任务(例如,UpdateTask)、获取任务(例如,GetTask)、删除任务(例如,DeleteTask)等。
在媒体平面上,可以定义NBMP源(111)和一个或多个任务之间以及多个任务之间的媒体格式、元数据和补充信息格式。
可以将工作流描述(WD)从NBMP源(101)传递到工作流管理器(103)。WD可以描述工作流的输入数据和输出数据、功能和其它要求等信息。
工作流管理器(103)可以从NBMP源(101)接收WDD,并且可以为所请求的媒体处理构建工作流。在工作流过程中,可以例如从功能储存库(105)中选择媒体处理功能,然后可以配置相应的媒体处理任务并将其分配给一组一个或多个MPE(例如,包括MPE(113))。
NBMP源(101)和工作流管理器(103)可以读取由功能储存库(105)提供的一组功能。在实施例中,NBMP源(101)请求使用功能储存库(105)中的一组功能创建工作流。因此,NBMP源(101)被配置为选择用于工作流的功能。NBMP源(101)可以请求创建如下所述的工作流。NBMP源(101)可以使用媒体处理任务(通过这些任务创建工作流)的描述,并且可以指定连接图(connection map)来定义媒体处理任务的输入和输出的连接。当工作流管理器(103)从NBMP源(101)接收到上述信息时,工作流管理器(103)可以基于各自的功能名称实例化媒体处理任务,并且可以根据连接图连接媒体处理任务。
可替换地,NBMP源(101)可以请求使用一组关键字来创建工作流,工作流管理器(103)可以通过这些关键字来构建工作流。因此,NBMP源(101)可能不知道要插入到工作流中的一组功能。NBMP源(101)可以请求创建如下所述的工作流。NBMP源(101)可以使用一组关键字,工作流管理器(103)可以通过这些关键字找到适当的功能,并且可以使用适当的工作流描述来指定工作流的要求。
当工作流管理器(103)从NBMP源(101)接收到上述信息(例如,一组关键字)时,工作流管理器(103)可以通过使用这些关键字(例如在处理描述符中所指定的)搜索适当的功能来创建工作流。然后,工作流管理器(103)可以使用工作流描述中的其它描述符来提供媒体处理任务,并连接媒体处理任务以创建最终工作流。
工作流管理器(103)的处理模型可以描述如下。
工作流管理器(103)可以发现如下可用的媒体处理功能。NBMP功能储存库(105)可以提供功能发现接口(或API),以允许外部实体查询能够实现所请求的处理的媒体处理功能。工作流管理器(103)可以访问目录服务,该目录服务提供媒体处理功能的可搜索列表。工作流管理器(103)可以使用工作流描述中的媒体处理任务的描述来找到用于工作流的适当功能。
用于工作流的媒体处理任务的选择可以描述如下。当从NBMP源(101)接收到媒体处理请求时,工作流管理器(103)可以搜索功能储存库(105),以找到能够实现该工作流的所有可用功能的列表。使用来自NBMP源(101)的工作流描述,工作流管理器(103)可以从功能储存库(105)中找到功能以实现工作流,这可以取决于来自NBMP源(101)的用于媒体处理的信息。用于媒体处理的信息可以包括输入和输出描述、所请求处理的描述、以及功能目录(105)中的功能的其它描述符中的信息。将源请求映射到要包括在工作流中的适当媒体处理任务可以是网络中NBMP实现的一部分。为了在任务创建时使用输入端口名和输出端口名来引用并链接输入源,可以使用输入端口和输出端口来引用输入流。
工作流管理器(103)可以使用功能发现API来搜索要被实例化为任务的适当功能。可替换地,工作流管理器(103)可以使用功能发现API来检索功能储存库(105)中的一些或所有适当功能的详细信息。然后,工作流管理器(103)可以将来自NBMP源(101)的用于媒体处理的信息与每个功能的不同描述符进行比较。
可以在工作流中配置选定的媒体处理任务。当识别出要包括在工作流中的功能时,NBMP工作流管理器(103)可以将这些功能实例化为各个任务,并配置这些任务,以便将这些任务添加到工作流中。NBMP工作流管理器(103)可以从接收自NBMP源(101)的媒体处理信息中提取配置数据,并配置相应的任务。可以使用任务API(例如,NBMP任务API)来执行任务的配置。
任务分配和分发可以描述如下。工作流管理器(103)可以使用工作流来执行处理部署并配置媒体处理实体。在示例中,对于计算密集的媒体处理请求,工作流管理器(103)可以设置多个计算实例,并在多个计算实例之间分配工作负载。因此,工作流管理器(103)可以根据需要连接和配置多个计算实例。在示例中,工作流管理器(103)将同一任务分配给多个实例,并提供负载平衡器以使用所选择的调度机制在多个实例之间分配工作负载。在可替代示例中,工作流管理器(103)将同一任务的不同操作分配给不同实例(例如,并行操作)。在上述两个示例中,工作流管理器(103)可以在实例之间建立工作流路径,因此可以成功地实现合适的工作负载。工作流管理器(103)可以配置任务,以将处理后的媒体数据/流(或通过拉机制(pull mechanism)使其可用)推送到工作流图中的下一个任务。
当工作流管理器(103)从NBMP源(101)接收到WDD时,工作流管理器(103)可以选择要插入到工作流中的媒体处理功能。当编译要包括在工作流中的任务的列表时,则工作流管理器(103)可以连接多个任务以准备工作流。
工作流管理器(103)可以生成例如由来自WDD的图(例如,DAG)表示的工作流。图2示出了根据本公开实施例的图(例如,DAG)(200)的示例。DAG(200)可以包括多个节点(T1)-(T6)和多个链路(或连接)(202)-(208)。在示例中,DAG(200)表示工作流(200)。
DAG(200)的每个节点可以表示工作流(200)中的媒体处理任务。在DAG(200)中将第一节点(例如,节点(T1))连接到第二节点(例如,节点(T2))的链路(例如,链路(202))可以表示将第一节点(例如,节点(T1))的输出作为输入转移到第二节点(例如,节点(T2))。
通常,工作流可以包括任何合适数量的输入(或一个或多个工作流输入)和任何合适数量的输出(或一个或多个工作流输出)。一个或多个工作流输入可以连接到媒体源(111)、一个或多个其它工作流等,一个或多个工作流输出可以连接到媒体接收器(115)、一个或多个其它工作流等。工作流(200)具有输入(201)和多个输出(209)和(210)。在一些实施例中,工作流(200)可以具有来自中间节点的一个或多个输出。
根据本公开的一些方面,可以对媒体处理系统(例如媒体处理系统(100))中的每个实体使用单独的NBMP实体标识符。例如,该媒体处理系统(100)包括四个NBMP实体:工作流管理器、功能储存库、MPE、和NBMP源,因此使用四个NBMP实体标识符分别指示工作流管理器、功能储存库、MPE和NBMP源。例如,使用第一NBMP实体标识符指示工作流管理器;使用第二NBMP实体标识符指示功能储存库;使用第三NBMP实体标识符指示MPE;使用第四NBMP实体标识符指示NBMP源。因此,NBMP实体标识符可用于指示实体的功能。
例如,当与实体相关的实体信息包括第一NBMP实体标识符时,该实体为工作流管理器,可以执行工作流管理器的功能;当与实体相关的实体信息包括第二NBMP实体标识符时,该实体为功能储存库,可以执行功能储存库的功能;当与实体相关的实体信息包括第三NBMP实体标识符时,该实体为MPE,可以执行MPE的功能;当与实体相关的实体信息包括第四NBMP实体标识符时,该实体为NBMP源,可以执行NBMP源的功能。
根据本公开的一个方面,NBMP实体标识符可以指示该实体遵守的支持标准。在一些示例中,NBMP实体标识符可以指示支持标准的版本。在示例中,接收与实体相关的实体信息,该实体信息包括NBMP实体标识符,该NBMP实体标识符指示该实体遵守的支持标准和该支持标准的版本。在一些示例中,支持标准的版本可以用作解释实体信息的语言。
此外,在一些示例中,已知实体的支持标准和支持标准的版本,可以确定接口,例如应用程序接口(API)。该接口可用于与实体交互。
在一些示例中,NBMP实体标识符可以包含在统一资源名称(URN)方案中。
图3示出了根据本公开一些实施例的URN方案中的NBMP实体标识符的表(300)。如图3所示,每个NBMP实体具有与该NBMP实体相关联的单独的标识符(也称为NBMP实体标识符)。具体地,用于工作流管理器的第一NBMP实体标识符由(301)表示;用于功能储存库的第二NBMP实体标识符由(302)表示;用于MPE的第三NBMP实体标识符由(303)表示;用于NBMP源的第四NBMP实体标识符由(304)表示。
在图3的示例中,在NBMP实体标识符(301)-(304)中,“urn:mpeg:mpegi:nbmp”可以表示支持标准(规范),“2020”是支持标准的年份,通过该年份可以识别支持标准的版本。
根据本公开的一个方面,NBMP实体标识符(301)-(304)可以在其它描述符内使用。例如,NBMP实体标识符(301)-(304)可以在通用唯一的URN内使用。注意,URN可以包括NBMP实体标识符(例如,(301)-(304)之一)和其它合适的标识符。
图4示出了根据本公开实施例的概述过程(400)的流程图。在示例中,过程(400)由云设备(例如媒体处理系统(100)中的任何设备)的处理电路执行。在一些实施例中,过程(400)以软件指令实现,因此当处理电路执行该软件指令时,该处理电路执行过程(400)。该过程开始于(S401)并进行到(S410)。
在(S410),接收与云中的用于基于网络的媒体处理(NBMP)的实体相关的信息。在一个示例中,与该实体相关的信息出现在该实体的公告(announcement)中。在另一示例中,与该实体相关的信息出现在该实体响应查询的响应中。在另一示例中,与该实体相关的信息出现在该实体发出的消息中。在另一示例中,与实体相关的信息是在服务发现期间接收的。
在(S420),从该信息中获取NBMP实体标识符。在示例中,处理电路解析该信息以获取NBMP实体标识符。NBMP实体标识符唯一地指示多个NBMP实体中的一个,例如唯一地指示工作流管理器、功能储存库、MPE、NBMP源等中的一个。
NBMP实体标识符指示用于NBMP的云中的实体的功能。在一些示例中,NBMP实体标识符采用统一资源名称(URN)的形式,例如图3中的(301)-(304)所示。在一些示例中,NBMP实体标识符指示实体遵守的支持标准。此外,NBMP实体标识符指示支持标准的版本。在一些示例中,NBMP实体标识符指示用于与实体交互的应用程序接口(API)。
在(S430),基于NBMP实体标识符解释与该实体相关的信息。然后,该过程进行到(S499)并结束。
可以适当地调整过程(400)。可以修改和/或省略过程(400)中的一个或多个步骤。可以增加额外的一个或多个步骤。可以使用任何合适的实施顺序。
图5示出了根据本公开实施例的概述过程(500)的流程图。在示例中,过程(500)由云中的实体(例如媒体处理系统(100)中的任何实体)的处理电路执行。在一些实施例中,过程(500)以软件指令实现,因此当处理电路执行该软件指令时,该处理电路执行过程(500)。该过程开始于(S501)并进行到(S510)。
在(S510),将NBMP实体标识符包括在与云中的用于基于网络的媒体处理的实体相关的信息中。在一个示例中,与该实体相关的信息出现在该实体的公告中。在另一示例中,与该实体相关的信息出现在该实体响应查询的响应中。在另一示例中,与该实体相关的信息出现在该实体发出的消息中。
NBMP实体标识符唯一地指示多个NBMP实体中的一个,例如唯一地指示工作流管理器、功能储存库、MPE、NBMP源等中的一个。
NBMP实体标识符指示用于NBMP的云中的实体的功能。在一些示例中,NBMP实体标识符采用统一资源名称(URN)的形式,例如图3中的(301)-(304)所示。在一些示例中,NBMP实体标识符指示实体遵守的支持标准。此外,NBMP实体标识符指示支持标准的版本。在一些示例中,NBMP实体标识符指示用于与实体交互的应用程序接口(API)。
在(S520),传输包括NBMP实体标识符的信息。因此,当云中的其它设备接收到该信息时,可以从该信息中获得NBMP实体标识符,以实现对该信息的解释以及与该实体的进一步交互。然后,该过程进行到(S599)并结束。
可以适当地调整过程(500)。可以修改和/或省略过程(500)中的一个或多个步骤。可以增加额外的一个或多个步骤。可以使用任何合适的实施顺序。
上述技术可以通过计算机可读指令实现为计算机软件,并且物理地存储在一个或多个计算机可读介质中。例如,图6示出了计算机系统(600),其适于实现所公开主题的某些实施例。
所述计算机软件可通过任何合适的机器代码或计算机语言进行编码,通过汇编、编译、链接等机制创建包括指令的代码,所述指令可由一个或多个计算机中央处理单元(CPU),图形处理单元(GPU)等直接执行或通过译码、微代码等方式执行。
所述指令可以在各种类型的计算机或其组件上执行,包括例如个人计算机、平板电脑、服务器、智能手机、游戏设备、物联网设备等。
图6所示的用于计算机系统(600)的组件本质上是示例性的,并不用于对实现本公开实施例的计算机软件的使用范围或功能进行任何限制。也不应将组件的配置解释为与计算机系统(600)的示例性实施例中所示的任一组件或其组合具有任何依赖性或要求。
计算机系统(600)可以包括某些人机界面输入设备。这种人机界面输入设备可以通过触觉输入(如:键盘输入、滑动、数据手套移动)、音频输入(如:声音、掌声)、视觉输入(如:手势)、嗅觉输入(未示出),对一个或多个人类用户的输入做出响应。所述人机界面设备还可用于捕获某些媒体,气与人类有意识的输入不必直接相关,如音频(例如:语音、音乐、环境声音)、图像(例如:扫描图像、从静止影像相机获得的摄影图像)、视频(例如二维视频、包括立体视频的三维视频)。
人机界面输入设备可包括以下中的一个或多个(仅绘出其中一个):键盘(601)、鼠标(602)、触控板(603)、触摸屏(610)、数据手套(未示出)、操纵杆(605)、麦克风(606)、扫描仪(607)、照相机(608)。
计算机系统(600)还可以包括某些人机界面输出设备。这种人机界面输出设备可以通过例如触觉输出、声音、光和嗅觉/味觉来刺激一个或多个人类用户的感觉。这样的人机界面输出设备可包括触觉输出设备(例如通过触摸屏(610)、数据手套(未示出)或操纵杆(605)的触觉反馈,但也可以有不用作输入设备的触觉反馈设备)、音频输出设备(例如,扬声器(609)、耳机(未示出))、视觉输出设备(例如,包括阴极射线管屏幕、液晶屏幕、等离子屏幕、有机发光二极管屏的屏幕(610),其中每一个都具有或没有触摸屏输入功能、每一个都具有或没有触觉反馈功能——其中一些可通过诸如立体画面输出的手段输出二维视觉输出或三维以上的输出;虚拟现实眼镜(未示出)、全息显示器和放烟箱(未示出))以及打印机(未示出)。
计算机系统(600)还可以包括人可访问的存储设备及其相关介质,如包括具有CD/DVD的高密度只读/可重写式光盘(CD/DVD ROM/RW)(620)或类似介质(621)的光学介质、拇指驱动器(622)、可移动硬盘驱动器或固体状态驱动器(623),诸如磁带和软盘(未示出)的传统磁介质,诸如安全软件保护器(未示出)等的基于ROM/ASIC/PLD的专用设备,等等。
本领域技术人员还应当理解,结合所公开的主题使用的术语“计算机可读介质”不包括传输介质、载波或其它瞬时信号。
计算机系统(600)还可以包括通往一个或多个通信网络(655)的接口(654)。例如,网络可以是无线的、有线的、光学的。网络还可为局域网、广域网、城域网、车载网络和工业网络、实时网络、延迟容忍网络等等。网络还包括以太网、无线局域网、蜂窝网络(GSM、3G、4G、5G、LTE等)等局域网、电视有线或无线广域数字网络(包括有线电视、卫星电视、和地面广播电视)、车载和工业网络(包括CANBus)等等。某些网络通常需要外部网络接口适配器,用于连接到某些通用数据端口或外围总线(649)(例如,计算机系统(600)的USB端口);其它系统通常通过连接到如下所述的系统总线集成到计算机系统(600)的核心(例如,以太网接口集成到PC计算机系统或蜂窝网络接口集成到智能电话计算机系统)。通过使用这些网络中的任何一个,计算机系统(600)可以与其它实体进行通信。所述通信可以是单向的,仅用于接收(例如,无线电视),单向的仅用于发送(例如CAN总线到某些CAN总线设备),或双向的,例如通过局域或广域数字网络到其它计算机系统。上述的每个网络和网络接口可使用某些协议和协议栈。
上述的人机界面设备、人可访问的存储设备以及网络接口可以连接到计算机系统(600)的核心(640)。
核心(640)可包括一个或多个中央处理单元(CPU)(641)、图形处理单元(GPU)(642)、以现场可编程门阵列(FPGA)(643)形式的专用可编程处理单元、用于特定任务的硬件加速器(644)、图形适配器(650)等。这些设备以及只读存储器(ROM)(645)、随机存取存储器(646)、内部大容量存储器(例如内部非用户可存取硬盘驱动器、固态硬盘等)(647)等可通过系统总线(648)进行连接。在某些计算机系统中,可以以一个或多个物理插头的形式访问系统总线(648),以便可通过额外的中央处理单元、图形处理单元等进行扩展。外围装置可直接附接到核心的系统总线(648),或通过外围总线(649)进行连接。在示例中,屏幕(610)可以连接到图形适配器(650)。外围总线的体系结构包括外部外围组件互联PCI、通用串行总线USB等。
CPU(641)、GPU(642)、FPGA(643)和加速器(644)可以执行某些指令,这些指令组合起来可以构成上述计算机代码。该计算机代码可以存储在ROM(645)或RAM(646)中。过渡数据也可以存储在RAM(646)中,而永久数据可以存储在例如内部大容量存储器(647)中。通过使用高速缓冲存储器可实现对任何存储器设备的快速存储和检索,高速缓冲存储器可与一个或多个CPU(641)、GPU(642)、大容量存储器(647)、ROM(645)、RAM(646)等紧密关联。
所述计算机可读介质上可具有计算机代码,用于执行各种计算机实现的操作。介质和计算机代码可以是为本公开的目的而特别设计和构造的,也可以是计算机软件领域的技术人员所熟知和可用的介质和代码。
作为实施例而非限制,具有图6所示的体系结构(600)的计算机系统,特别是核心(640),可以作为处理器(包括CPU、GPU、FPGA、加速器等)提供执行包含在一个或多个有形的计算机可读介质中的软件的功能。这种计算机可读介质可以是与上述的用户可访问的大容量存储器相关联的介质,以及具有非易失性的核心(640)的特定存储器,例如核心内部大容量存储器(647)或ROM(645)。实现本公开的各种实施例的软件可以存储在这种设备中并且由核心(640)执行。根据特定需要,计算机可读介质可包括一个或一个以上存储设备或芯片。该软件可以使得核心(640)特别是其中的处理器(包括CPU、GPU、FPGA等)执行本文所述的特定过程或特定过程的特定部分,包括定义存储在RAM(646)中的数据结构以及根据软件定义的过程来修改这种数据结构。另外或作为替代,计算机系统可以提供逻辑硬连线或以其它方式包含在电路(例如,加速器(644))中的功能,该电路可以代替软件或与软件一起运行以执行本文所述的特定过程或特定过程的特定部分。在适当的情况下,对软件的引用可以包括逻辑,反之亦然。在适当的情况下,对计算机可读介质的引用可包括存储执行软件的电路(如集成电路(IC)),包含执行逻辑的电路,或两者兼备。本公开包括任何合适的硬件和软件组合。
虽然本公开已对多个示例性实施例进行了描述,但实施例的各种变更、排列和各种等同替换均属于本公开的范围内。因此应理解,本领域技术人员能够设计多种系统和方法,所述系统和方法虽然未在本文中明确示出或描述,但其体现了本公开的原则,因此属于本公开的精神和范围之内。

Claims (20)

1.一种用于基于网络的媒体处理NBMP的方法,其特征在于,包括:
通过云中的用于NBMP的设备的处理电路,接收与所述云中的用于NBMP的实体相关的信息;
通过所述处理电路,从所述实体相关的信息中获取NBMP实体标识符;以及
通过所述处理电路,基于所述NBMP实体标识符解释所述实体相关的信息。
2.根据权利要求1所述的方法,其特征在于,所述NBMP实体标识符指示所述实体遵守的支持标准。
3.根据权利要求2所述的方法,其特征在于,所述NBMP实体标识符指示所述支持标准的版本。
4.根据权利要求1所述的方法,其特征在于,所述NBMP实体标识符指示所述云中的用于NBMP的实体的功能。
5.根据权利要求1所述的方法,其特征在于,所述NBMP实体标识符指示用于与所述实体通信的应用编程接口。
6.根据权利要求1所述的方法,其特征在于,所述NBMP标识符指示工作流管理器、媒体处理实体MPE、NBMP源和功能储存库中的一个。
7.根据权利要求1所述的方法,其特征在于,所述NBMP实体标识符采用统一资源名称URN的形式。
8.一种用于基于网络的媒体处理NBMP的方法,其特征在于,包括:
通过云中的用于NBMP的设备的处理电路,将NBMP实体标识符包括在与所述云中的用于NBMP的实体相关的信息中;以及
通过所述设备的接口电路,传输包括所述NBMP实体标识符的信息。
9.根据权利要求8所述的方法,其特征在于,所述NBMP实体标识符指示所述实体遵守的支持标准。
10.根据权利要求9所述的方法,其特征在于,所述NBMP实体标识符指示所述支持标准的版本。
11.根据权利要求8所述的方法,其特征在于,所述NBMP实体标识符指示所述云中的用于NBMP的实体的功能。
12.根据权利要求8所述的方法,其特征在于,所述NBMP实体标识符指示用于与所述实体通信的应用编程接口。
13.根据权利要求8所述的方法,其特征在于,所述NBMP标识符指示工作流管理器、媒体处理实体MPE、NBMP源和功能储存库中的一个。
14.根据权利要求8所述的方法,其特征在于,所述NBMP实体标识符采用统一资源名称URN的形式。
15.一种用于基于网络的媒体处理NBMP的装置,其特征在于,包括:
处理电路,被配置为:
接收与云中的用于NBMP的实体相关的信息;
从所述实体相关的信息中获取NBMP实体标识符;以及
基于所述NBMP实体标识符解释所述实体相关的信息。
16.根据权利要求15所述的装置,其特征在于,所述NBMP实体标识符指示所述实体遵守的支持标准和所述支持标准的版本。
17.根据权利要求15所述的装置,其特征在于,所述NBMP实体标识符指示所述云中的用于NBMP的实体的功能。
18.根据权利要求15所述的装置,其特征在于,所述NBMP实体标识符指示用于与所述实体通信的应用编程接口。
19.根据权利要求15所述的装置,其特征在于,所述NBMP标识符指示工作流管理器、媒体处理实体MPE、NBMP源和功能储存库中的一个。
20.根据权利要求15所述的装置,其特征在于,所述NBMP实体标识符采用统一资源名称URN的形式。
CN202180006274.XA 2020-10-05 2021-06-10 云服务的方法和装置 Pending CN114731343A (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US202063087730P 2020-10-05 2020-10-05
US63/087,730 2020-10-05
US17/326,049 2021-05-20
US17/326,049 US11593150B2 (en) 2020-10-05 2021-05-20 Method and apparatus for cloud service
PCT/US2021/036824 WO2022076042A1 (en) 2020-10-05 2021-06-10 Method and apparatus for cloud service

Publications (1)

Publication Number Publication Date
CN114731343A true CN114731343A (zh) 2022-07-08

Family

ID=80932289

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180006274.XA Pending CN114731343A (zh) 2020-10-05 2021-06-10 云服务的方法和装置

Country Status (6)

Country Link
US (1) US11593150B2 (zh)
EP (1) EP4046019A4 (zh)
JP (1) JP7359966B2 (zh)
KR (1) KR102636992B1 (zh)
CN (1) CN114731343A (zh)
WO (1) WO2022076042A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116208669B (zh) * 2023-04-28 2023-06-30 湖南大学 基于智慧灯杆的车载异构网络协同任务卸载方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106851357A (zh) * 2013-09-30 2017-06-13 华为终端有限公司 媒体数据传输方法及设备
US20190110190A1 (en) * 2015-09-25 2019-04-11 Samsung Electronics Co., Ltd. Mobile device capability identifier
US20200020077A1 (en) * 2018-07-11 2020-01-16 Nokia Technologies Oy Method and apparatus for virtual reality content stitching control with network based media processing

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9020621B1 (en) 2009-11-18 2015-04-28 Cochlear Limited Network based media enhancement function based on an identifier
US20140188978A1 (en) 2012-12-31 2014-07-03 Microsoft Corporation Cloud-based media processing pipeline
US10873614B2 (en) 2018-01-17 2020-12-22 Samsung Electronics Co., Ltd. Method and apparatus for configuration and deployment of media processing in the network
KR20200007732A (ko) * 2018-07-13 2020-01-22 한국전자통신연구원 원격지 또는 클라우드 환경에서 미디어를 처리하기 위한 부가 정보 제공 방법 및 장치
WO2020116896A1 (ko) * 2018-12-03 2020-06-11 삼성전자 주식회사 미디어 콘텐트 처리를 관리하기 위한 방법, 장치 및 컴퓨터 판독 가능한 기록 매체
US11012721B2 (en) 2019-03-15 2021-05-18 Tencent America LLC Method and apparatus for envelope descriptor in moving picture experts group network based media processing
WO2020188140A1 (en) 2019-03-21 2020-09-24 Nokia Technologies Oy Network based media processing control
US11520630B2 (en) 2019-04-23 2022-12-06 Tencent America LLC Extensible schemes and scheme signaling for cloud based processing

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106851357A (zh) * 2013-09-30 2017-06-13 华为终端有限公司 媒体数据传输方法及设备
US20190110190A1 (en) * 2015-09-25 2019-04-11 Samsung Electronics Co., Ltd. Mobile device capability identifier
US20200020077A1 (en) * 2018-07-11 2020-01-16 Nokia Technologies Oy Method and apparatus for virtual reality content stitching control with network based media processing

Also Published As

Publication number Publication date
JP2023511158A (ja) 2023-03-16
EP4046019A4 (en) 2022-11-23
US11593150B2 (en) 2023-02-28
KR20220101657A (ko) 2022-07-19
EP4046019A1 (en) 2022-08-24
JP7359966B2 (ja) 2023-10-11
US20220107832A1 (en) 2022-04-07
KR102636992B1 (ko) 2024-02-14
WO2022076042A1 (en) 2022-04-14

Similar Documents

Publication Publication Date Title
JP7302001B2 (ja) セグメント化データストリーム処理のための方法、装置、およびプログラム
KR102516231B1 (ko) 네트워크 기반 미디어 처리(nbmp)에서의 미디어 처리 함수를 대한 구성 파라미터의 그래프 표현 및 설명
US11734016B2 (en) Method and apparatus for stateless parallel processing of tasks and workflows
US11861411B2 (en) Variable and event reporting in a cloud service system
JP2023522160A (ja) エッジコンピューティングによるメディアストリーミング
JP2022524745A (ja) ステップ対応ワークフローのための方法及び装置
CN113795822A (zh) 用于步进工作流的方法和装置
JP7359966B2 (ja) ビデオコーディングのための方法と装置
KR102668137B1 (ko) 태스크들 및 작업 흐름들의 상태 비저장 병렬 프로세싱 방법 및 장치

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40070663

Country of ref document: HK