一种基于视频流播放状态的白名单生成系统及方法

文档序号:10492708阅读:228来源:国知局
一种基于视频流播放状态的白名单生成系统及方法
【专利摘要】一种基于视频流播放状态的白名单生成系统及方法,涉及视频直播的白名单领域,包括:客户端播放器,用于并实时向数据缓存模块上报视频流的播放状态信息;数据缓存模块,用于实时缓存符合格式要求的播放状态信息,并对缓存的数据进行数据片划分;计算模块,包括多个计算单元,每个计算单元用于实时接收划分后的数据片,并对播放状态信息进行验证;白名单模块,用于接收验证成功的播放状态信息,并将其对应的用户信息以白名单分片的形式存储。本发明根据视频流的播放状态生成白名单,保证白名单的及时性,提高白名单的精准度,提高用户体验。
【专利说明】
-种基于视频流播放状态的白名单生成系统及方法
技术领域
[0001 ]本发明设及视频直播的白名单领域,具体来讲设及一种基于视频流播放状态的白 名单生成系统及方法。
【背景技术】
[0002] 目前,视频直播网站生成白名单的方法主要基于之前的用户数据,按时间周期 (天、周、月)定期计算,计算需要按照指定规则实现代码逻辑,运样没办法保证白名单的及 时性。并且在视频直播网站的业务场景中,很多直播间主播在发起互动活动或者网站在发 起专题活动时,需要只针对观看当前直播间的活跃用户或者在网站上活跃的用户,运时,离 线计算的白名单在精准度上会显得不足,容易让符合白名单条件,却在白名单之外的用户 受到限制,影响用户体验。

【发明内容】

[0003] 针对现有技术中存在的缺陷,本发明的目的在于提供一种基于视频流播放状态的 白名单生成系统及方法,根据视频流的播放状态生成白名单,保证白名单的及时性,提高白 名单的精准度,提高用户体验。
[0004] 为达到W上目的,本发明采取一种基于视频流播放状态的白名单生成系统,包括: 客户端播放器,用于对用户进行视频直播,并实时向数据缓存模块上报视频流的播放状态 信息;数据缓存模块,用于实时缓存符合格式要求的播放状态信息,并对缓存的数据进行数 据片划分;计算模块,包括多个计算单元,每个计算单元用于实时接收划分后的数据片,并 对播放状态信息进行验证;白名单模块,用于接收验证成功的播放状态信息,并将其对应的 用户信息W白名单分片的形式存储。
[0005] 在上述技术方案的基础上,所述播放状态信息包括视频流状态、用户ID和用户对 应的识别码;视频流状态包括视频流播放、视频流缓冲区满、视频流缓冲区空、W及视频播 放关闭。
[0006] 在上述技术方案的基础上,所述识别码包括时间戳、客户端播放器ID和随机数,所 述识别码是固定长度,并且加密。
[0007] 在上述技术方案的基础上,数据缓存模块中划分的数据片,其划分的时间粒度为1 秒,且每个数据片都小于或等于1MB。
[000引在上述技术方案的基础上,计算模块为每个数据片分配一个数据片ID,将数据片 ID按照哈希化Sh算法取余,并将余数相同的数据片存放在同一个计算单元中。
[0009] 在上述技术方案的基础上,每个计算单元验证内部的数据片,在视频流状态符合 正常播放,并且识别码重新验证正确后,将对应的播放状态信息提交到白名单模块用于更 新。
[0010] 本发明还提供一种基于所述系统的视频流播放状态的白名单生成方法,包括步 骤:
[0011] SI.客户端播放器实时向数据缓存模块上报视频流的播放状态信息,播放状态信 息包括视频流状态、用户ID和用户对应的识别码;
[0012] S2.数据缓存模块缓存符合格式要求的播放状态信息;
[0013] S3.数据缓存模块按照时间粒度1秒将缓存的数据分片,再将分片后大于IMB的数 据按照每片IMB再次分片,剩余不足IMB的数据分为一个数据片,并将分好的数据片传给计 算模块;
[0014] S4.计算模块为每个数据片分配一个数据片ID,将数据片ID按照化Sh算法取余,并 将余数相同的数据片分到一个计算单元中;
[0015] S5.每个计算单元判断其内部数据片中视频流状态符合正常播放时,再次校验识 别码,识别码校验成功,将对应的播放状态信息发送到白名单模块;
[0016] S6.白名单模块将播放状态对应的用户,更新到白名单分片。
[0017] 在上述技术方案的基础上,所述识别码包括时间戳、客户端播放器ID和随机数,所 述识别码是固定长度,并且加密;步骤S4中,识别码校验时需要解密。
[0018] 在上述技术方案的基础上,所述视频流状态包括视频流播放、视频流缓冲区满、视 频流缓冲区空、W及视频播放关闭。
[0019] 在上述技术方案的基础上,S5中,视频流状态符合正常播放的特征为,首先有视频 流播放,其次视频流缓冲区满或视频流缓冲区空二者交替出现,或者其次只有视频流缓冲 区满或视频流缓冲区空出现。
[0020] 本发明的有益效果在于:通过视频流的播放状态实时生成白名单,可W在用户观 看直播的过程中,实时获取到用户的观看状态,保证白名单的及时性,运样生成的白名单能 精准确定当前用户的活跃状态,进而能保证参加互动的用户均为有效的活跃用户,同时也 提高了用户的体验。
【附图说明】
[0021] 图1为本发明实施例基于视频流播放状态的白名单生成系统的框图;
[0022] 图2为本发明实施例基于视频流播放状态的白名单生成方法的流程图。
【具体实施方式】
[0023] W下结合附图及实施例对本发明作进一步详细说明。
[0024] 如图1所示,本发明基于视频流播放状态的白名单生成系统,包括:客户端播放器、 数据缓存模块、计算模块和白名单模块。
[0025] 客户端播放器用于对用户进行视频直播,并实时向数据缓存模块上报视频流的播 放状态信息。其中,播放状态信息包括视频流状态、用户ID和用户对应的识别码,用户ID是 每个用户唯一性的ID。视频流状态包括视频流播放PLAY、视频流缓冲区满Buffer.Full、视 频流缓冲区空Buf f er. Emp ty、W及视频播放关闭Close;其中Buffer.Full时,用户看视频流 杨;Buffer.Empty时,用户看视频卡顿。所述识别码的生成规则是:时间戳+客户端播放器ID +随机数,其中客户端播放ID是客户端播放器的唯一 ID,并且识别码是固定长度,而且加密。
[0026] 数据缓存模块,用于实时缓存符合格式要求的播放状态信息,丢弃不符合格式要 求的播放状态信息,例如:视频流状态非法、用户ID为空或者不符合数据字段类型、时间戳 格式不对、客户端类型标识非法等。数据缓存模块对于播放状态信息进行预处理,预处理后 的数据格式如下:
[0027]
[0028] 数据缓存模块,还用于对缓存的数据进行数据片划分。其中,按照时间粒度1秒分 片,分片后如果有大于IMB的数据,按照每片IMB再次分片,剩余不足IMB的分为一个数据片, 并将分好的数据片传给计算模块。
[0029] 计算模块包括多个计算单元,每个计算单元用于实时接收划分后的数据片。具体 的,每个数据片存储到指定的计算单元,计算模块为每个数据片分配一个数据片ID,将数据 片ID按照哈希化Sh算法取余,并将余数相同的数据片存放在同一个计算单元中。除此之外, 计算单元还用于对播放状态信息进行验证,验证其内部的数据片,在视频流状态符合正常 播放,并且识别码重新验证正确后,将对应的播放状态信息提交到白名单模块用于更新。
[0030] 白名单模块,用于接收验证成功的播放状态信息,并将其对应的用户信息W白名 单分片的形式存储。
[0031] 如图2所示,本发明基于视频流播放状态的白名单生成方法,具体包括如下步骤:
[0032] SI.客户端播放器实时向数据缓存模块上报视频流的播放状态信息,播放状态信 息包括视频流状态、用户ID和用户对应的识别码。其中,视频流状态包括视频流播放PLAY、 视频流缓冲区满Buf f er.化11、视频流缓冲区空Buf f er. Emp ty、W及视频播放关闭C10 Se;识 别码包括时间戳、客户端播放器ID和随机数,所述识别码是固定长度,并且对识别码进行加 密处理。
[0033] S2.数据缓存模块缓存符合格式要求的播放状态信息。具体的,数据缓存模块对各 种客户端播放器上报的视频流的播放状态信息,进行缓存并预处理,预处理时,丢弃不符合 格式要求的播放状态信息。不符合格式要求的情况包括:视频流状态值非法、客户端播放器 ID为空或者不符合数据字段类型、时间戳格式不对、客户端类型标识非法等。
[0034] S3.数据缓存模块对缓存的数据,首先按照时间粒度1秒分片,分片后,对于大于 IMB的数据,按照每片IMB再次分片,剩余不足IMB的单独分为一个数据片,保证每个数据片 都小于或等于1MB,其中包含至少一条播放状态信息,并将分好的数据片传给计算模块。
[0035] S4.对于提交到计算模块的数据片,计算模块为每个数据片分配一个数据片ID,并 将数据片ID按照化Sh算法取余,然后将余数相同的数据片分到一个计算单元中。并且,对计 算单元的个数N取模,获得计算单元ID,运样即可得知哪些数据片分到哪个计算单元中,提 高计算单元的水平扩展能力,根据数据量的规模来相应增减计算单元。
[0036] S5.计算单元对每个数据片中视频流状态进行判断,判断其是否符合正常播放的 特征,若是,进一步进行识别码校验;若否,立即结束该数据片的处理。具体的,视频流状态 符合正常播放的特征为:首先必须有化AY;其次Buffer. Full或Buffer. Empty二者交替出 现,或者其次只有Buf f er.化11或Buf f er. Empty其一出现。
[0037] 校验识别码时,先要对识别码解密,然后取出时间戳和客户端播放器ID,判断时间 戳与当前服务器的时间偏差是否在1分钟之内,若是,则认为时间戳合理;若否,时间戳不合 理,识别码校验失败。在时间戳合理的基础上,校验客户端播放器ID是否符合规范,若是,识 别码校验成功;若否,识别码校验失败。然后将识别码校验成功的播放状态信息发送到白名 单模块。
[0038] S6.白名单模块将播放状态对应的用户,更新到白名单分片(白名单按用户ID分片 存储)。另外,白名单会通过Restful接口或者RPC(Remote Procedure化11 Protocol,远程 过程调用协议)接口形式,暴露给其他应用使用。基于此白名单,可W在多个重要场景中过 滤无效用户账号(即白名单之外的账号)。
[0039] 本发明不局限于上述实施方式,对于本技术领域的普通技术人员来说,在不脱离 本发明原理的前提下,还可W做出若干改进和润饰,运些改进和润饰也视为本发明的保护 范围之内。本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。
【主权项】
1. 一种基于视频流播放状态的白名单生成系统,其特征在于,包括: 客户端播放器,用于对用户进行视频直播,并实时向数据缓存模块上报视频流的播放 状态信息; 数据缓存模块,用于实时缓存符合格式要求的播放状态信息,并对缓存的数据进行数 据片划分; 计算模块,包括多个计算单元,每个计算单元用于实时接收划分后的数据片,并对播放 状态信息进行验证; 白名单模块,用于接收验证成功的播放状态信息,并将其对应的用户信息以白名单分 片的形式存储。2. 如权利要求1所述的基于视频流播放状态的白名单生成系统,其特征在于:所述播放 状态信息包括视频流状态、用户ID和用户对应的识别码;视频流状态包括视频流播放、视频 流缓冲区满、视频流缓冲区空、以及视频播放关闭。3. 如权利要求2所述的基于视频流播放状态的白名单生成系统,其特征在于:所述识别 码包括时间戳、客户端播放器ID和随机数,所述识别码是固定长度,并且加密。4. 如权利要求2所述的基于视频流播放状态的白名单生成系统,其特征在于:数据缓存 模块中划分的数据片,其划分的时间粒度为1秒,且每个数据片都小于或等于1MB。5. 如权利要求4所述的基于视频流播放状态的白名单生成系统,其特征在于:计算模块 为每个数据片分配一个数据片ID,将数据片ID按照哈希Hash算法取余,并将余数相同的数 据片存放在同一个计算单元中。6. 如权利要求5所述的基于视频流播放状态的白名单生成系统,其特征在于:每个计算 单元验证内部的数据片,在视频流状态符合正常播放,并且识别码重新验证正确后,将对应 的播放状态信息提交到白名单模块用于更新。7. -种基于权利要求1所述系统的视频流播放状态的白名单生成方法,其特征在于,包 括步骤:51. 客户端播放器实时向数据缓存模块上报视频流的播放状态信息,播放状态信息包 括视频流状态、用户ID和用户对应的识别码;52. 数据缓存模块缓存符合格式要求的播放状态信息;53. 数据缓存模块按照时间粒度1秒将缓存的数据分片,再将分片后大于1MB的数据按 照每片1MB再次分片,剩余不足1MB的数据分为一个数据片,并将分好的数据片传给计算模 块;54. 计算模块为每个数据片分配一个数据片ID,将数据片ID按照Hash算法取余,并将余 数相同的数据片分到一个计算单元中;55. 每个计算单元判断其内部数据片中视频流状态符合正常播放时,再次校验识别码, 识别码校验成功,将对应的播放状态信息发送到白名单模块;56. 白名单模块将播放状态对应的用户,更新到白名单分片。8. 如权利要求7所述的视频流播放状态的白名单生成方法,其特征在于:所述识别码包 括时间戳、客户端播放器ID和随机数,所述识别码是固定长度,并且加密;步骤S4中,识别码 校验时需要解密。9. 如权利要求7所述的视频流播放状态的白名单生成方法,其特征在于:所述视频流状 态包括视频流播放、视频流缓冲区满、视频流缓冲区空、以及视频播放关闭。10.如权利要求9所述的视频流播放状态的白名单生成方法,其特征在于:S5中,视频流 状态符合正常播放的特征为,首先有视频流播放,其次视频流缓冲区满或视频流缓冲区空 二者交替出现,或者其次只有视频流缓冲区满或视频流缓冲区空出现。
【文档编号】H04N21/254GK105847885SQ201610352928
【公开日】2016年8月10日
【申请日】2016年5月25日
【发明人】吴瑞诚
【申请人】武汉斗鱼网络科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1