1.本技术实施例涉及直播领域,具体涉及一种直播质量保障方法、装置、计算设备和计算机存储介质。
背景技术:2.随着直播业务的快速发展,观看直播的用户数量迅速增长,尤其是高人气主播的直播间,实时的观看人数通常都十分巨大。由此,巨大的观看人数对直播流的数据传输提出了极高要求,当出现用户网络差、主播断流或主播推流不稳定都可能导致用户观看时产生卡顿,直接影响用户的观看体验。
3.而现有技术中,通常采用中心转码或边缘转码方式进行转码处理。其中,中心转码需要将直播流从边缘计算节点通过公网传输至固定的中心转码集群上进行转码,而公网传输极易导致到中心转码集群的直播流已经发生了抖动,进而影响转码质量。而边缘转码则是在边缘计算节点所在的集群进行转码,在同一集群内部可以避免公网传输导致的抖动,但直播推流节点所在的集群通常较小,会面临转码资源不足的情况,最终导致只能进行中心转码。
技术实现要素:4.鉴于上述问题,本技术提出了一种直播质量保障方法、装置、计算设备和存储介质,用于解决以下问题:现有的转码方式质量不稳定、效率低下。
5.根据本技术实施例的一个方面,提供了一种直播质量保障方法,该方法包括:
6.根据各个地区的多个目标直播间的转码相关信息,确定各个地区的预留转码资源信息;
7.当多个目标直播间中的任一目标直播间进行直播时,利用任一目标直播间所属地区的预留转码资源信息,对任一目标直播间对应的直播推流节点所传输的源直播流进行转码,得到各个清晰度的转码流;
8.将各个清晰度的转码流传输至第一内容分发网络,以供第一内容分发网络将各个清晰度的转码流提供给播放器进行展示。
9.上述方案中,转码相关信息包括:目标直播间的清晰度集合以及清晰度集合中每个清晰度对应的转码资源信息。
10.上述方案中,清晰度包括:不同于直播流的清晰度的至少一个第一清晰度。
11.上述方案中,清晰度还包括:与源直播流的清晰度相同的第二清晰度;第二清晰度的转码流的流标识不同于源直播流的流标识。
12.上述方案中,根据各个地区的多个目标直播间的转码相关信息,确定各个地区的预留转码资源信息进一步包括:
13.从多个直播间中确定多个目标直播间;
14.从直播间数据中获取各个目标直播间的推流所在地信息,确定各个目标直播间所
属地区;
15.针对各个地区中的每个地区,根据该地区中的各个目标直播间的清晰度集合以及每个清晰度对应的转码资源信息,计算得到该地区的预留转码资源信息。
16.上述方案中,从多个直播间中确定多个目标直播间进一步包括:
17.获取在第一预设时段内每个直播间的观看人数;
18.按照观看人数从多到少的顺序对多个直播间进行排列,选取排列靠前的预设数量的直播间作为目标直播间。
19.上述方案中,针对各个地区中的每个地区,根据该地区中的各个目标直播间的清晰度集合以及每个清晰度对应的转码资源信息,计算得到该地区的预留转码资源信息进一步包括:
20.针对每个地区,根据该地区中的各个目标直播间的清晰度集合以及每个清晰度对应的转码资源信息,计算各个目标直播间对应的基准转码资源信息;
21.依据该地区的转码资源相关信息和/或各个目标直播间的直播间数据,对各个目标直播间对应的基准转码资源信息进行调整,得到各个目标直播间对应的预留转码资源信息;
22.对各个目标直播间对应的预留转码资源信息进行汇总,得到该地区的预留转码资源信息。
23.上述方案中,当多个目标直播间中的任一目标直播间进行直播时,利用任一目标直播间所属地区的预留转码资源信息,对任一目标直播间对应的直播推流节点所传输的源直播流进行转码,得到各个清晰度的转码流进一步包括:
24.接收任一目标直播间的直播请求,根据直播请求确定任一目标直播间所属地区;
25.从任一目标直播间所属地区的预留转码资源信息中获取任一目标直播间对应的预留转码资源信息;
26.利用任一目标直播间对应的预留转码资源信息,对任一目标直播间对应的直播推流节点所传输的源直播流进行转码,得到各个清晰度的转码流。
27.上述方案中,直播请求中携带有直播间标识和/或推流所在地信息;
28.根据直播请求确定任一目标直播间所属地区进一步包括:
29.若直播请求中携带有推流所在地信息,则根据推流所在地信息,确定任一目标直播间所属地区;
30.若直播请求中未携带有推流所在地信息,则根据直播请求中携带的直播间标识查找直播间标识对应的直播间数据,从直播间标识对应的直播间数据中获取推流所在地信息,根据推流所在地信息,确定任一目标直播间所属地区。
31.上述方案中,在将各个清晰度的转码流传输至第一内容分发网络之后,该方法还包括:
32.获取播放器的心跳数据;
33.根据心跳数据,计算多个目标直播间中的每个目标直播间对应的各个清晰度的卡顿率;
34.针对每个目标直播间,若该目标直播间对应的任一清晰度的卡顿率超过预设阈值,则将该卡顿率对应的清晰度的转码流转推至第二内容分发网络,或者,将该目标直播间
对应的各个清晰度的转码流转推至第二内容分发网络。
35.上述方案中,获取播放器的心跳数据进一步包括:
36.获取播放器每隔第二预设时段上报的心跳数据。
37.上述方案中,心跳数据包括:直播间标识、当前卡顿信息以及用户观看的清晰度;
38.根据心跳数据,计算多个目标直播间中的每个目标直播间对应的各个清晰度的卡顿率进一步包括:
39.针对每个目标直播间,根据该目标直播间的目标直播间标识,从心跳数据中提取直播间标识为目标直播间标识的心跳数据,得到该目标直播间对应的心跳数据;
40.根据该目标直播间对应的心跳数据中的当前卡顿信息以及用户观看的清晰度,确定该目标直播间对应的各个清晰度的卡顿人数以及各个清晰度的观看总人数;
41.依据各个清晰度的卡顿人数以及各个清晰度的观看总人数,计算该目标直播间对应的各个清晰度的卡顿率。
42.上述方案中,该方法还包括:
43.针对多个目标直播间中的每个目标直播间,若该目标直播间对应的任一清晰度的转码流发生断流,则在播放器中展示转码流中断流发生前的帧图像,直至转码流恢复推流。
44.上述方案中,该方法还包括:
45.若源直播流在传输过程中码率发生抖动,则在转码过程中调整码率,以去除抖动。
46.根据本技术实施例的另一方面,提供了一种直播质量保障装置,包括:
47.确定模块,适于根据各个地区的多个目标直播间的转码相关信息,确定各个地区的预留转码资源信息;
48.转码模块,适于当多个目标直播间中的任一目标直播间进行直播时,利用任一目标直播间所属地区的预留转码资源信息,对任一目标直播间对应的直播推流节点所传输的源直播流进行转码,得到各个清晰度的转码流;
49.分发模块,适于将各个清晰度的转码流传输至第一内容分发网络,以供第一内容分发网络将各个清晰度的转码流提供给播放器进行展示。
50.根据本技术实施例的又一方面,提供了一种计算设备,包括:处理器、存储器、通信接口和通信总线,处理器、存储器和通信接口通过通信总线完成相互间的通信;
51.存储器用于存放至少一可执行指令,可执行指令使处理器执行上述直播质量保障方法对应的操作。
52.根据本技术实施例的再一方面,提供了一种计算机存储介质,存储介质中存储有至少一可执行指令,可执行指令使处理器执行如上述直播质量保障方法对应的操作。
53.根据本技术实施例提供的直播质量保障方法、装置、计算设备和计算机存储介质,解决了现有技术中在进行边缘转码时资源不足的问题,通过为目标直播间预留出转码处理所需的转码资源,有效保证了目标直播间的转码资源充足,在直播间所属地区完成对源直播流进行转码,得到各个清晰度的转码流,提高直播转码稳定性的同时,还为用户提供了不同清晰度的多种选择,有效提高了用户体验。另外,基于从播放器的心跳数据,来计算任一目标直播间中各个清晰度所对应转码流的卡顿率,对卡顿率超过预设阈值的清晰度对应的转码流,在转码后进行转推,通过原cdn之外的另一cdn提供至播放器进行播放。本技术依据卡顿率筛选出发生卡顿的清晰度对应的转码流,将其转推至另一个cdn来进行分发播放。以
此,提供了一种当卡顿发生时即可生效的保障处理方法,通过精确筛选保证了目标直播间中各个清晰度对应的直播流播放的流畅性。
54.上述说明仅是本技术实施例技术方案的概述,为了能够更清楚了解本技术实施例的技术手段,而可依照说明书的内容予以实施,并且为了让本技术实施例的上述和其它目的、特征和优点能够更明显易懂,以下特举本技术实施例的具体实施方式。
附图说明
55.通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本技术实施例的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
56.图1示出了根据本技术一个实施例的直播质量保障方法的流程示意图;
57.图2示出了中心转码过程示意图;
58.图3示出了边缘转码过程示意图;
59.图4示出了根据本技术一个实施例的源直播流边缘转码过程示意图;
60.图5示出了根据本技术另一个实施例的直播质量保障方法的流程示意图;
61.图6示出了根据本技术另一个实施例的直播质量保障方法中卡顿转推方法流程示意图;
62.图7示出了根据本技术一个实施例的正常推流过程示意图;
63.图8示出了根据本技术一个实施例的自动转推过程示意图;
64.图9示出了根据本技术一个实施例的直播质量保障装置的结构框图;
65.图10示出了根据本技术一个实施例的一种计算设备的结构示意图。
具体实施方式
66.下面将参照附图更详细地描述本技术的示例性实施例。虽然附图中显示了本技术的示例性实施例,然而应当理解,可以以各种形式实现本技术而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本技术的范围完整的传达给本领域的技术人员。
67.首先,将本技术中出现的术语进行名词解释:
68.直播流:在直播过程中,直播音视频数据能够被作为一个稳定的和连续的流通过网络传输给观众观看。
69.观看人数:实时观看直播间的真实人数。
70.源直播流:直播推上给边缘节点,没有经过任何处理的流。
71.转码:是指为了适应不同的网络带宽、不同的终端处理能力和不同的用户需求,将已经压缩编码的视频码流转换成另一个视频码流。
72.转码流:对源直播流进行转码后所得到的视频码流。
73.cdn:内容分发网络(content delivery network)。
74.边缘计算:是一种分布式运算的架构,将应用程序、数据资料与服务的运算,由网络中心节点移往网络逻辑上的边缘节点来处理。
75.直播推流节点:在直播推流过程中,对直播流进行推送的节点。例如,在主播端将
直播流推送至边缘计算节点的过程中,主播端为直播推流节点。
76.边缘计算节点:接收用户推流的节点。
77.转码容器:部署在边缘计算上的转码程序,转码程序在转码容器内部运行,针对一个直播流,一个转码容器负责进行其中一种清晰度的转码(若直播间提供3种清晰度供用户选择观看,则需要三个不同的转码容器进行转码);其中,转码容器与接收主播端推流的边缘计算节点处于同一集群,而在同一集群内部将边缘计算节点接收到的源直播流通过转码容器进行转码不需要进行公网传输。
78.转码核数:进行转码处理所需的运算资源,即转码资源中的一类。
79.预留转码资源信息:预先为转码处理所保留的运算资源。
80.人数统计服务:用于统计观看人数以及计算直播间各清晰度的卡顿率的功能模块。
81.转推服务:用于根据卡顿情况通知转码容器需要将相应清晰度的直播流转推至其他cdn的功能模块。
82.图1示出了根据本技术一个实施例的直播质量保障方法的流程示意图,如图1所示,该方法包括如下步骤:
83.步骤s101,根据各个地区的多个目标直播间的转码相关信息,确定各个地区的预留转码资源信息。
84.目标直播间是指从直播平台的多个直播间中筛选出来的需要进行转码资源信息预留的直播间,具体可以是各个地区的头部直播间等。由于通常头部直播间吸引了大部分的观众进行观看,在观看人数众多的情况下也就更容易出现卡顿等问题,因此将头部直播间作为目标直播间,对其进行转码资源信息预留,能够有效、便捷地改善直播平台中大部分观众的观看体验。
85.其中,转码相关信息包括:目标直播间的清晰度集合以及清晰度集合中每个清晰度对应的转码资源信息。清晰度集合是指对源直播流进行转码处理所得到的清晰度的集合。在本实施例中,以与源直播流的清晰度是否相同来对清晰度集合中所包括的清晰度进行分类,具体的,清晰度集合中的清晰度可包括:不同于源直播流的清晰度的至少一个第一清晰度;清晰度集合中的清晰度还可包括:与源直播流的清晰度相同的第二清晰度。其中,第二清晰度的转码流的流标识不同于源直播流的流标识。为了与未转码的源直播流进行区分,可以通过不同的流标识对未转码的源直播流和第二清晰度的转码流进行表示,以便在推流时便捷地采用第二清晰度的转码流。
86.此外,每个清晰度和转码资源信息本质上是具有对应关系,即需要多少转码资源信息来完成对某个清晰度的转码工作是确定的,因此,通过获取转码相关信息中目标直播间的清晰度集合即可便捷地确定清晰度集合总体对应的转码资源信息。其中,转码资源信息一般可以包括:cpu资源、转码核数、内存等。
87.一般情况下,清晰度可分为多个种类,例如分别为流畅、标清、高清、超清、蓝光等。为了保证直播具有较好的画质,源直播流的清晰度一般采用较高清晰度,通常为蓝光清晰度等。以源直播流的清晰度为蓝光为例,第二清晰度包括蓝光清晰度,第一清晰度则可以包括低于蓝光清晰度的超清清晰度、高清清晰度、标清清晰度等。在本实施例中,不仅可以通过转码得到至少一个第一清晰度的转码流,还可以通过转码得到第二清晰度的转码流,为
用户提供了不同清晰度的多种选择,以便用户根据自身需求选择观看。
88.由于中心转码方式需要进行公网传输,容易在转码前就影响源直播流的稳定性;边缘转码则需要在集群内部转码,在其他直播流占用转码资源的情况下,极易出现转码资源不足的问题,进而导致目标直播间的转码效率降低。因此,避免直播流进行公网传输,同时保障在集群内部的转码效率成为了优选的直播质量保障方式。依据处于同一地区的目标直播间的数量,以及各个目标直播间各清晰度所需的转码资源信息,计算出该地区同一集群所需的转码资源信息。通过提前预留转码资源信息,获得了避免公网传输且有效提高转码效率的有益效果,充分保障了直播流的稳定性及其转码过程的效率。
89.步骤s102,当多个目标直播间中的任一目标直播间进行直播时,利用任一目标直播间所属地区的预留转码资源信息,对任一目标直播间对应的直播推流节点所传输的源直播流进行转码,得到各个清晰度的转码流。
90.具体的,直播推流节点可以为主播端,当任一目标直播间进行直播时,该任一目标直播间通过直播推流节点将源直播流推流至边缘计算节点,利用该任一目标直播间所属地区的预留转码资源信息,通过与边缘计算节点处于同一集群的转码容器对源直播流进行转码,经过转码容器进行转码得到与该转码容器相对应的清晰度的转码流,最终通过不同转码容器进行转码,得到各个清晰度的转码流。
91.在常用的转码方式中,中心转码过程如图2所示,图2示出了中心转码过程示意图;其中,主播通过其对应的直播推流节点(即主播端)将源直播流推流至边缘计算节点,再经过转推至中心转码集群进行转码,最终将源直播流和转码流通过内容分发网络cdn提供给播放器进行展示,以供用户观看。
92.边缘转码如图3所示,图3示出了边缘转码过程示意图;其中,主播通过其对应的直播推流节点(即主播端)将源直播流推流至边缘计算节点,再转推至与边缘计算节点处于同一集群的转码容器进行转码,最终将源直播流和转码流通过内容分发网络cdn提供给播放器进行展示。
93.此两种转码方式有其局限性,均存在各自的问题。如前文,中心转码方式的转码资源充足,但需要将源直播流推至中心转码集群,此过程需要通过公网进行传输,传输过程中直播流极有可能发生抖动,最终导致转码后的直播流质量受到影响。边缘转码方式直接通过主播端对应的边缘计算节点所在集群进行转码,不需要进行公网传输,避免公网传输导致的抖动,但集群中转码资源不足,转码过程的效率低。
94.在本实施例中,针对边缘转码方式,通过计算各个地区的目标直播间转码所需的转码资源信息,进行提前预留,使得采用边缘转码方式对目标直播间的源直播流进行转码处理时,能够有效地保障转码资源充足,实现高效的转码工作,保证转码质量的稳定性。
95.步骤s103,将各个清晰度的转码流传输至第一内容分发网络,以供将各个清晰度的转码流提供给播放器进行展示。
96.通过对源直播流进行转码,可以有效地处理源直播流出现闪断以及推流码率波动的问题。而现有技术中,并没有针对第二清晰度(源直播流对应的最高画质)的直播流进行转码,在用户选择最高清晰度的源直播流进行观看的情况下,若出现断流情况,屏幕会出现黑屏或显示“视频加载中”等情况,严重影响用户体验。
97.具体的,针对每个目标直播间,若该目标直播间对应的任一清晰度的转码流发生
断流,则在播放器中展示转码流中在断流发生前的帧图像,直至转码流恢复推流。另外,若源直播流在传输过程中码率发生抖动,则在转码过程中调整码率,以去除抖动。
98.对包括第二清晰度在内的各个清晰度对应的直播流进行转码,由于转码流会预留buffer(缓存),因此当源直播流发生闪断时,观看转码流的用户画面会在定格极短时间后即恢复播放,对于用户而言,卡顿感较小或根本感受不到卡顿;而当源直播流码率发生抖动时,通过转码得到的转码流,可以实现抹平抖动。通过对各个清晰度对应的直播流都进行转码,保证了各个清晰度对应直播流的质量,有效消除了由于闪断和码率抖动导致的观看卡顿,提升了用户的观看体验。
99.图4示出了根据本技术一个实施例的源直播流边缘转码过程示意图;其中,主播通过主播端(即直播推流节点)将源直播流推流至直播间所属地区的边缘计算节点,并利用与该边缘计算节点处于同一集群的转码容器进行转码,其中,将该集群称为集群a,在集群a中利用预先确定数量的预留转码资源信息,将源直播流按照清晰度集合中的不同清晰度,通过与各清晰度相对应的转码容器进行转码,图中示意性地示出了对两个清晰度的转码,这两个清晰度分别为第二清晰度和一个第一清晰度,其中一个转码容器通过对源直播流进行拉流并按照第二清晰度对源直播流进行转码得到第二清晰度的转码流,另一转码容器则通过对源直播流进行拉流并按照第一清晰度对源直播流进行转码得到第一清晰度的转码流。将源直播流、第一清晰度的转码流以及第二清晰度的转码流传输至第一内容分发网络(即图中所示的cdn a),并提供给播放器进行展示。
100.其中,对经过转码后得到的第二清晰度的转码流(与源直播流清晰度相同)进行重命名,由于在清晰度相同的情况下,默认产生的直播流的流标识(如名称)也相同,即若不对流标识进行修改将会导致由边缘计算节点直接推流的源直播流与经过转码的第二清晰度的转码流的流标识相同。因此,如图4所示,假设源直播流的流标识为:live_a;通过拉流和降清晰度转码得到的第一清晰度的转码流的流标识为:live_a_b;对源直播流进行同清晰度转码得到的第二清晰度的转码流命名其流标识为:live_a_c;优选的,若用户请求观看与源直播流的清晰度相同的直播流,在内容分发网络进行调度时,判断是否存在第二清晰度的转码流,即live_a_c;若存在转码流live_a_c,则优先利用转码流live_a_c进行播放;若不存在转码流live_a_c,只存在源直播流live_a时,则利用源直播流live_a进行播放。通过优先使用转码流live_a_c进行播放的方式,能够有效地处理源直播流出现闪断以及推流码率波动的问题,保障了播放过程的稳定和流畅并减少卡顿。
101.优选的,第一内容分发网络为直播流当前使用的cdn,用于对直播流进行拉流观看。直播间中的观众通过播放器从该cdn处获取播放地址,进行观看。
102.根据本技术实施例提供的一种直播质量保障方法,根据各个地区的多个目标直播间的转码相关信息,确定各个地区的预留转码资源信息;当多个目标直播间中的任一目标直播间进行直播时,利用任一目标直播间所属地区的预留转码资源信息,对任一目标直播间对应的直播推流节点所传输的源直播流进行转码,得到各个清晰度的转码流;将各个清晰度的转码流传输至第一内容分发网络,以供第一内容分发网络将各个清晰度的转码流提供给播放器进行展示。利用本技术提供的技术方案,能够通过为各个地区的目标直播间预留出转码处理所需的转码资源信息,有效地保障了目标直播间进行转码的效率,通过对源直播流进行转码以及内容分发网络转推进一步保障了直播流的清晰度和流畅度,有效提升
了直播质量。
103.图5示出了根据本技术另一个实施例的直播质量保障方法的流程示意图,如图5所示,该方法包括如下步骤:
104.步骤s501,从多个直播间中确定多个目标直播间。
105.具体的,获取在第一预设时段内每个直播间的观看人数;按照观看人数从多到少的顺序对多个直播间进行排列,选取排列靠前的预设数量的直播间作为目标直播间。
106.例如,目标直播间的数量可以为2000个,即目标直播间为统计时以观看人数进行排序的前2000个直播间;第一预设时段可以为每天的晚高峰时段,每天的晚高峰时段观众人数最多,便于精准筛选出观看人数较多的头部直播间作为目标直播间。
107.步骤s502,从直播间数据中获取各个目标直播间的推流所在地信息,确定各个目标直播间所属地区。
108.进一步的,按照各个目标直播间的所属地区,对全部目标直播间进行划分,确定出每个地区中包含的目标直播间。
109.例如,根据2000个目标直播间的所属地区,所属地区为地区1的目标直播间有100个,所属地区为地区2的目标直播间为200个;即地区1包含的目标直播间为100个,地区2包含的目标直播间为200个。
110.步骤s503,针对各个地区中的每个地区,根据该地区中的各个目标直播间的清晰度集合以及每个清晰度对应的转码资源信息,计算得到该地区的预留转码资源信息。
111.在一种可选的实施方式中,针对每个地区,根据该地区中的各个目标直播间的清晰度集合以及每个清晰度对应的转码资源信息,计算各个目标直播间对应的基准转码资源信息;依据该地区的转码资源相关信息和/或各个目标直播间的直播间数据,对各个目标直播间对应的基准转码资源信息进行调整,得到各个目标直播间对应的预留转码资源信息,其中,该地区的转码资源相关信息可包括该地区的转码资源总量信息、该地区的转码资源使用信息等,目标直播间的直播间数据可包括目标直播间的热度数据(例如历史观看人数、关注人数)等;对该地区中的各个目标直播间对应的预留转码资源信息进行汇总,从而得到该地区的预留转码资源信息。本实施方式通过在目标直播间对应的基准转码资源信息的基础上,充分结合地区资源情况和/或直播间情况,动态地进行预留调整,有效保证了目标直播间的转码资源充足,在直播间所属地区完成对源直播流进行转码,得到各个清晰度的转码流。
112.具体的,以转码资源信息为转码核数为例,若地区1包含100个目标直播间,每个直播间的清晰度集合包括蓝光、超清和高清这3个清晰度,蓝光、超清和高清3个清晰度对应的所需转码核数分别为10核、5核、3核。因此,地区1中的各个目标直播间对应的基准转码核数应为:10+5+3=18核。
113.例如,以18核为基准,结合地区1的地区资源情况动态调整地区1中各个目标直播间对应的基准转码核数,得到各个目标直播间对应的预留转码核数。例如,根据地区1的地区资源情况可知,地区1的转码核数总量较多且当前转码核数已使用核数较少,说明地区1还具有较为充足的转码资源可供使用,那么可在目标直播间对应的基准转码核数的基础上进行较大比例的调高,例如调高至22核,作为目标直播间对应的预留转码核数,以确保目标直播间的转码资源较为充足,能够高效地进行转码处理。
114.又如,根据地区1的地区资源情况可知,地区1的转码核数总量较少或当前转码核数已使用核数较多,那么可在目标直播间对应的基准转码核数的基础上进行较小比例的调高,例如调高至19核,或者也可直接将目标直播间对应的基准转码核数作为目标直播间对应的预留转码核数,从而保障目标直播间能够正常地进行转码处理。
115.又如,根据各个目标直播间的直播间数据可知,在地区1中,目标直播间1的热度高于目标直播间2的热度,那么可在基准转码核数的基础上,为热度较高的目标直播间预留更多的转码核数,如将目标直播间1对应的预留转码核数确定为22核,将目标直播间2对应的预留转码核数确定为20核。通过这种方式可确保热度更高的目标直播间具有更为充足的转码资源。
116.具体的,根据上述计算方法,以周为单位,根据每周之中不同时间点的数据得到的预留转码资源信息,通过计算平均值,最终确定出每周该地区的预留转码资源信息。其中,以每周最终计算得到的预留转码资源信息确定下一周的预留数值,依次类推,进行数据更新。
117.优选的,根据观看人数将周内分为两个阶段:工作日阶段和休息日阶段,分别对应周一至周四、周五至周日;对上述两个分别计算预留转码资源信息的平均值,每周计算出的每个阶段的预留转码资源信息分别为下一周该阶段的预留数值;其他节假日的预留数值按照最近一次得出的周五至周日这一休息日阶段的预留转码资源信息确定。
118.仍以地区1为例,若经过本周的计算,得到工作日阶段的预留转码核数为1800核,休息日阶段的预留转码核数为2400核,则下一周的工作日阶段地区1预留1800核进行转码,休息日阶段预留2400核进行转码。
119.步骤s504,接收任一目标直播间的直播请求,根据直播请求确定任一目标直播间所属地区。
120.其中,直播请求中可携带有直播间标识和/或推流所在地信息。本领域技术人员可根据实际需要设置直播请求所包括的信息,此处不做限定。通常情况下,直播请求中包括有用户所请求的直播间的直播间标识、发起直播请求的用户的用户标识、请求时间等信息,进一步还可包括推流所在地信息等。若直播请求中携带有推流所在地信息,则优先根据推流所在地信息来确定目标直播间所属地区;若直播请求中未携带有推流所在地信息而携带有直播间标识,则可根据直播间标识来确定目标直播间所属地区。具体的,若直播请求中携带有推流所在地信息,则根据推流所在地信息,确定任一目标直播间所属地区;若直播请求中未携带有推流所在地信息,则根据直播请求中携带的直播间标识查找直播间标识对应的直播间数据,从直播间标识对应的直播间数据中获取推流所在地信息,根据推流所在地信息,确定任一目标直播间所属地区。
121.步骤s505,从任一目标直播间所属地区的预留转码资源信息中获取任一目标直播间对应的预留转码资源信息。
122.具体的,根据该任一目标直播间中不同清晰度对应的所需转码资源信息,确定出该目标直播间对应的预留转码资源信息,并从该目标直播间所属地区的预留转码资源信息中获取。
123.步骤s506,利用任一目标直播间对应的预留转码资源信息,对任一目标直播间对应的直播推流节点所传输的源直播流进行转码,得到各个清晰度的转码流。
124.通过计算同一地区的目标直播间在高峰时段所需的转码资源信息,进行提前预留,使得同一地区内的目标直播间在进行转码时拥有足够的转码资源,充分保障了包括高峰时段在内的所有时间段的转码效率。
125.步骤s507,将各个清晰度的转码流传输至第一内容分发网络,以供第一内容分发网络将各个清晰度的转码流提供给播放器及进行展示。
126.在将各个清晰度的转码流传输至第一内容分发网络之后,图6示出了根据本技术另一个实施例的直播质量保障方法中卡顿转推方法流程示意图,如图6所示,该方法包括如下步骤:
127.s601,获取播放器的心跳数据。
128.具体的,获取播放器每隔第二预设时段上报的心跳数据。其中,心跳数据包括:直播间标识、当前卡顿信息以及用户观看的清晰度。
129.优选的,第二预设时段可以由用户自行设置;心跳数据中,直播间标识一般可以为房间号;当前卡顿信息用于表示当前是否卡顿,一般可以根据当前用户在观看该直播间的直播时的传输速率来判断是否卡顿;用户观看的清晰度即为用户在直播间提供的清晰度集合中所选择的清晰度。
130.s602,根据心跳数据,计算多个目标直播间中的每个目标直播间对应的各个清晰度的卡顿率。
131.具体的,针对每个目标直播间,根据该目标直播间的目标直播间标识,从心跳数据中提取直播间标识为目标直播间标识的心跳数据,得到该目标直播间对应的心跳数据;接着根据该目标直播间对应的心跳数据中的当前卡顿信息以及用户观看的清晰度,确定该目标直播间对应的各个清晰度的卡顿人数以及各个清晰度的观看总人数;然后依据各个清晰度的卡顿人数以及各个清晰度的观看总人数,计算该目标直播间对应的各个清晰度的卡顿率。其中,某一清晰度的卡顿率=该清晰度的卡顿人数/该清晰度的观看总人数。
132.s603,针对每个目标直播间,若该目标直播间对应的任一清晰度的卡顿率超过预设阈值,则将该卡顿率对应的清晰度的转码流转推至第二内容分发网络,或者,将该目标直播间对应的各个清晰度的转码流转推至第二内容分发网络。
133.具体的,若目标直播间中的各清晰度的卡顿率未超过预设阈值,则转码推流过程如图7所示,图7示出了根据本技术一个实施例的正常推流过程示意图。其中,主播通过主播端(即直播推流节点)将源直播流推流至边缘计算节点,通过与边缘计算节点处于同一集群(即集群a)的转码容器进行转码,其中,利用源直播流进行最高清晰度转码,并通过拉流进行降清晰度转码;随后,将边缘计算节点直接传输的源直播流(live_a)、最高清晰度(即第二清晰度)的转码流(live_a_c)、降清晰度(即第一清晰度)的转码流(live_a_b)通过第一内容分发网络(cdn a)提供给播放器进行展示;通过获取播放器的心跳数据,以及人数统计服务进行观看人数的统计,计算该目标直播间中各清晰度的卡顿率,在卡顿率未超过预设阈值的情况下,保持当前直播流的传输流程。
134.具体的,若目标直播间中的任一清晰度的卡顿率超过预设阈值,则转码推流过程如图8所示,图8示出了根据本技术一个实施例的自动转推过程示意图。其中,主播通过主播端将源直播流推流至边缘计算节点,通过与边缘计算节点处于同一集群(即集群a)的转码容器进行转码,其中,利用源直播流进行最高清晰度转码,并通过拉流进行降清晰度转码;
随后,将边缘计算节点直接传输的源直播流(live_a)、最高清晰度的转码流(live_a_c)、降清晰度的转码流(live_a_b)通过第一内容分发网络(cdn a)提供给播放器进行展示。
135.在某个清晰度的卡顿率超过预设阈值时,则说明第一内容分发网络存在异常(异常可能是网络信号问题、带宽问题,在此不做限定),基于转推服务,自动将该清晰度的直播流在经过转码容器进行转码后转推至第二内容分发网络(cdn b),由第二内容分发网络将该清晰度的转码流提供给播放器进行展示;例如,清晰度为蓝光的源直播流在经过转码后形成蓝光转码流,当该蓝光转码流在通过第一内容分发网络提供至播放器进行播放时的卡顿率超过预设阈值时,则不再将该蓝光转码流转推至第一内容分发网络,而是直接转推至第二内容分发网络提供至播放器进行播放。
136.若该目标直播间的全部清晰度的直播流的卡顿率均超过预设阈值,则直接将该目标直播间对应的各个清晰度的转码流转推至第二内容分发网络,以提供至播放器进行播放。优选的,在完成自动转推后进入直播间的观众,会直接获取到第二内容分发网络的直播播放地址,进行观看。并且,之前已进入该直播间的观众重新请求调度系统的时候,也会获取到第二内容分发网络的直播播放地址。通过这种处理方式有效地解决了第一内容分发网络发生异常时的直播卡顿问题。
137.优选的,第二内容分发网络为当前使用的cdn之外的其他网络传输状况较好的cdn。
138.通过本实施例,基于从播放器的心跳数据,来计算任一目标直播间中各个清晰度所对应转码流的卡顿率,对卡顿率超过预设阈值的清晰度对应的转码流,在转码后进行转推,通过原cdn之外的另一cdn提供至播放器进行播放。本方案依据卡顿率筛选出发生卡顿的清晰度对应的转码流,将其转推至另一个cdn来进行分发播放。以此,提供了一种当卡顿发生时即可生效的保障处理方法,通过精确筛选保证了目标直播间中各个清晰度对应的直播流播放的流畅性。
139.图9示出了根据本技术一个实施例的直播质量保障装置的结构框图,如图9所示,该装置包括:确定模块901、转码模块902和分发模块903;其中,
140.确定模块901,用于根据各个地区的多个目标直播间的转码相关信息,确定各个地区的预留转码资源信息。
141.具体的,转码相关信息包括:目标直播间的清晰度集合以及清晰度集合中每个清晰度对转码资源信息。其中,清晰度包括:不同于源直播流的清晰度的至少一个第一清晰度。清晰度还包括:与源直播流的清晰度相同的第二清晰度;第二清晰度的转码流的流标识不同于源直播流的流标识。
142.具体的,确定模块901进一步用于:从多个直播间中确定多个目标直播间;从直播间数据中获取各个目标直播间的推流所在地信息,确定各个目标直播间所属地区;针对各个地区中的每个地区,根据该地区中的各个目标直播间的清晰度集合以及每个清晰度对应的转码资源信息,计算得到该地区的预留转码资源信息。
143.具体的,确定模块901进一步用于:获取在第一预设时段内每个直播间的观看人数;按照观看人数从多到少的顺序对多个直播间进行排列,选取排列靠前的预设数量的直播间作为目标直播间。
144.具体的,确定模块901进一步用于:针对每个地区,根据该地区中的各个目标直播
间的清晰度集合以及每个清晰度对应的转码资源信息,计算各个目标直播间对应的基准转码资源信息;依据该地区的转码资源相关信息和/或各个目标直播间的直播间数据,对各个目标直播间对应的基准转码资源信息进行调整,得到各个目标直播间对应的预留转码资源信息;对各个目标直播间对应的预留转码资源信息进行汇总,得到该地区的预留转码资源信息。
145.转码模块902,用于当多个目标直播间中的任一目标直播间进行直播时,利用任一目标直播间所属地区的预留转码资源信息,对任一目标直播间对应的直播推流节点所传输的源直播流进行转码,得到各个清晰度的转码流。
146.具体的,转码模块902进一步用于:接收任意目标直播间的直播请求,根据直播请求确定任一目标直播间所属地区;从任一目标直播间所属地区的预留转码资源信息中获取任一目标直播间对应的预留转码资源信息;利用任一目标直播间对应的预留转码资源信息,对任一目标直播间对应的直播推流节点所传输的源直播流进行转码,得到各个清晰度的转码流。
147.其中,直播请求中携带有直播间标识和/或推流所在地信息。转码模块902进一步用于:若直播请求中携带有推流所在地信息,则根据推流所在地信息,确定任一目标直播间所属地区;若直播请求中未携带有推流所在地信息,则根据直播请求中携带的直播间标识查找直播间标识对应的直播间数据,从直播间标识对应的直播间数据中获取推流所在地信息,根据推流所在地信息,确定任一目标直播间所属地区。
148.分发模块903,用于将各个清晰度的转码流传输至第一内容分发网络,以供第一内容分发网络将各个清晰度的转码流提供给播放器进行展示。
149.可选的,该装置还包括:卡顿检测模块904以及转推模块905。其中,卡顿检测模块904用于:获取播放器的心跳数据;根据心跳数据,计算多个目标直播间中的每个目标直播间对应的各个清晰度的卡顿率。转推模块905用于:针对每个目标直播间,若该目标直播间对应的任一清晰度的卡顿率超过预设阈值,则将该卡顿率对应的清晰度的转码流转推至第二内容分发网络,或者,将该目标直播间对应的各个清晰度的转码流转推至第二内容分发网络。
150.其中,心跳数据包括:直播间标识、当前卡顿信息以及用户观看的清晰度。具体的,卡顿检测模块904进一步用于:获取播放器每隔第二预设时段上报的心跳数据;针对每个目标直播间,根据该目标直播间的目标直播间标识,从心跳数据中提取直播间标识为目标直播间标识的心跳数据,得到该目标直播间对应的心跳数据;根据该目标直播间对应的心跳数据中的当前卡顿信息以及用户观看的清晰度,确定该目标直播间对应的各个清晰度的卡顿人数以及各个清晰度的观看总人数;依据各个清晰度的卡顿人数以及各个清晰度的观看总人数,计算该目标直播间对应的各个清晰度的卡顿率。
151.具体的,该装置进一步用于:针对多个目标直播间中的每个目标直播间,若该目标直播间对应的任一清晰度的转码流发生断流,则在播放器中展示转码流中断流发生前的帧图像,直至转码流恢复推流。
152.具体的,该装置进一步用于:若源直播流在传输过程中码率发生抖动,则在转码过程中调整码率,以去除抖动。
153.以上各模块的描述参照方法实施例中对应的描述,在此不再赘述。
154.根据本技术实施例提供的直播质量保障装置,根据各个地区的目标直播间的转码相关信息,确定各个地区的预留转码资源信息;当任一目标直播间进行直播时,利用任一目标直播间所属地区的预留转码资源信息,对任一目标直播间对应的直播推流节点所传输的源直播流进行转码,得到各个清晰度的转码流;将各个清晰度的转码流传输至第一内容分发网络,以供第一内容分发网络将各个清晰度的转码流提供给播放器进行展示。利用本技术提供的技术方案,基于转码能够保证直播流畅度,通过确定各个地区的预留转码资源信息,保障目标直播间进行转码的效率,并对直播间中包括最高画质在内的全部清晰度进行转码,保障了目标直播间提供的各个清晰度直播流的播放流畅性,同时通过对卡顿率的判断,利用自动转推更换内容分发网络,进一步保障了直播间的清晰度和流畅度,有效提升了直播质量。
155.本技术实施例还提供了一种非易失性计算机存储介质,计算机存储介质存储有至少一可执行指令,可执行指令可执行上述任意方法实施例中的直播质量保障方法。
156.图10示出了根据本技术实施例的一种计算设备的结构示意图,本技术实施例的具体实施例并不对计算设备的具体实现做限定。
157.如图10所示,该计算设备可以包括:处理器(processor)1002、通信接口(communications interface)1004、存储器(memory)1006、以及通信总线1008。
158.其中:
159.处理器1002、通信接口1004、以及存储器1006通过通信总线1008完成相互间的通信。
160.通信接口1004,用于与其它设备比如客户端或其它服务器等的网元通信。
161.处理器1002,用于执行程序1010,具体可以执行上述直播质量保障方法实施例中的相关步骤。
162.具体地,程序1010可以包括程序代码,该程序代码包括计算机操作指令。
163.处理器1002可能是中央处理器cpu,或者是特定集成电路asic(application specific integrated circuit),或者是被配置成实施本技术实施例的一个或多个集成电路。计算设备包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个cpu;也可以是不同类型的处理器,如一个或多个cpu以及一个或多个asic。
164.存储器1006,用于存放程序1010。存储器1006可能包含高速ram存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
165.程序1010具体可以用于使得处理器1002执行上述任意方法实施例中的直播质量保障方法。程序1010中各步骤的具体实现可以参见上述直播质量保障方法实施例中的相应步骤和单元中对应的描述,在此不赘述。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的设备和模块的具体工作过程,可以参考前述方法实施例中的对应过程描述,在此不再赘述。
166.在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本技术实施例也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本技术实施例的内容,并且上面对特定语言所做的描述是为了披露本技术实施例的最佳实施方式。
167.在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本技术实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
168.类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本技术实施例的示例性实施例的描述中,本技术实施例的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本技术实施例要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本技术实施例的单独实施例。
169.本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
170.此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本技术实施例的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
171.本技术实施例的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(dsp)来实现根据本技术实施例中的一些或者全部部件的一些或者全部功能。本技术实施例还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本技术实施例的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
172.应该注意的是上述实施例对本技术实施例进行说明而不是对本技术实施例进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本技术实施例可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
技术特征:1.一种直播质量保障方法,包括:根据各个地区的多个目标直播间的转码相关信息,确定各个地区的预留转码资源信息;当所述多个目标直播间中的任一目标直播间进行直播时,利用所述任一目标直播间所属地区的预留转码资源信息,对所述任一目标直播间对应的直播推流节点所传输的源直播流进行转码,得到各个清晰度的转码流;将所述各个清晰度的转码流传输至第一内容分发网络,以供所述第一内容分发网络将所述各个清晰度的转码流提供给播放器及进行展示。2.根据权利要求1所述的方法,其中,所述转码相关信息包括:目标直播间的清晰度集合以及所述清晰度集合中每个清晰度对应的转码资源信息。3.根据权利要求2所述的方法,其中,所述清晰度包括:不同于所述源直播流的清晰度的至少一个第一清晰度。4.根据权利要求3所述的方法,其中,所述清晰度还包括:与所述源直播流的清晰度相同的第二清晰度;所述第二清晰度的转码流的流标识不同于所述源直播流的流标识。5.根据权利要求2-4任一项所述的方法,其中,所述根据各个地区的多个目标直播间的转码相关信息,确定各个地区的预留转码资源信息进一步包括:从多个直播间中确定多个目标直播间;从直播间数据中获取各个目标直播间的推流所在地信息,确定各个目标直播间所属地区;针对各个地区中的每个地区,根据该地区中的各个目标直播间的清晰度集合以及每个清晰度对应的转码资源信息,计算得到该地区的预留转码资源信息。6.根据权利要求5所述的方法,其中,所述从多个直播间中确定多个目标直播间进一步包括:获取在第一预设时段内每个直播间的观看人数;按照观看人数从多到少的顺序对多个直播间进行排列,选取排列靠前的预设数量的直播间作为目标直播间。7.根据权利要求5或6所述的方法,其中,所述针对各个地区中的每个地区,根据该地区中的各个目标直播间的清晰度集合以及每个清晰度对应的转码资源信息,计算得到该地区的预留转码资源信息进一步包括:针对每个地区,根据该地区中的各个目标直播间的清晰度集合以及每个清晰度对应的转码资源信息,计算各个目标直播间对应的基准转码资源信息;依据该地区的转码资源相关信息和/或所述各个目标直播间的直播间数据,对所述各个目标直播间对应的基准转码资源信息进行调整,得到所述各个目标直播间对应的预留转码资源信息;对所述各个目标直播间对应的预留转码资源信息进行汇总,得到该地区的预留转码资源信息。8.根据权利要求1-7任一项所述的方法,其中,所述当所述多个目标直播间中的任一目标直播间进行直播时,利用所述任一目标直播间所属地区的预留转码资源信息,对所述任一目标直播间对应的直播推流节点所传输的源直播流进行转码,得到各个清晰度的转码流
进一步包括:接收任一目标直播间的直播请求,根据所述直播请求确定所述任一目标直播间所属地区;从所述任一目标直播间所属地区的预留转码资源信息中获取所述任一目标直播间对应的预留转码资源信息;利用所述任一目标直播间对应的预留转码资源信息,对所述任一目标直播间对应的直播推流节点所传输的源直播流进行转码,得到各个清晰度的转码流。9.根据权利要求8所述的方法,其中,所述直播请求中携带有直播间标识和/或推流所在地信息;所述根据所述直播请求确定所述任一目标直播间所属地区进一步包括:若所述直播请求中携带有推流所在地信息,则根据所述推流所在地信息,确定所述任一目标直播间所属地区;若所述直播请求中未携带有推流所在地信息,则根据所述直播请求中携带的直播间标识查找所述直播间标识对应的直播间数据,从所述直播间标识对应的直播间数据中获取所述推流所在地信息,根据所述推流所在地信息,确定所述任一目标直播间所属地区。10.根据权利要求1-9任一项所述的方法,其中,在将所述各个清晰度的转码流传输至第一内容分发网络之后,所述方法还包括:获取播放器的心跳数据;根据所述心跳数据,计算所述多个目标直播间中的每个目标直播间对应的各个清晰度的卡顿率;针对每个目标直播间,若该目标直播间对应的任一清晰度的卡顿率超过预设阈值,则将该卡顿率对应的清晰度的转码流转推至第二内容分发网络,或者,将该目标直播间对应的各个清晰度的转码流转推至第二内容分发网络。11.根据权利要求10所述的方法,其中,所述获取播放器的心跳数据进一步包括:获取所述播放器每隔第二预设时段上报的心跳数据。12.根据权利要求10或11所述的方法,其中,所述心跳数据包括:直播间标识、当前卡顿信息以及用户观看的清晰度;所述根据所述心跳数据,计算所述多个目标直播间中的每个目标直播间对应的各个清晰度的卡顿率进一步包括:针对每个目标直播间,根据该目标直播间的目标直播间标识,从所述心跳数据中提取直播间标识为所述目标直播间标识的心跳数据,得到该目标直播间对应的心跳数据;根据该目标直播间对应的心跳数据中的当前卡顿信息以及用户观看的清晰度,确定该目标直播间对应的各个清晰度的卡顿人数以及各个清晰度的观看总人数;依据所述各个清晰度的卡顿人数以及所述各个清晰度的观看总人数,计算该目标直播间对应的各个清晰度的卡顿率。13.根据权利要求1-12任一项所述的方法,其中,所述方法还包括:针对所述多个目标直播间中的每个目标直播间,若所述该目标直播间对应的任一清晰度的转码流发生断流,则在所述播放器中展示所述转码流中断流发生前的帧图像,直至所述转码流恢复推流。
14.根据权利要求1-13任一项所述的方法,其中,所述方法还包括:若所述源直播流在传输过程中码率发生抖动,则在转码过程中调整码率,以去除抖动。15.一种直播质量保障装置,包括:确定模块,适于根据各个地区的多个目标直播间的转码相关信息,确定各个地区的预留转码资源信息;转码模块,适于当所述多个目标直播间中的任一目标直播间进行直播时,利用所述任一目标直播间所属地区的预留转码资源信息,对所述任一目标直播间对应的直播推流节点所传输的源直播流进行转码,得到各个清晰度的转码流;分发模块,适于将所述各个清晰度的转码流传输至第一内容分发网络,以供所述第一内容分发网络将所述各个清晰度的转码流提供给播放器进行展示。16.一种计算设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如权利要求1-14中任一项所述的直播质量保障方法对应的操作。17.一种计算机存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令使处理器执行如权利要求1-14中任一项所述的直播质量保障方法对应的操作。
技术总结本申请实施例公开了一种直播质量保障方法、装置、计算设备和存储介质。其中,该方法包括:根据各个地区的多个目标直播间的转码相关信息,确定各个地区的预留转码资源信息;当其中任一目标直播间进行直播时,利用任一目标直播间所属地区的预留转码资源信息,对任一目标直播间对应的直播推流节点所传输的源直播流进行转码,得到各个清晰度的转码流;将各个清晰度的转码流传输至第一内容分发网络,以供第一内容分发网络将各个清晰度的转码流提供给播放器进行展示。本申请通过为目标直播间预留转码处理所需的转码资源信息,保证了转码资源充足,提高了转码效率,保障了直播流的转码稳定,并为用户提供了多种清晰度进行选择,极大地提升了用户体验。地提升了用户体验。地提升了用户体验。
技术研发人员:孙袁袁
受保护的技术使用者:上海哔哩哔哩科技有限公司
技术研发日:2022.07.20
技术公布日:2022/11/1