直播流的处理方法、装置及系统的制作方法

文档序号:10492318阅读:166来源:国知局
直播流的处理方法、装置及系统的制作方法
【专利摘要】本发明实施例提供直播流的处理方法、装置及系统。本发明实施例中,通过将客户端预设时长内的直播流播放请求合并生成一个总直播流播放请求,使得在客户端请求播放多个直播流时,通过网络传输的直播流播放请求仅有一个。这样,能够减少通过网络传输直播流播放请求的数量,从而减少交互次数,节省网络资源。另外,现有技术中,传输一个直播流播放请求、传输失败的概率较低,若多个直播流播放请求中有一个传输失败的可能性则较高,本发明实施例中通过将多个直播流播放请求合并成一个直播流播放请求在网络中传输,也能够有效避免网络状态不好导致现有技术中有些直播流播放请求无法传输而导致通信失败的情况发生,从而能够保证通信的稳定性。
【专利说明】
直播流的处理方法、装置及系统
技术领域
[0001]本发明实施例涉及多媒体信息处理技术领域,尤其涉及直播流的处理方法、装置及系统。
【背景技术】
[0002]随着通信速度的提高,直播流的质量逐渐能够满足用户的需求。越来越多的用户也喜欢播放直播流获取实时性较高的信息。例如,观看直播的球赛,观看直播的综艺节目等。
[0003]随着生活节奏的加快,一些用户为了节约时间,喜欢在同一客户端播放多个直播流,以便于同时了解多个直播流的信息。而现有技术中,则针对每个直播流客户端均会发送一个携带直播流标识的直播流播放请求,流资源服务器针对每个直播流请求都必须有响应。这样,若同一客户端播放请求1个直播流,则需要发送1个直播流播放请求,通信网络需要将这10个直播流播放请求一一发送给流资源服务器,流资源服务器需要针对每个直播流播放请求作出响应,并将响应结果通过网络传输给客户端。这样,当客户端请求播放多个直播流时,客户端和流资源服务器的交互次数会较多。对于网络状态不好的情况,例如客户端处于不停的移动状态,网络状态稳定的情况下,难免有些直播流播放请求得不到响应。故此,交互次数较多不仅浪费网络资源,也会由于网络不稳定性,导致通信失败。

【发明内容】

[0004]本发明实施例提供直播流的处理方法、装置及系统,用以解决目前由于同一客户端请求播放多个直播流时,交互次数较多浪费网络资源,也会由于网络不稳定性,导致通信失败等的问题。
[0005]本发明实施例提供的具体技术方案如下:
[0006]—方面,本发明实施例提供一种直播流的处理方法,所述方法包括:
[0007]客户端代理接收客户端发送的携带直播流标识的直播流播放请求并存储;
[0008]计算预设时长内存储的所述客户端发送的直播流播放请求的数量,并判断该数量是否大于或等于二;
[0009]若是,则将所述预设时长内存储的所述客户端的各直播流播放请求合并成一个总直播流播放请求,所述总直播流播放请求中包括各直播流播放请求的直播流标识;
[0010]将所述总直播流播放请求发送给流资源服务器的服务器代理,以使所述服务代理从所述流资源服务器中获取所述总直播流播放请求中的各直播流标识对应的直播流数据;
[0011]接收所述服务器代理发送的所述总直播流播放请求中的各直播流标识对应的直播流数据,并发送给所述客户端播放。
[0012]另一方面,本发明实施例提供一种直播流的处理方法,所述方法包括:
[0013]服务器代理接收客户端代理发送的总直播流播放请求,所述总直播流播放请求由同一客户端发送的至少两个直播流播放请求合并而成,且所述直播流播放请求中包括各直播流播放请求的直播流标识;
[0014]将所述总直播流播放请求进行分解,获得与每个直播流标识对应的分解后直播流播放请求,并发送给流资源服务器;
[0015]接收流资源服务器针对每个分解后直播流播放请求返回的直播流数据;
[0016]将接收的每个直播流数据发送给所述客户端代理,以使所述客户端代理将每个直播流数据发送给所述客户端播放。
[0017]另一方面,本发明实施例提供一种直播流的处理装置,所述装置包括:
[0018]直播流播放请求存储模块,用于接收客户端发送的携带直播流标识的直播流播放请求并存储;
[0019]直播流播放请求数量判断模块,用于计算预设时长内存储的所述客户端发送的直播流播放请求的数量,并判断该数量是否大于或等于二;
[0020]直播流播放请求合并模块,用于若直播流播放请求数量判断模块的判断结果为是,则将所述预设时长内存储的所述客户端的各直播流播放请求合并成一个总直播流播放请求,所述总直播流播放请求中包括各直播流播放请求的直播流标识;
[0021]总直播流播放请求发送模块,将所述总直播流播放请求发送给流资源服务器的服务器代理,以使所述服务代理从所述流资源服务器中获取所述总直播流播放请求中的各直播流标识对应的直播流数据;
[0022]直播流数据处理模块,用于接收所述服务器代理发送的所述总直播流播放请求中的各直播流标识对应的直播流数据,并发送给所述客户端播放。
[0023]另一方面,本发明实施例提供一种直播流的处理装置,所述装置包括:
[0024]总直播流播放请求接收模块,用于接收客户端代理发送的总直播流播放请求,所述总直播流播放请求由同一客户端发送的至少两个直播流播放请求合并而成,且所述直播流播放请求中包括各直播流播放请求的直播流标识;
[0025]总直播流播放请求分解模块,用于将所述总直播流播放请求进行分解,获得与每个直播流标识对应的分解后直播流播放请求,并发送给流资源服务器;
[0026]直播流数据获取模块,用于接收流资源服务器针对每个分解后直播流播放请求返回的直播流数据;
[0027]直播流数据处理模块,用于将接收的每个直播流数据发送给所述客户端代理,以使所述客户端代理将每个直播流数据发送给所述客户端播放。
[0028]另一方面,本发明实施例提供一种直播流的处理系统,所述系统包括:
[0029]客户端,用于发送携带直播流标识的直播流请求给客户端代理,并接收客户端代理发送的直播流数据播放;
[0030]客户端代理,用于接收客户端发送的携带直播流标识的直播流播放请求并存储;计算预设时长内存储的所述客户端发送的直播流播放请求的数量,并判断该数量是否大于或等于二;若是,则将所述预设时长内存储的所述客户端的各直播流播放请求合并成一个总直播流播放请求,所述总直播流播放请求中包括各直播流播放请求的直播流标识;将所述总直播流播放请求发送给流资源服务器的服务器代理;接收所述服务器代理发送的所述总直播流播放请求中的各直播流标识对应的直播流数据,并发送给所述客户端播放;
[0031]服务器代理,用于接收客户端代理发送的总直播流播放请求,所述总直播流播放请求由同一客户端发送的至少两个直播流播放请求合并而成,且所述直播流播放请求中包括各直播流播放请求的直播流标识;将所述总直播流播放请求进行分解,获得与每个直播流标识对应的分解后直播流播放请求,并发送给流资源服务器;接收流资源服务器针对每个分解后直播流播放请求返回的直播流数据;将接收的每个直播流数据发送给所述客户端代理,以使所述客户端代理将每个直播流数据发送给所述客户端播放;
[0032]流资源服务器,用于接收服务器代理发送的分解后直播流播放请求,并返回相应的直播流数据。
[0033]本发明有益效果包括:本发明实施例中,通过将客户端预设时长内的直播流播放请求合并生成一个总直播流播放请求,使得在客户端请求播放多个直播流时,通过网络传输的直播流播放请求仅有一个(即总直播流播放请求)。这样,能够减少通过网络传输直播流播放请求的数量,从而减少交互次数,节省网络资源。另外,现有技术中,传输一个直播流播放请求、传输失败的概率较低,若多个直播流播放请求中有一个传输失败的可能性则较高,本发明实施例中通过将多个直播流播放请求合并成一个直播流播放请求在网络中传输,也能够有效避免网络状态不好导致现有技术中有些直播流播放请求无法传输而导致通信失败的情况发生,从而能够保证通信的稳定性。
【附图说明】
[0034]图1为本发明实施例一中直播流的处理方法的示例性流程图;
[0035]图2为本发明实施例二中直播流的处理方法的示例性流程图;
[0036]图3为本发明实施例三中直播流的处理装置的结构示意图;
[0037]图4为本发明实施例四中直播流的处理装置的结构示意图;
[0038]图5为本发明实施例五中直播流的处理系统的结构示意图。
【具体实施方式】
[0039]为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0040]实施例一
[0041]如图1所示为本发明实施例提供的直播流的处理方法的流程示意图,适用于客户端代理,包括以下步骤:
[0042]步骤101:客户端代理接收客户端发送的携带直播流标识的直播流播放请求并存储。
[0043]其中,在一个实施例中,流资源服务器用于提供直播流,直播流标识,例如是直播流ID( IDentity,标识号码)。
[0044]步骤102:计算预设时长内存储的所述客户端发送的直播流播放请求的数量,并判断该数量是否大于或等于二。
[0045]步骤103:若是,则将所述预设时长内存储的所述客户端的各直播流播放请求合并成一个总直播流播放请求,所述总直播流播放请求中包括各直播流播放请求的直播流标识。
[0046]例如,预设时长内存储的客户端的直播流播放请求为3个,分别为请求直播流1、直播流2和直播流3的直播流播放请求,则客户端代理,将存储的这三个直播流播放请求进行合并,生成一个携带直播流1、直播流2和直播流3的直播流标识的总直播流播放请求。
[0047]其中,在一个实施例中,若步骤102的判断结果为否(即直播流播放请求的数量小于2),可以参照现有技术处理,本发明实施例对此不做赘述。
[0048]步骤104:将所述总直播流播放请求发送给流资源服务器的服务器代理,以使所述服务代理从所述流资源服务器中获取所述总直播流播放请求中的各直播流标识对应的直播流数据。
[0049]步骤105:接收所述服务器代理发送的所述总直播流播放请求中的各直播流标识对应的直播流数据,并发送给所述客户端播放。
[0050]这样,本发明实施例中,通过将客户端预设时长内的直播流播放请求合并生成一个总直播流播放请求,使得在客户端请求播放多个直播流时,通过网络传输的直播流播放请求仅有一个(即总直播流播放请求)。这样,能够减少通过网络传输直播流播放请求的数量,从而减少交互次数,节省网络资源。另外,现有技术中,传输一个直播流播放请求、传输失败的概率较低,若多个直播流播放请求中有一个传输失败的可能性则较高,本发明实施例中通过将多个直播流播放请求合并成一个直播流播放请求在网络中传输,也能够有效避免网络状态不好导致现有技术中有些直播流播放请求无法传输而导致通信失败的情况发生,从而能够保证通信的稳定性。
[0051]为便于进一步理解,下面对本发明实施例提供的直播流的处理方法做进一步说明,包括:
[0052]I )、针对步骤202:
[0053]其中,在一个实施例中,为便于计算直播流播放请求的数量,本发明实施例中步骤102中计算预设时长内存储的所述客户端发送的直播流播放请求的数量,可具体包括以下步骤:
[0054]步骤Al:接收到第一个直播流播放请求后开始计时,并设置直播流播放请求的数量为I。
[0055]其中,在一个实施例中,第一个直播流播放请求指若一定时间段内未接收到客户端发送的直播流播放请求,该一定时间段之后接收到的该客户端发送的第一个直播流播放请求。例如,一定时间段内为5分钟,则若5分钟内没有收到客户端发送的直播流播放请求,则在5分钟之后收到的第一个直播流播放请求即为步骤Al中的第一个直播流播放请求。
[0056]当然,客户端与流资源服务器建立连接后发送的第一个直播流播放请求,也算作步骤Al中的第一个直播流播放请求。
[0057]步骤A2:在开始计时后的预设时长内每接收到一个所述客户端发送的直播流播放请求后,将所述直播流播放请求的数量累加I。
[0058]其中,在一个实施例中,为了尽快处理直播流播放请求,以避免用户感知获取直播流的速度慢,本发明实施例中,预设时长可以为I秒,当然具体实施时,用户可以根据实际需要设定预设时长,本发明实施例对此不做限定。
[0059]其中,在一个实施例中,上述步骤Al-步骤A2中是接收到第一个直播流播放请求开始计时,并确定预设时长。具体实施时,本发明实施例中,还可以将时间提前划分为一个个时间段,每个时间段为一个预设时长。例如,客户端与流资源服务器建立连接后为第一个预设时长的开始,从而确定出各个时间段作为预设时长。
[0060]其中,在一个实施例中,也可以以预设时长为单位存储客户端的直播流播放请求,不采用累加的方式计算直播流播放请求的数量,而在最后统计一下预设时长内所述客户端发送的直播流播放请求的数量。
[0061]2)、针对步骤 103:
[0062]其中,在一个实施例中,为便于服务器代理能够识别总直播流播放请求是请求哪些直播流数据,且为了服务器代理从流资源服务器中获取客户端请求的各直播流数据时,不对流资源服务器进行修改,本发明实施例中步骤103可具体包括以下步骤:
[0063]步骤B1:在相邻两直播流标识之间插入一个预设直播流标识分割符,生成总直播流标识信息。
[0064]其中,在一个实施例中,预设直播流标识分割符可以为“,”或者等,当然,能够使得服务器代理能够识别为预设直播流标识分割符的分割符均适用于本发明实施例,本发明对此不做限定。
[0065]步骤B2:生成携带所述总直播流标识信息的总直播流播放请求,以使所述服务器代理执行以下操作:根据所述预设直播流标识分割符从所述总直播流请求中获取每个直播流标识,生成针对每个直播流标识的分解后直播流播放请求发送给流资源服务器。
[0066]这样,通过预设直播流标识分割符,使得服务器代理能够识别各个直播流标识,从而生成针对每个直播流标识的分解后直播流播放请求发送给流资源服务器,使得流资源服务器可以按照现有的直播流播放请求处理,而无需对流资源服务器进行更改。
[0067]其中,在一个实施例中,本发明实施例中还可以根据以下方法合并各直播流播放请求生成总直播流播放请求,具体的:在相邻直播流播放请求之间添加直播流播放请求分割符,相当于将直播流播放请求串联起来生成总直播流播放请求。这样,服务器代理可以根据直播流播放请求分割符分解出各个直播流播放请求发送给流资源服务器,也能达到同样的效果。
[0068]3)、针对步骤 105:
[0069]其中,在一个实施例中,本发明实施例中,服务器代理可以将流资源服务器针对每个分解后直播流播放请求返回的直播流数据逐一发送给客户端代理,这样,返回给客户端的代理相当于有多少个直播流播放请求,就有多少个响应。本发明实施例中,为便于进一步减少交互次数,提高传输的稳定性,流资源服务器返回的各个直播流数据可以为合并后的合并直播流数据,这样,通过网络只需要传输一个合并直播流数据即可(即做一次响应即可),而无需针对每个直播流传输一次。具体的:
[0070]所述总直播流播放请求中的各直播流标识对应的直播流数据为合并直播流数据,所述合并直播流数据中包括头信息和各直播流标识对应的直播流数据;其中,所述头信息中包括:每个直播流的直播流标识、每个直播流在所述合并直播流中的位置信息;
[0071 ] 则步骤105,具体可包括以下步骤:
[0072]步骤Cl:接收所述合并直播流,并根据所述头信息解析所述合并直播流,获得每个直播流标识对应的直播流数据。
[0073]其中,在一个实施例中,位置信息包括每个直播流的起始位置和结束位置。这样,针对每个直播流,根据该直播流的直播流标识及其对应位置信息,便可以得到该直播流数据。
[0074]步骤C2:将解析后获得的每个直播流标识对应的直播流数据发送所述客户端播放。
[0075]其中,在一个实施例中,客户端请求的直播流可能是不同码率的,码率高的直播流所需要的数据量自然大。合并直播流由至少两个数据包组成,每个数据包包括的数据量有限,为了能够保证客户端顺畅播放码率高的直播流,码率稿的直播流所需要的数据包自然多。故此,为了保证码率高的直播流顺畅播放,本发明实施例中,所述位置信息为每个数据包对应的位置信息,所述头信息中还包括:直播流标识数量,每个直播流标识对应的数据包序号;
[0076]步骤Cl可具体包括以下步骤:
[0077]步骤Dl:确认头信息中的直播流标识数量与直播流标识的总数是否相同。
[0078]步骤D2:若相同,针对每个直播流标识,根据该直播流标识对应的位置信息得到该直播流标识对应的各数据包;并根据数据包序号,对得到的各数据包进行排序生成直播流数据。
[0079]其中,直播流标识对应的位置信息即直播流标识对应的直播流的位置信息。
[0080]这样,通过数据包序号,便可以确定同一直播流的不同数据包的顺序,以便于客户端正确解析出每个直播流的数据,而不至于将后播放的数据放在先播放的数据前。
[0081]其中,在一个实施例中,若不相同,则说明反馈的合并直播流数据有误,可以反馈错误信息给服务器代理,以便重传数据。
[0082]其中,在一个实施例中,头信息中的直播流标识数量还可以便于客户端代确定需要分解出多少直播流数据,以便于客户端代理分配存储空间。
[0083]综上,本发明实施例中,可以将客户端的多个直播流播放请求合并后得到一个总直播流播放请求在网络中传输,也可以将多个直播流播放请求的直播流数据合并成一个合并直播流数据在网络中传输。实现,原本在现有技术中需要的多次传输和交互,只需要I次交互便可完成,能够节省网络资源。此外,由于I次交互失败的概率低,还能够保证通信的稳定性。
[0084]实施例二
[0085]基于相同的发明构思,本发明实施例还提供一种直播流的处理方法,适用于服务器代理。如图2所示,为该方法的流程示意图,可包括以下步骤:
[0086]步骤201:服务器代理接收客户端代理发送的总直播流播放请求,所述总直播流播放请求由同一客户端发送的至少两个直播流播放请求合并而成,且所述直播流播放请求中包括各直播流播放请求的直播流标识。
[0087]其中,总直播流播放请求由客户端代理生成,其生成方法已在实施例中说明,在此不再赘述。
[0088]步骤202:将所述总直播流播放请求进行分解,获得与每个直播流标识对应的分解后直播流播放请求,并发送给流资源服务器。
[0089]步骤203:接收流资源服务器针对每个分解后直播流播放请求返回的直播流数据。
[0090]步骤204:将接收的每个直播流数据发送给所述客户端代理,以使所述客户端代理将每个直播流数据发送给所述客户端播放。
[0091]这样,本发明实施例中,服务器代理接收的是客户端代理发送的由至少两个直播流播放请求合成的一个总直播流播放请求。使得在客户端请求播放多个直播流时,通过网络传输的直播流播放请求仅有一个(即总直播流播放请求)。这样,能够减少通过网络传输直播流播放请求的数量,从而减少交互次数,节省网络资源。另外,现有技术中,传输一个直播流播放请求、传输失败的概率较低,若多个直播流播放请求中有一个传输失败的可能性则较高,本发明实施例中通过将多个直播流播放请求合并成一个直播流播放请求在网络中传输,也能够有效避免网络状态不好导致现有技术中有些直播流播放请求无法传输而导致通信失败的情况发生,从而能够保证通信的稳定性。
[0092]为便于进一步理解,下面对本发明实施例提供的直播流的处理方法做进一步说明,包括:
[0093]本发明实施例中,为便于进一步减少交互次数,本发明实施例中步骤204中将接收的每个直播流数据发送给所述客户端代理,可具体包括以下步骤:
[0094]步骤Fl:将接收的每个直播流数据进行合并生成合并直播流数据,所述合并直播流数据中包括头信息和各直播流标识对应的直播流数据;其中,所述头信息中包括:每个直播流的直播流标识、每个直播流在所述合并直播流中的位置信息。
[0095]步骤F2:将所述合并直播流数据发送给所述客户端代理。
[0096]这样,将合并直播流数据发送给客户端代理,从而实现原本需要针对每个直播流请求发送一次的直播流数据,一起发送,从而实现多次交互,只需要一次即可完成,从而进一步减少交互次数。
[0097]其中,在一个实施例中,客户端请求的直播流可能是不同码率的,码率高的直播流所需要的数据量自然大。合并直播流由至少两个数据包组成,每个数据包包括的数据量有限,为了能够保证客户端顺畅播放码率高的直播流,码率稿的直播流所需要的数据包自然多。故此,为了保证码率高的直播流顺畅播放,本发明实施例中,所述位置信息为每个数据包对应的位置信息,所述头信息中还包括:直播流标识数量,每个直播流标识对应的数据包序号。这样,便于客户端根据头信息正确解析出每个直播流的直播流数据。
[0098]其中,在一个实施例中,为了使流资源服务器还能够按照现有的处理方式处理直播流播放请求,而无需改造流资源服务器,本发明实施例中,所述总直播流播放请求中包括总直播流标识信息,所述总直播流标识信息中包括直播流标识和用于设置在相邻两直播流标识之间的预设直播流标识分割符;
[0099]步骤202中将所述总直播流播放请求进行分解,获得与每个直播流标识对应的分解后直播流播放请求,可具体包括:根据所述预设直播流标识分割符,从所述总直播流请求中获取每个直播流标识,并生成针对每个直播流标识的分解后直播流播放请求。
[0100]其中,在一个实施例中,为了便于可以个性化,客户端的直播流播放请求中还可以包括直播流播放优先级,而合并生成合并直播流时,可以使优先级高的直播流数据相较其他直播流数据多一些,从而实现优先级高的直播流数据优先传输给客户端。其中,优先级可以是用户指定的优先级。
[0101]综上,本发明实施例中,接收的总直播了播放请求,为客户端代理将客户端的多个直播流播放请求合并后得到一个总直播流播放。向客户端发送的直播流数据,为多个直播流播放请求的直播流数据合并成一个合并直播流数据。这样,只需要一次交互既可以实现现有技术中多次交互的作用,减少了交互数量,节约网络资源。此外,由于I次交互失败的概率低,还能够保证通信的稳定性。
[0102]实施例三
[0103]基于相同的发明构思,本发明实施例还提供一种直播流的处理装置,如图3所示,为该装置的结构示意图,所述装置包括:
[0104]直播流播放请求存储模块301,用于接收客户端发送的携带直播流标识的直播流播放请求并存储;
[0105]直播流播放请求数量判断模块302,用于计算预设时长内存储的所述客户端发送的直播流播放请求的数量,并判断该数量是否大于或等于二;
[0106]直播流播放请求合并模块303,用于若直播流播放请求数量判断模块的判断结果为是,则将所述预设时长内存储的所述客户端的各直播流播放请求合并成一个总直播流播放请求,所述总直播流播放请求中包括各直播流播放请求的直播流标识;
[0107]总直播流播放请求发送模块304,将所述总直播流播放请求发送给流资源服务器的服务器代理,以使所述服务代理从所述流资源服务器中获取所述总直播流播放请求中的各直播流标识对应的直播流数据;
[0108]直播流数据处理模块305,用于接收所述服务器代理发送的所述总直播流播放请求中的各直播流标识对应的直播流数据,并发送给所述客户端播放。
[0109]其中,在一个实施例中,所述总直播流播放请求中的各直播流标识对应的直播流数据为合并直播流数据,所述合并直播流数据中包括头信息和各直播流标识对应的直播流数据;其中,所述头信息中包括:每个直播流的直播流标识、每个直播流在所述合并直播流中的位置信息;
[0110]直播流数据处理模块,具体包括:
[0111]合并直播流解析单元,用于接收所述合并直播流,并根据所述头信息解析所述合并直播流,获得每个直播流标识对应的直播流数据;
[0112]直播流数据发送单元,用于将解析后获得的每个直播流标识对应的直播流数据发送所述客户端播放。
[0113]其中,在一个实施例中,合并直播流由至少两个数据包组成,所述位置信息为每个数据包对应的位置信息,所述头信息中还包括:直播流标识数量,每个直播流标识对应的数据包序号;
[0114]合并直播流解析单元,具体用于:
[0115]确认头信息中的直播流标识数量与直播流标识的总数是否相同;
[0116]若相同,针对每个直播流标识,根据该直播流标识对应的位置信息得到该直播流标识对应的各数据包;并根据数据包序号,对得到的各数据包进行排序生成直播流数据。
[0117]其中,在一个实施例中,直播流播放请求合并模块,具体包括:
[0118]分割符插入单元,用于在相邻两直播流标识之间插入一个预设直播流标识分割符,生成总直播流标识信息;
[0119]总直播流播放请求处理单元,用于生成携带所述总直播流标识信息的总直播流播放请求,以使所述服务器代理执行以下操作:根据所述预设直播流标识分割符从所述总直播流请求中获取每个直播流标识,生成针对每个直播流标识的分解后直播流播放请求发送给流资源服务器。
[0120]其中,在一个实施例中,直播流播放请求数量判断模块,具体包括:
[0121]计时单元,用于接收到第一个直播流播放请求后开始计时,并设置直播流播放请求的数量为I;
[0122]计算单元,用于在开始计时后的预设时长内每接收到一个所述客户端发送的直播流播放请求后,将所述直播流播放请求的数量累加I。
[0123]实施例四
[0124]基于相同的发明构思,本发明实施例还提供一种直播流的处理装置,如图4所示,为该装置的结构示意图,所述装置包括:
[0125]总直播流播放请求接收模块401,用于接收客户端代理发送的总直播流播放请求,所述总直播流播放请求由同一客户端发送的至少两个直播流播放请求合并而成,且所述直播流播放请求中包括各直播流播放请求的直播流标识;
[0126]总直播流播放请求分解模块402,用于将所述总直播流播放请求进行分解,获得与每个直播流标识对应的分解后直播流播放请求,并发送给流资源服务器;
[0127]直播流数据获取模块403,用于接收流资源服务器针对每个分解后直播流播放请求返回的直播流数据;
[0128]直播流数据处理模块404,用于将接收的每个直播流数据发送给所述客户端代理,以使所述客户端代理将每个直播流数据发送给所述客户端播放。
[0129]其中,在一个实施例中,直播流数据处理模块,具体包括:
[0130]合并直播流数据生成单元,用于将接收的每个直播流数据进行合并生成合并直播流数据,所述合并直播流数据中包括头信息和各直播流标识对应的直播流数据;其中,所述头信息中包括:每个直播流的直播流标识、每个直播流在所述合并直播流中的位置信息;
[0131]合并直播流数据生成单元发送单元,用于将所述合并直播流数据发送给所述客户端代理。
[0132]其中,在一个实施例中,所述合并直播流由至少两个数据包组成,所述位置信息为每个数据包对应的位置信息,所述头信息中还包括:直播流标识数量,每个直播流标识对应的数据包序号。
[0133]其中,在一个实施例中,所述总直播流播放请求中包括总直播流标识信息,所述总直播流标识信息中包括直播流标识和用于设置在相邻两直播流标识之间的预设直播流标识分割符;
[0134]总直播流播放请求分解模块,具体用于:根据所述预设直播流标识分割符,从所述总直播流请求中获取每个直播流标识,并生成针对每个直播流标识的分解后直播流播放请求。
[0135]实施例五
[0136]基于相同的发明构思,本发明实施例还提供一种直播流请求的处理系统,如图5所示,为该系统的结构示意图,所述系统包括:
[0137]客户端501,用于发送携带直播流标识的直播流请求给客户端代理,并接收客户端代理发送的直播流数据播放;
[0138]客户端代理502,用于接收客户端发送的携带直播流标识的直播流播放请求并存储;计算预设时长内存储的所述客户端发送的直播流播放请求的数量,并判断该数量是否大于或等于二;若是,则将所述预设时长内存储的所述客户端的各直播流播放请求合并成一个总直播流播放请求,所述总直播流播放请求中包括各直播流播放请求的直播流标识;将所述总直播流播放请求发送给流资源服务器的服务器代理;接收所述服务器代理发送的所述总直播流播放请求中的各直播流标识对应的直播流数据,并发送给所述客户端播放;
[0139]服务器代理503,用于接收客户端代理发送的总直播流播放请求,所述总直播流播放请求由同一客户端发送的至少两个直播流播放请求合并而成,且所述直播流播放请求中包括各直播流播放请求的直播流标识;将所述总直播流播放请求进行分解,获得与每个直播流标识对应的分解后直播流播放请求,并发送给流资源服务器;接收流资源服务器针对每个分解后直播流播放请求返回的直播流数据;将接收的每个直播流数据发送给所述客户端代理,以使所述客户端代理将每个直播流数据发送给所述客户端播放;
[0140]流资源服务器504,用于接收服务器代理发送的分解后直播流播放请求,并返回相应的直播流数据。
[0141]关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
[0142]以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0143]通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如R0M/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0144]最后应说明的是:以上实施例仅用以说明本发明实施例的技术方案,而非对其限制;尽管参照前述实施例对本发明实施例进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明实施例各实施例技术方案的精神和范围。
【主权项】
1.一种直播流的处理方法,其特征在于,所述方法包括: 客户端代理接收客户端发送的携带直播流标识的直播流播放请求并存储; 计算预设时长内存储的所述客户端发送的直播流播放请求的数量,并判断该数量是否大于或等于二; 若是,则将所述预设时长内存储的所述客户端的各直播流播放请求合并成一个总直播流播放请求,所述总直播流播放请求中包括各直播流播放请求的直播流标识; 将所述总直播流播放请求发送给流资源服务器的服务器代理,以使所述服务代理从所述流资源服务器中获取所述总直播流播放请求中的各直播流标识对应的直播流数据;接收所述服务器代理发送的所述总直播流播放请求中的各直播流标识对应的直播流数据,并发送给所述客户端播放。2.根据权利要求1所述的方法,其特征在于,所述总直播流播放请求中的各直播流标识对应的直播流数据为合并直播流数据,所述合并直播流数据中包括头信息和各直播流标识对应的直播流数据;其中,所述头信息中包括:每个直播流的直播流标识、每个直播流在所述合并直播流中的位置信息; 接收所述服务器代理发送的所述总直播流播放请求中的各直播流标识对应的直播流数据,并发送给所述客户端播放,具体包括: 接收所述合并直播流,并根据所述头信息解析所述合并直播流,获得每个直播流标识对应的直播流数据; 将解析后获得的每个直播流标识对应的直播流数据发送所述客户端播放。3.根据权利要求2所述的方法,其特征在于,合并直播流由至少两个数据包组成,所述位置信息为每个数据包对应的位置信息,所述头信息中还包括:直播流标识数量,每个直播流标识对应的数据包序号; 根据所述头信息解析所述合并直播流,获得每个直播流标识对应的直播流数据,具体包括: 确认头信息中的直播流标识数量与直播流标识的总数是否相同; 若相同,针对每个直播流标识,根据该直播流标识对应的位置信息得到该直播流标识对应的各数据包;并根据数据包序号,对得到的各数据包进行排序生成直播流数据。4.根据权利要求1所述的方法,其特征在于,将所述预设时长内存储的所述客户端的各直播流播放请求合并成一个总直播流播放请求,所述总直播流播放请求中包括各直播流播放请求的直播流标识,具体包括: 在相邻两直播流标识之间插入一个预设直播流标识分割符,生成总直播流标识信息;生成携带所述总直播流标识信息的总直播流播放请求,以使所述服务器代理执行以下操作:根据所述预设直播流标识分割符从所述总直播流请求中获取每个直播流标识,生成针对每个直播流标识的分解后直播流播放请求发送给流资源服务器。5.根据权利要求1-4中任一所述的方法,其特征在于,计算预设时长内存储的所述客户端发送的直播流播放请求的数量,具体包括: 接收到第一个直播流播放请求后开始计时,并设置直播流播放请求的数量为I;并, 在开始计时后的预设时长内每接收到一个所述客户端发送的直播流播放请求后,将所述直播流播放请求的数量累加I。6.一种直播流的处理方法,其特征在于,所述方法包括: 服务器代理接收客户端代理发送的总直播流播放请求,所述总直播流播放请求由同一客户端发送的至少两个直播流播放请求合并而成,且所述直播流播放请求中包括各直播流播放请求的直播流标识; 将所述总直播流播放请求进行分解,获得与每个直播流标识对应的分解后直播流播放请求,并发送给流资源服务器; 接收流资源服务器针对每个分解后直播流播放请求返回的直播流数据; 将接收的每个直播流数据发送给所述客户端代理,以使所述客户端代理将每个直播流数据发送给所述客户端播放。7.根据权利要求6所述的方法,其特征在于,将接收的每个直播流数据发送给所述客户端代理,具体包括: 将接收的每个直播流数据进行合并生成合并直播流数据,所述合并直播流数据中包括头信息和各直播流标识对应的直播流数据;其中,所述头信息中包括:每个直播流的直播流标识、每个直播流在所述合并直播流中的位置信息; 将所述合并直播流数据发送给所述客户端代理。8.根据权利要求7所述的方法,其特征在于,所述合并直播流由至少两个数据包组成,所述位置信息为每个数据包对应的位置信息,所述头信息中还包括:直播流标识数量,每个直播流标识对应的数据包序号。9.根据权利要求6-8中任一所述的方法,其特征在于,所述总直播流播放请求中包括总直播流标识信息,所述总直播流标识信息中包括直播流标识和用于设置在相邻两直播流标识之间的预设直播流标识分割符; 将所述总直播流播放请求进行分解,获得与每个直播流标识对应的分解后直播流播放请求,具体包括: 根据所述预设直播流标识分割符,从所述总直播流请求中获取每个直播流标识,并生成针对每个直播流标识的分解后直播流播放请求。10.一种直播流的处理装置,其特征在于,所述装置包括: 直播流播放请求存储模块,用于接收客户端发送的携带直播流标识的直播流播放请求并存储; 直播流播放请求数量判断模块,用于计算预设时长内存储的所述客户端发送的直播流播放请求的数量,并判断该数量是否大于或等于二; 直播流播放请求合并模块,用于若直播流播放请求数量判断模块的判断结果为是,则将所述预设时长内存储的所述客户端的各直播流播放请求合并成一个总直播流播放请求,所述总直播流播放请求中包括各直播流播放请求的直播流标识; 总直播流播放请求发送模块,将所述总直播流播放请求发送给流资源服务器的服务器代理,以使所述服务代理从所述流资源服务器中获取所述总直播流播放请求中的各直播流标识对应的直播流数据; 直播流数据处理模块,用于接收所述服务器代理发送的所述总直播流播放请求中的各直播流标识对应的直播流数据,并发送给所述客户端播放。11.根据权利要求10所述的装置,其特征在于,所述总直播流播放请求中的各直播流标识对应的直播流数据为合并直播流数据,所述合并直播流数据中包括头信息和各直播流标识对应的直播流数据;其中,所述头信息中包括:每个直播流的直播流标识、每个直播流在所述合并直播流中的位置信息; 直播流数据处理模块,具体包括: 合并直播流解析单元,用于接收所述合并直播流,并根据所述头信息解析所述合并直播流,获得每个直播流标识对应的直播流数据; 直播流数据发送单元,用于将解析后获得的每个直播流标识对应的直播流数据发送所述客户端播放。12.根据权利要求11所述的装置,其特征在于,合并直播流由至少两个数据包组成,所述位置信息为每个数据包对应的位置信息,所述头信息中还包括:直播流标识数量,每个直播流标识对应的数据包序号; 合并直播流解析单元,具体用于: 确认头信息中的直播流标识数量与直播流标识的总数是否相同; 若相同,针对每个直播流标识,根据该直播流标识对应的位置信息得到该直播流标识对应的各数据包;并根据数据包序号,对得到的各数据包进行排序生成直播流数据。13.根据权利要求10所述的装置,其特征在于,直播流播放请求合并模块,具体包括: 分割符插入单元,用于在相邻两直播流标识之间插入一个预设直播流标识分割符,生成总直播流标识信息; 总直播流播放请求处理单元,用于生成携带所述总直播流标识信息的总直播流播放请求,以使所述服务器代理执行以下操作:根据所述预设直播流标识分割符从所述总直播流请求中获取每个直播流标识,生成针对每个直播流标识的分解后直播流播放请求发送给流资源服务器。14.根据权利要求10-13中任一所述的装置,其特征在于,直播流播放请求数量判断模块,具体包括: 计时单元,用于接收到第一个直播流播放请求后开始计时,并设置直播流播放请求的数量为I; 计算单元,用于在开始计时后的预设时长内每接收到一个所述客户端发送的直播流播放请求后,将所述直播流播放请求的数量累加I。15.一种直播流的处理装置,其特征在于,所述装置包括: 总直播流播放请求接收模块,用于接收客户端代理发送的总直播流播放请求,所述总直播流播放请求由同一客户端发送的至少两个直播流播放请求合并而成,且所述直播流播放请求中包括各直播流播放请求的直播流标识; 总直播流播放请求分解模块,用于将所述总直播流播放请求进行分解,获得与每个直播流标识对应的分解后直播流播放请求,并发送给流资源服务器; 直播流数据获取模块,用于接收流资源服务器针对每个分解后直播流播放请求返回的直播流数据; 直播流数据处理模块,用于将接收的每个直播流数据发送给所述客户端代理,以使所述客户端代理将每个直播流数据发送给所述客户端播放。16.根据权利要求15所述的装置,其特征在于,直播流数据处理模块,具体包括: 合并直播流数据生成单元,用于将接收的每个直播流数据进行合并生成合并直播流数据,所述合并直播流数据中包括头信息和各直播流标识对应的直播流数据;其中,所述头信息中包括:每个直播流的直播流标识、每个直播流在所述合并直播流中的位置信息; 合并直播流数据生成单元发送单元,用于将所述合并直播流数据发送给所述客户端代理。17.根据权利要求16所述的装置,其特征在于,所述合并直播流由至少两个数据包组成,所述位置信息为每个数据包对应的位置信息,所述头信息中还包括:直播流标识数量,每个直播流标识对应的数据包序号。18.根据权利要求15-17中任一所述的装置,其特征在于,所述总直播流播放请求中包括总直播流标识信息,所述总直播流标识信息中包括直播流标识和用于设置在相邻两直播流标识之间的预设直播流标识分割符; 总直播流播放请求分解模块,具体用于:根据所述预设直播流标识分割符,从所述总直播流请求中获取每个直播流标识,并生成针对每个直播流标识的分解后直播流播放请求。19.一种直播流请求的处理系统,其特征在于,所述系统包括: 客户端,用于发送携带直播流标识的直播流请求给客户端代理,并接收客户端代理发送的直播流数据播放; 客户端代理,用于接收客户端发送的携带直播流标识的直播流播放请求并存储;计算预设时长内存储的所述客户端发送的直播流播放请求的数量,并判断该数量是否大于或等于二;若是,则将所述预设时长内存储的所述客户端的各直播流播放请求合并成一个总直播流播放请求,所述总直播流播放请求中包括各直播流播放请求的直播流标识;将所述总直播流播放请求发送给流资源服务器的服务器代理;接收所述服务器代理发送的所述总直播流播放请求中的各直播流标识对应的直播流数据,并发送给所述客户端播放; 服务器代理,用于接收客户端代理发送的总直播流播放请求,所述总直播流播放请求由同一客户端发送的至少两个直播流播放请求合并而成,且所述直播流播放请求中包括各直播流播放请求的直播流标识;将所述总直播流播放请求进行分解,获得与每个直播流标识对应的分解后直播流播放请求,并发送给流资源服务器;接收流资源服务器针对每个分解后直播流播放请求返回的直播流数据;将接收的每个直播流数据发送给所述客户端代理,以使所述客户端代理将每个直播流数据发送给所述客户端播放; 流资源服务器,用于接收服务器代理发送的分解后直播流播放请求,并返回相应的直播流数据。
【文档编号】H04L29/08GK105847386SQ201610248833
【公开日】2016年8月10日
【申请日】2016年4月20日
【发明人】李洪福
【申请人】乐视控股(北京)有限公司, 乐视云计算有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1