CN106561053A - 在网络化系统内请求和接收媒体流 - Google Patents

在网络化系统内请求和接收媒体流 Download PDF

Info

Publication number
CN106561053A
CN106561053A CN201610873890.6A CN201610873890A CN106561053A CN 106561053 A CN106561053 A CN 106561053A CN 201610873890 A CN201610873890 A CN 201610873890A CN 106561053 A CN106561053 A CN 106561053A
Authority
CN
China
Prior art keywords
media
media stream
service
stream
networked
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
CN201610873890.6A
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.)
Axis AB
Original Assignee
Axis AB
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 Axis AB filed Critical Axis AB
Publication of CN106561053A publication Critical patent/CN106561053A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64723Monitoring of network processes or resources, e.g. monitoring of network load
    • H04N21/64738Monitoring network characteristics, e.g. bandwidth, congestion level
    • 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
    • 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
    • G06F9/5055Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering software capabilities, i.e. software resources associated or available to the machine
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • 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/70Media network packetisation
    • 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/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/756Media network packet handling adapting media to device 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
    • 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/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2405Monitoring of the internal components or processes of the server, e.g. server load
    • 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/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25808Management of client data
    • H04N21/25833Management of client data involving client hardware characteristics, e.g. manufacturer, processing or storage capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/637Control signals issued by the client directed to the server or network components
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6581Reference data, e.g. a movie identifier for ordering a movie or a product identifier in a home shopping application
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Graphics (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Transfer Between Computers (AREA)
  • Environmental & Geological Engineering (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

提供一种用于在网络化系统内请求和接收媒体流的方法。系统包括客户端、媒体服务寄存器和媒体服务管理器。方法包括:从客户端向媒体服务寄存器发送针对媒体流的媒体请求,媒体服务寄存器包括含有数据网络内生成媒体流的有效媒体流生成服务的标识符和用于访问每个对应的媒体流生成服务的地址的寄存器;在媒体服务寄存器处检查媒体请求是否对应生成被请求的媒体流的有效媒体流生成服务;当媒体请求未对应有效媒体流生成服务时,发送针对生成被请求的媒体流的媒体流生成服务的激活请求至媒体服务管理器;从媒体服务管理器发送指令以在多个网络化计算装置中的至少一个处安装媒体流生成服务;在客户端处接收安装的媒体流生成服务生成的媒体流。

Description

在网络化系统内请求和接收媒体流
技术领域
本发明涉及在网络化系统内请求和接收媒体流。
背景技术
在数据网络中用于输送媒体流的服务在当今是常见的。取决于数据网络的各种客户端的需求,可以将在数据网络的媒体生成装置处捕获或存储的源数据转换为特定的输出格式。借由在数据网络的媒体生成装置处部署的媒体流生成服务而生成数据网络中的媒体流。媒体流生成服务的示例是来自的DirectShow和gstreamer。
在数据网络中输送的媒体流的数量在快速增长。随着在当今数据网络上输送的媒体流的数量增长,数据网络内可用带宽的需求增长。也存在在数据网络内引入瓶颈的风险。
发明内容
本发明的目的在于解决上述问题的至少一些。
根据第一方面,提供了一种用于在客户端处请求并接收系统中媒体流的方法,系统包括客户端、媒体服务寄存器和媒体服务管理器,其中客户端、媒体服务寄存器和媒体服务管理器均被设置为在包括多个网络化计算装置的数据网络内通信。方法包括:从客户端发送针对媒体流的媒体请求至媒体服务寄存器,媒体服务寄存器包括针对数据网络内生成媒体流的有效媒体流生成服务的标识符以及用于访问每个对应的媒体流生成服务的地址的寄存器;在媒体服务寄存器处,检查媒体请求是否对应于生成被请求的媒体流的有效媒体流生成服务;当媒体请求未对应于有效媒体流生成服务时,发送针对生成被请求的媒体流的媒体流生成服务的激活请求至媒体服务管理器;从媒体服务管理器发送指令以在多个网络化计算装置中的至少一个处安装被请求的媒体流生成服务;以及在客户端处接收安装的媒体流生成服务生成的媒体流。
该方法提供了协调并优化网络化系统中所有媒体流生成服务的能力;这通过将网络化系统的可用性考虑为一个整体而不是仅单独考虑媒体流生成服务而完成。因此,根据该方法,可以建立网络化系统,其中可以优化由媒体流生成服务所生成的媒体流的输送,从而优化地使用网络化系统内的带宽、不同网络化计算装置的CPU能力和存储器。这是因为媒体服务管理器可以采用优化方式建立非现有的媒体流生成服务。此外,当有效媒体流的数据可以最小化至客户端真实所需时,可以最小化网络、CPU和存储器负载。此外,当开发新应用程序不受限于单个网络化计算装置的格式和性能而是受限于整体的系统性能时,客户端应用程序变得更易于开发。
该方法可以进一步包括,媒体服务管理器选择网络化计算装置,用于安装被请求的媒体流生成服务的指令将被发送至被选择的网络化计算装置,其中选择基于与网络内的分支的网络负载、多个网络化计算装置中可用CPU处理能力、多个网络化计算装置中特定硬件或软件性能的可用性、多个网络化计算装置的健壮性、数据网络内的分支的健壮性、以及接近性有关的数据中的至少一种。数据网络内的分支涉及数据网络的子部分。健壮性涉及网络化计算装置及其连接的正常运行时间。因此,数据网络的分支的健壮性涉及分支的正常运行时间。例如,健壮性可以被测量为装置已经可用的占时率。根据非限定性示例,健壮性可以表示为装置已经可用的时间除以其不可用的时间。接近性涉及数据网络的两个装置之间的距离。接近性可以表示为米、网络跳转的数目、延迟和/或带宽。两个装置是接近的指的是用于在两个装置之间通信和数据传输的资源的更高效使用。
该方法可以进一步包括在客户端处接收消息,该消息包括指示客户端从安装的媒体流生成服务获取被请求的媒体流的信息。
该方法可以进一步包括在媒体服务寄存器处存储安装的媒体流生成服务的标识以及用于访问该安装的媒体流生成服务的地址。
安装的媒体流生成服务被设置为通过代码转换、拆分和/或缝合一个或多个已经存在的媒体流而从一个或多个已经存在的媒体流生成媒体流。
媒体流请求可以包括媒体流质量和/或媒体流来源。
根据第二方面,提供了一种用于在数据网络内建立媒体流生成服务的网络化系统。系统包括多个网络化计算装置、客户端、以及媒体服务寄存器和媒体服务管理器。多个网络化计算装置、客户端、以及媒体服务寄存器和媒体服务管理器均被设置为在数据网络内通信。客户端被设置为发送针对媒体流的媒体请求至媒体服务寄存器。媒体服务寄存器包括含有数据网络内生成媒体流的有效媒体流生成服务的标识符以及用于访问每个对应的媒体流生成服务的地址的寄存器。
此外,媒体服务寄存器进一步包括被设置为检查媒体请求是否对应于生成媒体流的有效媒体流生成服务的媒体请求检查器。此外,媒体服务寄存器包括被设置为当媒体请求未对应于有效媒体流生成服务时发送针对生成媒体流的媒体流生成服务的激活请求至媒体服务管理器的媒体流生成服务激活器。媒体服务管理器包括被设置为发送安装指令至多个网络化计算装置中的至少一个的安装器,安装指令指示多个网络化计算装置中的至少一个安装被请求的媒体流生成服务。
客户端可以进一步包括被设置为从多个网络化计算装置中的至少一个接收安装的媒体流生成服务所生成的媒体流的媒体流接收器。
媒体服务管理器可以进一步包括被设置为选择被请求的媒体流生成服务将要安装至其上的网络化计算装置的网络化计算装置选择器,其中选择基于与数据网络内的分支的网络负载、多个网络化计算装置中可用CPU处理能力、多个网络化计算装置中特定硬件或软件性能的可用性、数据网络内的分支的健壮性、多个网络化计算装置的健壮性、以及接近性有关的数据中的至少一种。
当应用时,方法的上述特征也适用于该第二方面。为了避免不适当的重复,参考上述描述。
根据第三方面,提供了一种用于在网络化系统内建立生成媒体流的媒体流生成服务的媒体服务管理器,网络化系统包括多个网络化计算装置和媒体服务管理器。多个网络化计算装置和媒体服务管理器均在数据网络内通信。媒体服务管理器包括:被设置为接收针对生成媒体流的媒体流生成服务的激活请求的媒体流生成服务激活请求接收器;以及被设置为发送安装指令至多个网络化计算装置中的至少一个的安装器,其中安装指令包括用于在网络化计算装置上安装媒体流生成服务的指令。
媒体服务管理器可以进一步包括被设置为选择被请求的媒体流生成服务将要安装至其上的网络化计算装置的网络化计算装置选择器,其中选择基于与数据网络内的分支的网络负载、多个网络化计算装置中可用CPU处理能力、多个网络化计算装置中特定硬件或软件性能的可用性、数据网络内的分支的健壮性、多个网络化计算装置的健壮性、以及接近性有关的数据中的至少一种。
媒体服务管理器可以进一步包括数据库,该数据库包括生成可能将作为媒体流生成服务而安装在多个网络化计算装置中的一个或多个处的软件程序部分的媒体流生成服务。
当应用时,方法和网络化系统的上述特征也适用于该第三方面。为了避免不适当的重复,参考上述描述。
从以下给出的详细说明将使得本发明的其他可应用性范围变得更加明显。然而,应该理解的是,当指示了本发明的优选实施例时,仅借由说明示意的方式给出详细说明书和具体示例,因为从该详细说明,在本发明范围内的各种改变和修改对于本领域技术人员将变得明显。
因此,应该理解的是,因为该装置和方法可以改变,本发明不限于所述装置的特定部件部分或者所述方法的步骤。也应该理解的是,在此所使用的术语仅为了描述特定实施例的目的,并且并非意在是限定性的。必须注意的是,如在说明书和所附权利要求中使用的,冠词“一”、“该”、以及“所述”意在意味着存在一个或多个元件,除非上下文明确给出相反指示。因此,例如,对于“一单元”或“单元”可以包括数个装置以及类似物。此外,词语“包括”、“包含”、“含有”和类似词语并未排除其他元件或步骤。
附图说明
现在将参照示出了本发明实施例的附图更详细描述本发明的这些和其他方面。提供附图以示出本发明实施例的一般结构。全文中相同附图标记涉及相同元件。
图1是网络化系统的示意性框图。
图2是图1的网络化系统的可替代框图。
图3是用于在网络化系统内请求和接收媒体流的方法的流程图。
图4a和图4b是示出了网络化系统中通信的时序图。
具体实施方式
现在将参照附图更完整地描述本发明,其中在附图中示出了本发明的当前优选实施例。然而,该方法可以实施为许多不同形式并且不应被构造为限定于在此所述的实施例;相反地,为了完全性和完整性提供这些实施例,并且向本领域技术人员完全传达本发明的范围。
图1示出了包括经由数据网络而互连的多个网络化计算装置10的网络化系统100。网络化计算装置10是被配置为执行一组算法或逻辑操作的装置。通常,网络化计算装置10可以被编程为执行该组算法或逻辑操作。通过网络化,网络化计算装置10被设置为发送数据至其他计算装置和/或从其他计算装置接收数据。网络化计算装置10包括中央处理单元(CPU)以及非暂时性和/或暂时性存储器。
数据网络涉及允许网络化计算装置10交换数据的网络。网络化计算装置10沿着数据网络的网络链路而相互传递数据。通常,以数据包形式传输数据。使用电缆或者无线地在数据网络的网络化计算装置10之间建立连接。数据网络的非限定性示例是互联网、内联网、局域网、以及蜂窝网络。数据网络的一部分可以是私用数据网络12。数据网络的一部分可以是公用数据网络14。私用网络12可以通过网络访问限制装置16而连接至公用网络14。网络访问限制装置16可以是被安装用于保护私用网络的防火墙。网络访问限制装置16可以是执行网络地址变换(NAT)的装置。
网络化计算装置10的非限定性示例是网络访问限制装置16,网络化的相机18a、18b、18c,固定的计算机20,膝上型计算机22,移动电话24,平板电脑26,媒体存储装置28,音频记录装置30,以及服务器32。应该理解的是,网络化系统100可以包括除了以上所列之外的其他网络化计算装置10。数据网络100可以包括比图1中所示更少的网络化计算装置10。数据网络100可以包括比图1中所示更多的网络化计算装置10。
网络化系统100的网络化计算装置10的全部或至少一些被设置为在系统100内运行用于动态部署、执行和/或管理媒体流生成服务的软件。媒体流生成服务被配置为生成将要输送至多个网络化计算装置10中的用作客户端的至少一个网络化计算装置的媒体流。媒体流生成服务可以被配置为在多个网络化计算装置10中的单独一个上工作。可替代地,媒体流生成服务可以分布在多个网络化计算装置10中的数个上。客户端是具有请求、接收和/或播放媒体流能力的网络化计算装置10。媒体流是在数据网络上流动的媒体数据。流动涉及将媒体数据作为媒体流而输送的过程。因此,术语流动涉及媒体数据而不是媒体自身的输送方法。媒体数据的示例是声音和视频。
在媒体生成装置处生成媒体数据。媒体生成装置是被配置为生成媒体数据的装置。媒体生成装置可以是多个网络化装置10中的一个。可替代地,媒体生成装置可以是连接至多个联网装置10中的一个的装置。媒体生成装置的非限定性示例是摄影机(例如热摄影机和监控摄影机)和音频记录装置(例如话筒)。摄影机在图1的网络化系统100中示例为网络化相机18a、18b、18c。音频记录装置在图1的网络化系统100中示例为音频记录装置30。可替代地,或者组合地,媒体生成装置可以是被配置为用于渲染视频和/或合成音频的计算装置。因此,固定计算机20、膝上型计算机22、移动电话24、平板电脑26、媒体存储装置28或服务器32中的任意一个可以作为媒体生成装置。
媒体生成装置可以作为媒体源。可替代地,媒体数据可以由媒体生成装置生成并且随后存储在媒体存储装置28上,媒体存储装置28随后用作媒体源。媒体生成装置既可以作为媒体生成装置又可以作为媒体存储装置。例如,以摄影机为形式的网络化计算装置10可以被配置为生成视频形式的媒体并且将所生成的视频存储在摄像机的存储器上。因此,媒体源是被设置为捕获和/或存储媒体作为媒体数据的网络化计算装置10。媒体源进一步被配置为将捕获和/或存储的媒体数据作为媒体流而发送在数据网络上。可以由来自媒体流生成服务的指令发起媒体流的发送。
媒体流生成服务被配置为生成媒体流;媒体流具有由请求该媒体流的客户端所设置的特性。媒体流的特性是影响媒体流在媒体流播放时的感知的属性、和/或影响代表媒体流的数据的大小的属性。媒体流特性的非限定示例是数据格式(例如编码类型)、分辨率、帧速率、对比度、压缩率、以及比特率。此外,客户端还被配置为请求具有特定内容的媒体流。内容例如可以是将要被组合的来自两个或更多个媒体源的媒体,或者在特定媒体生成装置处生成的媒体。
在媒体服务寄存器中寄存网络化系统100中的有效的媒体流生成服务。媒体服务寄存器涉及软件和/或硬件实现的寄存器/数据库,其包括代表网络化系统100内生成媒体流的有效媒体流生成服务的标识符的条目、以及用于访问每个对应媒体流生成服务的地址。用于访问媒体流生成服务的地址是标识特定媒体流生成服务的唯一地址。用于访问媒体流生成服务的地址例如可以是针对每个媒体流生成服务的唯一的字符串。根据非限定示例,可以使用类似于URL的语法。地址可以包括域ID、网络ID、网络计算装置ID、或媒体流生成服务ID。该地址可以随后转换为消息被路由到的协议相关的地址。
因此,媒体服务寄存器是跟踪网络化系统100中可用的/有效的媒体流生成服务的寄存器/数据库。媒体服务寄存器可以包括在网络化系统100内的特定网络化计算装置10中。可替代地,媒体服务寄存器可以分布在网络化系统100内的多个网络化计算装置10上。此外,与媒体流的生成点、媒体流的输送点、媒体流的比特率、媒体流的延迟、以及媒体流的常规状态有关的信息可以存储在媒体服务寄存器中。网络化系统100中的媒体流生成服务生成了在处理器、网络、内存,或者数据网络自身或网络化计算装置10的其他关键资源上的工作负载。
如上所述,媒体流生成服务是安装在网络化计算装置10上的软件程序。可替代地,媒体流生成服务可以分布在多个网络化计算装置10上。媒体流生成服务被设置为生成媒体流。媒体流生成服务被设置为从一个或多个已经存在的媒体流生成媒体流或者通过从媒体源启动媒体流而生成媒体流。媒体流生成服务的非限定性示例是媒体流触发器、媒体流代码转换器、媒体流拆分器、以及媒体流缝合器。
媒体流触发器被配置为触发新媒体流的开始。
媒体流代码转换器被配置为将编码的媒体流代码转换/转化为不同编码的媒体流。因此,输入的第一编码媒体流被转换为输出的第二编码媒体流,其中第一媒体流和第二媒体流被不同地编码。第一媒体流和第二媒体流是通常具有不同媒体质量的不同媒体流。代码转换的非限定性示例是将音频媒体流从ACC转换为MP3,重定视频媒体流的比例,改变视频媒体流的帧速率,或者将视频媒体流从Mpeg4转换为AVI。代码转换通常在下列情形下完成,其中目标装置(在该情形下为客户端)并不支持现有的媒体流生成服务的格式,或者具有有限的存储容量而指令减小文件大小,或者为了将不兼容或老式数据转换为更好支持的或新式格式。此外,可以在数据网络的容量有限的情形下使用代码转换。
媒体流拆分器被配置为将媒体流拆分为两个或更多个媒体流。
媒体流缝合器被配置为将两个或更多个媒体流组合/缝合为一个媒体流。
网络化系统100进一步包括媒体服务管理器。媒体服务管理器是软件和/或硬件实现的服务器。媒体服务管理器可以包括在网络化系统100内的特定的网络化计算装置10中。可替代地,媒体服务管理器可以分布在网络化系统100内的多个网络化计算装置10上。
媒体服务管理器被设置为频繁地监控网络化系统100以意识到数据网络的瓶颈和/或网络化装置10的资源缺乏或其他性能指示。媒体服务管理器进一步被设置为监控系统内媒体流以能够优化数据流动。这可以通过轮询媒体服务寄存器、或者通过订阅媒体服务寄存器中的改变而完成。媒体服务管理器进一步被设置为确定所请求的媒体流到达客户端的最优路径。这可以通过以下方式完成:针对其将在网络化系统的组员上引发的负荷加权所请求的需求(例如低延迟或高带宽),和/或加权生成媒体流的有效媒体流生成服务的需求。
在图2中示出了网络化系统100的可替代框图。网络化系统包括客户端210、媒体服务寄存器220、媒体服务管理器230、以及多个网络化计算装置10。如上所述,客户端是网络化计算装置10。此外,也如上所述,媒体服务寄存器220可以包括在网络化系统100内的特定网络化计算装置10中。可替代地,媒体服务寄存器220可以分布在网络化系统200内的多个网络化计算装置10上。此外,也如上所述,媒体服务管理器230可以包括在网络化系统100内的特定网络化计算装置10中。可替代地,媒体服务管理器230可以分布在网络化系统100内的多个网络化计算装置10上。
除了如上所述之外,客户端210包括被设置为将针对媒体流的媒体请求发送至媒体服务寄存器的媒体请求器212。此外,客户端210被设置为接收由网络化系统内的媒体流生成服务所生成的媒体流。媒体请求器212可以是硬件和/或软件实现的。
除了如上所述之外,媒体服务寄存器220包括寄存器222,该寄存器222存储数据网络内生成媒体流的有效媒体流生成服务的标识符以及用于访问每个对应的媒体流生成服务的地址。媒体服务寄存器220进一步包括被设置为检查媒体请求是否对应于生成媒体流的有效媒体流生成服务的媒体请求检查器224。此外,媒体服务寄存器220包括媒体流生成服务激活器226,其被设置为当媒体请求未对应于有效媒体流生成服务时将针对生成被请求的媒体流的媒体流生成服务的激活请求发送至媒体服务管理器230。寄存器222、媒体请求检查器224和/或媒体流生成服务激活器226可以是软件和/或硬件实现的。
除了如上所述之外,媒体服务管理器230被配置为建立在网络化系统100内生成媒体流的媒体流生成服务。媒体服务管理器230包括媒体流生成服务激活请求接收器232、安装器234、网络化计算装置选择器236以及数据库238。媒体流生成服务激活请求接收器232、安装器234、网络化计算装置选择器236以及数据库238可以是软件和/或硬件实现的。
媒体流生成服务激活请求接收器232被设置为接收针对生成被请求的媒体流的媒体流生成服务的激活请求。
安装器234被设置为发送安装指令至多个网络化计算装置10中的至少一个。安装指令包括用于在网络化计算装置10上安装媒体流生成服务的指令。
网络化计算装置选择器236被设置为选择将要在其上安装被请求的媒体流生成服务的网络化计算装置10。选择基于与数据网络内的分支的网络负载、多个网络化计算装置10中可用的CPU处理能力、多个网络化计算装置10中特定硬件或软件性能的可用性、数据网络内的分支的健壮性、多个网络化计算装置10的健壮性、以及接近性有关的数据中的至少一种。数据网络内的分支涉及数据网络的子部分。
数据库238包括可能将要安装在多个网络化计算装置中的一个或多个上的媒体流生成服务软件程序部分。当被安装时,媒体流生成服务软件程序部分被配置为充当媒体流生成服务。
根据一个实施例,媒体服务管理器230可以寄存在媒体服务寄存器220中作为可以在网络化系统100内提供任何类型媒体流的媒体流生成服务。如此,在媒体服务管理器230处生成的媒体流生成服务的属性可以被设置为使得确保其针对将要由媒体服务管理器230处的媒体流生成服务生成的媒体流总是最不理想的选择。以此方式,媒体服务管理器230将接收针对否则无法在网络化系统100内被支持的媒体流的任何请求。
基于此,因为媒体服务管理器将被登记为所有可能媒体流的提供者,所以针对任何媒体流将总是存在至少一个匹配。然而,如果存在已生成了特定媒体流的特定媒体流生成服务,并且客户端请求该特定媒体流,则该特定媒体流生成服务而不是媒体服务管理器将被选择为最合适的。
在图3中示出了用于在网络化系统中请求并接收媒体流的方法300。作为充当客户端的网络化计算装置10中的第一个动作,发送S302针对媒体流的媒体请求至媒体服务寄存器。媒体流请求可以包括被客户端请求的媒体流质量。媒体流请求可以包括媒体流来源,该媒体流来源涉及与已生成包括在媒体流中的数据的媒体生成装置有关的数据。因此,从这个媒体生成装置发源媒体流。如上所述,媒体服务寄存器包括寄存器,该寄存器包括数据网络内生成媒体流的有效媒体流生成服务的标识符以及用于访问每个对应的媒体流生成服务的地址。
接着,执行在媒体服务寄存器处检查S304媒体请求是否对应于生成被请求的媒体流的有效媒体流生成服务。
当媒体请求对应于有效媒体流生成服务时,方法300包括在客户端处接收S305由生成被请求的媒体流的有效媒体流生成服务生成的媒体流。
当媒体请求未对应于有效媒体流生成服务时,方法300包括发送S306针对生成媒体流的媒体流生成服务的激活请求至媒体服务管理器。
方法300可以进一步包括,由媒体服务管理器选择S307向其发送用于安装被请求的媒体流生成服务的指令的一个或多个网络化计算装置10。选择基于与数据网络内的分支的网络负载、多个网络化计算装置10中可用的CPU处理能力、多个网络化计算装置10中特定硬件或软件性能的可用性、数据网络内的分支的健壮性、多个网络化计算装置10的健壮性以及接近性有关的数据中的至少一种。
媒体服务管理器可以进一步发送S308安装指令以在多个网络化计算装置10中的至少一个处安装被请求的媒体流生成服务。
安装的媒体流生成服务可以通过代码转换、拆分和/或缝合一个或多个已经存在的媒体流而从一个或多个已经存在的媒体流生成媒体流。媒体流生成服务可以生成被请求的媒体流,从而使客户端可以接收S310由安装的媒体流生成服务生成的媒体流。
方法300可以进一步包括在客户端处接收消息,该消息包括指示客户端从安装的媒体流生成服务接收被请求的媒体流的信息。
方法300可以进一步包括,在媒体服务寄存器处存储S312安装的媒体流生成服务的标识符以及用于访问该媒体流生成服务的地址。
在图4a和图4b中示出了当在网络化系统中请求并接收媒体流时可以涉及的信令的两个示例性实施例。应该理解的是当在网络化系统中请求并接收媒体流时也可以使用信令的其他实施例。
参照图4a的示例性实施例,信令开始于客户端发送针对具有特定配置的媒体流的媒体请求400至媒体服务寄存器。客户端是网络化系统100中的具有请求、接收和/或播放媒体流的能力的任何网络化计算装置10。参考图1,客户端的非限定性示例是固定计算机20,膝上型计算机22,移动电话24或平板电脑26。根据该示例性实施例,客户端请求具有媒体服务寄存器中所寄存的任何有效媒体流生成服务不直接支持的配置的媒体流。作为非限定性示例,不存在提供具有客户端所请求的编解码或者分辨率的视频流的有效媒体流生成服务。在发现不存在具有特定配置的有效媒体流生成服务之后(因此,媒体服务寄存器处的检查的结果是没有有效媒体流生成服务被设置为生成与被请求的媒体流对应的媒体流),媒体服务寄存器发送激活请求402至媒体服务管理器。激活请求402是发送至媒体服务管理器的用以安装被设置为生成被请求的媒体流的媒体流生成服务的请求。媒体服务管理器被配置为选择404将向其安装被设置为生成被请求的媒体流的媒体流生成服务的至少一个网络化计算装置。选择404可以基于与数据网络内的分支的网络负载、多个网络化计算装置中可用CPU处理能力、多个网络化计算装置中特定硬件或软件性能的可用性、数据网络内的分支的健壮性、多个网络化计算装置的健壮性、以及接近性有关的数据中的至少一种。一旦选择404了至少一个网络化计算装置,媒体服务管理器就将安装指令406发送至被选择的至少一个网络化计算装置。安装指令406可以包括将要被安装为被设置为生成被请求的媒体流的媒体流生成服务的软件。可替代地或者组合地,安装指令406可以包括与至少一个网络化计算装置可以从哪获取将要被安装为被设置为生成被请求的媒体流的媒体流生成服务的软件有关的信息。在安装了被设置为生成被请求的媒体流的媒体流生成服务之后,至少一个网络化计算装置被设置为开始生成被请求的媒体流并且向客户端发送被请求的媒体流414。此外,发送ID消息416至媒体服务寄存器。ID消息包括与安装的媒体流生成服务的标识以及用于访问该媒体流生成服务的地址有关的信息。ID消息416可以直接地从至少一个网络化计算装置发送至媒体服务寄存器。可替代地或组合地,ID消息416可以经由媒体服务管理器发送至媒体服务寄存器。
参照图4b的示例性实施例,从开始到将安装指令406从媒体服务管理器发送至被选择的至少一个网络化计算装置的信令与图4a中相同。一旦安装了被设置为生成被请求的媒体流的媒体流生成服务,就发送确认消息408至媒体服务管理器。确认消息408包括与在至少一个网络化计算装置处成功地安装了被设置为生成被所请求的媒体流的媒体流生成服务有关的信息。确认消息408还可以进一步包括与用于访问生成被请求的媒体流的媒体流生成服务的地址有关的信息。从媒体服务管理器发送媒体流可用消息410至客户端。媒体流可用消息410可以从媒体服务管理器直接地发送至客户端。可替代地或组合地,媒体流可用消息410可以经由媒体服务寄存器发送至客户端。媒体流可用消息410包括与用于访问生成被请求的媒体流的媒体流生成服务的地址有关的信息。客户端随后使用用于访问生成被请求的媒体流的媒体流生成服务的地址而发送针对被请求的媒体流的媒体请求412。被请求的媒体流414随后被发送至客户端。根据该实施例,ID消息416也可以发送至媒体服务寄存器。
本领域技术人员认识到,本发明绝非限定于如上所述的优选实施例。相反地,许多修改和变形可能在所附权利要求的范围内。
例如,确认消息408也可以从至少一个网络化计算装置直接地发送至媒体服务寄存器或经由媒体服务管理器发送至媒体服务寄存器。
此外,确认消息408和/或媒体流可用消息410可以包括ID消息416的信息。因此,在该情形下可以不发送特定ID消息416。
额外地,通过研习附图、本公开以及所附权利要求,可以由本领域技术人员在实施所请求保护的发明而理解并实施对所公开实施例的变形。

Claims (11)

1.一种用于在系统(100)中在客户端(210)处请求并接收媒体流(414)的方法,所述系统包括所述客户端、媒体服务寄存器(220)以及媒体服务管理器(230),所述客户端、所述媒体服务寄存器(220)以及所述媒体服务管理器(230)均被设置为在包括多个网络化计算装置(10)的数据网络内通信,所述方法包括:
从所述客户端向所述媒体服务寄存器发送(S302)针对所述媒体流的媒体请求(400),所述媒体服务寄存器包括含有所述数据网络内生成媒体流的有效媒体流生成服务的标识符以及用于访问每个对应的媒体流生成服务的地址的寄存器(222);
在所述媒体服务寄存器处检查(S304)所述媒体请求是否对应于生成被请求的媒体流的有效媒体流生成服务;
当所述媒体请求未对应于有效媒体流生成服务时,发送(S306)针对生成被请求的媒体流的媒体流生成服务的激活请求(402)至所述媒体服务管理器;
由所述媒体服务管理器选择(S307;404)网络化计算装置,用于安装被请求的媒体流生成服务的指令(406)将被发送至被选择的网络化计算装置;其中所述选择基于与所述数据网络内的分支的网络负载、所述多个网络化计算装置中可用CPU处理能力、所述数据网络内的分支的健壮性、所述多个网络化计算装置的健壮性、以及接近性有关的数据中的至少一种;
从所述媒体服务管理器发送(S308)所述指令以在所述被选择的网络化计算装置处安装所述被请求的媒体流生成服务;以及
在所述客户端处接收(S310)由安装的媒体流生成服务生成的媒体流。
2.根据权利要求1所述的方法,进一步包括,在所述客户端处接收消息(410),所述消息包括指示所述客户端从所述安装的媒体流生成服务接收所述被请求的媒体流的信息。
3.根据权利要求1所述的方法,进一步包括,在所述媒体服务寄存器处存储(S312)所述安装的媒体流生成服务的标识(416)以及用于访问所述安装的媒体流生成服务的地址。
4.根据权利要求1所述的方法,其中,所述安装的媒体流生成服务被设置为通过代码转换、拆分和/或缝合一个或多个已经存在的媒体流而从所述一个或多个已经存在的媒体流生成媒体流。
5.根据权利要求1所述的方法,其中,所述媒体流请求包括媒体流质量和/或媒体流来源。
6.一种用于在数据网络内建立媒体流生成服务的网络化系统,所述系统包括多个网络化计算装置(10)、客户端(210)、媒体服务寄存器(220)以及媒体服务管理器(230),所述多个网络化计算装置(10)、所述客户端(210)、所述媒体服务寄存器(220)以及所述媒体服务管理器(230)均被设置为在所述数据网络内通信;
其中所述客户端被设置为发送针对所述媒体流的媒体请求(400)至所述媒体服务寄存器;
其中所述媒体服务寄存器包括含有所述数据网络内生成媒体流的有效媒体流生成服务的标识符以及用于访问每个对应的媒体流生成服务的地址的寄存器(222);
其中所述媒体服务寄存器进一步包括媒体请求检查器(224),所述媒体请求检查器(224)被设置为检查所述媒体请求是否对应于生成所述媒体流的有效媒体流生成服务;
其中所述媒体服务寄存器进一步包括媒体流生成服务激活器(226),所述媒体流生成服务激活器(226)被设置为当所述媒体请求未对应于有效媒体流生成服务时发送针对生成所述媒体流的媒体流生成服务的激活请求(402)至所述媒体服务管理器;
其中所述媒体服务管理器包括:
网络化计算装置选择器(236),被设置为选择网络化计算装置,被请求的媒体流生成服务将被安装至被选择的网络化计算装置,其中所述选择基于与所述数据网络内的分支的网络负载、所述多个网络化计算装置中可用CPU处理能力、所述数据网络内的分支的健壮性、所述多个网络化计算装置的健壮性、以及接近性有关的数据中的至少一种;以及
安装器(234),被设置为发送安装指令(406)至所述被选择的网络化计算装置,所述安装指令(406)用于指令所述网络化计算装置安装所述被请求的媒体流生成服务。
7.根据权利要求6所述的网络化系统,其中,所述客户端进一步包括媒体流接收器,所述媒体流接收器被设置为从所述多个网络化计算装置中的至少一个接收由安装的媒体流生成服务生成的所述媒体流。
8.根据权利要求6所述的网络化系统,其中,所述媒体流生成服务被设置为通过转换代码、拆分和/或缝合一个或多个已经存在的媒体流而从所述一个或多个已经存在的媒体流生成媒体流。
9.一种用于在网络化系统(100)内建立生成媒体流(414)的媒体流生成服务的媒体服务管理器,所述网络化系统包括多个网络化计算装置(10)以及所述媒体服务管理器,所述多个网络化计算装置(10)以及所述媒体服务管理器均在数据网络内通信,所述媒体服务管理器包括:
媒体流生成服务激活请求接收器(232),被设置为接收针对生成所述媒体流的媒体流生成服务的激活请求(402);
网络化计算装置选择器(236),被设置为选择网络化计算装置,被请求的媒体流生成服务将被安装至被选择的网络化计算装置,其中所述选择基于与所述数据网络内的分支的网络负载、所述多个网络化计算装置中可用CPU处理能力、所述数据网络内的分支的健壮性、所述多个网络化计算装置的健壮性、以及接近性有关的数据中的至少一种;以及
安装器(234),被设置为发送安装指令(406)至所述被选择的网络化计算装置,其中所述安装指令包括用于在所述被选择的网络化计算装置上安装所述媒体流生成服务的指令。
10.根据权利要求9所述的媒体服务管理器,其中,所述媒体流生成服务被设置为通过代码转换、拆分和/或缝合一个或多个已经存在的媒体流而从所述一个或多个已经存在的媒体流生成媒体流。
11.根据权利要求9所述的媒体服务管理器,进一步包括数据库(238),所述数据库(238)包括生成可能将作为所述媒体流生成服务而安装在所述多个网络化计算装置中的一个或多个处的软件程序部分的媒体流生成服务。
CN201610873890.6A 2015-10-05 2016-09-30 在网络化系统内请求和接收媒体流 Pending CN106561053A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP15188279.2A EP3188015A1 (en) 2015-10-05 2015-10-05 Requesting and receiving a media stream within a networked system
EP15188279.2 2015-10-05

Publications (1)

Publication Number Publication Date
CN106561053A true CN106561053A (zh) 2017-04-12

Family

ID=54293070

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610873890.6A Pending CN106561053A (zh) 2015-10-05 2016-09-30 在网络化系统内请求和接收媒体流

Country Status (6)

Country Link
US (1) US20170099333A1 (zh)
EP (1) EP3188015A1 (zh)
JP (1) JP2017135694A (zh)
KR (1) KR20170040739A (zh)
CN (1) CN106561053A (zh)
TW (1) TW201722119A (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11128676B2 (en) * 2019-04-16 2021-09-21 Citrix Systems, Inc. Client computing device providing predictive pre-launch software as a service (SaaS) sessions and related methods
US20230007067A1 (en) * 2021-06-30 2023-01-05 Tencent America LLC Bidirectional presentation datastream

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW532040B (en) * 2000-10-20 2003-05-11 Koninkl Philips Electronics Nv Method and system for transferring a communication session
US6407680B1 (en) * 2000-12-22 2002-06-18 Generic Media, Inc. Distributed on-demand media transcoding system and method
US20050005019A1 (en) * 2003-05-19 2005-01-06 Michael Harville Service management using multiple service location managers
US20050005025A1 (en) * 2003-07-04 2005-01-06 Michael Harville Method for managing a streaming media service
US20050076099A1 (en) * 2003-10-03 2005-04-07 Nortel Networks Limited Method and apparatus for live streaming media replication in a communication network
US9189285B2 (en) * 2012-12-14 2015-11-17 Microsoft Technology Licensing, Llc Scalable services deployment
US9705995B2 (en) * 2014-03-18 2017-07-11 Axis Ab Capability monitoring in a service oriented architecture

Also Published As

Publication number Publication date
EP3188015A1 (en) 2017-07-05
JP2017135694A (ja) 2017-08-03
KR20170040739A (ko) 2017-04-13
TW201722119A (zh) 2017-06-16
US20170099333A1 (en) 2017-04-06

Similar Documents

Publication Publication Date Title
CN108848530B (zh) 一种获取网络资源的方法、装置及调度服务器
CN106533932B (zh) 一种用于推送即时消息的方法和装置
CN109951488B (zh) 内容分发网络的服务实现方法、装置、设备及存储介质
CN110958281B (zh) 基于物联网的数据传输方法及通信装置
CN107251508A (zh) 交织多个蓝牙低功耗公告
CN109496432A (zh) 流媒体直播方法及系统
CN102763373B (zh) 基于远程访问使用本地网络装置的服务的方法和设备
CN109995877A (zh) 信息推送方法和装置
CN108234319B (zh) 一种数据的传输方法和装置
CN101997822A (zh) 一种流媒体内容分发方法、系统和设备
CN110377440A (zh) 信息处理方法和装置
JP2020198636A (ja) 効率的な呼処理のためのシステムおよび方法
CN106131165A (zh) 用于内容分发网络的防盗链方法和装置
CN109962961A (zh) 一种内容分发网络cdn服务节点的重定向方法及系统
CN104010228A (zh) 一种用于基于级的自动调整的对等媒体流的装置和方法
BR112018001046B1 (pt) Método de distribuição de vídeo e função de exposição de capacidade de serviço
CN102404388B (zh) 一种应用虚拟化的负载分担方法及装置
CN110417905B (zh) 一种合约发布方法、装置、设备和联盟链系统
CN106561053A (zh) 在网络化系统内请求和接收媒体流
CN106686635B (zh) 基于无线接入点的控制和配置协议的数据传输方法和装置
WO2016180284A1 (zh) 服务节点分配方法、装置、cdn管理服务器及系统
US9774640B2 (en) Method and system for sharing applications among a plurality of electronic devices
CN111565233A (zh) 数据传输方法及装置
CN111654526A (zh) 一种流媒体服务器的负载均衡方法及系统
CN104780591B (zh) 终端设备间业务互操作实现方法、装置、系统及相关设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20170412