CN110996114A - 一种直播调度方法、装置、电子设备和存储介质 - Google Patents

一种直播调度方法、装置、电子设备和存储介质 Download PDF

Info

Publication number
CN110996114A
CN110996114A CN201911282697.5A CN201911282697A CN110996114A CN 110996114 A CN110996114 A CN 110996114A CN 201911282697 A CN201911282697 A CN 201911282697A CN 110996114 A CN110996114 A CN 110996114A
Authority
CN
China
Prior art keywords
anchor
stuck
server
devices
scheduling
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.)
Granted
Application number
CN201911282697.5A
Other languages
English (en)
Other versions
CN110996114B (zh
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.)
Reach Best Technology Co Ltd
Beijing Dajia Internet Information Technology Co Ltd
Original Assignee
Reach Best Technology 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 Reach Best Technology Co Ltd filed Critical Reach Best Technology Co Ltd
Priority to CN201911282697.5A priority Critical patent/CN110996114B/zh
Publication of CN110996114A publication Critical patent/CN110996114A/zh
Application granted granted Critical
Publication of CN110996114B publication Critical patent/CN110996114B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/41Higher-level, semantic clustering, classification or understanding of video scenes, e.g. detection, labelling or Markovian modelling of sport events or news items
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本公开关于一种直播调度方法、装置、电子设备和存储介质,涉及直播领域,该方法包括:接收多个主播设备发送的服务器调度请求;根据多个主播设备的直播环境信息将多个主播设备聚类得到一个或多个聚类集合;根据每个聚类集合的卡顿率期望集和卡顿影响参数集确定目标调度方式;其中,目标调度方式用于指示在多个主播设备引起的观众设备的卡顿率的和满足预设条件的情况下,多个主播设备被分别调度的服务器。根据目标调度方式向每个主播设备指示每个主播设备被调度的服务器,以使每个主播设备向被调度的服务器发送直播视频流。本公开可以降低主播设备卡顿对观众设备造成的影响。

Description

一种直播调度方法、装置、电子设备和存储介质
技术领域
本公开涉及视频直播技术领域,尤其涉及一种直播调度方法、装置、电子设备和存储介质。
背景技术
随着移动设备的功能不断增强,移动设备的娱乐功能也越来越多样化。其中,网络直播由于其直观、内容丰富、受众可划分等特点,成为用户欢迎和喜欢的一种娱乐方式。
相关技术中,主播设备可以基于实时消息传输协议(Real Time MessagingProtocol,RTMP)将直播视频流实时发送到服务器,服务器可以这些直播视频流转码成多种质量版本,并分发给观众设备。
其中主播设备作为视频源,若其在直播流上传时发生一次卡顿,那么必然会导致同一时间内观众设备的大规模卡顿,因此如何降低主播设备卡顿对观众设备造成的影响成为一个亟待解决的问题。
发明内容
本公开提供一种直播调度方法、装置、电子设备和存储介质,可以降低相关技术中主播设备卡顿对观众设备造成的影响。本公开的技术方案如下:
根据本公开实施例的第一方面,提供一种直播调度方法,包括:接收多个主播设备发送的服务器调度请求;根据多个主播设备的直播环境信息将多个主播设备聚类得到一个或多个聚类集合;根据每个聚类集合的卡顿率期望集和卡顿影响参数集确定目标调度方式;其中,目标调度方式用于指示在多个主播设备引起的观众设备的卡顿率的和满足预设条件的情况下,多个主播设备被分别调度的服务器;卡顿率期望集中的每个卡顿率期望用于表征一个主播设备被调度到一个服务器的卡顿率;卡顿影响参数集中的每个卡顿影响参数用于表征一个主播设备在卡顿的情况下引起的卡顿的观众设备的数量;根据目标调度方式向每个主播设备指示每个主播设备被调度的服务器,以使每个主播设备向被调度的服务器发送直播视频流。
在一种可能的实现方式中,卡顿影响参数包括视频播放量或在线观众数量中的至少一个。
在一种可能的实现方式中,直播环境信息包括主播设备所属的网络运营商、地理位置或网络类型中的至少一种。
在一种可能的实现方式中,多个主播设备引起的观众设备的卡顿率的和满足预设条件包括:多个主播设备引起的观众设备的卡顿率的和达到最小值或小于等于第一阈值。
在一种可能的实现方式中,当预设条件为多个主播设备引起的观众设备的卡顿率的和达到最小值时,根据每个聚类集合的卡顿率期望集和卡顿影响参数集确定目标调度方式,包括:将每个聚类集合的卡顿率期望集和卡顿影响参数集作为预设调度优化模型的输入参数,基于预设调度优化模型获得目标调度方式,其中,预设调度优化模型满足如下公式:
Figure BDA0002317194670000021
其中,
Figure BDA0002317194670000022
其中,Q_total表示每个主播设备引起的观众设备的卡顿率的和;A表示多个主播设备;Ai表示多个聚类集合中的一个聚类集合,Ai∈A;a表示一个主播设备,a∈Ai;N表示多个服务器;n表示一个服务器,n∈N;X(a,n)表示a是否被调度到n,X(a,n)∈[0,1];P(Ai,n)表示Ai中的任一个主播设备被调度到n的卡顿率期望;|Ua|表示a的卡顿影响参数;B表示服务器的数量,Wn表示n能够服务的主播设备的数量。
在一种可能的实现方式中,将每个聚类集合的卡顿率期望集和卡顿影响参数集作为预设调度优化模型的输入参数,基于预设调度优化模型获得目标调度方式之前,方法还包括:在预设的一个或多个时间间隔中的每个时间间隔内,对于每个聚类集合,将每个聚类集合中卡顿影响参数小于第二阈值的主播设备均匀调度到多个服务器上;根据调度到多个服务器中每个主播设备的卡顿率的平均值确定每个聚类集合相对于每个服务器的卡顿率期望。
在一种可能的实现方式中,将每个聚类集合的卡顿率期望集和卡顿影响参数集作为预设调度优化模型的输入参数,基于预设调度优化模型获得目标调度方式,包括:在每个时间间隔内,对于每个聚类集合,从每个聚类集合中选取卡顿影响参数大于或等于第二阈值的主播设备;确定将选取的主播设备按照卡顿影响参数从大到小的顺序依次调度到卡顿率期望从小到大的多个服务器上。
在一种可能的实现方式中,确定将选取的主播设备按照卡顿影响参数从大到小的顺序依次调度到卡顿率期望从小到大的多个服务器,包括:确定将目标主播设备调度到目标服务器上;其中,目标主播设备是未被调度的主播设备中卡顿影响参数最大的主播设备,目标服务器是不超过预设服务能力的服务器中卡顿率期望最小的服务器。
根据本公开实施例的第二方面,提供一种直播调度装置,包括:接收模块,被配置为执行接收多个主播设备发送的服务器调度请求;聚类模块,被配置为执行根据多个主播设备的直播环境信息将多个主播设备聚类得到一个或多个聚类集合;确定模块,被配置为执行根据每个聚类集合的卡顿率期望集和卡顿影响参数集确定目标调度方式;其中,目标调度方式用于指示在多个主播设备引起的观众设备的卡顿率的和满足预设条件的情况下,多个主播设备被分别调度的服务器;卡顿率期望集中的每个卡顿率期望用于表征一个主播设备被调度到一个服务器的卡顿率;卡顿影响参数集中的每个卡顿影响参数用于表征一个主播设备在卡顿的情况下引起的卡顿的观众设备的数量;指示模块,被配置为执行根据目标调度方式向每个主播设备指示每个主播设备被调度的服务器,以使每个主播设备向被调度的服务器发送直播视频流。
在一种可能的实现方式中,卡顿影响参数包括视频播放量或在线观众数量中的至少一个。
在一种可能的实现方式中,直播环境信息包括主播设备所属的网络运营商、地理位置或网络类型中的至少一种。
在一种可能的实现方式中,多个主播设备引起的观众设备的卡顿率的和满足预设条件包括:多个主播设备引起的观众设备的卡顿率的和达到最小值或小于等于第一阈值。
在一种可能的实现方式中,当预设条件为多个主播设备引起的观众设备的卡顿率的和达到最小值时,确定模块被配置为执行:将每个聚类集合的卡顿率期望集和卡顿影响参数集作为预设调度优化模型的输入参数,基于预设调度优化模型获得目标调度方式,其中,预设调度优化模型满足如下公式:
Figure BDA0002317194670000031
其中,
Figure BDA0002317194670000032
其中,Q_total表示每个主播设备引起的观众设备的卡顿率的和;A表示多个主播设备;Ai表示多个聚类集合中的一个聚类集合,Ai∈A;a表示一个主播设备,a∈Ai;N表示多个服务器;n表示一个服务器,n∈N;X(a,n)表示a是否被调度到n,X(a,n)∈[0,1];P(Ai,n)表示Ai中的任一个主播设备被调度到n的卡顿率期望;|Ua|表示a的卡顿影响参数;B表示服务器的数量,Wn表示n能够服务的主播设备的数量。
在一种可能的实现方式中,还包括调度模块,被配置为执行在预设的一个或多个时间间隔中的每个时间间隔内,对于每个聚类集合,将每个聚类集合中卡顿影响参数小于第二阈值的主播设备均匀调度到多个服务器上;确定模块,还被配置为执行根据调度到多个服务器中每个主播设备的卡顿率的平均值确定每个聚类集合相对于每个服务器的卡顿率期望。
在一种可能的实现方式中,确定模块,被配置为执行在每个时间间隔内,对于每个聚类集合,从每个聚类集合中选取卡顿影响参数大于或等于第二阈值的主播设备;确定将选取的主播设备按照卡顿影响参数从大到小的顺序依次调度到卡顿率期望从小到大的多个服务器上。
在一种可能的实现方式中,确定模块,被配置为执行:确定将目标主播设备调度到目标服务器上;其中,目标主播设备是未被调度的主播设备中卡顿影响参数最大的主播设备,目标服务器是不超过预设服务能力的服务器中卡顿率期望最小的服务器。
根据本公开实施例的第三方面,提供一种电子设备,电子设备包括处理器和存储器;存储器和处理器耦合;存储器用于存储计算机程序代码,计算机程序代码包括计算机指令,当处理器执行计算机指令时,电子设备执行上述第一方面及其任一种可能的实施方式的直播调度方法。
根据本公开实施例的第四方面,提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机指令,当计算机指令在电子设备上运行时,使得电子设备执行如第一方面及其任一种可能的实施方式的直播调度方法。
根据本公开实施例的第五方面,提供一种计算机程序产品,包括一条或多条指令,该一条或多条指令可以在计算机上运行,使得计算机执行如第一方面及其任一种可能的实施方式的直播调度方法。
本公开的实施例提供的技术方案至少带来以下有益效果:接收多个主播设备发送的服务器调度请求;根据多个主播设备的直播环境信息将多个主播设备聚类得到一个或多个聚类集合。这样,每个聚类集合中的主播设备的直播环境是相似的。而后,根据每个聚类集合的卡顿率期望集和卡顿影响参数集确定目标调度方式;目标调度方式用于指示在多个主播设备引起的观众设备的卡顿率的和满足预设条件的情况下,多个主播设备被分别调度的第二服务器。其中,卡顿率期望集中的每个卡顿率期望用于表征一个主播设备被调度到一个服务器的卡顿率;卡顿影响参数集中的每个卡顿影响参数用于表征一个主播设备在卡顿的情况下引起的卡顿的观众设备的数量。可以理解的是,卡顿率期望越大,主播设备的通信链路越卡顿;卡顿率影响参数越大,主播设备在卡顿的情况下引起的卡顿的观众设备的数量越多,即卡顿率期望和卡顿率影响参数共同影响观众设备的卡顿率的和。基于本公开提供的方法,可以降低相关技术中主播设备卡顿对观众设备造成的影响。
而后,可以根据目标调度方式向每个主播设备指示该主播设备被调度的服务器,以使该主播设备向该服务器发送直播视频流。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是根据一示例性实施例示出的一种实施环境的示意图。
图2是根据一示例性实施例示出的一种直播调度方法的流程图。
图3是根据一示例性实施例示出的又一种直播调度方法的流程图。
图4是根据一示例性实施例示出的一种聚类集合与第二服务器的示意图。
图5是根据一示例性实施例示出的一种直播调度装置的框图。
图6是根据一示例性实施例示出的一种电子设备的框图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以使这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
首先,对本公开涉及的应用场景进行简单介绍。
本申请实施例提供的直播调度方法可以应用于直播场景中。当主播用户需要进行直播时,可以通过其使用的用户设备(即主播设备)登录直播平台以进行直播。在主播设备登录直播平台的过程中,主播设备可以向调度服务器发送调度请求,调度请求用于请求该主播设备待调度的服务器(用于接收直播视频流的服务器)。为了与调度服务器区分,可以将待调度的服务器称为收流服务器。调度服务器为主播设备分配其对应的收流服务器后,主播设备可以将直播视频流发送给该收流服务器。收流服务器可以对接收到的直播视频流进行转码等处理,而后可以将转码处理后的直播视频流分发给各个观众用户。各个观众用户可以通过其使用的用户设备(即观众设备)向收流服务器拉取直播视频流以观看主播用户的直播。需要说明的是,调度服务器或收流服务器的名称仅是一种示例,也可以为其他名称,本申请不做限定。
相关技术中,在考虑到系统运行成本或资源容量限制的情况下,调度服务器可以根据视频转码码率为主播用户分配收流服务器,以最大化观众满意度。或者,调度服务器可以通过使用混合云来优化主播的直播内容上传延迟和成本。混合云包括私有云(dedicateddatacenters)和公有云(public clouds)。私有云是商业直播平台专门部署的服务器集群,可以提供较好的视频摄取和转码服务,公有云的视频摄取和转码服务相比私有云较差。因此,可以将有稳定观众群(观众用户较多)的大主播调度到私有云,将观众用户较少的主播调度到公有云,获得更佳经济高效的系统部署。
不同于以上方式,考虑到在直播过程中,由于网络不稳定的原因,可能会发生内容卡顿,而主播用户作为视频源,若其在直播流上传时发生一次卡顿,那么必然会导致同一时间内该主播用户的直播间内的所有观众都出现卡顿现象。为了解决该问题,本申请实施例提供一种直播调度方法,该方法可以降低相关技术中主播卡顿对整个直播系统造成的影响,即降低主播设备引起的观众设备的卡顿率的和,同时可以提升主播用户的直播体验和观众用户的观看体验。
请参考图1,其示出本申请实施例提供的直播调度方法所涉及的实施环境示意图。如图1所示,该实施环境可以包括主播设备101、调度服务器102、收流服务器103和观众设备104,其两两之间可以通过有线网络或者无线网络建立连接。
其中,主播设备101为主播用户使用的用户设备。主播用户可以使用该主播设备101登录网络直播平台进行网络直播。在主播设备登录直播平台的过程中,主播设备可以向调度服务器发送服务器调度请求。该主播设备101可以配置有摄像装置和音频装置,或者与摄像装置和音频装置连接,以通过摄像装置和音频装置进行直播。其中,该主播设备101可以为手机、平板电脑、笔记本电脑、台式计算机、便携式计算机等,本公开对此不做限定。
调度服务器102是调度节点,可以接收主播用户的调度请求,该调度请求用于请求该主播用户待调度的收流服务器。调度服务器可以为主播用户调度一个合适的(例如,卡顿率较小的)收流服务器,并通过指示信息将该收流服务器通知给主播用户设备,以使主播用户设备可以将视频流发送给该收流服务器。在一些实施例中,调度服务器102可以为一台服务器,或者,也可以为由多台服务器组成的服务器集群,本公开对此不做限定。
收流服务器103可以基于实时消息传输协议(Real Time Messaging Protocol,RTMP)实时接收主播设备101发送的直播视频流。在一些实施例中,收流服务器103可以为由多台服务器组成的服务器集群。
观众设备104为观众使用的用户设备。观众设备104可以接收收流服务器103发送的视频内容,并将该视频内容展示给观众用户。其中,该观众设备104可以为手机、平板电脑、笔记本电脑、台式计算机、便携式计算机等,本公开对此不做限定。
在一些实施例中,收流服务器可以是流媒体服务器或者是内容分发网络(ContentDelivery Network,CDN)服务器。若收流服务器103为流媒体服务器。流媒体服务器接收到主播设备发送的直播视频流后,可以将接收到的视频内容转码成多种质量版本,并发送给CDN服务器,以使由CDN服务器将不同质量版本的视频内容分发给观众设备。
在一些实施例中,收流服务器可以是CDN服务器。CDN服务器可以接收主播设备发送的直播视频流,并可以将接收到的视频内容转码成多种质量版本,并分发给观众设备104。
在一些实施例中,上述实施环境还可以包括消息服务器,消息服务器可以实时接收观众设备104发送的聊天或赠送虚拟礼物等信息,然后将这些信息发送给相应的主播用户设备和该主播用户设备的直播间内的其他观众用户设备,增强观众用户在移动直播中的参与感。
图2是根据一示例性实施例示出的一种直播调度方法的流程图,如图2所示,该直播调度方法用于调度服务器中,包括以下步骤。
在步骤S201中,接收多个主播设备发送的服务器调度请求。
每个主播设备的调度请求用于请求该主播设备待调度的收流服务器。
在步骤S202中,根据多个主播设备的直播环境信息将多个主播设备聚类得到一个或多个聚类集合。
在步骤S203中,根据一个或多个聚类集合中每个聚类集合的卡顿率期望集和卡顿影响参数集确定目标调度方式。
其中,目标调度方式用于指示在多个主播设备引起的观众设备的卡顿率的和满足预设条件的情况下,例如在多个主播设备引起的观众设备的卡顿率的和达到最小值或小于或等于第一阈值的情况下,多个主播设备被分别调度的收流服务器。其中,卡顿率期望集中的每个卡顿率期望用于表征一个主播设备被调度到一个服务器的卡顿率;卡顿影响参数集中的每个卡顿影响参数用于表征一个主播设备在卡顿的情况下引起的卡顿的观众设备的数量。
在步骤S204中,根据目标调度方式,向每个主播设备指示该主播设备被调度的服务器,以使该主播设备向该服务器发送直播视频流。
本公开的实施例提供的技术方案至少带来以下有益效果:接收多个主播设备发送的服务器调度请求;根据多个主播设备的直播环境信息将多个主播设备聚类得到一个或多个聚类集合。这样,每个聚类集合中的主播设备的直播环境是相似的。而后,根据每个聚类集合的卡顿率期望集和卡顿影响参数集确定目标调度方式;目标调度方式用于指示在多个主播设备引起的观众设备的卡顿率的和满足预设条件的情况下,多个主播设备被分别调度的第二服务器。其中,卡顿率期望集中的每个卡顿率期望用于表征一个主播设备被调度到一个服务器的卡顿率;卡顿影响参数集中的每个卡顿影响参数用于表征一个主播设备在卡顿的情况下引起的卡顿的观众设备的数量。可以理解的是,卡顿率期望越大,主播设备的通信链路越卡顿;卡顿率影响参数越大,主播设备在卡顿的情况下引起的卡顿的观众设备的数量越多,即卡顿率期望和卡顿率影响参数共同影响观众设备的卡顿率的和。基于本公开提供的方法,可以使多个主播设备引起的观众设备的卡顿率的和满足预设条件,以便降低相关技术中主播设备卡顿对观众设备造成的影响。而后,可以根据目标调度方式向每个主播设备指示该主播设备被调度的服务器,以使该主播设备向该服务器发送直播视频流。
图3是根据一示例性实施例示出的一种直播调度方法的流程图,如图3所示,该直播调度方法用于调度服务器中,包括以下步骤。
在步骤S11中,接收多个主播设备发送的服务器调度请求。
当主播用户需要进行直播时,可以通过主播设备登录直播平台以进行直播。在主播设备登录直播平台的过程中,主播设备可以向调度服务器发送调度请求,调度请求用于请求该主播设备待调度的收流服务器,以使主播设备可以向相应的收流服务器发送直播视频流。
在步骤S12中,根据多个主播设备的直播环境信息将多个主播设备聚类得到一个或多个聚类集合。
其中,直播环境信息可以包主播设备所属的网络括运营商、地理位置或网络类型中的至少一种。其中,运营商例如可以是移动、联通、电信等。地理位置可以包括各个省、市或区等,例如,可以包括北京、上海、深圳和西安等。网络类型例如可以是第三代(3thgeneration,3G)移动通信网络、第四代(4th generation,4G)移动通信网络、第五代(5thgeneration,5G)移动通信网络或无线保真(wireless fidelity,WiFi)等。
举例来说,可以将归属于同一个运营商的主播设备聚为一类,或者将位于同一个地理位置的主播设备聚为一类,或者可以将属于同一种网络类型的主播设备聚为一类;或者可以将归属于同一个运营商且位于同一个地理位置的主播设备聚为一类,或者可以将归属于同一个运营商,且位于同一个地理位置的主播设备,并属于同一种网络类型的主播设备聚为一类,本申请不做具体限定。
在步骤S13中,根据一个或多个聚类集合中每个聚类集合的卡顿率期望集和卡顿影响参数集确定目标调度方式。
其中,一个聚类集合的卡顿率期望集包括该聚类集合对应多个收流服务器的多个卡顿率期望,由于每个聚类集合中的主播设备的直播环境信息是相似的,因此一个卡顿率期望可以用于表征该聚类集合中的任一个主播设备被调度到一个收流服务器的卡顿率。可以理解的是,卡顿率期望越大,主播设备被调度到该收流服务器的通信链路越卡顿。
示例性的,以聚类集合1为例,聚类集合1是一个或多个聚类集合中的任一个聚类集合,假设收流服务器的数量为3个,分别为服务器1、服务器2和服务器3,那么聚类集合1的卡顿率期望集中可以包括聚类集合1被调度到服务器1的卡顿率期望1,聚类集合1被调度到服务器2的卡顿率期望2,以及聚类集合1被调度到服务器3的卡顿率期望3。示例性的,请参考表1,为聚类集合1的卡顿率期望集示意。
表1
Figure BDA0002317194670000091
其中,一个聚类集合的卡顿影响参数集包括该聚类集合中每个主播设备的卡顿影响参数,一个主播设备的卡顿影响参数用于表征该主播设备在卡顿的情况下引起的卡顿的观众设备的数量。其中,卡顿影响参数可以包括视频播放量或在线观众数量中的至少一个。例如,卡顿影响参数可以是视频播放量或在线观众数量。可以理解的是,对于视频播放量或在线观众数量越多的主播设备,若其发生卡顿,必然导致大批观众设备发生卡顿。
示例性的,仍以聚类集合1为例,假设聚类集合1包括3个主播设备,分别为用户设备1、用户设备2和用户设备3,那么聚类集合1对应的多个卡顿影响参数可以包括用户设备1的卡顿影响参数1、用户设备2的卡顿影响参数2和用户设备3的卡顿影响参数3。示例性的,请参考表2,为一个聚类集合的卡顿影响参数集示意。
表2
Figure BDA0002317194670000101
可以理解的是,卡顿率期望越大,主播设备被调度到收流服务器的通信链路越卡顿;卡顿率影响参数越大,主播设备在卡顿的情况下引起的卡顿的观众设备的数量越多,即卡顿率期望和卡顿率影响参数共同影响观众设备的卡顿率。因此,为了降低主播设备引起的观众设备的卡顿率的和,需要共同考虑卡顿率期望和卡顿率影响参数。本公开根据每个聚类集合的卡顿率期望集和卡顿影响参数集确定目标调度方式,目标调度方式用于指示在多个主播设备引起的观众设备的卡顿率的和满足预设条件的情况下,例如在多个主播设备引起的观众设备的卡顿率的和达到最小值或小于等于第一阈值的情况下,多个主播设备被分别调度的收流服务器,从而可以有效降低相关技术中主播设备卡顿对观众设备造成的影响。
在一些实施例中,根据每个聚类集合的卡顿率期望集和卡顿影响参数集确定目标调度方式具体过程包括:将每个聚类集合的卡顿率期望集和卡顿影响参数集作为预设调度优化模型的输入参数,基于预设调度优化模型获得目标调度方式。其中,预设调度优化模型满足如下公式:
Figure BDA0002317194670000102
其中,
Figure BDA0002317194670000103
其中,Q_total表示一个或多个聚类集合中的每个主播设备引起的观众设备的卡顿率的和,可以使Q_total达到最小值,以尽可能降低观众设备的卡顿率的和,该最小值小于或等于第一阈值;A表示多个主播设备;Ai表示多个聚类集合中的一个聚类集合,Ai∈A;a表示一个主播设备,a∈Ai;N表示多个收流服务器;n表示一个收流服务器,n∈N;X(a,n)表示a是否被调度到n,X(a,n)∈[0,1];P(Ai,n)表示Ai被调度到n的卡顿率期望;|Ua|表示a的卡顿影响参数,例如,卡顿影响参数可以是视频播放量或在线观众数量;B表示收流服务器的数量,Wn表示n能够服务的主播设备的数量。
下面以贪心算法为例,介绍将上述一个或多个聚类集合中每个聚类集合的卡顿率期望集和卡顿影响参数集作为预设调度优化模型的输入参数,基于预设调度优化模型获得目标调度方式的步骤,即求解预设调度优化模型的具体步骤,包括步骤S13a和S13b:
S13a、对于一个或多个聚类集合中的每个聚类集合,将该聚类集合中卡顿影响参数小于第二阈值的主播设备均匀调度到多个收流服务器上;再根据调度到多个收流服务器中每个收流服务器的主播设备的卡顿率的平均值确定该聚类集合相对于该收流服务器的卡顿率期望。
可以理解的是,对于聚类得到的一个或多个聚类集合中的每个聚类集合,该聚类集合中的主播设备所处的直播环境信息是相同或相似的,从而该聚类集合中的每个主播设备被调度到同一个收流服务器的卡顿率也是相同或相似的。因此,可以通过该聚类集合中某一个或某几个主播设备(例如,卡顿影响参数小于第二阈值的某一个或某几个主播设备)被调度到一个收流服务器(例如,服务器1)的卡顿率(实际卡顿率)来预测该聚类集合中每个主播设备被调度该收流服务器(即服务器1)的卡顿率期望(理论卡顿率)。并且,卡顿影响参数小于第二阈值的主播设备引起的观众设备的卡顿率也较小,因此,根据聚类集合中卡顿影响参数小于第二阈值的主播设备预测该聚类集合相对于每个收流服务器的卡顿率期望,可以使预测过程导致的观众设备的卡顿率较小。
示例性的,如图4所示,以聚类集合A1为例,假设A1中卡顿影响参数小于第二阈值的主播设备包括4个主播设备,分别为a1、a2、a3和a4,且多个收流服务器包括2个收流服务器,分别为n1和n2;调度服务器可以将该4个主播设备均匀调度到该2个收流服务器,例如可以将a1和a2调度到n1,将a3和a4调度到n2。而后,调度服务器可以分别接收来自a1、a2、a3和a4的卡顿报告,a1的卡顿报告中携带有a1被调度到n1的卡顿率K1,a2的卡顿报告中携带有a2被调度到n1的卡顿率K2,a3的卡顿报告中携带有a3被调度到n2的卡顿率K3,a4的卡顿报告中携带有a4被调度到n2的卡顿率K4。调度服务器可以根据收集到的卡顿率预测A1分别被调度到n1和n2的卡顿率期望。其中,A1被调度到n1的卡顿率期望P(A1,n1)可以满足如下公式:
Figure BDA0002317194670000111
A1被调度到n2的卡顿率期望P(A1,n2)可以满足如下公式:
Figure BDA0002317194670000121
在另一些实施例中,对于一个或多个聚类集合中的每个聚类集合,可以通过该聚类集合中的某一个或几个主播设备被调度到各个收流服务器的历史卡顿率,确定该聚类集合被调度到各个收流服务器的卡顿率期望。
示例性的,假设聚类集合1中包括3个主播设备,分别为用户设备1、用户设备2和用户设备3,多个收流服务器包括2个收流服务器,分别为服务器1和服务器2;若用户设备1曾被调度到服务器1,而用户设备2和用户设备3未曾被调度到服务器1,那么可以将用户设备1被调度到服务器1的历史卡顿率作为聚类集合1对应服务器1的卡顿率期望,并以该期望预测用户设备2和用户设备3被调度到服务器1上的卡顿率。类似的,若用户设备2曾被调度到服务器2,而用户设备1和用户设备3未曾被调度到服务器2,那么可以将用户设备2被调度到服务器2的历史卡顿率作为聚类集合1对应服务器2的卡顿率期望,并以该期望预测用户设备1和用户设备3被调度到服务器2上的卡顿率。
S13b、对于一个或多个聚类集合中的每个聚类集合,从该聚类集合中选取卡顿影响参数大于或等于第二阈值的主播设备;确定将选取的主播设备按照卡顿影响参数从大到小的顺序依次调度到卡顿率期望从小到大的多个收流服务器上。
具体的,调度服务器可以确定将目标主播设备调度到目标服务器上。其中,目标主播设备是未被调度的主播设备中卡顿影响参数最大的主播设备,目标服务器是不超过预设服务能力的服务器中卡顿率期望最小的服务器。
以聚类集合A1为例,假设A1中卡顿影响参数大于或等于第二阈值的主播设备包括5个主播设备,分别为a5、a6、a7、a8和a9。其中,a5的卡顿影响参数(例如在线观众数量)可以为10个,a6的在线观众数量可以为20个,a7的在线观众数量可以为30个,a8的在线观众数量可以为40个,a9的在线观众数量可以为50个。多个收流服务器包括2个收流服务器,分别为n1和n2,A1被调度到n1的卡顿率期望为S1,A1被调度到n2的卡顿率期望为S2,S1大于S2。首先,可以确定出目标用户设备和目标服务器。在该5个主播设备都未被调度时,目标用户设备可以是该5个主播设备中卡顿影响参数(例如在线观众数量)最大的主播设备,即a9,若n2不超过预设服务能力,则目标服务器为n2,从而可以将a9调度到n2。而后,再次确定目标用户设备和目标服务器,目标用户设备可以是未被调度的主播设备中卡顿影响参数(例如在线观众数量)最大的主播设备,即a8,若n2仍不超过预设服务能力,则目标服务器为n2,可以将a8调度到n2;若n2超过预设服务能力,则确定n1是否超过预设服务能力,若n1不超过预设服务能力,则目标服务器为n1,可以将a8调度到n1,以此类推。
可以理解的是,调度服务器可以对一个或多个聚类集合中的每个聚类集合进行并行处理或串行处理,本申请不做限定。其中,并行处理即同时确定每个聚类集合中每个主播设备对应的收流服务器。串行处理即在确定出一个聚类集合中每个主播设备对应的收流服务器后,再确定下一个聚类集合中每个主播设备对应的收流服务器。
需要说明的是,上述是以贪心算法为例对求解预设调度优化模型的步骤进行举例说明,也可以采用神经网络算法、深度学习算法、强化学习算法等求解预设调度优化模型,本申请不做限定。
需要说明的是,在预设的每个时间间隔,调度服务器可以重复执行步骤S13a和S13b。其中,预设的时间间隔与特定时间段有关。例如,在“上午”的时间段(8:00-12:00)内,预设时间间隔可以为100分钟、60分钟或30分钟等;在“晚高峰”的时间段(21:00-23:00)内,预设时间间隔可以为1分钟、5分钟或10分钟等。这是由于在“晚高峰”的时间段,进行直播的主播设备较多,网络传输质量的变化幅度较大,因此可以较为频繁的执行步骤S13a和S13b,以适应网络变化,为主播设备决策服务质量更好的收流服务器。而在“上午”的时间段,进行直播的主播设备较少,网络传输质量的变化幅度较小,因此可以以较长的时间间隔的执行步骤S13a和S13b,节省调度服务器的处理功耗。
在另一些实施例中,对于一个或多个聚类集合中的每个聚类集合,若通过该聚类集合中的某一个或几个主播设备被调度到各个收流服务器的历史卡顿率,确定该聚类集合被调度到各个收流服务器的卡顿率期望,那么对于该聚类集合中的每个主播设备,确定将每个主播设备按照卡顿影响参数从大到小的顺序依次调度到卡顿率期望从小到大的多个收流服务器上,具体过程参考上文的相关描述,在此不做赘述。
在步骤S14中,根据目标调度方式,向多个主播设备发送指示信息。
即调度服务器基于步骤S12和S13确定出各个主播设备对应的收流服务器后,可以向多个主播设备中的每个主播设备发送指示信息,其中,一个主播设备的指示信息用于指示该主播设备被调度的收流服务器,以使该主播设备向该主播设备对应的收流服务器发送直播视频流。
本公开的实施例提供的技术方案至少带来以下有益效果:接收多个主播设备发送的服务器调度请求;根据多个主播设备的直播环境信息将多个主播设备聚类得到一个或多个聚类集合。这样,每个聚类集合中的主播设备的直播环境是相似的。
而后,根据每个聚类集合的卡顿率期望集和卡顿影响参数集确定目标调度方式;目标调度方式用于指示在多个主播设备引起的观众设备的卡顿率的和满足预设条件的情况下,多个主播设备被分别调度的第二服务器。其中,卡顿率期望集中的每个卡顿率期望用于表征一个主播设备被调度到一个服务器的卡顿率;卡顿影响参数集中的每个卡顿影响参数用于表征一个主播设备在卡顿的情况下引起的卡顿的观众设备的数量。可以理解的是,卡顿率期望越大,主播设备的通信链路越卡顿;卡顿率影响参数越大,主播设备在卡顿的情况下引起的卡顿的观众设备的数量越多,即卡顿率期望和卡顿率影响参数共同影响观众设备的卡顿率的和。基于本公开提供的方法,可以降低相关技术中主播设备卡顿对观众设备造成的影响。
而后,可以根据目标调度方式向每个主播设备指示该主播设备被调度的服务器,以使该主播设备向该服务器发送直播视频流。
图5是根据一示例性实施例示出的一种直播调度装置的逻辑结构框图,该直播调度装置可以应用于上述实施例中的调度服务器,包括:
接收模块501,被配置为执行接收多个主播设备发送的服务器调度请求;
聚类模块502,被配置为执行根据多个主播设备的直播环境信息将多个主播设备聚类得到一个或多个聚类集合;
确定模块503,被配置为执行根据每个聚类集合的卡顿率期望集和卡顿影响参数集确定目标调度方式;其中,目标调度方式用于指示在多个主播设备引起的观众设备的卡顿率的和满足预设条件的情况下,多个主播设备被分别调度的服务器;卡顿率期望集中的每个卡顿率期望用于表征一个主播设备被调度到一个服务器的卡顿率;卡顿影响参数集中的每个卡顿影响参数用于表征一个主播设备在卡顿的情况下引起的卡顿的观众设备的数量;
指示模块504,被配置为执行根据目标调度方式向每个主播设备指示每个主播设备被调度的服务器,以使每个主播设备向被调度的服务器发送直播视频流。
在一种可能的实现方式中,卡顿影响参数包括视频播放量或在线观众数量中的至少一个。
在一种可能的实现方式中,直播环境信息包括主播设备所属的网络运营商、地理位置或网络类型中的至少一种。
在一种可能的实现方式中,多个主播设备引起的观众设备的卡顿率的和满足预设条件包括:多个主播设备引起的观众设备的卡顿率的和达到最小值或小于等于第一阈值。
在一种可能的实现方式中,当预设条件为多个主播设备引起的观众设备的卡顿率的和达到最小值时,确定模块503被配置为执行:将每个聚类集合的卡顿率期望集和卡顿影响参数集作为预设调度优化模型的输入参数,基于预设调度优化模型获得目标调度方式,其中,预设调度优化模型满足如下公式:
Figure BDA0002317194670000151
其中,
Figure BDA0002317194670000152
其中,Q_total表示每个主播设备引起的观众设备的卡顿率的和;A表示多个主播设备;Ai表示多个聚类集合中的一个聚类集合,Ai∈A;a表示一个主播设备,a∈Ai;N表示多个服务器;n表示一个服务器,n∈N;X(a,n)表示a是否被调度到n,X(a,n)∈[0,1];P(Ai,n)表示Ai中的任一个主播设备被调度到n的卡顿率期望;|Ua|表示a的卡顿影响参数;B表示服务器的数量,Wn表示n能够服务的主播设备的数量。
在一种可能的实现方式中,还包括调度模块505(图5中未示出),被配置为执行在预设的一个或多个时间间隔中的每个时间间隔内,对于每个聚类集合,将每个聚类集合中卡顿影响参数小于第二阈值的主播设备均匀调度到多个服务器上;确定模块503,还被配置为执行根据调度到多个服务器中每个主播设备的卡顿率的平均值确定每个聚类集合相对于每个服务器的卡顿率期望。
在一种可能的实现方式中,确定模块503,被配置为执行在每个时间间隔内,对于每个聚类集合,从每个聚类集合中选取卡顿影响参数大于或等于第二阈值的主播设备;确定将选取的主播设备按照卡顿影响参数从大到小的顺序依次调度到卡顿率期望从小到大的多个服务器上。
在一种可能的实现方式中,确定模块503,被配置为执行:确定将目标主播设备调度到目标服务器上;其中,目标主播设备是未被调度的主播设备中卡顿影响参数最大的主播设备,目标服务器是不超过预设服务能力的服务器中卡顿率期望最小的服务器。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
示例性的,图6为本申请实施例提供的一种电子设备的组成示意图。电子设备600包括至少一个处理器601,通信总线602,存储器603以及至少一个通信接口604。
处理器601可以是一个通用中央处理器(central processing unit,CPU),微处理器,特定应用集成电路(application-specific integrated circuit,ASIC),或一个或多个用于控制本申请方案程序执行的集成电路。
通信总线602可包括一通路,在上述组件之间传送信息。
通信接口604,使用任何收发器一类的装置,用于与其他设备或通信网络通信,如以太网,无线接入网(radio access network,RAN),无线局域网(wireless local areanetworks,WLAN)等。
存储器603可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electricallyerasable programmable read-only memory,EEPROM)、只读光盘(compact disc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过总线与处理器相连接。存储器也可以和处理器集成在一起。
其中,存储器603用于存储执行本申请方案的应用程序代码,并由处理器601来控制执行。处理器601用于执行存储器603中存储的应用程序代码,从而实现本公开中第一服务器的功能。
在具体实现中,作为一种实施例,处理器601可以包括一个或多个CPU,例如图6中的CPU0和CPU1。
在具体实现中,作为一种实施例,电子设备600可以包括多个处理器,例如图6中的处理器601和处理器607。这些处理器中的每一个可以是一个单核(single-CPU)处理器,也可以是一个多核(multi-CPU)处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
在具体实现中,作为一种实施例,电子设备600还可以包括输出设备605和输入设备606。输出设备605和处理器601通信,可以以多种方式来显示信息。例如,输出设备605可以是液晶显示器(liquid crystal display,LCD),发光二级管(light emitting diode,LED)显示设备,阴极射线管(cathode ray tube,CRT)显示设备,或投影仪(projector)等。输入设备606和处理器601通信,可以以多种方式接受用户的输入。例如,输入设备606可以是鼠标、键盘、触摸屏设备或传感设备等。
上述的电子设备600可以是一个通用计算机设备或者是一个专用计算机设备。在具体实现中,电子设备600可以是台式机、便携式电脑、网络服务器、掌上电脑(personaldigital assistant,PDA)、移动手机、平板电脑、无线终端设备、通信设备、嵌入式设备或有图6中类似结构的设备。本申请实施例不限定电子设备600的类型。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有指令,当所述存储介质中的指令由计算机设备的处理器执行时,使得计算机能够执行上述所示实施例提供的直播调度方法。
本申请实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机设备执行上述所示实施例提供的直播调度方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本申请所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
以上所述的具体实施方式,对本申请的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本申请的具体实施方式而已,并不用于限定本申请的保护范围,凡在本申请的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本申请的保护范围之内。

Claims (10)

1.一种直播调度方法,其特征在于,包括:
接收多个主播设备发送的服务器调度请求;
根据所述多个主播设备的直播环境信息将所述多个主播设备聚类得到一个或多个聚类集合;
根据每个聚类集合的卡顿率期望集和卡顿影响参数集确定目标调度方式;其中,所述目标调度方式用于指示在所述多个主播设备引起的观众设备的卡顿率的和满足预设条件的情况下,所述多个主播设备被分别调度的服务器;所述卡顿率期望集中的每个卡顿率期望用于表征一个主播设备被调度到一个服务器的卡顿率;所述卡顿影响参数集中的每个卡顿影响参数用于表征一个主播设备在卡顿的情况下引起的卡顿的观众设备的数量;
根据所述目标调度方式向每个主播设备指示所述每个主播设备被调度的服务器,以使所述每个主播设备向所述被调度的服务器发送直播视频流。
2.根据权利要求1所述的直播调度方法,其特征在于,所述卡顿影响参数包括视频播放量或在线观众数量中的至少一个。
3.根据权利要求1所述的直播调度方法,其特征在于,
所述直播环境信息包括主播设备所属的网络运营商、地理位置或网络类型中的至少一种。
4.根据权利要求1-3任一项所述的直播调度方法,其特征在于,所述多个主播设备引起的观众设备的卡顿率的和满足预设条件包括:
所述多个主播设备引起的观众设备的卡顿率的和达到最小值或小于等于第一阈值。
5.根据权利要求4所述的直播调度方法,其特征在于,当所述预设条件为所述多个主播设备引起的观众设备的卡顿率的和达到最小值时,所述根据每个聚类集合的卡顿率期望集和卡顿影响参数集确定目标调度方式,包括:
将所述每个聚类集合的卡顿率期望集和卡顿影响参数集作为预设调度优化模型的输入参数,基于所述预设调度优化模型获得所述目标调度方式,其中,所述预设调度优化模型满足如下公式:
Figure FDA0002317194660000011
其中,∑n∈NX(a,n)=1;
Figure FDA0002317194660000012
其中,Q_total表示所述每个主播设备引起的观众设备的卡顿率的和;A表示所述多个主播设备;Ai表示所述多个聚类集合中的一个聚类集合,Ai∈A;a表示一个主播设备,a∈Ai;N表示多个服务器;n表示一个服务器,n∈N;X(a,n)表示a是否被调度到n,X(a,n)∈[0,1];P(Ai,n)表示Ai中的任一个主播设备被调度到n的卡顿率期望;|Ua|表示的卡顿影响参数;B表示服务器的数量,Wn表示n能够服务的主播设备的数量。
6.根据权利要求5所述的直播调度方法,其特征在于,所述将每个聚类集合的卡顿率期望集和卡顿影响参数集作为预设调度优化模型的输入参数,基于所述预设调度优化模型获得所述目标调度方式之前,所述方法还包括:
在预设的一个或多个时间间隔中的每个时间间隔内,对于所述每个聚类集合,将所述每个聚类集合中卡顿影响参数小于第二阈值的主播设备均匀调度到所述多个服务器上;
根据调度到所述多个服务器中每个主播设备的卡顿率的平均值确定所述每个聚类集合相对于每个服务器的卡顿率期望。
7.根据权利要求6所述的直播调度方法,其特征在于,所述将每个聚类集合的卡顿率期望集和卡顿影响参数集作为预设调度优化模型的输入参数,基于所述预设调度优化模型获得所述目标调度方式,包括:
在所述每个时间间隔内,对于所述每个聚类集合,从所述每个聚类集合中选取卡顿影响参数大于或等于所述第二阈值的主播设备;
确定将选取的主播设备按照卡顿影响参数从大到小的顺序依次调度到卡顿率期望从小到大的多个服务器上。
8.一种直播调度装置,其特征在于,包括:
接收模块,被配置为执行接收多个主播设备发送的服务器调度请求;
聚类模块,被配置为执行根据所述多个主播设备的直播环境信息将所述多个主播设备聚类得到一个或多个聚类集合;
确定模块,被配置为执行根据每个聚类集合的卡顿率期望集和卡顿影响参数集确定目标调度方式;其中,所述目标调度方式用于指示在所述多个主播设备引起的观众设备的卡顿率的和满足预设条件的情况下,所述多个主播设备被分别调度的服务器;所述卡顿率期望集中的每个卡顿率期望用于表征一个主播设备被调度到一个服务器的卡顿率;所述卡顿影响参数集中的每个卡顿影响参数用于表征一个主播设备在卡顿的情况下引起的卡顿的观众设备的数量;
指示模块,被配置为执行根据所述目标调度方式向每个主播设备指示所述每个主播设备被调度的服务器,以使所述每个主播设备向所述被调度的服务器发送直播视频流。
9.一种电子设备,其特征在于,包括:处理器和用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令,以实现如权利要求1-7中任一项所述的直播调度方法。
10.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机指令,其特征在于,当所述计算机指令在电子设备上运行时实现如权利要求1-7中任一项所述的直播调度方法。
CN201911282697.5A 2019-12-13 2019-12-13 一种直播调度方法、装置、电子设备和存储介质 Active CN110996114B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911282697.5A CN110996114B (zh) 2019-12-13 2019-12-13 一种直播调度方法、装置、电子设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911282697.5A CN110996114B (zh) 2019-12-13 2019-12-13 一种直播调度方法、装置、电子设备和存储介质

Publications (2)

Publication Number Publication Date
CN110996114A true CN110996114A (zh) 2020-04-10
CN110996114B CN110996114B (zh) 2021-12-14

Family

ID=70093340

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911282697.5A Active CN110996114B (zh) 2019-12-13 2019-12-13 一种直播调度方法、装置、电子设备和存储介质

Country Status (1)

Country Link
CN (1) CN110996114B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113038191A (zh) * 2021-02-26 2021-06-25 北京百度网讯科技有限公司 直播流的调度方法、装置、电子设备及可读存储介质
CN113965772A (zh) * 2021-10-29 2022-01-21 北京百度网讯科技有限公司 直播视频处理方法、装置、电子设备和存储介质
CN113965772B (zh) * 2021-10-29 2024-05-10 北京百度网讯科技有限公司 直播视频处理方法、装置、电子设备和存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001339589A (ja) * 2000-05-25 2001-12-07 Canon Inc ファクシミリ装置およびリング型同報送信方法
CN105681828A (zh) * 2016-03-24 2016-06-15 合一网络技术(北京)有限公司 一种节点连接调整方法和装置
CN106454388A (zh) * 2016-09-20 2017-02-22 北京百度网讯科技有限公司 一种用于确定直播设置信息的方法与设备
CN107592304A (zh) * 2017-08-29 2018-01-16 武汉斗鱼网络科技有限公司 直播资源计算分配方法、存储介质、电子设备及系统
CN109672857A (zh) * 2018-11-14 2019-04-23 视联动力信息技术股份有限公司 监控资源的处理方法和装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001339589A (ja) * 2000-05-25 2001-12-07 Canon Inc ファクシミリ装置およびリング型同報送信方法
CN105681828A (zh) * 2016-03-24 2016-06-15 合一网络技术(北京)有限公司 一种节点连接调整方法和装置
CN106454388A (zh) * 2016-09-20 2017-02-22 北京百度网讯科技有限公司 一种用于确定直播设置信息的方法与设备
CN107592304A (zh) * 2017-08-29 2018-01-16 武汉斗鱼网络科技有限公司 直播资源计算分配方法、存储介质、电子设备及系统
CN109672857A (zh) * 2018-11-14 2019-04-23 视联动力信息技术股份有限公司 监控资源的处理方法和装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113038191A (zh) * 2021-02-26 2021-06-25 北京百度网讯科技有限公司 直播流的调度方法、装置、电子设备及可读存储介质
CN113038191B (zh) * 2021-02-26 2022-09-23 北京百度网讯科技有限公司 直播流的调度方法、装置、电子设备及可读存储介质
CN113965772A (zh) * 2021-10-29 2022-01-21 北京百度网讯科技有限公司 直播视频处理方法、装置、电子设备和存储介质
CN113965772B (zh) * 2021-10-29 2024-05-10 北京百度网讯科技有限公司 直播视频处理方法、装置、电子设备和存储介质

Also Published As

Publication number Publication date
CN110996114B (zh) 2021-12-14

Similar Documents

Publication Publication Date Title
US11677683B2 (en) Upstream bandwidth management methods and apparatus
CN103733680B (zh) 用于控制无线上行会话的方法和装置
US9521178B1 (en) Dynamic bandwidth thresholds
CN107251569B (zh) 动态内容分发网络分配系统
US20170126583A1 (en) Method and electronic device for bandwidth allocation based on online media services
CN108810052B (zh) 直播服务器的选择方法及装置
US9936241B2 (en) Method and apparatus for providing dynamic channel and content provisioning
US20180103453A1 (en) Scheduling of Software Package Transmissions on a Multimedia Broadcast Multicast Service Channel
CN109348264B (zh) 视频资源共享方法、装置、存储介质及电子设备
CN105337901A (zh) 一种路由器的智能带宽分配方法及装置
WO2017075967A1 (zh) 在线媒体服务的带宽分配方法及系统
US11838572B2 (en) Streaming video trunking
EP4192044A1 (en) Communication method and apparatus for multicast and broadcast service, and medium and electronic device
US9326296B2 (en) Method and apparatus for scheduling delivery of content according to quality of service parameters
CN103731281A (zh) 频道处理方法和装置
CN102523422A (zh) 多方通信控制系统、多方通信系统及多方通信处理方法
CN110996114B (zh) 一种直播调度方法、装置、电子设备和存储介质
WO2012155702A1 (zh) 一种业务密钥更新的方法、系统及业务处理服务器
WO2024066938A1 (zh) 直播截图方法、装置、设备及存储介质
US20140157337A1 (en) Multi-Stage Batching of Content Distribution in a Media Distribution System
WO2024082770A1 (zh) 视频转码方法、装置、设备、存储介质及视频点播系统
Dubin et al. A fair server adaptation algorithm for HTTP adaptive streaming using video complexity
WO2022268032A1 (zh) 一种视频流调度系统及相关产品
EP4262248A1 (en) Communication method and apparatus for multicast and broadcast service, medium, and electronic device
Almowuena et al. Mobile video streaming over dynamic single-frequency networks

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
GR01 Patent grant
GR01 Patent grant