[发明专利]一种获取直播视频流的方法、装置、终端设备及存储介质有效
申请号: | 201811363027.1 | 申请日: | 2018-11-14 |
公开(公告)号: | CN109474684B | 公开(公告)日: | 2021-04-27 |
发明(设计)人: | 冯修杰 | 申请(专利权)人: | 广州虎牙信息科技有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08;H04L29/06 |
代理公司: | 北京博思佳知识产权代理有限公司 11415 | 代理人: | 林祥 |
地址: | 511446 广东省广州市番禺区南村镇万博二*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 获取 直播 视频 方法 装置 终端设备 存储 介质 | ||
1.一种获取直播视频流的方法,其特征在于,包括步骤:
直播客户端进入直播间后,向所述直播间对应的P2P网络中的至少两个节点发送连接请求;与响应所述连接请求的至少两个节点建立连接后,与已连接的节点分别协商订阅指定数据包;所述P2P网络中,任一节点被主动连接的其他节点数不大于第一设定阈值,任一节点主动连接的其他节点数不大于第二设定阈值,且所述第一设定阈值大于第二设定阈值;
在协商成功后,被订阅的节点在通过其他节点从服务器获取到数据包时,将所述直播客户端订阅的指定数据包推送给所述直播客户端,其中,所述数据包由服务器将所述直播间对应的直播视频流切割得到,所述服务器将数据包按照自定义的格式封装,所述自定义的格式中包括第一标识,所述第一标识用于描述每个封装后的数据包的唯一性;
所述直播客户端根据获取的数据包的第一标识拼装得到直播视频流。
2.根据权利要求1所述的方法,其特征在于,不同的数据包根据第一标识被分成多个组,被订阅的不同节点各自推送的指定数据包属于不同分组。
3.根据权利要求2所述的方法,其特征在于,所述第一标识包括预设位数的编号;其中,各数据包所属分组根据自身第一标识确定,包括:
以数据包的编号为被除数,分组的组数为除数进行求余,根据所述求余的余数确定数据包所属分组。
4.根据权利要求2所述的方法,其特征在于,所述分组的组数根据所述直播视频流的码率确定。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括步骤:
记录针对指定数据包与自身已连接的节点数量;
若所述节点数量小于预设值,则再次向所述直播间对应的P2P网络中符合预设条件的节点发送连接请求。
6.根据权利要求1所述的方法,其特征在于,所述直播客户端与已连接的节点间基于不可靠协议传输数据包;
所述直播客户端进入直播间后,还包括步骤:
所述直播客户端与服务器建立连接,在检测到数据包丢失后,向所述服务器请求传输所述丢失的数据包,所述直播客户端与所述服务器间基于可靠协议传输数据包。
7.一种获取直播视频流的装置,其特征在于,包括:
获取模块,用于在直播客户端进入直播间后,向所述直播间对应的P2P网络中的至少两个节点发送连接请求;与响应所述连接请求的至少两个节点建立连接后,向已连接的节点分别协商订阅指定数据包;所述P2P网络中,任一节点被主动连接的其他节点数不大于第一设定阈值,任一节点主动连接的其他节点数不大于第二设定阈值,且所述第一设定阈值大于第二设定阈值;
在协商成功后,被订阅的节点在通过其他节点从服务器获取到数据包时,将所述直播客户端订阅的指定数据包推送给所述直播客户端,其中,所述数据包由服务器将所述直播间对应的直播视频流切割得到,所述服务器将数据包按照自定义的格式封装,所述自定义的格式中包括第一标识,所述第一标识用于描述每个封装后的数据包的唯一性;
拼装模块,用于所述直播客户端根据获取的数据包的第一标识拼装得到直播视频流。
8.一种终端设备,其特征在于,包括:
处理器;以及
存储器,所述存储器被配置成存储计算机程序,所述计算机程序被配置成被所述处理器执行如权利要求1至6任意一项方法所述的操作。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行如权利要求1至6任意一项方法所述的操作。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广州虎牙信息科技有限公司,未经广州虎牙信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811363027.1/1.html,转载请声明来源钻瓜专利网。