一种HLS点播快速起播方法及系统技术方案

技术编号:23088560 阅读:70 留言:0更新日期:2020-01-11 02:23
本发明专利技术公开了一种HLS点播快速起播方法及系统,涉及互联网多媒体技术领域。本发明专利技术通过预先获取点播片库中内容文件,生成索引文件和媒体分片,注入CDN系统;CDN系统收到第一个媒体分片的获取请求,以不限速方式向播放器发送该媒体分片的首字节至第一个GOP末字节的所有数据,以限速方式发送该媒体分片的其余数据;CDN系统收到从媒体分片的偏移时间位置起获取内容的请求后,根据偏移时间位置计算媒体分片中对应的GOP的位置,并将该GOP包含的全部媒体数据,以不限速方式发送至播放器;当播放器缓至媒体分片中一个GOP末字节时,即可开始播放视频,达到更高的起播速度和起播位置精度,以及提高CDN发流效率,避免资源浪费。

A fast start-up method and system of HLS on demand

【技术实现步骤摘要】
一种HLS点播快速起播方法及系统
本专利技术涉及互联网多媒体
,具体涉及一种HLS点播快速起播方法及系统。
技术介绍
当前业界HLS(HTTPLiveStreaming,苹果公司提出的基于HTTP的流媒体网络传输协议)点播起播一般形式为:当用户选择一个HLS点播内容播放时,终端选择索引文件中的第一个媒体分片,向CDN(ContentDeliveryNetwork,内容分发网络)系统请求。为了使终端用户获得较好起播体验,CDN一般将此整个媒体分片以N倍视频码率的速度发送(一般N>=4)。当用户拖拽进度条进行拖放时,CDN对被请求媒体分片的发送方式是相同的。此种方法主要存在三个问题:一、被请求的媒体分片发送最高速率只能到N倍;二、在实际中,播放器只要缓存完包含第一个GOP(GroupOfPicture,画面组)包含的媒体内容即可起播,而现有技术一般将整个媒体分片都以N倍速发送,造成CDN资源和网络资源浪费,也增加了网络拥塞的可能性;三、拖放的粒度为媒体分片长度,如分片时长为10秒,每次只能拖放到视频10秒整数倍的位置播放,或采用另外一种方式,播放器下载整个媒体分片,再搜索到对应位置开始播放。
技术实现思路
针对现有技术中存在的缺陷,本专利技术的目的在于提供一种HLS点播快速起播方法及系统,达到更高的起播速度和起播位置精度,提高CDN发流效率,避免资源浪费。为达到以上目的,本专利技术采取的技术方案是:一种HLS点播快速起播方法,包括以下步骤:获取点播片库中内容文件,生成索引文件和媒体分片,注入CDN系统;用户请求点播时,播放器向CDN系统请求播放HLS点播内容,CDN系统向播放器反馈索引文件;播放器解析索引文件,向CDN系统请求获取第一个媒体分片;CDN系统收到媒体内容索引文中第一个媒体分片的获取请求,以不限速方式向播放器发送该媒体分片的首字节至第一个GOP末字节的所有数据,以限速方式发送该媒体分片的其余数据;播放器接收媒体分片数据并缓存,当缓至媒体分片中第一个GOP末字节时,开始播放视频,并下载该媒体分片的剩余数据进行播放。在上述方案的基础上,所述索引文件包括两个自定义的媒体分片的标签,其中一个为GOP起始位置标签,用于以数组方式记录该媒体分片中的每一个GOP的起始位置值;另一个为GOP首帧的展示时间标签,用于以数组方式记录该媒体分片中的每一个GOP中首帧的展示时间值。在上述方案的基础上,所述方法还包括以下步骤:用户操作播放器进度条进行拖拽播放时,播放器根据索引文件中各媒体分片的时长,计算出拖拽后的起播位置所在的媒体分片以及在该媒体分片的起播偏移位置,向CDN系统请求从计算出的该媒体分片的起播偏移位置开始播放;CDN系统收到媒体分片的获取请求后,计算起播偏移位置在媒体分片中对应的GOP的位置,并将该GOP包含的全部媒体数据,以不限速方式发送至播放器;以限速方式发送该媒体分片的其余数据;播放器缓存完该GOP包含的全部媒体数据时,开始播放视频,并不间断下载该媒体分片的剩余数据进行播放。在上述方案的基础上,计算起播偏移位置在媒体分片中对应的GOP的位置,具体包括以下步骤:CDN系统从URL获得媒体分片名称和起播偏移位置后,通过遍历该媒体分片的GOP首帧展示时间标签的数组元素,从中寻找与起播偏移位置最接近的首帧展示时间,找到后记录数组元素的下标,用此下标从媒体分片的GOP起始位置标签的数组得到对应GOP的起始位置。在上述方案的基础上,所述方法还包括以下步骤:CDN系统向播放器反馈索引文件时,删除索引文件中包含的所有自定义的媒体分片的标签。本专利技术还提供一种HLS点播快速起播系统,包括预处理模块、播放器和CDN系统:所述预处理模块用于:获取点播片库中内容文件,生成索引文件和媒体分片,注入CDN系统;所述播放器用于:用户请求点播时,向CDN系统请求播放HLS点播内容,获取CDN系统反馈的索引文件;解析索引文件,向CDN系统请求获取第一个媒体分片;所述CDN系统用于:收到播放HLS点播内容的请求时,向播放器反馈索引文件;收到媒体内容索引文中第一个媒体分片的获取请求时,以不限速方式向播放器发送该媒体分片的首字节至第一个GOP末字节的所有数据,以限速方式发送媒体分片的其余数据;所述播放器还用于:接收媒体分片数据并缓存,当缓至媒体分片中第一个GOP末字节时,开始播放视频,并下载该媒体分片的剩余数据进行播放。在上述方案的基础上,所述索引文件包括两个自定义的媒体分片的标签,其中一个为GOP起始位置标签,用于以数组方式记录该媒体分片中的每一个GOP的起始位置值;另一个为GOP首帧的展示时间标签,用于以数组方式记录该媒体分片中的每一个GOP中首帧的展示时间值。在上述方案的基础上,所述播放器还用于:用户操作播放器进度条进行拖拽播放时,播放器根据索引文件中各媒体分片的时长,计算出拖拽后的起播位置所在的媒体分片以及在该媒体分片的起播偏移位置,向CDN系统请求从计算出的该媒体分片的起播偏移位置开始播放;所述CDN系统还用于:收到向播放器反馈索引文件;收到媒体分片的获取请求后,计算起播偏移位置在媒体分片中对应的GOP的位置,并将该GOP包含的全部媒体数据,以不限速方式发送至播放器;以限速方式发送该媒体分片的其余数据;播放器缓存完该GOP包含的全部媒体数据时,开始播放视频,并不间断下载该媒体分片的剩余数据进行播放。在上述方案的基础上,所述CDN系统计算起播偏移位置在媒体分片中对应的GOP的位置,具体包括以下步骤:CDN系统从URL获得媒体分片名称和起播偏移位置后,通过遍历该媒体分片的GOP首帧展示时间标签的数组元素,从中寻找与起播偏移位置最接近的首帧展示时间,找到后记录数组元素的下标,用此下标从媒体分片的GOP起始位置标签的数组得到对应GOP的起始位置。在上述方案的基础上,所述CDN系统还用于:向播放器反馈索引文件时,删除索引文件中包含的所有自定义的媒体分片的标签。与现有技术相比,本专利技术的优点在于:本专利技术通过预先获取点播片库中内容文件,生成包含媒体内容中所有GOP的起始位置和所有GOP的首帧展示时间的索引文件和媒体分片,注入CDN系统;CDN系统收到媒体分片的获取请求,如果请求的是索引文件中的第一个媒体分片,则以不限速方式向播放器发送该媒体分片的首字节至第一个GOP末字节的所有数据,以限速方式发送该媒体分片的其余数据;CDN系统收到从媒体分片的起播偏移位置起获取内容的请求后,根据起播偏移位置计算媒体分片中对应的GOP的位置,并将该GOP包含的全部媒体数据,以不限速方式发送至播放器,以限速方式发送该媒体分片的其余数据;当播放器缓至媒体分片中一个GOP末字节时,即可开始播放视频,由此可以达到更高的起播速度和起播位置精度,以及提高CDN发流效率,避免资源浪费。附图说明图1是本专利技术实施例的HLS点播快速起播本文档来自技高网...

【技术保护点】
1.一种HLS点播快速起播方法,其特征在于,包括以下步骤:/n获取点播片库中内容文件,生成索引文件和媒体分片,注入CDN系统;/n用户请求点播时,播放器向CDN系统请求播放HLS点播内容,CDN系统向播放器反馈索引文件;播放器解析索引文件,向CDN系统请求获取第一个媒体分片;/nCDN系统收到媒体内容索引文中第一个媒体分片的获取请求,以不限速方式向播放器发送该媒体分片的首字节至第一个GOP末字节的所有数据,以限速方式发送该媒体分片的其余数据;/n播放器接收媒体分片数据并缓存,当缓至媒体分片中第一个GOP末字节时,开始播放视频,并下载该媒体分片的剩余数据进行播放。/n

【技术特征摘要】
1.一种HLS点播快速起播方法,其特征在于,包括以下步骤:
获取点播片库中内容文件,生成索引文件和媒体分片,注入CDN系统;
用户请求点播时,播放器向CDN系统请求播放HLS点播内容,CDN系统向播放器反馈索引文件;播放器解析索引文件,向CDN系统请求获取第一个媒体分片;
CDN系统收到媒体内容索引文中第一个媒体分片的获取请求,以不限速方式向播放器发送该媒体分片的首字节至第一个GOP末字节的所有数据,以限速方式发送该媒体分片的其余数据;
播放器接收媒体分片数据并缓存,当缓至媒体分片中第一个GOP末字节时,开始播放视频,并下载该媒体分片的剩余数据进行播放。


2.如权利要求1所述的方法,其特征在于,所述索引文件包括两个自定义的媒体分片的标签,其中一个为GOP起始位置标签,用于以数组方式记录该媒体分片中的每一个GOP的起始位置值;另一个为GOP首帧的展示时间标签,用于以数组方式记录该媒体分片中的每一个GOP中首帧的展示时间值。


3.如权利要求2所述的方法,其特征在于,所述方法还包括以下步骤:
用户操作播放器进度条进行拖拽播放时,播放器根据索引文件中各媒体分片的时长,计算出拖拽后的起播位置所在的媒体分片以及在该媒体分片的起播偏移位置,向CDN系统请求从计算出的该媒体分片的起播偏移位置开始播放;
CDN系统收到媒体分片的获取请求后,计算起播偏移位置在媒体分片中对应的GOP的位置,并将该GOP包含的全部媒体数据,以不限速方式发送至播放器;以限速方式发送该媒体分片的其余数据;
播放器缓存完该GOP包含的全部媒体数据时,开始播放视频,并不间断下载该媒体分片的剩余数据进行播放。


4.如权利要求3所述的方法,其特征在于,计算起播偏移位置在媒体分片中对应的GOP的位置,具体包括以下步骤:
CDN系统从URL获得媒体分片名称和起播偏移位置后,通过遍历该媒体分片的GOP首帧展示时间标签的数组元素,从中寻找与起播偏移位置最接近的首帧展示时间,找到后记录数组元素的下标,用此下标从媒体分片的GOP起始位置标签的数组得到对应GOP的起始位置。


5.如权利要求2所述的方法,其特征在于,所述方法还包括以下步骤:
CDN系统向播放器反馈索引文件时,删除索引文件中包含的所有自定义的媒体分片的标签。


6.一种HLS点播快速起播系统,其特征在于,包括预处理模块...

【专利技术属性】
技术研发人员:徐继军杜兵
申请(专利权)人:烽火通信科技股份有限公司武汉市烽视威科技有限公司
类型:发明
国别省市:湖北;42

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

1