本发明专利技术提供一种基于HLS协议的点播与直播切换方法和装置。所述方法包括:接收点播与直播切换指令;获取所述点播与直播切换指令对应的视频片段的m3u8文件;根据获取到的所述m3u8文件修改当前正在播放的m3u8文件,将所述点播与直播切换指令对应的视频片段信息写入所述当前正在播放的m3u8文件中;根据修改后的所述m3u8文件下载并播放视频片段。本发明专利技术通过在接收到点播与直播切换指令后,对当前正在播放的m3u8文件进行修改,整个过程对于播放器而言是透明的,播放器不需要重新启动,减少了重启所带来的时延、黑屏等问题。
【技术实现步骤摘要】
一种基于HLS协议的点播与直播切换方法和装置
本专利技术涉及视频播放
,尤其涉及一种基于HLS协议的点播与直播切换方法和装置。
技术介绍
随着互联网多媒体技术的发展,在网络带宽不断增长的今天,网络视频以其便捷的访问体验、多样化的影片来源、实时的更新速度吸引了广大的用户,使得网络视频成为了用户网络生活不可或缺的重要组成部分。而网络视频的播放速度与质量便成为了用户选择视频网站的主要依据。在各大视频网站目前所使用的传输协议中流媒体传输协议HLS(Httplivestreaming)占据了重要的地位。HLS协议是苹果公司实现的基于超文本传输协议Http的流媒体传输协议,HLS协议将容量巨大的连续媒体数据进行分段,分割为数量众多的小文件进行传递,迎合了网页服务器的文件传输性,采用一个不断更新的轻量级索引文件来控制分割后小媒体文件的下载和播放,可以实现流媒体的直播和点播。通过HLS协议,视频数据经处理后分为媒体数据ts文件以及媒体数据索引m3u8文件,并存在于服务器上。m3u8文件实际上只是一种文件组的组织形式,将视频片段以播放列表的形式组织在一起以供多媒体播放器下载播放。m3u8文件中通常包括多个上述媒体数据ts文件的多个统一资源定位符URL。多媒体播放器获取m3u8文件后,进而按照其中的URL下载对应的ts文件并进行播放。用户在收看视频的时候,有时候可能会在直播与点播之间进行切换,比如用户正在收看某视频网站的直播内容,但是突然想要回看之前的片段,这时用户通过调整进度条就能够实现直播到点播的切换。而视频切换的速度也将直接影响用户的体验。现有技术中,在用户进行点播和直播的切换后,播放器会重新向云服务器请求用户请求切换的视频的m3u8文件,并在接收到新的m3u8文件后,重新启动播放器,按照接收到的上述新的m3u8文件进行ts文件的下载和播放。而重新启动播放器往往会造成时延,出现黑屏、卡顿等现象。因此,非常有必要提供一种能够解决点播与直播切换所造成的时延、黑屏等现象的频道切换方法及其装置。
技术实现思路
有鉴于此,本专利技术提供一种基于HLS协议的点播与直播切换方法和装置,以解决点播与直播切换所造成的时延、黑屏等现象。具体地,所述包括:接收点播与直播切换指令;获取所述点播与直播切换指令对应的视频片段的m3u8文件;根据获取到的所述m3u8文件修改当前正在播放的m3u8文件,将所述点播与直播切换指令对应的视频片段信息写入所述当前正在播放的m3u8文件中;根据修改后的所述m3u8文件下载并播放视频片段。进一步地,所述获取所述点播与直播切换指令对应的视频片段的m3u8文件的过程包括:从云服务器上获取所述点播与直播切换指令对应的视频片段的m3u8文件或者从本地保存的m3u8文件中获取所述点播与直播切换指令对应的视频片段的m3u8文件,所述本地保存的m3u8文件由云服务器下发。进一步地,在接收到用户的点播与直播切换指令时,清空已缓存的视频数据。进一步地,所述根据获取到的所述m3u8文件修改当前正在播放的m3u8文件的过程包括:将所述m3u8文件中的所述点播与直播切换指令对应的视频片段的URL替换到当前正在播放的m3u8文件中,并将该视频片段的时长替换到所述URL对应的字段中。进一步地,将所述m3u8文件中所述点播与直播切换指令对应的视频片段的URL替换到当前正在播放的m3u8文件中的过程包括:用所述点播与直播切换指令对应的视频片段的URL替换所述当前正在播放的m3u8中即将播放的视频片段的URL。所述装置包括:指令接收模块,用于接收点播与直播切换指令;索引解析模块,用于获取所述点播与直播切换指令对应的视频片段的m3u8文件,并根据所述m3u8文件修改视频播放模块当前正在播放的m3u8文件,将所述点播与直播切换指令对应的视频片段信息写入所述视频播放模块当前正在播放的m3u8文件中;视频播放模块,用于根据修改后的所述m3u8文件下载并播放视频片段。进一步地,所述索引解析模块获取所述点播与直播切换指令对应的视频片段的m3u8文件的过程包括:所述索引解析模块从云服务器上获取所述点播与直播切换指令对应的视频片段的m3u8文件或者从本地保存的m3u8文件中获取所述点播与直播切换指令对应的视频片段的m3u8文件,所述本地保存的m3u8文件由云服务器下发。进一步地,所述指令接收模块进一步用于:在接收到用户的点播与直播切换指令时,清空已缓存的视频数据。进一步地,所述索引解析模块根据所述m3u8文件修改所述视频播放模块当前正在播放的m3u8文件的过程包括:所述索引解析模块将所述m3u8文件中所述点播与直播切换指令对应的视频片段的URL替换到所述视频播放模块当前正在播放的m3u8文件中,并将该视频片段的时长替换到所述URL对应的字段中。进一步地,所述索引解析模块将所述m3u8文件中的所述点播与直播切换指令对应的视频片段的URL替换到所述视频播放模块当前正在播放的m3u8文件中的过程包括:所述索引解析模块用所述点播与直播切换指令对应的视频片段的URL替换所述当前正在播放的m3u8中即将播放的视频片段的URL。由以上描述可见,在用户进行点直播切换后,对当前正在播放的m3u8文件进行修改,由于播放器只是按照m3u8文件对视频数据进行下载和播放,不会判断m3u8文件中的内容是否发生变化,所以对于播放器而言,不会感知到上述修改。同时虽然原来的m3u8文件的内容已经发生了变化,但并不是换了一个新的m3u8文件,所以这个过程对于播放器是透明的。播放器只需要继续按照修改后的m3u8文件下载视频片段并播放即可,不需要重新启动,减少了重启播放器所带来的延时、黑屏、卡顿等问题。附图说明图1是本专利技术一种实施方式中点播与直播切换方法流程示意图;图2是本专利技术一种实施方式中m3u8文件示意图;图3是本专利技术一种实施方式中修改后的m3u8文件示意图;图4是本专利技术一种实施方式中点播与直播切换装置结构示意图。具体实施方式针对现有技术中存在的上述问题,本专利技术提供一种基于HLS协议的点播与直播切换方法,该方法应用在包括:智能电视、平板电脑、手机等能够播放视频的终端。为进一步说明本专利技术,提供下列实施例:实施例一请参考图1,本实施例的基于HLS协议的点播与直播切换方法包括以下步骤:步骤101,接收点播与直播切换指令;步骤102,获取上述点播与直播切换指令对应的视频片段的m3u8文件;步骤103,根据获取到的该m3u8文件修改当前正在播放的m3u8文件,将上述点播与直播切换指令对应的视频片段信息写入当前正在播放的m3u8文件中;步骤104,根据修改后的上述m3u8文件下载并播放视频片段。依据HLS协议,播放器根据用户选择的视频的m3u8文件进行视频片段的下载以及播放。具体地,请参考图2所示的m3u8文件,其中:#EXTM3U:表示m3u文件头,放在第一行。#EXT-X-TARGETDURATION:表示指定的最大视频片段时长,单位是秒。#EXTINF:表示每个视频片段ts文件的时长,仅对其后的URL有效,#EXTINF中指定的时长必须小于等于#EXT-X-TARGETDURATION中指定的时长。http://218.30.13.36/sample_100k-1.ts:表示视频片段ts文本文档来自技高网...
【技术保护点】
一种基于流媒体传输HLS协议的点播与直播切换方法,其特征在于,包括:接收点播与直播切换指令;获取所述点播与直播切换指令对应的视频片段的m3u8文件;根据获取到的所述m3u8文件修改当前正在播放的m3u8文件,将所述点播与直播切换指令对应的视频片段信息写入所述当前正在播放的m3u8文件中;根据修改后的所述m3u8文件下载并播放视频片段。
【技术特征摘要】
1.一种基于流媒体传输HLS协议的点播与直播切换方法,其特征在于,包括:接收点播与直播切换指令;获取所述点播与直播切换指令对应的视频片段的m3u8文件;根据获取到的所述m3u8文件修改当前正在播放的m3u8文件,将所述点播与直播切换指令对应的视频片段信息写入所述当前正在播放的m3u8文件中;根据修改后的所述m3u8文件下载并播放视频片段;其中,所述根据获取到的所述m3u8文件修改当前正在播放的m3u8文件的过程包括:将所述m3u8文件中的所述点播与直播切换指令对应的视频片段的URL替换到当前正在播放的m3u8文件中,并将该视频片段的时长替换到所述URL对应的字段中。2.根据权利要求1所述的方法,其特征在于,所述获取所述点播与直播切换指令对应的视频片段的m3u8文件的过程包括:从云服务器上获取所述点播与直播切换指令对应的视频片段的m3u8文件或者从本地保存的m3u8文件中获取所述点播与直播切换指令对应的视频片段的m3u8文件,所述本地保存的m3u8文件由云服务器下发。3.根据权利要求1所述的方法,其特征在于,所述方法还包括:在接收到用户的点播与直播切换指令时,清空已缓存的视频数据。4.根据权利要求1所述的方法,其特征在于,将所述m3u8文件中所述点播与直播切换指令对应的视频片段的URL替换到当前正在播放的m3u8文件中的过程包括:用所述点播与直播切换指令对应的视频片段的URL替换所述当前正在播放的m3u8中即将播放的视频片段的URL。5.一种基于流媒体传输HLS协议的点播与直播切换装置,其特征在于,包括:指令接收模块,用于接收点播与直播切...
【专利技术属性】
技术研发人员:苍鹏,李强,
申请(专利权)人:乐视致新电子科技天津有限公司,
类型:发明
国别省市:天津;12
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。