基于HLS多码流模式下的直播方法及系统技术方案

技术编号:20370349 阅读:35 留言:0更新日期:2019-02-16 20:29
本发明专利技术公开了一种基于HLS多码流模式下的直播方法及系统,在直播过程中,服务器实时提供多种质量级别的媒体流,并对其切片;客户端首先从服务器获取码流表,根据网络类型估算一个码流,配合网络测速的结果选择从中选择一个当前最合适的媒体码流进行传输。当可以播放的时间连续3次大于最长播放片的下载时间,就向上调整一个质量级别,直到最高级别;如果出现单片下载时间超过单片播放时间,即刻调低一个质量级别,直到最低质量级别。本发明专利技术克服了网络抖动,充分利用了带宽。

Live Broadcasting Method and System Based on HLS Multi-stream Mode

The invention discloses a live broadcasting method and system based on HLS multi-stream mode. In the process of live broadcasting, the server provides real-time multi-quality media streams and slices them. The client first obtains a stream table from the server, estimates a stream according to the network type, and chooses the most suitable media stream for transmission according to the result of network speed measurement. \u3002 When the playable time is more than the download time of the longest playback film three times in a row, a quality level is adjusted up to the highest level, and if the download time exceeds the playback time, a quality level is immediately lowered to the lowest quality level. The invention overcomes network jitter and makes full use of bandwidth.

【技术实现步骤摘要】
基于HLS多码流模式下的直播方法及系统
本专利技术涉及直播技术,特别是一种基于HLS多码流模式下的直播方法及系统。
技术介绍
HLS(全称HTTPLiveStreaming),是由苹果公司提出的基于HTTP的流媒体网络传输协议。利用该协议,客户端可以接收持续的多媒体流来自于一个普通的web服务器。并且支持客户端在不同的网络带宽环境下,播放不同码率、分辨率的视频。HLS的实现原理是把整个多媒体文件切成一个个小的基于HTTP的资源(MPEG-2TransportStream格式的文件),生成一个包含元数据的扩展M3U(M3U8)Playlist文件,每次只下载列表中的一些资源,客户端根据带宽环境可以选择不同的资源。M3U8是一种播放多媒体列表的文件格式,可以指定一个或多个多媒体资源的位置,并且M3U8Playlist中可以包含多个子M3U8文件。在视频分发之前,内容提供者生成多个码率的视频文件,这一定程度上保证了视频的流畅性,但是这会带来一定的问题。虽然服务器端提供多个码率,但由于客户端上播放的是其中某种码率的视频,在网络带宽满足的情况下,用户无法选择更高清晰度的码率,没法为用户提供更好的播放体验。反之,如果网络质量不好,用户也无法切换到更低码率的视频,从而导致播放卡顿。
技术实现思路
本专利技术所要解决的技术问题是,针对现有技术不足,提供一种基于HLS多码流模式下的直播方法及系统,克服网络抖动,充分利用带宽。为解决上述技术问题,本专利技术所采用的技术方案是:一种基于HLS多码流模式下的直播方法,该方法实现过程包括:服务器实时提供多种质量级别的媒体流,并对其切片;客户端首先从服务器获取媒体流表,根据网络类型估算一个码流,配合网络测速的结果从媒体流表中选择一个当前最合适的媒体流进行传输;当可以播放的时间连续N次大于最长播放切片的下载时间,就向上调整一个播放质量级别,直到最高级别;如果出现单个切片下载时间超过单个切片播放时间,则调低一个播放质量级别,直到最低质量级别。所述可以播放的时间是指:当前正在播放的切片剩余时间叠加缓存中除最后一个切片的播放时间以外的可以播放的时间。本专利技术还提供了一种基于HLS多码流模式下的直播系统,其包括:服务器,用于提供多种质量级别的媒体流,并对其切片;客户端,用于从服务器获取媒体流表,根据网络类型估算一个码流,配合网络测速的结果从媒体流表中选择一个当前最合适的媒体流进行传输;调整单元,用于执行如下操作:当可以播放的时间连续N次大于最长播放切片的下载时间,就向上调整一个播放质量级别,直到最高级别;如果出现单个切片下载时间超过单个切片播放时间,则调低一个播放质量级别,直到最低质量级别。与现有技术相比,本专利技术所具有的有益效果为:本专利技术在播放之前,参考了网络类型又对真实的网络环境进行测算,结合得出更接近实际环境的观看码率,节约了估算时间和减少了网络消耗,结果也更准确;能应对网络抖动带来的影响,和对可能起始判断不准的情况进行修正,使其在用户不影响观看的情况下无感知的获得最好的观看效果。具体实施方式本专利技术实现了在充分利用当前带宽能支持的最好画质进行直播。在直播过程中,服务器实时提供多种质量级别的媒体流,并对其切片;客户端首先从服务器获取码流表,根据网络类型估算一个码流,配合网络测速的结果选择从中选择一个当前最合适的媒体码流进行传输。当可以播放的时间连续3次大于最长播放片的下载时间,就向上调整一个质量级别,直到最高级别;如果出现单片下载时间超过单片播放时间,即刻调低一个质量级别,直到最低质量级别。本专利技术具体实现步骤如下:1.获得多码率的m3u8文件,同时测算出实际参考带宽;2.网络类型捕获,估算码流,根据参考带宽,得到实际采用的码流;3.选择合适的码流进行传输;4.每传输完成一片,记录当前片的下载时间,计算出最大片的下载时间;5.获取到当前正在播放的片剩余时间叠加缓存中除最后一片的播放时间以外的可以播放的时间,得到一个剩余播放时间;6.如果剩余播放时间连续3次超过最大片的下载时间,则提升一个播放质量,直到最高质量;如果单片下载时间超过自身可以播放的时间,即刻向下降低一个播放质量,直到最低质量。本文档来自技高网...

【技术保护点】
1.一种基于HLS多码流模式下的直播方法,其特征在于,该方法实现过程包括:服务器实时提供多种质量级别的媒体流,并对其切片;客户端首先从服务器获取媒体流表,根据网络类型估算一个码流,配合网络测速的结果从媒体流表中选择一个当前最合适的媒体流进行传输;当可以播放的时间连续N次大于最长播放切片的下载时间,就向上调整一个播放质量级别,直到最高级别;如果出现单个切片下载时间超过单个切片播放时间,则调低一个播放质量级别,直到最低质量级别。

【技术特征摘要】
1.一种基于HLS多码流模式下的直播方法,其特征在于,该方法实现过程包括:服务器实时提供多种质量级别的媒体流,并对其切片;客户端首先从服务器获取媒体流表,根据网络类型估算一个码流,配合网络测速的结果从媒体流表中选择一个当前最合适的媒体流进行传输;当可以播放的时间连续N次大于最长播放切片的下载时间,就向上调整一个播放质量级别,直到最高级别;如果出现单个切片下载时间超过单个切片播放时间,则调低一个播放质量级别,直到最低质量级别。2.根据权利要求1所述的基于HLS多码流模式下的直播方法,其特征在于,N=3。3.根据权利要求1所述的基于HLS多码流模式下的直播方法,...

【专利技术属性】
技术研发人员:张洪宇
申请(专利权)人:湖南国科微电子股份有限公司
类型:发明
国别省市:湖南,43

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

1