一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种音视频流的拉取方法、系统、服务器及介质与流程

2023-02-04 09:42:44 来源:中国专利 TAG:


1.本技术涉及音视频领域,特别是涉及一种音视频流的拉取方法、系统、服务器及介质。


背景技术:

2.随着科技的发展,观看音视频直播的用户在不断的增加,用户使用的当前客户端从源站进行拉流的策略主要有:实时音视频拉取策略、内容分发网络(cdn)拉取策略等;其中实时音视频拉取策略的延时一般为300ms以内,基本满足所有直播的业务要求;cdn拉流策略时延一般在3s到5s间,只能满足一些基本的业务要求。
3.但是,使用上述实时音视频拉取策略时,虽然延时低,用户有较好的使用体验,但是平台投入的成本会很高,而使用cdn拉取策略时,成本较低,但是延时很高,会影响用户的使用体验,而平台一般只单给用户使用一种拉流的策略,从而导致平台投入成本较高或使用户的使用体验较低。
4.因此,如何设计一种在控制拉流时延为一个较低值时,使成本也得到有效降低的拉流方法,是本领域技术人员亟待解决的问题。


技术实现要素:

5.本技术的目的是提供一种音视频流的拉取方法、系统、服务器及介质;以解决当下音视频的平台只给用户使用一种拉流策略导致的平台投入成本高或用户的使用体验较低的问题。。
6.为解决上述技术问题,本技术提供一种音视频流的拉取方法,包括:
7.获取用户在当前直播平台上的等级数据;
8.获取直播服务器当前的占用带宽值;
9.根据占用带宽值与带宽阈值的关系,以及等级数据确定用户对应的拉流类型。
10.优选地,获取用户在当前直播平台上的等级数据之前,还包括:
11.若与当前直播相关的参数满足预设条件,进入获取用户在当前直播平台上的等级数据步骤;
12.其中,直播相关的参数至少包括以下之一:用户的等级、或带宽阈值或直播服务器的运行时间;
13.对应的,预设条件至少包括以下之一:
14.用户的等级数据发生更新;
15.或,带宽阈值发生变化;
16.或,直播服务器的运行时间达到预设周期时间。
17.优选地,拉流类型包括:实时拉流和cdn拉流;等级数据包括:等级和等级分数;
18.根据占用带宽值与带宽阈值的关系,以及等级数据确定用户对应的拉流类型包括:
19.若占用带宽值已达到带宽阈值,则根据等级分数的排序结果确定用户对应的拉流类型;
20.若占用带宽值未达到带宽阈值,则根据等级确定用户对应的拉流类型。
21.优选地,根据等级确定用户对应的拉流类型包括:
22.若等级为最高等级,则确定用户对应的拉流类型为实时拉流;
23.若等级为非最高等级,则根据占用带宽值与带宽阈值的关系确定用户对应的拉流类型。
24.优选地,根据等级分数的排序结果确定用户对应的拉流类型包括:
25.从等级分数的排序结果中判断用户的等级分数是否大于预设等级分数;
26.若大于,则确定用户对应的拉流类型为实时拉流;
27.若不大于,则确定用户对应的拉流类型为cdn拉流;
28.或,
29.根据占用带宽值和带宽阈值的关系确定待加入到实时拉流中用户的第一预设数量;
30.以等级分数由高到低的顺序从等级分数的排序结果中选取第一预设数量的用户;
31.将选取的用户对应的拉流类型确定为实时拉流,并将其余用户对应的拉流类型确定为cdn拉流。
32.优选地,根据行为数据信息确定等级和等级分数;
33.其中,通过行为数据信息确定用户对应的等级分数,并根据等级分数确定用户对应的等级。
34.优选地,等级包括第一等级、第二等级、第三等级,其中第一等级为最高等级;第二等级和第三等级为非最高等级;
35.若等级为非最高等级,则根据占用带宽值与带宽阈值的关系确定用户对应的拉流类型包括:
36.当等级为第二等级时,判断占用带宽值是否小于第一预设值,其中第一预设值小于带宽阈值;
37.若占用带宽值不小于第一预设值,则确定用户对应的拉流类型为cdn拉流;
38.若占用带宽值小于第一预设值,则确定用户对应的拉流类型为实时拉流;
39.当等级为第三等级时,判断占用带宽值是否小于第二预设值;
40.若占用带宽值不小于第二预设值,则确定用户对应的拉流类型为cdn拉流;
41.若占用带宽值小于第二预设值,则确定用户对应的拉流类型为实时拉流;
42.其中第二预设值小于第一预设值。
43.优选地,若最高等级的用户对应的占用带宽值不大于带宽阈值,还包括:
44.获取非最高等级用户对应的等级分数的排序结果,从排序结果中根据等级分数由高到低的顺序选取第二预设数量的用户,确定用户对应的拉流类型为实时拉流;
45.其中最高等级用户和第二预设数量的用户对应的占用带宽值不大于带宽阈值。
46.优选地,若占用带宽值小于第三预设值,则还包括:
47.根据等级分数由高到低的顺序对使用cdn拉流的用户进行排序;
48.从排序的结果中由高到低选取第三预设数量的用户,并将用户使用的cdn拉流调
整为实时拉流;
49.其中,第三预设值小于带宽阈值。
50.优选地,若占用带宽值大于第四预设值,则还包括:
51.根据等级分数由低到高的顺序对使用实时拉流的用户进行排序;
52.从排序的结果中由低到高选取第四预设数量的用户,并将用户使用的实时拉流调整为cdn拉流;
53.其中,第四预设值大于第三预设值且小于带宽阈值。
54.优选地,行为数据信息包括:用户的累计充值金额、用户的当天消费总金额、用户的当天观看直播总时长、用户的当天总互动次数;
55.通过行为数据信息确定用户对应的等级分数包括:根据预设公式确定累计充值金额、当天消费总金额、当天观看直播总时长和当天总互动次数对应的用户的等级分数;
56.其中预设公式为:
57.f(x)=r(x)*a g(x)*b t(x)*c c(x)*d
58.其中,f(x)为用户的等级分数,r(x)为用户的累计充值金额,g(x)为用户的当天消费总金额,t(x)为用户的当天观看直播总时长,c(x)为用户的当天总互动次数,a、b、c、d为可根据实际情况进行调整的对应系数,均小于1。
59.优选地,等级包括第一等级、第二等级、第三等级,其中第一等级为最高等级;第二等级和第三等级为非最高等级;
60.根据等级分数确定用户对应的等级包括:
61.对等级分数进行排序;
62.在排序的结果中,根据等级分数由高到低的顺序确定前一部分用户对应的等级为第一等级;确定中间部分用户对应的等级为第二等级,确定后一部分用户对应的等级为第三等级。
63.优选地,根据占用带宽值与带宽阈值的关系,以及等级数据确定用户对应的拉流类型之后,还包括:
64.根据预设抖动概率控制用户的拉流类型从当前拉流类型变化为其它拉流类型。
65.优选地,带宽阈值为预设天数内带宽阈值的最大值。
66.为解决上述技术问题,本技术还提供一种音视频流的拉取系统,包括:
67.第一获取模块,用于获取用户在当前直播平台上的等级数据;
68.第二获取模块,用于获取直播服务器当前的占用带宽值;
69.确定模块,用于根据占用带宽值与带宽阈值的关系,以及等级数据确定用户对应的拉流类型。
70.为解决上述技术问题,本技术还提供一种服务器,包括存储器,用于存储计算机程序;
71.处理器,用于执行计算机程序时实现上述的音视频流的拉取方法的步骤。
72.为解决上述技术问题,本技术还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述的音视频流的拉取方法的步骤。
73.本技术所提供的音视频流的拉取方法,包括:获取用户在该直播平台的等级数据
和直播平台对应的直播服务器的占用带宽值;根据占用带宽值与带宽阈值的关系,以及等级数据确定用户的拉流类型;通过上述方法,避免平台单给平台内的用户使用一种拉流,造成的平台投入成本高或用户延时长的问题,使用户可以根据自身的等级数据以及占用带宽值与带宽阈值的关系而分配不同的拉流类型,使用户能够享受多种拉流类型的服务;在平台的成本得到降低的同时,保证用户有良好的使用体验。
74.本技术还提供了一种音视频流的拉取系统、服务器、计算机可读存取介质,与上述方法对应,故具有相同的有益效果。
附图说明
75.为了更清楚地说明本技术实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
76.图1为一种标准音视频直播实时拉流对应的架构图;
77.图2为一种标准音视频直播cdn拉流对应的架构图;
78.图3为本技术实施例提供的一种音视频流的拉取方法的流程图;
79.图4为本技术实施例提供的一种音视频流的拉取方法在应用场景的判断流程图;
80.图5为本技术实施例提供的一种音视频流的拉取系统的结构图;
81.图6为本技术实施例提供的一种服务器的结构图。
具体实施方式
82.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本技术保护范围。
83.本技术的核心是提供一种音视频流的拉取方法、系统、服务器及介质,主要涉及音视频领域,且主要用于直播平台下的相关直播服务器中;用于实现对该直播平台的用户提供多种拉流类型的服务;避免直播平台只给用户使用一种拉流造成的平台投入成本高或用户的使用体验较低的问题。
84.为了使本技术领域的人员更好地理解本技术方案,下面结合附图和具体实施方式对本技术作进一步的详细说明。
85.针对标准音视频的直播,直播平台需要给用户分配使用的流量类型,从而使用户能够使用该类型的流量在该平台内进行观看;其中直播平台分配给客户端的流量的拉流策略一般为:实时音视频拉取策略、低延时直播拉取策略和cdn拉取策略;其中,如图1给出一种标准音视频直播实时拉流对应的架构图;直播平台的主播推流端设备1直接给直播服务器源站2传送推流的信息,直播服务器源站2从而直接给用户拉流端设备3推送实时拉流。图2给出一种标准音视频直播cdn拉流对应的架构图;同样的直播平台的主播推流端设备1给直播服务器源站2传送推流的信息,直播服务器源站2将推流信息传送给cdn节点服务器4,通过cdn节点服务器4给用户拉流端推送cdn拉流;在上述架构中,直播平台的主播推流端设备1对应平台内的各直播间,即主播端所在设备,如电脑、手机等;也可以为多个,图中用一
个便于说明;需要向直播服务器源站2请求给该直播间内用户分配拉流,其中直播服务器源站2,一般为商家具有的后台服务器,一般为一个,若平台较大,直播服务器源站2也可以为多个,其用于为用户推送实时拉流;cdn节点服务器4也是一种服务器,用于为用户推送cdn拉流;其中,cdn节点服务器4会有多个;用户拉流端设备3,即用户观看直播所用设备,如电脑、手机等设备,也可以具有多个,用于接收服务器发送的拉流。
86.其中,使用实时音视频拉取策略、低延时直播拉取策略,用户端的延时比较低,用户的体验感较好,但是成本较高;而使用cdn拉取策略,用户端的延时比较高,用户体验感较差,但是相对于上述两种策略,价格很低;但直播平台一般只会给用户分配一种拉流策略,如,为平台内所有用户分配实时拉流;或为平台内所有用户分配cdn拉流,这就导致直播平台带宽成本很高,或直播平台中用户的体验较差;并没有一种组合拉流的方式,能够既提升用户的使用体验,也可以降低平台的带宽成本。
87.所以,为了解决上述的问题,本技术提供了一种音视频流的拉取方法,通过根据用户在该平台的一些数据信息和直播服务器当前带宽值,给用户分配不同的拉流类型。
88.图3为本技术实施例提供的一种音视频拉取方法的流程图,该方法具体包括:
89.s10:获取用户在当前直播平台上的等级数据。
90.本实施例中提到的当前直播平台,即给用户分配拉流类型的平台,其中该平台不限于直播行业,若其它行业的平台也需要为用户分配拉流类型,可以更改为该行业平台。
91.等级数据是能够反应该用户在该平台重要程度的数据,该等级数据是平台通过用户的充值金额,或在该平台的互动活跃程度等信息进行确定;等级数据具体可以为等级,平台根据上述的信息,给用户分配不同的等级,从而实现根据等级,为用户分配不同的拉流类型;其中,等级数据会由于用户在该平台互动或充值金额等行为而产生变化;且等级数据一般存储在该直播平台的存储器中,可以直接对该数据进行读取。
92.s11:获取直播服务器当前的占用带宽值。
93.其中,直播服务器管理上述直播平台中的各直播间或部分直播间;其中这里的直播间对应上述的直播平台的主播推流端设备1;直播服务器对应上述的直播服务器源站2,能够为直播间内的用户推送实时拉流。
94.其中占用带宽值为当前时刻该直播服务器推送的实时拉流对应的带宽值,一般的,在该直播服务器下的直播间进行观看的用户越多,该占用带宽值也会越高。因为实时拉流对应的带宽成本较高,所以若想实现有效的控制直播平台投入的带宽成本,就需要对占用的带宽值进行控制。
95.其中该占用带宽值是根据直播服务器下主播的开播码率和观看的用户人数计算得出,其中具体的该占用带宽值为开播码率和人数的乘积。
96.s12:根据占用带宽值与带宽阈值的关系,以及等级数据确定用户对应的拉流类型。
97.带宽阈值是直播服务器推送的实时拉流对应的最大带宽值,其中本实施例中不限定占用带宽值与带宽阈值的关系具体为何种关系,例,该关系可以为两值的大小关系;若占用带宽值超出带宽阈值,则需要平台投入额外的带宽成本;若占用带宽不超出该阈值,则直播平台投入的带宽成本可以得到有效控制,实现节省成本的目的;其中该带宽阈值的设定可以是历史数据中占用带宽值达到的最大值;也可以根据历史数据中占用带宽值计算出的
平均值,这里不做具体限定。
98.具体的如何根据上述的信息确定用户对应的拉流类型,例如,当占用带宽值远小于带宽阈值时,表示该时间内该直播间的用户较少,此时可以不考虑用户的等级数据,直接为该直播间内所有用户分配低延时的实时拉流;而当占用带宽值大于带宽阈值时,表示该直播间用户较多,为了控制带宽成本,会根据等级数据选取用户,将等级数据对应重要程度较高的用户的拉流类型设置为实时拉流,保证该部分用户的流畅,给等级数据对应重要程度较低的用户分配cdn拉流,从而有效的降低占用带宽值,避免占用带宽值大于带宽阈值,实现控制平台投入的带宽成本。
99.通过本实施例提供的音视频拉取方法,避免平台单给平台内的用户使用一种拉流,造成的平台投入成本高或用户延时长的问题,使用户可以根据自身的等级数据以及占用带宽值与带宽阈值的关系而分配不同的拉流类型,使用户能够享受多种拉流类型的服务;在平台的成本得到降低的同时,保证用户有良好的使用体验。
100.在上述实施例的基础上,本实施例限定在s10步骤之前,还包括如下步骤:若与当前直播相关的参数满足预设条件,进入s10步骤;
101.其中,直播相关的参数至少包括以下之一:用户的等级、或带宽阈值或直播服务器的运行时间;
102.对应的,预设条件至少包括以下之一:
103.用户的等级数据发生更新;
104.或,带宽阈值发生变化;
105.或,直播服务器的运行时间达到预设周期时间。
106.本实施例中限定,当直播相关的参数满足上述的预设条件时,才能进入s10步骤,其中,用户的等级数据发生改变和带宽阈值发生变化是指s12步骤中的判断的数据发生改变,所以需要重新对数据进行获取;而直播服务器的运行时间达到预设周期时间是指,定时对平台内用户的拉流类型进行调整;其中该预设周期时间为该直播平台自行设置,例如30s;
107.通过上述设置预设条件的方法能够对用户拉流类型进行及时的更改;例如,当用户的等级数据对应的重要程度较低时,分配到的是延时较高的cdn拉流,而该用户在直播平台内通过积极互动,或在平台内进行充值等行为,使其等级数据对应的重要程度得到提高,达到为该用户分配低延时的实时拉流的条件,从而重新分配到延时较低的实时拉流,从而提高了自身观看体验。或某直播间内用户较多,对应的直播服务器的占用带宽值较高,部分用户分配不到实时拉流,但随着用户的流动,当前直播间内的用户有较多流失,使该直播间对应的占用带宽值得到降低,从而使分配不到实时拉流的用户能够使用到实时拉流,提高用户的观看体验。
108.通过本实施例设置的预设条件,能够有效的对用户的拉流类型进行更改,在占用带宽值不超出带宽阈值的前提下,使用户能够分配到低延时的拉流类型,提高用户的使用体验。
109.作为一种优选的实施例,本实施例限定拉流类型包括实时拉流和cdn拉流;等级数据包括:等级和等级分数;s12步骤包括:
110.若占用带宽值已达到带宽阈值,则根据等级分数的排序结果确定用户对应的拉流
类型;
111.若占用带宽值未达到带宽阈值,则根据等级确定用户对应的拉流类型。
112.其中等级数据包括两种反应用户对于该平台重要程度的指标,分别为用户的等级和等级分数;当占用带宽值未达到带宽阈值时,此时使用实时拉流的用户较少,能够通过等级对用户的拉流类型确定,如高等级用户分配实时拉流,低等级用户分配cdn拉流。而当占用带宽值达到带宽阈值时,此时使用实时拉流的高等级用户人数过多,且仍存在高等级用户未分配拉流类型,所以通过等级并不能够避免占用带宽值超出带宽阈值问题的发生;所以此时要根据更为具体的等级分数,对用户的拉流类型进行判断,如根据等级分数由高到低选取用户分配实时拉流,直到占用带宽值达到带宽阈值,将其他未被选取的用户分配cdn拉流。
113.在本实施例中,限定出两种对用户拉流类型进行确定的方法,从而能够在占用带宽值与带宽阈值的关系,选取等级或等级分数确定用户的拉流类型,实现更为灵活地对用户拉流类型进行确定。
114.在上述实施例的基础上,本实施例限定如何根据等级确定用户对应的拉流类型,包括:
115.若等级为最高等级,则确定用户对应的拉流类型为实时拉流;
116.若等级为非最高等级,则根据占用带宽值与带宽阈值的关系确定用户对应的拉流类型。
117.对等级进行分类,将等级较高的用户划分为最高等级用户,并将最高等级用户的拉流类型直接确定为实时拉流;将等级较低的用户划分为非最高等级用户;再根据占用带宽值和带宽阈值的关系进一步确定用户的拉流类型。其中,本实施例是将用户分为两个等级,也可以对等级进行更为详细的细分,分为三个或更多等级,但在本实施例不对更为细分的等级进行说明。其中最高等级和非最高等级的判定可以为,判断用户的充值金额是否大于预设金额,若大于则为最高等级,若不大于则为非最高等级;或者判断用户优质评论的数量是否大于预设数量等,也可以综合考虑上述情况判断用户是否为最高等级用户。
118.本实施例,限定当用户的等级达到最高等级时,直接为该用户分配实时拉流;使对平台重要程度较高的用户能够直接享受优质的拉流服务,保证了该部分用户的使用体验。
119.在上述实施例的基础上,本实施例限定如何根据等级分数的排序结果确定用户对应的拉流类型,包括:
120.从等级分数的排序结果中判断用户的等级分数是否大于预设等级分数;
121.若大于,则确定用户对应的拉流类型为实时拉流;
122.若不大于,则确定用户对应的拉流类型为cdn拉流;
123.或,
124.根据占用带宽值和带宽阈值的关系确定待加入到实时拉流中用户的第一预设数量;
125.以等级分数由高到低的顺序从等级分数的排序结果中选取第一预设数量的用户;
126.将选取的用户对应的拉流类型确定为实时拉流,并将其余用户对应的拉流类型确定为cdn拉流。
127.其中,通过等级分数判定用户对应的拉流类型有两种,一种是在等级分数的排序
结果判断等级分数大于预设等级分数的用户,将该部分用户确定为实时拉流,若不大于,则将用户对应的拉流类型确定为cdn拉流,其中预设等级分数可以是直播平台根据历史数据进行设定,也可以根据当前用户各等级分数的占比进行确定。另一种是根据占用带宽值和带宽阈值的关系,确定需要加入实时拉流的用户的第一预设数量,其中第一预设数量确定和各用户对应的占用带宽值有关,且该第一预设数量的用户对应的总占用带宽值不超出带宽阈值;例如带宽阈值为100m,每个用户对应的占用带宽值为5m,第一预设数量设置为20;其中,具体的第一预设数量用户的选取过程为:从等级分数的排序结果中根据等级分数由高到低的顺序选取这第一预设数量的用户;其中等级分数高的用户其对该直播平台的价值更高;所以将选取出的用户的拉流类型确定为实时拉流,其余用户的拉流类型为cdn拉流。
128.本实施例,通过等级分数对用户的拉流类型进行确定,能够有效的控制使用实时拉流的用户人数,避免占用带宽值大于带宽阈值,有效地控制平台投入的带宽成本。
129.在上述实施例的基础上,限定通过行为数据信息确定等级和等级分数,其中,通过行为数据信息确定用户对应的等级分数,并根据等级分数确定用户对应的等级。
130.本实施例中,将所有对等级数据产生影响的信息,统称为行为数据信息,其中该行为数据信息可以对应上述实施例中提到的,用户充值金额,用户的交互次数、用户的优质评论条数等信息。其中根据行为数据信息确定等级分数,具体为,综合考虑行为数据信息中的各信息反应出用户对平台的重要程度,确定等级分数,并根据等级分数去确定等级;例如,若等级分数为100分,当用户的充值金额占80分,用户的交互次数占10分、优质评论条数占10分,根据用户上述信息的具体值,确定其等级分数;且将等级分数大于60分的设置为最高等级用户,不大于60分的设置为非最高等级用户。
131.上述实施例限定如何确定用户的等级分数,并限定通过等级分数获取等级;即可以同时根据等级和等级分数确定用户的拉流类型,从而能够更为准确的给每个用户推送给为适合的拉流类型,提高用户的使用体验。
132.在上述实施例的基础上,将等级分为第一等级、第二等级、第三等级;其中第一等级为最高等级;第二等级和第三等级为非最高等级;并对若等级为非最高等级,则根据占用带宽值与带宽阈值的关系确定用户对应的拉流类型限定,包括:
133.当等级为第二等级时,判断占用带宽值是否小于第一预设值,其中第一预设值小于带宽阈值;
134.若占用带宽值不小于第一预设值,则确定用户对应的拉流类型为cdn拉流;
135.若占用带宽值小于第一预设值,则确定用户对应的拉流类型为实时拉流;
136.当等级为第三等级时,判断占用带宽值是否小于第二预设值;
137.若占用带宽值不小于第二预设值,则确定用户对应的拉流类型为cdn拉流;
138.若占用带宽值小于第二预设值,则确定用户对应的拉流类型为实时拉流;
139.其中第二预设值小于第一预设值。
140.其中,本实施例具体限定如何根据占用带宽值与带宽阈值的关系确定非最高等级用户的拉流类型。其中第一预设值,第二预设值都小于带宽阈值;且第二预设值要小于第一预设值,其中第一预设值可以为带宽阈值的60%,第二预设值为带宽阈值的20%;当用户等级为第二等级时,此等级用户对平台的重要程度相对于第三等级用户更高,所以此等级用户在使用实时拉流的人数较少时,就能够使用到实时拉流;而第三等级用户对平台的重要
程度不高,只有使用实时拉流的人数过少时,才能够使用实时拉流;而不满足上述各条件的用户分配cdn拉流。
141.本实施例限定如何根据占用带宽值和带宽阈值的关系,进一步对非最高等级用户的拉流类型进行确定,能够为各等级的用户提供使用实时拉流的机会,从而提高用户的使用体验。
142.在上述实施例的基础上,限定若最高等级的用户对应的占用带宽值不大于带宽阈值,还包括:
143.获取非最高等级用户对应的等级分数的排序结果,从排序结果中根据等级分数由高到低的顺序选取第二预设数量的用户,确定用户对应的拉流类型为实时拉流;其中最高等级用户和第二预设数量的用户对应的占用带宽值不大于带宽阈值。
144.其中在等级分为最高等级和非最高等级的情况下,最高等级的用户对应的占用带宽值不大于带宽阈值,即最高等级的用户都分配到实时拉流后,实时拉流仍有剩余,此时会从非最高等级的用户中选取第二预设数量的用户,将这些用户的拉流类型确定为实时拉流,其中用到非最高等级用户对应的等级分数,从排序的结果中根据等级分数由高到低选取第二预设数量的用户;其中最高等级用户和第二预设数量的用户对应的总占用带宽值仍不大于带宽阈值;将其余用户的拉流类型确定为cdn拉流。
145.本实施例限定另一种根据等级确定用户的拉流类型的方法,通过结合等级和等级分数,从而使占用带宽值总保持高位,但并不超出带宽阈值,有效的控制带宽的成本。
146.本实施例作为一种优选的实施例,限定,若所述占用带宽值小于第三预设值,即当前使用实时拉流的用户过少时,则还包括:根据等级分数由高到低的顺序对使用cdn拉流的用户进行排序;从排序的结果中由高到低选取第三预设数量的用户,并将用户使用的cdn拉流调整为实时拉流;其中,第三预设值小于带宽阈值。
147.其中第三预设值可以为带宽阈值的10%;其中第三预设数量可以为总用户的10%;根据上述方法确定的第三预设数量的用户和原使用实时拉流的用户对应的总占用带宽值不大于带宽阈值。
148.本实施例中给出一种特殊情况,即用户使用的实时拉流过少,就会从使用cdn拉流的用户中选择部分等级分数较高的用户,将该部分用户的cdn拉流改变为实时拉流,从而提高该部分用户的使用体验。
149.在上述实施例的基础上,限定另一种特殊情况,若所述占用带宽值大于第四预设值,即当前使用实时拉流的用户过多时,则还包括:根据等级分数由低到高的顺序对使用实时拉流的用户进行排序;从排序的结果中由低到高选取第四预设数量的用户,并将用户使用的实时拉流调整为cdn拉流;其中,第四预设值大于第三预设值且小于带宽阈值。
150.本实施例中的第四预设值,可以为峰值带宽值的30%,第二预设数量的用户,在这里同样设置为总用户的10%;这里同样根据等级分数对使用实时拉流的用户进行排序,由高到低的顺序选取10%的用户,将该部分用户的实时拉流调整为cdn拉流;实现剩余使用实时拉流的用户对应的占用带宽值不大于带宽阈值。
151.本实施例限定出当用户使用的实时拉流过多时,要根据等级分数,从使用实时拉流的用户中选择等级分数较低的用户,将该部分用户的实时拉流变更为cdn拉流,避免占用带宽值大于带宽阈值,降低平台的投入成本。
152.在上述实施例的基础上,限定行为数据信息包括:用户的累计充值金额、用户的当天消费总金额、用户的当天观看直播总时长、用户的当天总互动次数,并限定通过行为数据信息确定用户对应的等级分数包括:根据预设公式确定累计充值金额、当天消费总金额、当天观看直播总时长和当天总互动次数对应的用户的等级分数;
153.其中预设公式为:
154.f(x)=r(x)*a g(x)*b t(x)*c c(x)*d
155.其中,f(x)为用户的等级分数,r(x)为用户的累计充值金额,g(x)为用户的当天消费总金额,t(x)为用户的当天观看直播总时长,c(x)为用户的当天总互动次数,a、b、c、d为可根据实际情况进行调整的对应系数,均小于1。
156.其中预设公式中的a、b、c、d对应上述各行为数据信息的权重,例如,a、b、c、d分别为0.5、0.3、0.1、0.1;即充值的用户其占比系数较大,所以充值用户的等级分数一般较高,该权重一般为直播平台根据实际情况进行设置;其中行为数据信息除上述包括的信息外,若仍有能够反应用户对平台重要程度的信息,也在本实施例的保护范围内。
157.本实施例限定行为数据信息,并限定如何通过行为数据信息确定等级分数;能够为平台提供一种较为优选的确定等级分数的方法。
158.在上述实施例的基础上,限定等级分为第一等级、第二等级、第三等级,其中第一等级为最高等级;第二等级和第三等级为非最高等级;对根据等级分数确定用户对应的等级步骤进行限定,该步骤包括:对等级分数进行排序;在排序的结果中,根据等级分数由高到低的顺序确定前一部分用户对应的等级为第一等级;确定中间部分用户对应的等级为第二等级,确定后一部分用户对应的等级为第三等级。
159.本实施例中对等级分数进行降序排序,根据等级分数由高到低的顺序,进行确定;其中前一部分、中间部分、后一部分可以根据用户占用的比例进行确定,如将排序结果中前20%的用户确定为第一等级的用户、后20%的用户确定为第三等级的用户、中间60%的用户确定为第二等级用户;也可以设置不同的等级分数值进行确定,如等级分数大于90分的确定为前一部分的第一等级用户;等级分数在90分和60分之间的用户确定为中间部分的第二等级用户;等级分数小于60分的用户确定为后一部分的第三等级用户。
160.本实施例限定一种根据等级分数确定用户等级的方法,使平台能够根据更多的判断条件,去对用户的拉流类型进行确定;给用户分配更为准确的拉流类型,从而提高了用户的使用体验。
161.在上述实施例的基础上,在s12步骤之后还包括:根据预设抖动概率控制用户的拉流类型从当前拉流类型变化为其它拉流类型。
162.设置预设抖动概率为λ,一般设置为5%,在一个用户确定拉流类型后,能够有该概率能够从自身的拉流类型更换为其它拉流类型;例如,若某用户确定为cdn拉流,但其通过该抖动概率,从cdn拉流变更为实时拉流。
163.本实施例设置的抖动概率,能够为使用不到实时拉流的用户,提供一定概率,使其能够到实时拉流;进一步提高了该部分用户的使用体验。
164.在上述实施例的基础上,限定带宽阈值为预设天数内带宽阈值的最大值;
165.其中带宽阈值为占用带宽值的最大值;预设天数可以为7天;将7天内占用带宽值的最大值设置为带宽阈值,如果7天内并没有出现比带宽阈值更大的占用带宽值,则继续使
用该带宽阈值;若出现,则将超出带宽阈值的占用带宽值更新为新的带宽阈值。
166.本实施例限定出一种较优的带宽阈值的设置方法,避免带宽阈值设置过大或过小,对平台或用户造成影响。
167.本技术还提供了一种音视频流的拉取方法的具体应用场景的实施例;其中在本实施例中,如图4所示,具体如何根据上述方法进行判断包括:s20:查询平台所有用户。s21:判断用户是否为第一等级用户。s22:判断用户是否为第二等级用户且占用带宽值小于第一预设值。s23:判断用户是否为第三等级用户且占用带宽值小于第二预设值。s24:确定用户使用cdn拉流。s25:确定用户使用实时拉流。s26:更新占用带宽值。s27:更新带宽阈值。s28:该用户结束,轮询下一用户;其中在s24步骤和s25步骤之前,还有λ概率,将用户的拉流类型变更为另一种拉流类型。其中本实施例中第一预设值与第二预设值与上述实施例对应,通过该方法能够对所有的用户的拉流类型进行确定;其中占用带宽值与带宽阈值的更新,不限定为同步更新,还是异步更新,其中s21和s22和s23对应着不同等级用户在不同条件下能够分配到的拉流类型,当满足上述步骤中的条件时,分配实时拉流,当不满足条件时,分配cdn拉流。
168.针对于实时拉流使用极度偏多或极度偏少情况时,对第一等级、第二等级、第三等级的用户进行降序排序,当实时拉流使用极度偏少时,按照优先级由高到低的第一顺序,从使用cdn拉流的用户中选取部分用户使用实时拉流;当实时拉流使用极度偏多时,按照优先级由低到高的第二顺序,从使用实时拉流的用户中选取部分用户使用cdn拉流;具体如上述实施例所述,这里不做赘述。
169.本技术提供的音视频流的拉取方法的应用场景的实施例,与上述音视频流的拉取方法的实施例对应,具有相同的有益效果。
170.在上述实施例中,对于音视频流的拉取方法进行了详细描述,本技术还提供音视频流的拉取装置对应的实施例。需要说明的是,本技术从两个角度对装置部分的实施例进行描述,一种是基于功能模块的角度,另一种是基于硬件的角度。
171.基于功能模块角度,本技术还提供了一种音视频流的拉取系统对应的实施例,如图5所示,该系统包括:
172.第一获取模块30,用于获取用户在当前直播平台上的等级数据;
173.第二获取模块31,用于获取直播服务器当前的占用带宽值;
174.确定模块32,用于根据占用带宽值与带宽阈值的关系,以及等级数据确定用户对应的拉流类型。
175.由于系统部分的实施例与方法部分的实施例相互对应,所以该系统还可以包括:
176.判断模块,用于若与当前直播相关的参数满足预设条件,进入所述获取用户在当前直播平台上的等级数据步骤;
177.第三获取模块,用于获取所述非最高等级用户对应的等级分数的排序结果,从所述排序结果中根据所述等级分数由高到低的顺序选取第二预设数量的用户,确定所述用户对应的拉流类型为所述实时拉流;
178.第一排序模块,用于根据所述等级分数由高到低的顺序对使用所述cdn拉流的用户进行排序;
179.第一调整模块,用于从所述排序的结果中由高到低选取第三预设数量的所述用
户,并将所述用户使用的所述cdn拉流调整为所述实时拉流;
180.第二排序模块,用于根据所述等级分数由低到高的顺序对使用所述实时拉流的用户进行排序;
181.第二调整模块,用于从所述排序的结果中由低到高选取第四预设数量的所述用户,并将所述用户使用的所述实时拉流调整为所述cdn拉流;
182.控制模块,用于根据预设抖动概率控制所述用户的拉流类型从当前拉流类型变化为其它拉流类型。
183.本实施例提供的音视频流的拉取系统,与上述方法对应,故具有与上述方法相同的有益效果。
184.基于硬件角度;本实施例提供了一种服务器;图6为本技术另一实施例提供的服务器的结构图,如图6所示,服务器包括:存储器20,用于存储计算机程序;
185.处理器21,用于执行计算机程序时实现如上述实施例中所提到的音视频流的拉取方法的步骤。
186.本实施例提供的服务器可以包括但不限于智能手机、平板电脑、笔记本电脑或台式电脑等。
187.其中,处理器21可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器21可以采用数字信号处理器(digital signal processor,dsp)、现场可编程门阵列(field-programmable gate array,fpga)、可编程逻辑阵列(programmable logic array,pla)中的至少一种硬件形式来实现。处理器21也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称中央处理器(central processing unit,cpu);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器21可以集成有图像处理器(graphics processing unit,gpu),gpu用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器21还可以包括人工智能(artificial intelligence,ai)处理器,该ai处理器用于处理有关机器学习的计算操作。
188.存储器20可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器20还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。本实施例中,存储器20至少用于存储以下计算机程序201,其中,该计算机程序被处理器21加载并执行之后,能够实现前述任一实施例公开的音视频流的拉取方法的相关步骤。另外,存储器20所存储的资源还可以包括操作系统202和数据203等,存储方式可以是短暂存储或者永久存储。其中,操作系统202可以包括windows、unix、linux等。数据203可以包括但不限于音视频流的拉取方法包含的数据等。
189.在一些实施例中,服务器还可包括有显示屏22、输入输出接口23、通信接口24、电源25以及通信总线26。
190.本领域技术人员可以理解,图6中示出的结构并不构成对服务器的限定,可以包括比图示更多或更少的组件。
191.本技术实施例提供的服务器,包括存储器和处理器,处理器在执行存储器存储的程序时,能够实现如下方法:音视频流的拉取方法。
192.本实施例提供的服务器,与上述方法对应,故具有与上述方法相同的有益效果。
193.最后,本技术还提供一种计算机可读存储介质对应的实施例。计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述方法实施例中记载的步骤。
194.可以理解的是,如果上述实施例中的方法以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
195.本实施例提供的计算机可读存储介质,与上述方法对应,故具有与上述方法相同的有益效果。
196.以上对本技术所提供的音视频流的拉取方法、系统、服务器及介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本技术原理的前提下,还可以对本技术进行若干改进和修饰,这些改进和修饰也落入本技术权利要求的保护范围内。
197.还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献