一种HLS文件播放方法、系统及电子设备和存储介质技术方案

技术编号:21039363 阅读:20 留言:0更新日期:2019-05-04 08:20
本申请公开了一种HLS文件播放方法、系统及一种电子设备和计算机可读存储介质,该方法包括:当接收到目标HLS文件的播放请求时,获取目标HLS文件的第一m3u8文件;其中,目标HLS文件包括第一m3u8文件及多个ts文件;解析第一m3u8文件得到第一ts文件的ts地址,并根据ts地址获取存储第一ts文件对应的片文件的CDN节点的信息;第一ts文件为多个ts文件中的其中一个;从CDN节点中下载片文件,并对片文件进行拼接操作得到第一ts文件;向播放器发送第一ts文件,以使播放器播放第一ts文件从而实现目标HLS文件的播放,提高了ts文件的下载效率。

A HLS File Playing Method, System, Electronic Equipment and Storage Media

【技术实现步骤摘要】
一种HLS文件播放方法、系统及电子设备和存储介质
本申请涉及视频播放
,更具体地说,涉及一种HLS文件播放方法、系统及一种电子设备和一种计算机可读存储介质。
技术介绍
随着互联网技术的飞速发展,越来越多的信息如影视、音乐等逐渐以网络作为传播的媒介。流媒体指以流方式在网络中传送音频、视频和多媒体文件的媒体形式。相对于下载后观看的网络播放形式而言,流媒体的典型特征是把连续的音频和视频信息压缩后放到网络服务器上,用户边下载边观看,而不必等待整个文件下载完毕。由于流媒体服务器流媒体技术的优越性,该技术广泛应用于视频点播、视频会议、远程教育、远程医疗和在线直播系统中。直播视频文件的提供方,通过推流技术将流媒体文件推送到源服务器,即流媒体服务器。在观看直播视频文件时,观看方发出观看请求,通过拉流技术将直播视频文件流拉到观看方的客户端。拉流技术是指从流媒体服务器,将直播视频文件提供方推送的直播视频文件流,拉取到观看方的客户端。HLS(英文全称:HTTPLiveStreaming)是Apple的动态码率自适应技术,主要用于电脑端和移动终端的音视频服务,包括一个m3u8文件,该m3u8文件包括TS媒体分片文件和key加密串文件,TS媒体分片文件为索引文件,用于存储各ts流在流媒体服务器中的下载地址。在现有技术中,基于HLS协议的拉流一般采用传统的直拉m3u8文件的方式,即客户端需要播放流媒体服务器中的ts流时,解析m3u8文件,根据m3u8文件中ts地址逐个向流媒体服务器下载ts文件,如果同时有大量的播放需求,则可能会造成流媒体服务器的带宽压力过大,客户端的播放可能出现卡顿,另外流媒体服务器的带宽成本也较高。
技术实现思路
本申请的目的在于提供一种HLS文件播放方法、系统及一种电子设备和一种计算机可读存储介质,提高了ts文件的下载效率。为实现上述目的,本申请提供了一种HLS文件播放方法,包括:当接收到目标HLS文件的播放请求时,获取所述目标HLS文件的第一m3u8文件;其中,所述目标HLS文件包括第一m3u8文件及多个ts文件;解析所述第一m3u8文件得到第一ts文件的ts地址,并根据所述ts地址获取存储所述第一ts文件对应的片文件的CDN节点的信息;所述第一ts文件为所述多个ts文件中的其中一个;从所述CDN节点中下载所述片文件,并对所述片文件进行拼接操作得到所述第一ts文件;向播放器发送所述第一ts文件,以使所述播放器播放所述第一ts文件从而实现所述目标HLS文件的播放。其中,获取所述目标HLS文件的第一m3u8文件,包括:从第三方源站或CDN源服务器获取所述目标HLS文件的所述第一m3u8文件。其中,所述向播放器发送所述第一ts文件,包括:当接收到播放器索取所述第一ts文件的请求时,或者当预设的发送时刻到达时,判断所述第一ts文件是否拼接完成;若是,则向所述播放器发送所述第一ts文件;若否,则从第三方源站或CDN源服务器获取所述第一ts文件,并向所述播放器发送所述第一ts文件。其中,所述根据所述ts地址获取存储所述第一ts文件对应的片文件的CDN节点的信息,包括:向CDN网络调度服务器发送获取存储所述第一ts文件对应的片文件的CDN节点的请求,所述获取存储所述第一ts文件对应的片文件的CDN节点的请求中携带所述ts地址;接收所述CDN网络调度服务器发送的存储所述第一ts文件对应的片文件的CDN节点的信息。为实现上述目的,本申请提供了一种电子设备,所述电子设备包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的HLS文件播放程序,所述HLS文件播放程序被所述处理器执行时实现:当接收到目标HLS文件的播放请求时,获取所述目标HLS文件的第一m3u8文件;其中所述目标HLS文件包括第一m3u8文件及多个ts文件;解析所述第一m3u8文件得到第一ts文件的ts地址,并根据所述ts地址获取存储所述第一ts文件对应的片文件的CDN节点的信息;所述第一ts文件为所述多个ts文件中的其中一个;从所述CDN节点中下载所述片文件,并对所述片文件进行拼接操作得到所述第一ts文件;向播放器发送所述第一ts文件,以使所述播放器播放所述第一ts文件从而实现所述目标HLS文件的播放。其中,所述HLS文件播放程序被所述处理器执行时还实现:从第三方源站或CDN源服务器获取所述目标HLS文件的所述第一m3u8文件。其中,所述HLS文件播放程序被所述处理器执行时还实现:当接收到播放器索取所述第一ts文件的请求时,或者当预设的发送时刻到达时,判断所述第一ts文件是否拼接完成;若是,则向所述播放器发送所述第一ts文件;若否,则从第三方源站或CDN源服务器获取所述第一ts文件,并向所述播放器发送所述第一ts文件。其中,所述HLS文件播放程序被所述处理器执行时还实现:向CDN网络调度服务器发送获取存储所述第一ts文件对应的片文件的CDN节点的请求,所述获取存储所述第一ts文件对应的片文件的CDN节点的请求中携带所述ts地址;接收所述CDN网络调度服务器发送的存储所述第一ts文件对应的片文件的CDN节点的信息。为实现上述目的,本申请提供了一种HLS文件播放系统,包括:获取模块,用于当接收到目标HLS文件的播放请求时,获取所述目标HLS文件的第一m3u8文件;其中,所述目标HLS文件包括第一m3u8文件及多个ts文件;解析模块,用于解析所述第一m3u8文件得到第一ts文件的ts地址,并根据所述ts地址获取存储所述第一ts文件对应的片文件的CDN节点的信息;所述第一ts文件为所述多个ts文件中的其中一个;下载模块,用于从所述CDN节点中下载所述片文件,并对所述片文件进行拼接操作得到所述第一ts文件;发送模块,用于向播放器发送所述第一ts文件,以使所述播放器播放所述第一ts文件从而实现所述目标HLS文件的播放。为实现上述目的,本申请提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述HLS文件播放方法的步骤。通过以上方案可知,本申请提供的一种HLS文件播放方法,包括:当接收到目标HLS文件的播放请求时,获取所述目标HLS文件的第一m3u8文件;其中,所述目标HLS文件包括第一m3u8文件及多个ts文件;解析所述第一m3u8文件得到第一ts文件的ts地址,并根据所述ts地址获取存储所述第一ts文件对应的片文件的CDN节点的信息;所述第一ts文件为所述多个ts文件中的其中一个;从所述CDN节点中下载所述片文件,并对所述片文件进行拼接操作得到所述第一ts文件;向播放器发送所述第一ts文件,以使所述播放器播放所述第一ts文件从而实现所述目标HLS文件的播放。本申请将每个ts文件划分为多个片文件,存储于存储集群的不同节点中。客户端在请求播放某个ts文件时,可以通过SDK并行的从各节点中下载所有的片文件,并拼接为完整的ts文件。由于每个片文件的大小较小,下载较快,且各片文件并行下载,提高了整个ts文件的下载效率。本申请还公开了一种HLS文件播放系统及一种电子设备和一种计算机可读存储介质,同样能实现上述技术效果。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述本文档来自技高网
...

【技术保护点】
1.一种HLS文件播放方法,其特征在于,包括:当接收到目标HLS文件的播放请求时,获取所述目标HLS文件的第一m3u8文件;其中,所述目标HLS文件包括第一m3u8文件及多个ts文件;解析所述第一m3u8文件得到第一ts文件的ts地址,并根据所述ts地址获取存储所述第一ts文件对应的片文件的CDN节点的信息;所述第一ts文件为所述多个ts文件中的其中一个;从所述CDN节点中下载所述片文件,并对所述片文件进行拼接操作得到所述第一ts文件;向播放器发送所述第一ts文件,以使所述播放器播放所述第一ts文件从而实现所述目标HLS文件的播放。

【技术特征摘要】
1.一种HLS文件播放方法,其特征在于,包括:当接收到目标HLS文件的播放请求时,获取所述目标HLS文件的第一m3u8文件;其中,所述目标HLS文件包括第一m3u8文件及多个ts文件;解析所述第一m3u8文件得到第一ts文件的ts地址,并根据所述ts地址获取存储所述第一ts文件对应的片文件的CDN节点的信息;所述第一ts文件为所述多个ts文件中的其中一个;从所述CDN节点中下载所述片文件,并对所述片文件进行拼接操作得到所述第一ts文件;向播放器发送所述第一ts文件,以使所述播放器播放所述第一ts文件从而实现所述目标HLS文件的播放。2.根据权利要求1所述HLS文件播放方法,其特征在于,获取所述目标HLS文件的第一m3u8文件,包括:从第三方源站或CDN源服务器获取所述目标HLS文件的所述第一m3u8文件。3.根据权利要求1所述HLS文件播放方法,其特征在于,所述向播放器发送所述第一ts文件,包括:当接收到播放器索取所述第一ts文件的请求时,或者当预设的发送时刻到达时,判断所述第一ts文件是否拼接完成;若是,则向所述播放器发送所述第一ts文件;若否,则从第三方源站或CDN源服务器获取所述第一ts文件,并向所述播放器发送所述第一ts文件。4.根据权利要求1至3中任一项所述的方法,其特征在于,所述根据所述ts地址获取存储所述第一ts文件对应的片文件的CDN节点的信息,包括:向CDN网络调度服务器发送获取存储所述第一ts文件对应的片文件的CDN节点的请求,所述获取存储所述第一ts文件对应的片文件的CDN节点的请求中携带所述ts地址;接收所述CDN网络调度服务器发送的存储所述第一ts文件对应的片文件的CDN节点的信息。5.一种电子设备,其特征在于,所述电子设备包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的HLS文件播放程序,所述HLS文件播放程序被所述处理器执行时实现:当接收到目标HLS文件的播放请求时,获取所述目标HLS文件的第一m3u8文件;其中所述目标HLS文件包括第一m3u8文件及多个ts文件;解析所述第一m3u8文件得到第一ts文件的ts地址,并根据所述ts地址获取存储所述第一ts文件对应的片文件的CD...

【专利技术属性】
技术研发人员:邢洪铎
申请(专利权)人:深圳市网心科技有限公司
类型:发明
国别省市:广东,44

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

1