加速启播的P2P直播系统及方法技术方案

技术编号:20246876 阅读:100 留言:0更新日期:2019-01-30 00:44
本发明专利技术公开了一种加速启播的P2P直播系统及方法,系统包括推送服务器和播放节点,所述播放节点与所述推送服务器通信连接;所述推送服务器用于将视频数据切分成若干数据块,并将每个数据块编码成若干编码片段,并保证缓存的编码片段对应的至少一个数据块中包括一个关键帧;所述播放节点用于发送播放请求至所述推送服务器;所述推送服务器用于在接收到所述播放请求时将解码参数和所述编码片段发送至所述播放节点;所述播放节点用于根据所述解码参数对所述编码片段进行解码后播放。本发明专利技术中推送服务器同时将编码片段和解码参数发送至播放节点,播放节点可直接根据解码参数对编码片段进行解码实现启播,大大加快了启播速度,提高了用户体验。

【技术实现步骤摘要】
加速启播的P2P直播系统及方法
本专利技术涉及直播
,特别涉及一种加速启播的P2P(对等网络)直播系统及方法。
技术介绍
在日渐普及的流媒体应用系统中,直播服务已经越来越多地成为各系统中的主要服务之一。P2P技术因其可扩展性,自治能力,动态适应能力等而成为互联网上直播业务的主要解决方案。目前P2P流媒体直播系统主要有三类模型:即基于树状拓扑协议及扩展模型、基于网状拓扑协议及扩展模型以及基于Gossip协议的模型。现行的P2P流媒体直播系统(如DONet、TAG等)在启动播放时,本地缓冲区均要缓冲一段较长的流媒体数据才会开始播放,因此用户在加入P2P网络启动播放到流媒体开始播放需要等待较长的时间。此外,由于现行的P2P流媒体直播系统对所有节点都采用统一的播放策略,致使部分节点的下载带宽不够大,出现因流媒体数据获取不足而导致播放画面停顿的问题,从而无法保证播放质量和用户体验。
技术实现思路
本专利技术要解决的技术问题是为了克服现有技术中直播时启播慢的缺陷,提供一种加速启播的P2P直播系统及方法。本专利技术是通过下述技术方案来解决上述技术问题:一种加速启播的P2P直播系统,其特点在于,所述P2P直播系统包括推送服务器和播放节点,所述播放节点与所述推送服务器通信连接;所述推送服务器用于将视频数据切分成若干数据块,并将每个数据块编码成若干编码片段,并保证缓存的编码片段对应的至少一个数据块中包括一个关键帧;所述播放节点用于发送播放请求至所述推送服务器;所述推送服务器用于在接收到所述播放请求时将解码参数和所述编码片段发送至所述播放节点;所述播放节点根据所述解码参数对所述编码片段进行解码后播放。较佳地,所述推送服务器还用于在接收到所述播放请求时从所述若干数据块中查找目标数据块,并将所述目标数据块的编码片段发送至所述播放节点;所述目标数据块为具有与当前时刻的时间差最小的关键帧的数据块。较佳地,所述推送服务器至少发送5次解码参数至所述播放节点。较佳地,所述P2P直播系统还包括tracker服务器和供源节点;所述tracker服务器用于为每个播放节点分配对应的连接供源节点的通信权限;所述播放节点还用于从所述tracker服务器获取所述通信权限,并根据所述通信权限与对应的供源节点建立通信连接,并获取编码片段。较佳地,所述解码参数包括纠删码阈值和编码片段字节数。本专利技术还提供一种加速启播的P2P直播方法,所述P2P直播方法利用如上所述的P2P直播系统实现,所述P2P直播方法包括以下步骤:S1、推送服务器将视频数据切分成若干数据块,并将每个数据块编码成若干编码片段,并保证缓存的编码片段对应的至少一个数据块中包括一个关键帧;S2、播放节点发送播放请求至所述推送服务器;S3、所述推送服务器在接收到所述播放请求时将解码参数和所述编码片段发送至所述播放节点;S4、所述播放节点根据所述解码参数对所述编码片段进行解码后播放。较佳地,所述推送服务器将所述编码片段发送至所述播放节点的步骤,具体包括:所述推送服务器从所述若干数据块中查找目标数据块,并将所述目标数据块的编码片段发送至所述播放节点;所述目标数据块为具有与当前时刻的时间差最小的关键帧的数据块。较佳地,在步骤S3中,所述推送服务器至少发送5次解码参数至所述播放节点。较佳地,所述P2P直播系统还包括tracker服务器和供源节点;所述tracker服务器存储有分配给每个播放节点的与对应的供源节点连接的通信权限;所述P2P直播方法还包括:S5、所述播放节点从所述tracker服务器获取所述通信权限,并根据所述通信权限与对应的供源节点建立通信连接,并获取编码片段。较佳地,所述解码参数包括纠删码阈值和编码片段字节数。本专利技术的积极进步效果在于:本专利技术中推送服务器同时将编码片段和解码参数发送至播放节点,播放节点可直接根据解码参数对编码片段进行解码实现启播,大大加快了启播速度,提高了用户体验。附图说明图1为本专利技术实施例1的加速启播的P2P直播系统的结构示意图。图2为本专利技术实施例2的加速启播的P2P直播方法的流程图。具体实施方式下面通过实施例的方式进一步说明本专利技术,但并不因此将本专利技术限制在所述的实施例范围之中。实施例1如图1所示,本实施例的加速启播的P2P直播系统包括推送服务器1和播放节点2,推送服务器1与多个播放节点2通信连接。本实施例的推送服务器可通过改造CDN(内容分发网络)中的服务器实现,具体的,推送服务器可实现以下功能:推送服务器将获得的视频数据切分成同样大小的若干数据块(chunk),再将每个chunk通过[N,k]纠删码生成N个编码片段,编码过程中生成解码参数:纠删码阈值k和编码片段的字节数psize。推送服务器对编码片段进行缓存,并保证缓存的编码片段所对应的至少一个数据块中包括一个关键帧,以保证推送服务器向播放节点推送的编码片段对应的第一个数据块一定是带有关键帧的,这是因为播放节点只有拿到关键帧才可能启播成功。推送服务器在接收到播放节点发送的播放请求时,将解码参数和编码片段发送至播放节点。播放节点接收到解码参数以及k个编码片段后,则可根据解码参数对编码片段进行解码并播放,实现启播。本实施中,由于播放节点无需请求获得编码参数,即可实现对编码片段的解码,大大加快了启播速度。为了用户可以从任意时间点快速、流畅地实现启播,本实施例中,推送服务器在接收到播放请求时,首先从若干数据块中查找目标数据块,然后将目标数据块的编码片段发送至播放节点;目标数据块为具有与当前时刻(也即推送服务器接收到播放请求的时刻)的时间差最小的关键帧的数据块,也即优先从具有距当前时刻最近的关键帧的chunk开始推送,以实现快速、流畅地切入启播。当然,播放节点实现启播后,推送服务器还持续发送请求时间之后的数据块的编码片段给播放节点。但由于每个频道具有相同的纠删码阈值k和编码片段的字节数psize,因此播放节点只需在每次启播时获取解码参数即可,实现启播后,推送服务器无需再发送解码参数至播放节点。本实施例中,为了确保播放节点能接收到解码参数,推送服务器发送多次解码参数给播放节点,例如,每隔10ms发送1次,重试发送5次。本实施例中,P2P直播系统还包括tracker服务器3和供源节点4,播放节点2与tracker服务器3通信连接。tracker服务器用于为每个播放节点分配对应的连接供源节点的通信权限,其中通信权限包括直播频道url(统一资源定位符)。播放节点启播后,还可从tracker服务器获取通信权限,并根据通信权限与对应的供源节点建立通信连接,此时播放节点可从其他供源节点获取编码片段,从而可减少直播过程中因网络问题导致的播放节点从推送服务器获取编码片段的延时而造成的卡顿现象。实施例2本实施例的P2P直播方法利用实施例1中的P2P直播系统实现,如图2所示,本实施例的P2P直播方法包括以下步骤:步骤101、推送服务器将视频数据切分成若干数据块,并将每个数据块编码成若干编码片段。推送服务器对编码片段进行缓存时,保证缓存的编码片段对应的至少一个数据块中包括一个关键帧。具体的,推送服务器将获得的视频数据切分成同样大小的若干数据块(chunk),再将每个chunk通过[N,k]纠删码生成N个编码片段,编码过程中生成解码参数。其中,解码参本文档来自技高网...

【技术保护点】
1.一种加速启播的P2P直播系统,其特征在于,所述P2P直播系统包括推送服务器和播放节点,所述播放节点与所述推送服务器通信连接;所述推送服务器用于将视频数据切分成若干数据块,并将每个数据块编码成若干编码片段,并保证缓存的编码片段对应的至少一个数据块中包括一个关键帧;所述播放节点用于发送播放请求至所述推送服务器;所述推送服务器用于在接收到所述播放请求时将解码参数和所述编码片段发送至所述播放节点;所述播放节点根据所述解码参数对所述编码片段进行解码后播放。

【技术特征摘要】
1.一种加速启播的P2P直播系统,其特征在于,所述P2P直播系统包括推送服务器和播放节点,所述播放节点与所述推送服务器通信连接;所述推送服务器用于将视频数据切分成若干数据块,并将每个数据块编码成若干编码片段,并保证缓存的编码片段对应的至少一个数据块中包括一个关键帧;所述播放节点用于发送播放请求至所述推送服务器;所述推送服务器用于在接收到所述播放请求时将解码参数和所述编码片段发送至所述播放节点;所述播放节点根据所述解码参数对所述编码片段进行解码后播放。2.如权利要求1所述的P2P直播系统,其特征在于,所述推送服务器还用于在接收到所述播放请求时从所述若干数据块中查找目标数据块,并将所述目标数据块的编码片段发送至所述播放节点;所述目标数据块为具有与当前时刻的时间差最小的关键帧的数据块。3.如权利要求1所述的P2P直播系统,其特征在于,所述推送服务器用于至少发送5次解码参数至所述播放节点。4.如权利要求1所述的P2P直播系统,其特征在于,所述P2P直播系统还包括tracker服务器和供源节点;所述tracker服务器用于为每个播放节点分配对应的连接供源节点的通信权限;所述播放节点还用于从所述tracker服务器获取所述通信权限,并根据所述通信权限与对应的供源节点建立通信连接,并获取编码片段。5.如权利要求1-4中任意一项所述的P2P直播系统,其特征在于,所述解码参数包括纠删码阈值和编码片段字节数。6.一种加速启播的P2P直播方法,其特征在于,...

【专利技术属性】
技术研发人员:刘炜
申请(专利权)人:上海云熵网络科技有限公司
类型:发明
国别省市:上海,31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1