CN116112474A - 流媒体调度方法、装置及可读存储介质 - Google Patents

流媒体调度方法、装置及可读存储介质 Download PDF

Info

Publication number
CN116112474A
CN116112474A CN202111333353.XA CN202111333353A CN116112474A CN 116112474 A CN116112474 A CN 116112474A CN 202111333353 A CN202111333353 A CN 202111333353A CN 116112474 A CN116112474 A CN 116112474A
Authority
CN
China
Prior art keywords
streaming media
cache nodes
fragments
media cache
client
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
CN202111333353.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.)
Huawei Cloud Computing Technologies Co Ltd
Original Assignee
Huawei Cloud Computing Technologies Co Ltd
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 Huawei Cloud Computing Technologies Co Ltd filed Critical Huawei Cloud Computing Technologies Co Ltd
Priority to CN202111333353.XA priority Critical patent/CN116112474A/zh
Priority to PCT/CN2022/093466 priority patent/WO2023082587A1/zh
Publication of CN116112474A publication Critical patent/CN116112474A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • 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/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • 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/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • 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/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/23103Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion using load balancing strategies, e.g. by placing or distributing content on different disks, different memories or different servers
    • 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/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/2312Data placement on disk arrays
    • H04N21/2318Data placement on disk arrays using striping
    • 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/239Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
    • 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/239Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
    • H04N21/2393Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
    • 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/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • 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/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26258Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for generating a list of items to be played back in a given order, e.g. playlist, or scheduling item distribution according to such list
    • 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/64Addressing
    • 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/643Communication protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/858Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本发明公开了流媒体调度方法、装置及可读存储介质,涉及通信技术领域,能够降低流媒体客户端播放流媒体内容时出现卡顿掉帧现象的概率。该方法包括:流媒体服务端接收客户端发送的针对一路流媒体的播放请求。然后流媒体服务端从缓存有流媒体的分片的M个流媒体缓存节点中选择N个流媒体缓存节点。之后,流媒体服务端向客户端发送流媒体播放列表。其中,M大于N,在N为1的情况下,所选择的1个流媒体缓存节点缓存有流媒体的所有分片,在N大于1的情况下,所选择的N个流媒体缓存节点分别缓存有流媒体的部分分片,流媒体播放列表包括N个流媒体缓存节点的地址,用于指示客户端从N个流媒体缓存节点的地址获取流媒体的分片以播放流媒体。

Description

流媒体调度方法、装置及可读存储介质
技术领域
本发明涉及通信技术领域,尤其涉及流媒体调度方法、装置及可读存储介质。
背景技术
基于超文本传输协议的自适应码率流媒体传输协议(hyper text transferprotocol live streaming,HLS)是一种流媒体网络传输协议。HLS允许将一个流媒体数据切分为多个流媒体分片。例如,在直播业务中,通过HLS可以将一路流媒体直播切分成多个分片以及相对应的流媒体播放列表。流媒体客户端在开始一个流媒体会话时,首先会通过内容分发网络(content delivery network,CDN)服务器获取流媒体播放列表文件,之后流媒体客户端依据播放列表内容请求相应的分片,然后在本地通过流媒体的分片完成流媒体播放。
然而,在流媒体访问集中度较高的场景中(如大型发布会直播)大量流媒体客户端会同时获取流媒体的分片,由于CDN服务器可承载用户规模有限,大量流媒体客户端同时获取流媒体的分片会造成流媒体客户端播放流媒体内容出现卡顿掉帧等现象,十分影响用户体验。
发明内容
本发明提供了流媒体调度方法、装置及可读存储介质,能够降低流媒体客户端播放流媒体内容时出现卡顿掉帧现象的概率。为达到上述目的,本发明采用如下技术方案:
第一方面,本发明提供了一种流媒体调度方法,该方法包括:首先流媒体服务端接收客户端发送的针对一路流媒体的播放请求。然后流媒体服务端从缓存有流媒体的分片的M个流媒体缓存节点中选择N个流媒体缓存节点。之后,流媒体服务端向客户端发送流媒体播放列表。其中,M大于N,在N为1的情况下,所选择的1个流媒体缓存节点缓存有流媒体的所有分片,在N大于1的情况下,所选择的N个流媒体缓存节点分别缓存有流媒体的部分分片,流媒体播放列表包括N个流媒体缓存节点的地址,流媒体播放列表用于指示客户端从N个流媒体缓存节点的地址获取流媒体的分片以播放流媒体。
例如,一个时长为60分钟的视频公开课可以切分为60个时长为1分钟的分片,这60个切片可以存储在流媒体服务端和100个流媒体缓存节点中。流媒体服务端接收客户端发送的针对该视频公开课的播放请求后,可以先从缓存该视频公开课的分片的100个流媒体缓存节点中选择10个流媒体缓存节点,然后向客户端发送流媒体播放列表以指示客户端从这10个流媒体缓存节点的地址获取视频公开课的60个分片以播放视频公开课。
在流媒体访问集中度较高的场景中(如大型发布会直播)大量流媒体客户端会同时获取流媒体的分片,由于流媒体服务端(如CDN服务器)可承载用户规模有限,大量流媒体客户端同时获取流媒体的分片会造成流媒体客户端播放流媒体内容出现卡顿掉帧等现象。而在本发明提供的方法中,流媒体服务端在收到客户端发送的针对一路流媒体的播放请求后,不再直接指示客户端从流媒体服务端的地址获取流媒体的分片,而是会先从缓存有该流媒体的分片的M个流媒体缓存节点中选择N个流媒体缓存节点,然后向客户端发送流媒体播放列表指示客户端从N个流媒体缓存节点的地址获取流媒体的分片以播放流媒体。从而避免发生大量客户端同时从流媒体服务端获取流媒体的分片造成流媒体客户端播放流媒体内容出现卡顿掉帧并且流媒体服务端选择流媒体缓存节点的过程中,流媒体服务端与客户端之间无需交互额外的信令,使得客户端无感,由此提升了用户体验。
在一种可能的实现方式中,所述方法还可以包括:所述流媒体服务端确定缓存有所述流媒体的其他分片的K个其他客户端,则所述流媒体播放列表还包括所述K个其他客户端的地址,所述流媒体播放列表用于指示所述客户端从所述N个流媒体缓存节点的地址和所述K个其他客户端的地址获取所述流媒体的全部分片以播放所述流媒体。
例如,一个时长为60分钟的视频公开课可以切分为60个时长为1分钟的分片,这60个切片可以存储在流媒体服务端、100个流媒体缓存节点和300个客户端中。流媒体服务端接收客户端发送的针对该视频公开课的播放请求后,可以先从缓存该视频公开课的分片的100个流媒体缓存节点中选择10个流媒体缓存节点,之后从除发送请求外且缓存该视频公开课的分片的300个其他客户端中选择20个其他客户端,然后向客户端发送流媒体播放列表以指示客户端从这10个流媒体缓存节点和20个其他客户端的地址获取视频公开课的60个分片以播放视频公开课。
可以看出,流媒体服务端不仅可以指示客户端从流媒体缓存节点的地址获取流媒体的分片以播放流媒体,还可以指示客户端从其他客户端的地址获取流媒体的分片以播放流媒体,从而进一步避免发生大量客户端同时从流媒体服务端获取流媒体的分片造成流媒体客户端播放流媒体内容出现卡顿掉帧。
在一种可能的实现方式中,所述N个流媒体缓存节点缓存有所述流媒体的所有分片,所述流媒体播放列表用于指示所述客户端从所述N个流媒体缓存节点的地址获取所述流媒体的全部分片以播放所述流媒体。
可选地,所述M、所述N和所述K均为正整数。
例如,M可以为100,N可以为10,K可以为300。
在一种可能的实现方式中,所述从缓存有所述流媒体的分片的M个流媒体缓存节点中选择N个流媒体缓存节点,包括:根据所述M个流媒体缓存节点的状态信息,从缓存有所述流媒体的分片的M个流媒体缓存节点中选择N个流媒体缓存节点,其中,所述状态信息包括负载信息、内存利用率、可用内存量、存储空间利用率、可用存储空间量、网络类型或流媒体分片存储信息中的至少一项。网络类型用于表示流媒体缓存节点的网络类型(如专网),流媒体分片存储信息用于表示流媒体缓存节点存储有哪些流媒体的分片。
可以看出,流媒体服务端在选择流媒体缓存节点可以根据流媒体缓存节点的状态信息选择状态较好的流媒体缓存节点,以使客户端从状态较好的流媒体缓存节点的地址获取流媒体的分片以播放流媒体,从而避免客户端从状态较差的流媒体缓存节点的地址获取流媒体的分片以播放流媒体而造成客户端播放流媒体内容出现卡顿掉帧。
在另一种可能的实现方式中,所述从缓存有所述流媒体的分片的M个流媒体缓存节点中选择N个流媒体缓存节点,包括:从缓存有所述流媒体的分片的M个流媒体缓存节点中,选择负载率最低的N个流媒体缓存节点,其中,在N为1的情况下,所选择的1个流媒体缓存节点的负载率为M个流媒体缓存节点中最低,在N大于1的情况下,所选择的N个流媒体缓存节点中每一流媒体缓存节点的负载率在缓存有所述流媒体的部分分片的流媒体缓存节点中最低。
例如,一个时长为60分钟的视频公开课可以切分为60个时长为1分钟的分片,这60个切片可以存储在流媒体服务端和100个流媒体缓存节点中,流媒体缓存节点A为这100个流媒体缓存节点中负载率最低的节点。流媒体服务端接收客户端发送的针对该视频公开课的播放请求后,可以先从缓存该视频公开课的分片的100个流媒体缓存节点中选择负载率最低的节点即流媒体缓存节点A,然后向客户端发送流媒体播放列表以指示客户端从媒体缓存节点A的地址获取视频公开课的60个分片以播放视频公开课。
可以理解的是,指示客户端从负载率最低的N个流媒体缓存节点的地址获取流媒体的分片以播放流媒体,可以避免客户端通过负载率较高的流媒体缓存节点获取流媒体的分片而导致流媒体客户端播放流媒体内容出现卡顿掉帧等现象发生,从而进一步提升了用户体验。
在又一种可能的实现方式中,所述从缓存有所述流媒体的分片的M个流媒体缓存节点中选择N个流媒体缓存节点,包括:根据所述M个流媒体缓存节点的状态信息和所述M个流媒体缓存节点的属性信息,从缓存有所述流媒体的分片的M个流媒体缓存节点中选择N个流媒体缓存节点。
可选地,上述属性信息包括节点间地址、属性参数信息或流媒体分片内容信息中的至少一项。其中,节点间地址可以包括网际协议版本4(internet protocol version 4,IPv4)及端口和网际协议版本6(internet protocol version 6,IPv6)及端口。属性参数信息可以包括网络地址转换(network address translation,NAT)类型、运营商、网络类型、内存与磁盘可用空间。流媒体分片内容信息可以包括流媒体分片的更新时间和节点的负载。
例如,一个时长为60分钟的视频公开课可以切分为60个时长为1分钟的分片,这60个切片可以存储在流媒体服务端和100个流媒体缓存节点中。流媒体服务端接收客户端发送的针对该视频公开课的播放请求后,可以先从缓存该视频公开课的分片的100个流媒体缓存节点中选择网络类型为专网的30个流媒体缓存节点,然后再从网络类型为专网的30个流媒体缓存节点选择负载率最低的10个流媒体缓存节点,然后向客户端发送流媒体播放列表以指示客户端从这10个流媒体缓存节点的地址获取视频公开课的60个分片以播放视频公开课。
又例如,一个时长为60分钟的视频公开课可以切分为60个时长为1分钟的分片,这60个切片可以存储在流媒体服务端和100个流媒体缓存节点中。流媒体服务端接收客户端发送的针对该视频公开课的播放请求后,可以先从缓存该视频公开课的分片的100个流媒体缓存节点中选择支持IPv6的70个流媒体缓存节点,然后再从支持IPv6的70个流媒体缓存节点选择负载率最低的20个流媒体缓存节点,然后向客户端发送流媒体播放列表以指示客户端从这20个流媒体缓存节点的地址获取视频公开课的60个分片以播放视频公开课。
可选地,上述N可以与流媒体的分片的数量相同。
例如,视频公开课包括60个分片,则流媒体服务端需要从缓存该视频公开课的分片的M个流媒体缓存节点中选择60个流媒体缓存节点。
可以理解的是,在N与流媒体的分片的数量相同的情况下,客户端通过不同的流媒体缓存节点并行下载不同的分片,可以缩短客户端下载分片所需时间,从而进一步提升用户体验。例如,直播视频包括3个1兆(MB)大小的分片,如果客户端从同一个带宽为10兆(Mbps)的流媒体缓存节点同时下载这3个分片,需要的下载时间为2.4秒。而如果客户端从不同的3个带宽均为10Mbps的流媒体缓存节点分别下载1个分片,所需的下载时间仅为0.8秒,可以看出下载分片所需时间显著降低。
可选地,流媒体缓存节点可以采用分布式存储的方式存储流媒体的分片。例如,每个流媒体缓存节点或每个流媒体缓存节点集可以仅存储同一个流媒体内容的一个分片。流媒体缓存节点包括流媒体缓存节点A、流媒体缓存节点B和流媒体缓存节点C,流媒体内容1包括分片1、分片2和分片3。每个分片为1MB。如果每个流媒体缓存节点都存储流媒体内容1的所有分片所需的存储空间为3MB。而如果每个流媒体缓存节点仅存储流媒体内容1的一个分片所需的存储空间仅为1MB。例如,流媒体缓存节点A存储流媒体的分片1,流媒体缓存节点B存储流媒体的分片2,流媒体缓存节点C存储流媒体的分片3。
第二方面,本发明还提供了另一种流媒体调度方法,该方法包括:首先客户端接收流媒体服务端发送的目标信息,目标信息包括M个流媒体缓存节点的属性信息;然后客户端根据所述M个流媒体缓存节点的属性信息下载流媒体的多个分片。
相关技术中,客户端仅能通过流媒体播放列表指示的流媒体缓存节点的地址下载流媒体的分片。而在本发明提供的流媒体调度方法中,客户端可以根据获取流媒体缓存节点的属性信息自主选择流媒体缓存节点的属性信息下载流媒体的分片。由此避免了客户端在流媒体缓存节点状态较差时通过该流媒体缓存节点下载流媒体的分片导致流客户端播放流媒体内容出现卡顿掉帧。
可选地,上述属性信息包括节点间地址、属性参数信息或流媒体分片内容信息中的至少一项。其中,节点间地址可以包括网际协议版本4(internet protocol version 4,IPv4)及端口和网际协议版本6(internet protocol version 6,IPv6)及端口。属性参数信息可以包括网络地址转换(network address translation,NAT)类型、运营商、网络类型、内存与磁盘可用空间。流媒体分片内容信息可以包括流媒体分片的更新时间和节点的负载。
在一种可能的实现方式中,所述目标信息还包括流媒体播放列表,所述根据所述M个流媒体缓存节点的属性信息下载流媒体的多个分片,包括:根据所述流媒体播放列表和所述M个流媒体缓存节点的属性信息下载所述多个分片。其中,所述流媒体播放列表包括所述N个流媒体缓存节点的地址,所述流媒体播放列表用于指示所述客户端从所述N个流媒体缓存节点的地址获取所述流媒体的分片以播放所述流媒体。
在一种可能的实现方式中,所述根据所述流媒体播放列表和所述M个流媒体缓存节点的属性信息下载所述多个分片,包括:根据所述流媒体播放列表获取所述客户端与所述N个流媒体缓存节点之间的时延;在所述客户端与所述N个流媒体缓存节点中的任一流媒体缓存节点之间的时延大于时延阈值的情况下,根据所述M个流媒体缓存节点的属性信息下载所述多个分片。
在一种可能的实现方式中,所述目标信息还包括K个其他客户端的属性信息,所述根据所述M个流媒体缓存节点的属性信息下载多个流媒体分片,包括:根据所述M个流媒体缓存节点和所述K个其他客户端的属性信息下载所述多个分片。
可选地,所述M、所述N和所述K均为正整数。
例如,M可以为100,N可以为10,K可以为300。
第三方面,本发明还提供了一种流媒体调度装置,该装置包括处理单元,所述处理单元用于:接收客户端发送的针对一路流媒体的播放请求;从缓存有所述流媒体的分片的M个流媒体缓存节点中选择N个流媒体缓存节点,其中,M大于N,在N为1的情况下,所选择的1个流媒体缓存节点缓存有所述流媒体的所有分片,在N大于1的情况下,所选择的N个流媒体缓存节点分别缓存有所述流媒体的部分分片;向所述客户端发送流媒体播放列表,所述流媒体播放列表包括所述N个流媒体缓存节点的地址,所述流媒体播放列表用于指示所述客户端从所述N个流媒体缓存节点的地址获取所述流媒体的分片以播放所述流媒体。
在一种可能的实现方式中,所述处理单元还用于:确定缓存有所述流媒体的其他分片的K个其他客户端,则所述流媒体播放列表还包括所述K个其他客户端的地址,所述流媒体播放列表用于指示所述客户端从所述N个流媒体缓存节点的地址和所述K个其他客户端的地址获取所述流媒体的全部分片以播放所述流媒体。
在一种可能的实现方式中,所述N个流媒体缓存节点缓存有所述流媒体的所有分片,所述流媒体播放列表用于指示所述客户端从所述N个流媒体缓存节点的地址获取所述流媒体的全部分片以播放所述流媒体。
可选地,所述M、所述N和所述K均为正整数。
例如,M可以为100,N可以为10,K可以为300。
在一种可能的实现方式中,所述处理单元具体用于:根据所述M个流媒体缓存节点的状态信息,从缓存有所述流媒体的分片的M个流媒体缓存节点中选择N个流媒体缓存节点,其中,所述状态信息包括负载信息、内存利用率、可用内存量、存储空间利用率、可用存储空间量、网络类型或流媒体分片存储信息中的至少一项。
在另一种可能的实现方式中,所述处理单元具体用于:从缓存有所述流媒体的分片的M个流媒体缓存节点中,选择负载率最低的N个流媒体缓存节点,其中,在N为1的情况下,所选择的1个流媒体缓存节点的负载率为M个流媒体缓存节点中最低,在N大于1的情况下,所选择的N个流媒体缓存节点中每一流媒体缓存节点的负载率在缓存有所述流媒体的部分分片的流媒体缓存节点中最低。
在又一种可能的实现方式中,所述处理单元具体用于:根据所述M个流媒体缓存节点的状态信息和所述M个流媒体缓存节点的属性信息,从缓存有所述流媒体的分片的M个流媒体缓存节点中选择N个流媒体缓存节点,其中,所述状态信息包括负载信息、内存利用率、可用内存量、存储空间利用率、可用存储空间量、网络类型或流媒体分片存储信息中的至少一项,所述属性信息包括节点间地址、属性参数信息或流媒体分片内容信息中的至少一项。
第四方面,本发明还提供了另一种流媒体调度装置,该装置包括处理单元,所述处理单元用于:接收流媒体服务端发送的目标信息,所述目标信息包括M个流媒体缓存节点的属性信息;根据所述M个流媒体缓存节点的属性信息下载流媒体的多个分片,所述属性信息包括节点间地址、属性参数信息或流媒体分片内容信息中的至少一项。
在一种可能的实现方式中,所述目标信息还包括流媒体播放列表,所述处理单元具体用于:根据所述流媒体播放列表和所述M个流媒体缓存节点的属性信息下载所述多个分片。其中,所述流媒体播放列表包括所述N个流媒体缓存节点的地址,所述流媒体播放列表用于指示所述客户端从所述N个流媒体缓存节点的地址获取所述流媒体的分片以播放所述流媒体。
在一种可能的实现方式中,所述处理单元具体用于:根据所述流媒体播放列表获取所述客户端与所述N个流媒体缓存节点之间的时延;在所述客户端与所述N个流媒体缓存节点中的任一流媒体缓存节点之间的时延大于时延阈值的情况下,根据所述M个流媒体缓存节点的属性信息下载所述多个分片。
在一种可能的实现方式中,所述目标信息还包括K个其他客户端的属性信息,所述处理单元具体用于:根据所述M个流媒体缓存节点和所述K个其他客户端的属性信息下载所述多个分片。
可选地,所述M、所述N和所述K均为正整数。
例如,M可以为100,N可以为10,K可以为300。
第五方面,本发明还提供一种流媒体调度装置,该装置包括:至少一个处理器,当所述至少一个处理器执行程序代码或指令时,实现上述第一方面或其任意可能的实现方式中所述的方法。
可选地,该电子设备还可以包括至少一个存储器,该至少一个存储器用于存储该程序代码或指令。
第六方面,本发明还提供一种芯片,包括:输入接口、输出接口、至少一个处理器。可选地,该芯片还包括存储器。该至少一个处理器用于执行该存储器中的代码,当该至少一个处理器执行该代码时,该芯片实现上述第一方面或其任意可能的实现方式中所述的方法。
可选地,上述芯片还可以为集成电路。
第七方面,本发明还提供一种计算机可读存储介质,用于存储计算机程序,该计算机程序包括用于实现上述第一方面或其任意可能的实现方式中所述的方法。
第八方面,本发明还提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机实现上述第一方面或其任意可能的实现方式中所述的方法。
本实施例提供的流媒体调度装置、计算机存储介质、计算机程序产品和芯片均用于执行上文所提供的流媒体调度方法,因此,其所能达到的有益效果可参考上文所提供的流媒体调度方法中的有益效果,此处不再赘述。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种通信系统的结构示意图;
图2为本发明实施例提供的一种流媒体调度方法的流程示意图;
图3为本发明实施例提供的一种设备间拓扑关系的示意图;
图4为本发明实施例提供的另一种流媒体调度方法的流程示意图;
图5为本发明实施例提供的一种装置的结构示意图;
图6为本发明实施例提供的另一种装置的结构示意图;
图7为本发明实施例提供的一种芯片的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
本发明的说明书以及附图中的术语“第一”和“第二”等是用于区别不同的对象,或者用于区别对同一对象的不同处理,而不是用于描述对象的特定顺序。
此外,本发明的描述中所提到的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选的还包括其他没有列出的步骤或单元,或可选的还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。
需要说明的是,本发明实施例的描述中,“示例性地”或者“例如”等词用于表示作例子、例证或说明。本发明实施例中被描述为“示例性地”或者“例如”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“示例性地”或者“例如”等词旨在以具体方式呈现相关概念。
在本发明的描述中,除非另有说明,“多个”的含义是指两个或两个以上。
在流媒体访问集中度较高的场景中(如大型发布会直播)大量流媒体客户端会同时获取流媒体的分片,由于CDN服务器可承载用户规模有限,大量流媒体客户端同时获取流媒体的分片会造成流媒体客户端播放流媒体内容出现卡顿掉帧等现象,十分影响用户体验。
为此,本发明实施例提供了一种流媒体调度方法,能够降低流媒体客户端播放流媒体内容时出现卡顿掉帧现象的概率。该流媒体调度方法可以应用于通信系统。
示例性地,图1是本发明实施例提供的一例通信系统100的结构示意图。通信系统可以包括流媒体服务端设备101、流媒体客户端设备102和边雾层流媒体分发设备103。
可以理解的是,本发明实施例示意的结构并不构成对通信系统100的具体限定。在本发明另一些实施例中,通信系统100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
流媒体服务端设备101可以为服务器、服务器集群或其他具有计算功能和通信功能的设备,本发明实施例对流媒体服务端设备101的具体类型不作任何限制。流媒体服务端设备101也可简称为流媒体服务端。
流媒体客户端设备102可以为手机、平板电脑、可穿戴设备、车载设备、增强现实(augmented reality,AR)/虚拟现实(virtual reality,VR)设备、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本、个人数字助理(personaldigital assistant,PDA)等电子设备上,本发明实施例对流媒体客户端设备102的具体类型不作任何限制。流媒体客户端设备102也可简称为客户端。
边雾层流媒体分发设备103可以为光猫、路由器、家庭网关、光线路终端(opticalline terminal,OLT)或其他具有计算功能和通信功能的设备,本发明实施例对边雾层流媒体分发设备103的具体类型不作任何限制,边雾层流媒体分发设备103可简称为流媒体缓存节点。
流媒体服务端设备101、流媒体客户端设备102和边雾层流媒体分发设备103之间可以通过通信技术进行通信。
在一种可能的实现方式中,流媒体服务端设备101、流媒体客户端设备102和边雾层流媒体分发设备103之间可以通过无线方式进行通信。
需要说明的是,上述无线方式可以通过通信网络实现通信,该通信网络可以是局域网,也可以是通过中继设备转接的广域网,或者包括局域网和广域网。当该通信网络为局域网时,示例性地,该通信网络可以是wifi热点网络、wifi P2P网络、蓝牙网络、zigbee网络、近场通信(near field communication,NFC)网或者未来可能的通用短距离通信网络、专用短距通信(dedicated short range communication,DSRC)网络等。当该通信网络为广域网时,示例性地,该通信网络可以是第三代移动通信技术(3rd-generation wirelesstelephone technology,3G)网络、第四代移动通信技术(the 4th generation mobilecommunication technology,4G)网络、第五代移动通信技术(5th-generation mobilecommunication technology,5G)网络、PLMN或因特网等,本发明实施例对此不做限定。
示例性地,通信系统100可以为组播网络、应用层组播网络或流媒体应用层组播网络。
下面结合附图对本发明实施例提供的流媒体调度方法进行详细说明,如图2所示,本发明实施例提供的流媒体调度方法包括:
S201、流媒体服务端接收客户端发送的针对一路流媒体的播放请求。
示例性地,用户想要通过手机收看视频公开课,用户则点击手机中流媒体软件开发工具包(software development kit,SDK)客户端的图标,启动流媒体SDK客户端展示流媒体SDK客户端的界面,之后点击该界面内的视频公开课页面,CDN服务器响应于用户的操作接收手机通过流媒体SDK客户端发送的针对视频公开课的播放请求。
S202、流媒体服务端从缓存有流媒体的分片的M个流媒体缓存节点中选择N个流媒体缓存节点。
其中,M大于N,在N为1的情况下,所选择的1个流媒体缓存节点缓存有所述流媒体的所有分片;在N大于1的情况下,所选择的N个流媒体缓存节点分别缓存有所述流媒体的部分分片。
示例性地,一个时长为60分钟的视频公开课可以切分为60个时长为1分钟的分片,这60个切片可以存储在流媒体服务端和100个流媒体缓存节点中。流媒体服务端接收客户端发送的针对该视频公开课的播放请求后,可以从缓存该视频公开课的分片的100个流媒体缓存节点中选择1个存储有这60个切片的流媒体缓存节点,然后生成包括这1个流媒体缓存节点的地址的流媒体播放列表。
又示例性地,一个时长为60分钟的视频公开课可以切分为60个时长为1分钟的分片,这60个切片可以存储在流媒体服务端和100个流媒体缓存节点中。流媒体服务端接收客户端发送的针对该视频公开课的播放请求后,可以从缓存该视频公开课的分片的100个流媒体缓存节点中选择10个流媒体缓存节点,然后生成包括这10个流媒体缓存节点的地址的流媒体播放列表。
在一种可能的实现方式中,所述流媒体服务端还可以确定缓存有所述流媒体的其他分片的K个其他客户端。
又示例性地,一个时长为60分钟的视频公开课可以切分为60个时长为1分钟的分片,这60个切片可以存储在流媒体服务端、100个流媒体缓存节点和300个客户端中。流媒体服务端接收客户端发送的针对该视频公开课的播放请求后,可以先从缓存该视频公开课的分片的100个流媒体缓存节点中选择10个流媒体缓存节点,之后从除发送请求外且缓存该视频公开课的分片的300个其他客户端中选择20个其他客户端,然后生成包括这10个流媒体缓存节点和20个其他客户端的地址的流媒体播放列表。
可以看出,流媒体服务端不仅可以指示客户端从流媒体缓存节点的地址获取流媒体的分片以播放流媒体,还可以指示客户端从其他客户端的地址获取流媒体的分片以播放流媒体,从而进一步避免发生大量客户端同时从流媒体服务端获取流媒体的分片造成流媒体客户端播放流媒体内容出现卡顿掉帧。
可选地,所述M、所述N和所述K均为正整数。例如,M可以为100,N可以为10,K可以为300。
在一种可能的实现方式中,流媒体服务端可以根据所述M个流媒体缓存节点的状态信息,从缓存有所述流媒体的分片的M个流媒体缓存节点中选择N个流媒体缓存节点,其中,所述状态信息包括负载信息、内存利用率、可用内存量、存储空间利用率、可用存储空间量、网络类型或流媒体分片存储信息中的至少一项。网络类型用于表示流媒体缓存节点的网络类型(如专网),流媒体分片存储信息用于表示流媒体缓存节点存储有哪些流媒体的分片。
可以看出,流媒体服务端在选择流媒体缓存节点可以根据流媒体缓存节点的状态信息选择状态较好的流媒体缓存节点,以使客户端从状态较好的流媒体缓存节点的地址获取流媒体的分片以播放流媒体,从而避免客户端从状态较差的流媒体缓存节点的地址获取流媒体的分片以播放流媒体而造成客户端播放流媒体内容出现卡顿掉帧。
在一种可能的实现方式中,流媒体服务端可以从缓存有所述流媒体的分片的M个流媒体缓存节点中,选择负载率最低的N个流媒体缓存节点。
其中,在N为1的情况下,所选择的1个流媒体缓存节点的负载率为M个流媒体缓存节点中最低,在N大于1的情况下,所选择的N个流媒体缓存节点中每一流媒体缓存节点的负载率在缓存有所述流媒体的部分分片的流媒体缓存节点中最低。
示例性地,一个时长为60分钟的视频公开课可以切分为60个时长为1分钟的分片,这60个切片,流媒体缓存节点A、流媒体缓存节点B、流媒体缓存节点C和流媒体缓存节点D均存储在有这60个切片。流媒体服务端接收客户端发送的针对该视频公开课的播放请求后,可以根据表1所示的流媒体缓存节点信息,从上述流媒体缓存节点选择负载最低的1个流媒体缓存节点(即流媒体缓存节点C),然后生成包括媒体缓存节点C的地址(即d.com:80)的流媒体播放列表。
表1
流媒体缓存节点 负载信息(负载率) 地址
流媒体缓存节点A 35% a.com:80
流媒体缓存节点B 65% b.com:80
流媒体缓存节点C 25% c.com:80
流媒体缓存节点D 50% d.com:80
又示例性地,一个时长为15分钟的视频发布会可以切分为3个时长为5分钟的分片。如表2所示,流媒体缓存节点A缓存有分片1,流媒体缓存节点B缓存有分片2,流媒体缓存节点C和流媒体缓存节点D缓存有分片3。流媒体服务端接收客户端发送的针对该视频发布会的播放请求后,可以根据表2所示的流媒体缓存节点信息,从上述流媒体缓存节点分别选择缓存有分片1的流媒体缓存节点中负载率最低的流媒体缓存节点、缓存有分片2的流媒体缓存节点中负载率最低的流媒体缓存节点和缓存有分片3的流媒体缓存节点中负载率最低的流媒体缓存节点(即流媒体缓存节点A、流媒体缓存节点B和流媒体缓存节点C),然后生成包括流媒体缓存节点A、流媒体缓存节点B和流媒体缓存节点C的地址(即a.com:80、b.com:80和c.com:80)的流媒体播放列表。
表2
流媒体缓存节点 负载信息(负载率) 缓存的分片 地址
流媒体缓存节点A 35% 分片1 a.com:80
流媒体缓存节点B 65% 分片2 b.com:80
流媒体缓存节点C 25% 分片3 c.com:80
流媒体缓存节点D 50% 分片3 d.com:80
可以理解的是,指示客户端从负载率最低的N个流媒体缓存节点的地址获取流媒体的分片以播放流媒体,可以避免客户端通过负载率较高的流媒体缓存节点获取流媒体的分片而导致流媒体客户端播放流媒体内容出现卡顿掉帧等现象发生,从而进一步提升了用户体验。
在一种可能的实现方式中,流媒体服务端可以根据所述M个流媒体缓存节点的状态信息和所述M个流媒体缓存节点的属性信息,从缓存有所述流媒体的分片的M个流媒体缓存节点中选择N个流媒体缓存节点。
可选地,上述属性信息包括节点间地址、属性参数信息或流媒体分片内容信息中的至少一项。其中,节点间地址可以包括IPv4及端口和IPv6及端口。属性参数信息可以包括NAT类型、运营商、网络类型、内存与磁盘可用空间。流媒体分片内容信息可以包括流媒体的分片的更新时间和节点的负载。
示例性地,一个时长为60分钟的视频公开课可以切分为60个时长为1分钟的分片,这60个切片可以存储在流媒体服务端和100个流媒体缓存节点中。流媒体服务端接收客户端发送的针对该视频公开课的播放请求后,可以先从缓存该视频公开课的分片的100个流媒体缓存节点中选择网络类型为专网的30个流媒体缓存节点,然后再从网络类型为专网的30个流媒体缓存节点选择负载率最低的10个流媒体缓存节点,然后生成包括这10个流媒体缓存节点的地址的流媒体播放列表。
又示例性地,一个时长为60分钟的视频公开课可以切分为60个时长为1分钟的分片,这60个切片可以存储在流媒体服务端和100个流媒体缓存节点中。流媒体服务端接收客户端发送的针对该视频公开课的播放请求后,可以先从缓存该视频公开课的分片的100个流媒体缓存节点中选择支持IPv6的70个流媒体缓存节点,然后再从支持IPv6的70个流媒体缓存节点选择负载率最低的20个流媒体缓存节点,然后生成包括这20个流媒体缓存节点的地址的流媒体播放列表。
可选地,上述N可以与流媒体的分片的数量相同。例如,视频公开课包括60个分片,则流媒体服务端需要从缓存该视频公开课的分片的M个流媒体缓存节点中选择60个流媒体缓存节点。
可以理解的是,在N与流媒体的分片的数量相同的情况下,客户端通过不同的流媒体缓存节点并行下载不同的分片,可以缩短客户端下载分片所需时间,从而进一步提升用户体验。例如,直播视频包括3个1MB大小的分片,如果客户端从同一个带宽为10Mbps的流媒体缓存节点同时下载这3个分片,需要的下载时间为2.4秒。而如果客户端从不同的3个带宽均为10Mbps的流媒体缓存节点分别下载1个分片,所需的下载时间仅为0.8秒,可以看出下载分片所需时间显著降低。
可选地,流媒体缓存节点可以采用分布式存储的方式存储流媒体的分片。例如,每个流媒体缓存节点或每个流媒体缓存节点集可以仅存储同一个流媒体内容的一个分片。流媒体缓存节点包括流媒体缓存节点A、流媒体缓存节点B和流媒体缓存节点C,流媒体内容1包括分片1、分片2和分片3。每个分片为1MB。如果每个流媒体缓存节点都存储流媒体内容1的所有分片所需的存储空间为3MB。而如果每个流媒体缓存节点仅存储流媒体内容1的一个分片所需的存储空间仅为1MB。例如,流媒体缓存节点A存储流媒体的分片1,流媒体缓存节点B存储流媒体的分片2,流媒体缓存节点C存储流媒体的分片3。
可选地,在S202之前,客户端和流媒体缓存节点可以向流媒体服务端发送节点注册请求完成注册,上述从缓存有所述流媒体的分片的M个流媒体缓存节点中选择N个流媒体缓存节点,可以包括:从已注册且缓存有所述流媒体的分片的L个流媒体缓存节点中选择N个流媒体缓存节点。
可以理解的是,流媒体网络(组播网络、应用层组播网络或流媒体应用层组播网络)中可能存在多个流媒体客户端设备,流媒体客户端设备在流媒体服务端设备中注册后,流媒体客户端设备之间也可以互相传输流媒体的分片,从而降低了流媒体服务器设备和边雾层流媒体分发设备的负载,进一步提升了用户体验。
S203、流媒体服务端向客户端发送流媒体播放列表。
其中,流媒体播放列表包括上述N个流媒体缓存节点的地址,所述流媒体播放列表用于指示所述客户端从上述N个流媒体缓存节点的地址获取所述流媒体的分片以播放所述流媒体。
可以看出,在本发明提供的方法中,流媒体服务端在收到客户端发送的针对一路流媒体的播放请求后,不再直接指示客户端从流媒体服务端的地址获取流媒体的分片,而是会先从缓存有该流媒体的分片的M个流媒体缓存节点中选择N个流媒体缓存节点,然后向客户端发送流媒体播放列表指示客户端从N个流媒体缓存节点的地址获取流媒体的分片以播放流媒体。从而避免发生大量客户端同时从流媒体服务端获取流媒体的分片造成流媒体客户端播放流媒体内容出现卡顿掉帧并且流媒体服务端选择流媒体缓存节点的过程中,流媒体服务端与客户端之间无需交互额外的信令,使得客户端无感,由此提升了用户体验。
在一种可能的实现方式中,所述流媒体播放列表还可以包括所述K个其他客户端的地址,则所述流媒体播放列表用于指示所述客户端从N个流媒体缓存节点的地址和K个其他客户端的地址获取所述流媒体的全部分片以播放所述流媒体。
在N个流媒体缓存节点缓存有所述流媒体的所有分片的情况下,所述流媒体播放列表用于指示所述客户端从所述N个流媒体缓存节点的地址获取所述流媒体的全部分片以播放所述流媒体。
可选地,流媒体播放列表还可以包括分片数量、分片最大时长与实际时长、分片文件名与地址等。流媒体播放列表可以采用多种类型的文件格式。例如,流媒体播放列表可以为包含元数据的扩展运动图像专家组音频层3统一资源定位器(moving picture expertsgroup audio layer 3uniform resource locator,M3U)文件或统一码转换格式(unicodetransformation format,UTF)-8编码格式的M3U文件即m3u8文件。
示例性地,一个时长为30分钟的视频公开课可以切分为3个时长为10分钟的分片(即分片1、分片2和分片3)。如图3所示,流媒体服务端向客户端发送视频公开课播放列表,该视频播放列表用于指示客户端从流媒体缓存节点A的地址http://a.com:80获取分片1,从流媒体缓存节点B的地址http://b.com:80获取分片2和从流媒体缓存节点C的地址http://c.com:80获取分片3。
在一种可能的实现方式中,流媒体服务端也可以向客户端发送M个流媒体缓存节点的属性信息。客户端在收到该M个流媒体缓存节点的属性信息后,可以根据所述M个流媒体缓存节点的属性信息下载流媒体的多个分片。
示例性地,流媒体服务端可以向客户端发送100个流媒体缓存节点的属性信息,客户端在收到该100个流媒体缓存节点的属性信息后,可以先根据属性信息确定每个流媒体缓存节点的地址,然后通过流媒体缓存节点的地址测试客户端与每个流媒体缓存节点之间的网络延时,然后根据与客户端之间网络延时最低的流媒体缓存节点的地址下载流媒体的多个分片,
在另一种可能的实现方式中,流媒体服务端也可以向客户端发送M个流媒体缓存节点和K个其他客户端的属性信息。客户端在收到该M个流媒体缓存节点和K个其他客户端的属性信息后,可以根据所述M个流媒体缓存节点和K个其他客户端的属性信息下载流媒体的多个分片。
在又一种可能的实现方式中,流媒体服务端也可以向客户端发送流媒体播放列表和M个流媒体缓存节点的属性信息。客户端在收到流媒体播放列表和该M个流媒体缓存节点的属性信息后,可以根据流媒体播放列表和M个流媒体缓存节点的属性信息下载流媒体的多个分片。
示例性地,流媒体服务端向客户端发送目标信息,目标信息包括媒体播放列表和M个流媒体缓存节点的属性信息,客户端在收到目标信息后,可以根据所述流媒体播放列表
获取所述客户端与所述N个流媒体缓存节点之间的时延;然后在所述客户端与所述N个
流媒体缓存节点中的任一流媒体缓存节点之间的时延大于时延阈值的情况下,根据所述M个流媒体缓存节点的属性信息下载所述多个分片。
下面结合图4对本发明实施例提供的流媒体调度方法中流媒体服务端、客户端和流媒体缓存节点之间的通信交互进行详细阐述,流媒体服务端、客户端和流媒体缓存节点之间的通信交互之间的通信交互具体包括如下步骤。
S401、客户端向流媒体服务端发送的针对一路流媒体的播放请求。相应地,流媒体服务端接收发送的针对一路流媒体的播放请求。
示例性地,用户想要通过手机收看视频公开课,用户则点击手机中流媒体客户端的图标,启动流媒体客户端展示流媒体客户端的界面,之后点击该界面内的视频公开课页面,CDN服务器相应于用户的操作接收手机通过流媒体SDK客户端发送的针对视频公开课的播放请求。
S402、流媒体服务端从缓存有流媒体的分片的M个流媒体缓存节点中选择N个流媒体缓存节点。
其中,M大于N,在N为1的情况下,所选择的1个流媒体缓存节点缓存有所述流媒体的所有分片,在N大于1的情况下,所选择的N个流媒体缓存节点分别缓存有所述流媒体的部分分片。
S403、流媒体服务端向客户端发送流媒体播放列表。
其中,所述流媒体播放列表包括所述N个流媒体缓存节点的地址,所述流媒体播放列表用于指示所述客户端从所述N个流媒体缓存节点的地址获取所述流媒体的分片以播放所述流媒体。
S404、客户端解析流媒体播放列表得到N个流媒体缓存节点的地址。
示例性地,客户端解析视频公开课播放列表得到流媒体缓存节点A的地址http://a.com:80、流媒体缓存节点B的地址http://b.com:80和流媒体缓存节点C的地址http://c.com:80。
S405、客户端向N个流媒体缓存节点请求流媒体的分片。
示例性地,客户端根据流媒体缓存节点A的地址http://a.com:80向流媒体缓存节点A请求视频公开课的分片1,根据流媒体缓存节点B的地址http://b.com:80向流媒体缓存节点B请求视频公开课的分片2,根据流媒体缓存节点C的地址http://c.com:80向流媒体缓存节点C请求视频公开课的分片3。
S406、流媒体缓存节点向客户端发送流媒体的分片。相应地,客户端接收流媒体的分片。
示例性地,流媒体缓存节点向客户端发送视频公开课的分片1,流媒体缓存节点B向客户端发送视频公开课的分片2,流媒体缓存节点C向客户端发送视频公开课的分片3。客户端接收视频公开课的分片1、视频公开课的分片2和视频公开课的分片3。
S407、客户端根据流媒体的分片播放流媒体。
示例性地,客户端根据视频公开课的分片1、视频公开课的分片2和视频公开课的分片3播放视频公开课。
下面将结合图5和图6介绍用于执行上述流媒体调度方法的电子设备。
可以理解的是,电子设备为了实现上述功能,其包含了执行各个功能相应的硬件和/或软件模块。结合本文中所公开的实施例描述的各示例的算法步骤,本发明能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以结合实施例对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
本发明实施例可以根据上述方法示例对电子设备进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块可以采用硬件的形式实现。需要说明的是,本实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
在采用对应各个功能划分各个功能模块的情况下,图5示出了上述实施例中涉及的电子设备的一种可能的组成示意图,如图5所示,该装置500可以包括:收发单元501和处理单元502,该处理单元502可以实现上述方法实施例中由电子设备所执行的方法,和/或用于本文所描述的技术的其他过程。
需要说明的是,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。
在采用集成的单元的情况下,装置500可以包括处理单元、存储单元和通信单元。其中,处理单元可以用于对装置500的动作进行控制管理,例如,可以用于支持装置500执行上述各个单元执行的步骤。存储单元可以用于支持装置500执行存储程序代码、和/或数据等。通信单元可以用于支持装置500与其他设备的通信。
其中,处理单元可以是处理器或控制器。其可以实现或执行结合本发明公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,数字信号处理(digital signal processing,DSP)和微处理器的组合等等。存储单元可以是存储器。通信单元具体可以为射频电路、蓝牙芯片、Wi-Fi芯片等与其他电子设备交互的设备。
在一种可能的实现方式中,本发明实施例所涉及的电子设备可以为具有图6所示结构的装置600,该装置600包括处理器601和收发器602。图5中的收发单元501和处理单元502所实现的相关功能可以由处理器601来实现。
可选地,该装置600还可以包括存储器603,该处理器601和该存储器603通过内部连接通路互相通信。图5中的存储单元所实现的相关功能可以由存储器603来实现。
本发明实施例还提供一种计算机存储介质,该计算机存储介质中存储有计算机指令,当该计算机指令在电子设备上运行时,使得电子设备执行上述相关方法步骤实现上述实施例中的流媒体调度方法。
本发明实施例还提供了一种计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行上述相关步骤,以实现上述实施例中的流媒体调度方法。
本发明实施例还提供一种电子设备,这个装置具体可以是芯片、集成电路、组件或模块。具体的,该装置可包括相连的处理器和用于存储指令的存储器,或者该装置包括至少一个处理器,用于从外部存储器获取指令。当装置运行时,处理器可执行指令,以使芯片执行上述各方法实施例中的流媒体调度方法。
图7示出了一种芯片700的结构示意图。芯片700包括一个或多个处理器701以及接口电路702。可选的,上述芯片700还可以包含总线703。
处理器701可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述流媒体调度方法的各步骤可以通过处理器701中的硬件的集成逻辑电路或者软件形式的指令完成。
可选地,上述的处理器701可以是通用处理器、数字信号处理(digital signalproces sing,DSP)器、集成电路(application specific integrated circuit,ASIC)、现场可编程门阵列(field-programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
接口电路702可以用于数据、指令或者信息的发送或者接收,处理器701可以利用接口电路702接收的数据、指令或者其他信息,进行加工,可以将加工完成信息通过接口电路702发送出去。
可选的,芯片还包括存储器,存储器可以包括只读存储器和随机存取存储器,并向处理器提供操作指令和数据。存储器的一部分还可以包括非易失性随机存取存储器(non-vo latile random access memory,NVRAM)。
可选的,存储器存储了可执行软件模块或者数据结构,处理器可以通过调用存储器存储的操作指令(该操作指令可存储在操作系统中),执行相应的操作。
可选的,芯片可以使用在本发明实施例涉及的电子设备或DOP中。可选的,接口电路702可用于输出处理器701的执行结果。关于本发明的一个或多个实施例提供的流媒体调度方法可参考前述各个实施例,这里不再赘述。
需要说明的,处理器701、接口电路702各自对应的功能既可以通过硬件设计实现,也可以通过软件设计来实现,还可以通过软硬件结合的方式来实现,这里不作限制。
其中,本实施例提供的装置、计算机存储介质、计算机程序产品或芯片均用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。
应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其他的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其他的形式。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
上述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例上述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

Claims (27)

1.一种流媒体调度方法,其特征在于,包括:
流媒体服务端接收客户端发送的针对一路流媒体的播放请求;
所述流媒体服务端从缓存有所述流媒体的分片的M个流媒体缓存节点中选择N个流媒体缓存节点,其中,M大于N,在N为1的情况下,所选择的1个流媒体缓存节点缓存有所述流媒体的所有分片,在N大于1的情况下,所选择的N个流媒体缓存节点分别缓存有所述流媒体的部分分片;
所述流媒体服务端向所述客户端发送流媒体播放列表,其中,所述流媒体播放列表包括所述N个流媒体缓存节点的地址,所述流媒体播放列表用于指示所述客户端从所述N个流媒体缓存节点的地址获取所述流媒体的分片以播放所述流媒体。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述流媒体服务端确定缓存有所述流媒体的其他分片的K个其他客户端,则所述流媒体播放列表还包括所述K个其他客户端的地址,所述流媒体播放列表用于指示所述客户端从所述N个流媒体缓存节点的地址和所述K个其他客户端的地址获取所述流媒体的全部分片以播放所述流媒体。
3.根据权利要求1所述的方法,其特征在于,所述N个流媒体缓存节点缓存有所述流媒体的所有分片,所述流媒体播放列表用于指示所述客户端从所述N个流媒体缓存节点的地址获取所述流媒体的全部分片以播放所述流媒体。
4.根据权利要求2所述的方法,其特征在于,所述M、所述N和所述K均为正整数。
5.根据权利要求1至4中任一项所述的方法,其特征在于,所述从缓存有所述流媒体的分片的M个流媒体缓存节点中选择N个流媒体缓存节点,包括:
根据所述M个流媒体缓存节点的状态信息,从缓存有所述流媒体的分片的M个流媒体缓存节点中选择N个流媒体缓存节点,其中,所述状态信息包括负载信息、内存利用率、可用内存量、存储空间利用率、可用存储空间量、网络类型或流媒体分片存储信息中的至少一项。
6.根据权利要求1至4中任一项所述的方法,其特征在于,所述从缓存有所述流媒体的分片的M个流媒体缓存节点中选择N个流媒体缓存节点,包括:
从缓存有所述流媒体的分片的M个流媒体缓存节点中,选择负载率最低的N个流媒体缓存节点,其中,在N为1的情况下,所选择的1个流媒体缓存节点的负载率为M个流媒体缓存节点中最低,在N大于1的情况下,所选择的N个流媒体缓存节点中每一流媒体缓存节点的负载率在缓存有所述流媒体的部分分片的流媒体缓存节点中最低。
7.根据权利要求1至4中任一项所述的方法,其特征在于,所述从缓存有所述流媒体的分片的M个流媒体缓存节点中选择N个流媒体缓存节点,包括:
根据所述M个流媒体缓存节点的状态信息和所述M个流媒体缓存节点的属性信息,从缓存有所述流媒体的分片的M个流媒体缓存节点中选择N个流媒体缓存节点,其中,所述状态信息包括负载信息、内存利用率、可用内存量、存储空间利用率、可用存储空间量、网络类型或流媒体分片存储信息中的至少一项,所述属性信息包括节点间地址、属性参数信息或流媒体分片内容信息中的至少一项。
8.一种流媒体调度方法,其特征在于,包括:
客户端接收流媒体服务端发送的目标信息,所述目标信息包括M个流媒体缓存节点的属性信息,所述属性信息包括节点间地址、属性参数信息或流媒体分片内容信息中的至少一项;
所述客户端根据所述M个流媒体缓存节点的属性信息下载流媒体的多个分片。
9.根据权利要求8所述的方法,其特征在于,所述目标信息还包括流媒体播放列表,所述根据所述M个流媒体缓存节点的属性信息下载流媒体的多个分片,包括:
根据所述流媒体播放列表和所述M个流媒体缓存节点的属性信息下载所述多个分片,其中,所述流媒体播放列表包括所述N个流媒体缓存节点的地址,所述流媒体播放列表用于指示所述客户端从所述N个流媒体缓存节点的地址获取所述流媒体的分片以播放所述流媒体。
10.根据权利要求9所述的方法,其特征在于,所述根据所述流媒体播放列表和所述M个流媒体缓存节点的属性信息下载所述多个分片,包括:
根据所述流媒体播放列表获取所述客户端与所述N个流媒体缓存节点之间的时延;
在所述客户端与所述N个流媒体缓存节点中的任一流媒体缓存节点之间的时延大于时延阈值的情况下,根据所述M个流媒体缓存节点的属性信息下载所述多个分片。
11.根据权利要求8至10中任一项所述的方法,其特征在于,所述目标信息还包括K个其他客户端的属性信息,所述根据所述M个流媒体缓存节点的属性信息下载多个流媒体分片,包括:
根据所述M个流媒体缓存节点和所述K个其他客户端的属性信息下载所述多个分片。
12.根据权利要求11所述的方法,其特征在于,所述M、所述N和所述K均为正整数。
13.一种流媒体调度装置,其特征在于,所述装置包括处理单元,所述处理单元用于:
接收客户端发送的针对一路流媒体的播放请求;
从缓存有所述流媒体的分片的M个流媒体缓存节点中选择N个流媒体缓存节点,其中,M大于N,在N为1的情况下,所选择的1个流媒体缓存节点缓存有所述流媒体的所有分片,在N大于1的情况下,所选择的N个流媒体缓存节点分别缓存有所述流媒体的部分分片;
向所述客户端发送流媒体播放列表,其中,所述流媒体播放列表包括所述N个流媒体缓存节点的地址,所述流媒体播放列表用于指示所述客户端从所述N个流媒体缓存节点的地址获取所述流媒体的分片以播放所述流媒体。
14.根据权利要求13所述的装置,其特征在于,所述处理单元还用于:
确定缓存有所述流媒体的其他分片的K个其他客户端,则所述流媒体播放列表还包括所述K个其他客户端的地址,所述流媒体播放列表用于指示所述客户端从所述N个流媒体缓存节点的地址和所述K个其他客户端的地址获取所述流媒体的全部分片以播放所述流媒体。
15.根据权利要求13所述的装置,其特征在于,所述N个流媒体缓存节点缓存有所述流媒体的所有分片,所述流媒体播放列表用于指示所述客户端从所述N个流媒体缓存节点的地址获取所述流媒体的全部分片以播放所述流媒体。
16.根据权利要求14所述的装置,其特征在于,所述M、所述N和所述K均为正整数。
17.根据权利要求13至16中任一项所述的装置,其特征在于,所述处理单元具体用于:
根据所述M个流媒体缓存节点的状态信息,从缓存有所述流媒体的分片的M个流媒体缓存节点中选择N个流媒体缓存节点,其中,所述状态信息包括负载信息、内存利用率、可用内存量、存储空间利用率、可用存储空间量、网络类型或流媒体分片存储信息中的至少一项。
18.根据权利要求13至16中任一项所述的装置,其特征在于,所述处理单元具体用于:
从缓存有所述流媒体的分片的M个流媒体缓存节点中,选择负载率最低的N个流媒体缓存节点,其中,在N为1的情况下,所选择的1个流媒体缓存节点的负载率为M个流媒体缓存节点中最低,在N大于1的情况下,所选择的N个流媒体缓存节点中每一流媒体缓存节点的负载率在缓存有所述流媒体的部分分片的流媒体缓存节点中最低。
19.根据权利要求13至16中任一项所述的装置,其特征在于,所述处理单元具体用于:
根据所述M个流媒体缓存节点的状态信息和所述M个流媒体缓存节点的属性信息,从缓存有所述流媒体的分片的M个流媒体缓存节点中选择N个流媒体缓存节点,其中,所述状态信息包括负载信息、内存利用率、可用内存量、存储空间利用率、可用存储空间量、网络类型或流媒体分片存储信息中的至少一项,所述属性信息包括节点间地址、属性参数信息或流媒体分片内容信息中的至少一项。
20.一种流媒体调度装置,其特征在于,所述装置包括处理单元,所述处理单元用于:
接收流媒体服务端发送的目标信息,所述目标信息包括M个流媒体缓存节点的属性信息,所述属性信息包括节点间地址、属性参数信息或流媒体分片内容信息中的至少一项;
根据所述M个流媒体缓存节点的属性信息下载流媒体的多个分片。
21.根据权利要求20所述的装置,其特征在于,所述目标信息还包括流媒体播放列表,所述处理单元具体用于:
根据所述流媒体播放列表和所述M个流媒体缓存节点的属性信息下载所述多个分片,其中,所述流媒体播放列表包括所述N个流媒体缓存节点的地址,所述流媒体播放列表用于指示所述客户端从所述N个流媒体缓存节点的地址获取所述流媒体的分片以播放所述流媒体。
22.根据权利要求21所述的装置,其特征在于,所述处理单元具体用于:
根据所述流媒体播放列表获取所述客户端与所述N个流媒体缓存节点之间的时延;
在所述客户端与所述N个流媒体缓存节点中的任一流媒体缓存节点之间的时延大于时延阈值的情况下,根据所述M个流媒体缓存节点的属性信息下载所述多个分片。
23.根据权利要求20至22中任一项所述的装置,其特征在于,所述目标信息还包括K个其他客户端的属性信息,所述处理单元具体用于:
根据所述M个流媒体缓存节点和所述K个其他客户端的属性信息下载所述多个分片。
24.根据权利要求23所述的装置,其特征在于,所述M、所述N和所述K均为正整数。
25.一种流媒体调度装置,包括至少一个处理器和接口电路,所述至少一个处理器和所述接口电路耦合,其特征在于,所述至少一个处理器执行存储在存储器中的程序或指令,以使得所述流媒体调度装置实现权利要求1至7中任一项或8至12中任一项所述的方法。
26.一种计算机可读存储介质,用于存储计算机程序,其特征在于,所述计算机程序包括用于实现上述权利要1至7中任一项或8至12中任一项所述的方法的指令。
27.一种计算机程序产品,所述计算机程序产品中包含指令,其特征在于,当所述指令在计算机或处理器上运行时,使得所述计算机或所述处理器实现上述权利要求1至7中任一项或8至12中任一项所述的方法。
CN202111333353.XA 2021-11-11 2021-11-11 流媒体调度方法、装置及可读存储介质 Pending CN116112474A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202111333353.XA CN116112474A (zh) 2021-11-11 2021-11-11 流媒体调度方法、装置及可读存储介质
PCT/CN2022/093466 WO2023082587A1 (zh) 2021-11-11 2022-05-18 流媒体调度方法、装置及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111333353.XA CN116112474A (zh) 2021-11-11 2021-11-11 流媒体调度方法、装置及可读存储介质

Publications (1)

Publication Number Publication Date
CN116112474A true CN116112474A (zh) 2023-05-12

Family

ID=86254884

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111333353.XA Pending CN116112474A (zh) 2021-11-11 2021-11-11 流媒体调度方法、装置及可读存储介质

Country Status (2)

Country Link
CN (1) CN116112474A (zh)
WO (1) WO2023082587A1 (zh)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101141627A (zh) * 2007-10-23 2008-03-12 深圳市迅雷网络技术有限公司 一种流媒体文件的存储系统及方法
CN102131114B (zh) * 2010-11-17 2013-04-24 华为技术有限公司 一种播放列表提供方法及系统
CN103685263A (zh) * 2013-12-06 2014-03-26 乐视致新电子科技(天津)有限公司 轮播媒体资源的方法、服务器及系统
CN104168516A (zh) * 2014-09-01 2014-11-26 上海下一代广播电视网应用实验室有限公司 一种在流媒体直播平台上实现电视回看系统和方法
US20170187986A1 (en) * 2015-12-23 2017-06-29 Le Holdings (Beijing) Co., Ltd. Live streaming media method, publish side live, server and terminal
CN111193942B (zh) * 2018-03-22 2022-08-02 贵州白山云科技股份有限公司 一种流媒体回播方法及装置

Also Published As

Publication number Publication date
WO2023082587A1 (zh) 2023-05-19

Similar Documents

Publication Publication Date Title
CN109640348B (zh) 多业务mec网络架构、多业务数据流的处理方法及装置
EP3550892B1 (en) Method for network slice selection, user equipment, and network device
CN110881207B (zh) 一种网络切片选择方法及相关产品
US8972519B2 (en) Optimization of multimedia service over an IMS network
CN108259542B (zh) 资源的传输方法和装置
CN110336885B (zh) 边缘节点分配方法、装置、调度服务器及存储介质
CN110933517B (zh) 码率切换方法、客户端和计算机可读存储介质
CN108063769B (zh) 一种内容服务的实现方法、装置及内容分发网络节点
CN102238226A (zh) 在以内容为中心的网络上的会话迁移
JP6487416B2 (ja) 動的コンテンツオフローディングのための方法及び装置
CN111541711B (zh) 基于边缘计算的直播数据混流方法和装置
CN108668179A (zh) 媒体索引文件的传输方法及相关设备
CN110996372B (zh) 消息路由方法、装置、系统及电子设备
CN114064275A (zh) 数据处理方法及装置
CN106921634A (zh) 多媒体流组播方法和装置
CN110958279A (zh) 一种数据处理方法及其装置
CN106330504B (zh) 一种实现应用的方法及业务控制器
JP6538061B2 (ja) クライアント端末にマルチメディアコンテンツのコンテンツ部分を提供する方法及び対応するキャッシュ
CN116112474A (zh) 流媒体调度方法、装置及可读存储介质
CN115314730A (zh) 应用于虚拟现实vr场景的视频流传输方法及装置
US9860171B2 (en) Large scale message routing in a distributed network
CN111586434B (zh) 基于边缘设备的负载均衡的方法及分布式混屏服务器
CN110677489B (zh) 媒体资源处理方法、装置、系统及存储介质
CN115412777A (zh) 流媒体数据的传输方法及装置、系统
CN114979243A (zh) 一种提供云终端服务的方法和装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication