自适应流媒体的播放方法、系统以及服务器

文档序号:1759130 发布日期:2019-11-29 浏览:11次 >En<

阅读说明:本技术 自适应流媒体的播放方法、系统以及服务器 (Playback method, system and the server of adaptive stream media ) 是由 陈学亮 武娟 庞涛 于 2018-05-22 设计创作,主要内容包括:本发明公开了自适应流媒体的播放方法、系统以及服务器,涉及通信技术领域,其中的方法包括:对客户端请求的媒体分片索引文件进行转换处理,用以将媒体分片索引文件中的媒体分片文件原URL地址替换为媒体分片文件新URL地址;媒体分片文件原URL地址的字符长度大于媒体分片文件新URL地址的字符长度;将进行转换处理后的媒体分片索引文件发送给客户端;客户端基于媒体分片索引文件下载媒体分片文件并进行播放。本发明的方法、系统以及服务器,可以大幅缩短分片URL地址长度,减少索引文件占用的存储和带宽,提高系统性能和效率;客户端需要重定向才能访问原始URL地址,能够隐藏分片内容真实的URL地址,提高内容访问的安全性。(The invention discloses the playback method of adaptive stream media, system and servers, it is related to field of communication technology, method therein includes: to carry out conversion process to the media slicing index file of client request, the address media slicing file original URL in media slicing index file is replaced with the new address URL of media slicing file;The character length of the address media slicing file original URL is greater than the character length of the new address URL of media slicing file;Media slicing index file after progress conversion process is sent to client;Client is based on media slicing index file downloads of media slicing files and plays out.Method, system and server of the invention can substantially shorten fragment URL address size, reduce storage and bandwidth that index file occupies, improve system performance and efficiency;Client, which needs to redirect, could access the original address URL, can hide the true address URL of fragment content, improve the safety of access to content.)

自适应流媒体的播放方法、系统以及服务器

技术领域

本发明涉及通信技术领域,尤其涉及自适应流媒体的播放方法、系统以及服务器。

背景技术

自适应流媒体技术是新出现的一种流媒体技术,以苹果公司提出的Http LiveStreaming(简称HLS)为代表,能较好适应各种网络环境。HLS节目通常包含多个码率的视频内容,其中每种码率的视频内容通常有数百个分片ts文件以及对应的m3u8索引描述文件,m3u8索引文件记录了各个分片ts文件的时长、文件名、URL地址等信息。用户终端下载m3u8索引文件后进行解析,根据网络状况实时请求对应码率的分片内容。一个典型的HLS节目结构示例如图1所示:test.m3u8是一级索引,描述了本节目包含200000bps、787444bps两种码率,以及对应的二级索引index.m3u8的URL地址。在二级索引index.m3u8中包含了该码率的分片信息,#EXTINF代表分片时长10秒。

目前,分片URL地址较长,包括域名(hls.com)、目录(20160802/gear1/)、文件名(001.ts、002.ts、……999.ts)以及防盗链校验等信息,通常超过50个字符,甚至100个字符以上,一个HLS节目通常包含数百个甚至上千个分片,导致index.m3u8索引文件体积较大,浪费存储空间和网络带宽,并且,分片URL地址透明传输不做加密,存在数据安全性例如第三方非法盗链等隐患。

发明内容

有鉴于此,本发明要解决的一个技术问题是提供自适应流媒体的播放方法、系统以及服务器。

根据本发明的一个方面,提供一种自适应流媒体的播放方法,包括:基于预设的转换规则对客户端请求的媒体分片索引文件进行转换处理,用以将所述媒体分片索引文件中的媒体分片文件原URL地址替换为媒体分片文件新URL地址;其中,所述媒体分片文件原URL地址的字符长度大于所述媒体分片文件新URL地址的字符长度;将进行转换处理后的所述媒体分片索引文件发送给客户端;客户端基于所述媒体分片索引文件下载媒体分片文件并进行播放。

可选地,所述基于预设的转换规则对客户端请求的媒体分片索引文件进行转换处理包括:根据预设的转换算法将所述媒体分片文件原URL地址转换为所述媒体分片文件新URL地址;建立所述媒体分片文件新URL地址和所述媒体分片文件原URL地址之间的映射关系。

可选地,所述媒体分片索引文件为m3u8文件,所述媒体分片为HLS切片,所述根据预设的转换算法将所述媒体分片文件原URL地址转换为所述媒体分片文件新URL地址包括:对一级m3u8文件的URL地址不进行转换处理;提取所述二级m3u8文件中的媒体分片文件原URL地址;根据所述转换算法将此媒体分片文件原URL地址转换为具有固定长度的媒体分片文件新URL地址;在所述二级m3u8文件中,使用此媒体分片文件新URL地址替换相对应的媒体分片文件原URL地址。

可选地,接收到客户端发送的携带有所述媒体分片文件新URL地址的下载媒体分片请求;根据所述映射关系获取与此媒体分片文件新URL地址相对应的媒体分片文件原URL地址;将所述下载媒体分片请求重定向到此媒体分片文件原URL地址,以使客户端下载与此媒体分片文件原URL地址相对应的媒体分片。

可选地,所述将所述下载媒体分片请求重定向到此媒体分片文件原URL地址包括:向客户端发送与所述下载媒体分片请求相对应的响应报文;其中,所述响应报文携带有重定向状态码和所述媒体分片文件原URL地址。

可选地,客户端接收到二级m3u8文件,从二级m3u8文件中获取所述媒体分片文件新URL地址,生成携带有所述媒体分片文件新URL地址的所述下载媒体分片请求;客户端接收到与所述下载媒体分片请求相对应的所述响应报文,从所述响应报文中获取媒体分片文件原URL地址,根据所述媒体分片文件原URL地址下载媒体分片文件并进行播放。

可选地,客户端从二级m3u8文件中获取最后一个所述媒体分片文件新URL地址,在下载与最后一个所述媒体分片文件新URL地址相对应的下载媒体分片文件并进行播放后,将此二级m3u8文件删除。

可选地,所述转换算法包括:哈希算法;所述响应报文为HTTP协议报文,所述重定向状态码包括:301。

根据本发明的另一方面,提供一种流媒体服务器,包括:转换处理模块,用于基于预设的转换规则对客户端请求的媒体分片索引文件进行转换处理,用以将所述媒体分片索引文件中的媒体分片文件原URL地址替换为媒体分片文件新URL地址;其中,所述媒体分片文件原URL地址的字符长度大于所述媒体分片文件新URL地址的字符长度;索引下发模块,用于将进行转换处理后的所述媒体分片索引文件发送给客户端;其中,客户端基于所述媒体分片索引文件下载媒体分片文件并进行播放。

可选地,所述转换处理模块,用于根据预设的转换算法将所述媒体分片文件原URL地址转换为所述媒体分片文件新URL地址;建立所述媒体分片文件新URL地址和所述媒体分片文件原URL地址之间的映射关系。

可选地,所述媒体分片索引文件为m3u8文件,所述媒体分片为HLS切片;所述转换处理模块,还用于对一级m3u8文件的URL地址不进行转换处理;提取所述二级m3u8文件中的媒体分片文件原URL地址,根据所述转换算法将此媒体分片文件原URL地址转换为具有固定长度的媒体分片文件新URL地址;在所述二级m3u8文件中,使用此媒体分片文件新URL地址替换相对应的媒体分片文件原URL地址。

可选地,所述索引下发模块,包括:请求接收单元,用于接收客户端发送的携带有所述媒体分片文件新URL地址的下载媒体分片请求;重定向单元,用于根据所述映射关系获取与此媒体分片文件新URL地址相对应的媒体分片文件原URL地址;将所述下载媒体分片请求重定向到此媒体分片文件原URL地址,以使客户端下载与此媒体分片文件原URL地址相对应的媒体分片。

可选地,所述重定向单元,用于向客户端发送与所述下载媒体分片请求相对应的响应报文;其中,所述响应报文携带有重定向状态码和所述媒体分片文件原URL地址。

可选地,客户端接收到所述索引下发模块发送的二级m3u8文件,从二级m3u8文件中获取所述媒体分片文件新URL地址,生成携带有所述媒体分片文件新URL地址的所述下载媒体分片请求;客户端接收到所述索引下发模块发送的与所述下载媒体分片请求相对应的所述响应报文,从所述响应报文中获取媒体分片文件原URL地址,根据所述媒体分片文件原URL地址下载媒体分片文件并进行播放。

可选地,客户端从二级m3u8文件中获取最后一个所述媒体分片文件新URL地址,在下载与最后一个所述媒体分片文件新URL地址相对应的下载媒体分片文件并进行播放后,将此二级m3u8文件删除。

可选地,所述转换算法包括:哈希算法;所述响应报文为HTTP协议报文,所述重定向状态码包括:301。

根据本发明的又一方面,提供一种流媒体的播放系统,包括如上所述的流媒体服务器。

根据本发明的又一方面,提供一种流媒体服务器,其中,包括:存储器;以及耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器中的指令,执行如上所述的方法。

根据本发明的再一方面,提供一种计算机可读存储介质,其上存储有计算机程序指令,该指令被一个或多个处理器执行时实现如上所述的方法的步骤。

本发明的自适应流媒体的播放方法、系统以及服务器,对客户端请求的媒体分片索引文件进行转换处理,将媒体分片索引文件中的媒体分片文件原URL地址替换为长度减小的媒体分片文件新URL地址,可以大幅缩短分片URL地址长度,减少索引文件占用的存储和带宽,提高系统性能和效率;客户端需要重定向才能访问原始URL地址,能够隐藏分片内容真实的URL地址,提高内容访问的安全性。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1是现有技术中的一级m3u8文件和二级m3u8文件的示意图;

图2A为根据本发明的自适应流媒体的播放方法的一个实施例的流程示意图;

图2B为根据本发明的自适应流媒体的播放方法的一个实施例中的对m3u8索引文件进行转换前后的对比示意图;

图3为根据本发明的自适应流媒体的播放方法的另一个实施例的信息交互示意图;

图4为根据本发明的流媒体服务器的一个实施例的模块示意图;

图5为根据本发明的流媒体服务器的一个实施例中的索引获取模块的模块示意图;

图6为根据本发明的流媒体服务器的另一个实施例的模块示意图。

具体实施方式

下面参照附图对本发明进行更全面的描述,其中说明本发明的示例性实施例。下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。下面结合各个图和实施例对本发明的技术方案进行多方面的描述。

图2A为根据本发明的自适应流媒体的播放方法的一个实施例的流程示意图,如图2A所示:

步骤201,基于预设的转换规则对客户端请求的媒体分片索引文件进行转换处理,用以将媒体分片索引文件中的媒体分片文件原URL地址替换为媒体分片文件新URL地址。媒体分片文件原URL地址的字符长度大于媒体分片文件新URL地址的字符长度;

客户端可以为手机、PC、ipad等。媒体分片索引文件可以为现有的多种类型的媒体分片索引文件,例如媒体分片为HLS格式,媒体分片索引文件为m3u8格式的索引文件。

步骤202,将进行转换处理后的媒体分片索引文件发送给客户端。

步骤203,客户端基于媒体分片索引文件下载媒体分片文件并进行播放。

预设的转换规则可以有多种。例如,根据预设的转换算法将媒体分片文件原URL地址转换为媒体分片文件新URL地址,建立媒体分片文件新URL地址和媒体分片文件原URL地址之间的映射关系。转换算法可以为哈希算法等,例如,通过开源的哈希算法(例如MD5)将index.m3u8索引文件中的分片原始长链接URL地址映射为短链接URL地址,更新m3u8索引文件,如图2B所示。可以将长链接和短链接一对一映射关系写入系统数据库,当客户端请求短链接时,服务器端通过HTTP 301协议响应将客户端重定向至原始长连接完成分片请求。

在一个实施例中,媒体分片索引文件为m3u8文件,媒体分片为HLS切片,对一级m3u8文件的URL地址不进行转换处理。由于HLS节目的一级索引文件(test.m3u8)只包含二级索引的码率和URL,不包含分片信息,文件很小,因此对于一级索引保持原样,针对包含海量分片信息的二级索引文件(index.m3u8)进行优化。提取二级m3u8文件中的媒体分片文件原URL地址,根据转换算法将此媒体分片文件原URL地址转换为具有固定长度的媒体分片文件新URL地址。在二级m3u8文件中,使用此媒体分片文件新URL地址替换相对应的媒体分片文件原URL地址。

接收到客户端发送的携带有媒体分片文件新URL地址的下载媒体分片请求,根据映射关系获取与此媒体分片文件新URL地址相对应的媒体分片文件原URL地址。将下载媒体分片请求重定向到此媒体分片文件原URL地址,以使客户端下载与此媒体分片文件原URL地址相对应的媒体分片。

将下载媒体分片请求重定向到此媒体分片文件原URL地址可以有多种方法。例如,向客户端发送与下载媒体分片请求相对应的响应报文,响应报文携带有重定向状态码和媒体分片文件原URL地址。响应报文为HTTP报文,重定向状态码包括:301等。客户端得到了一个HTTP 301响应,可以自动把请求的地址修改为从服务器反馈回来的媒体分片文件原URL地址,响应报文是可缓存的。

客户端接收到二级m3u8文件,从二级m3u8文件中获取媒体分片文件新URL地址,生成携带有媒体分片文件新URL地址的下载媒体分片请求。客户端接收到与下载媒体分片请求相对应的响应报文,从响应报文中获取媒体分片文件原URL地址,根据媒体分片文件原URL地址下载媒体分片文件并进行播放。

客户端向服务器端请求短链接URL地址,服务器端通过HTTP 301协议响应将客户端重定向至原始长链接URL地址,完成分片内容请求。客户端从二级m3u8文件中获取最后一个媒体分片文件新URL地址,在下载与最后一个媒体分片文件新URL地址相对应的下载媒体分片文件并进行播放后,将此二级m3u8文件删除。

在一个实施例中,HLS节目的二级索引文件index.m3u8索引是标准的文本文件,未做加密,因此可采用哈希算法对每个分片原始URL生成唯一的短链接URL,并进行更新。无需改动网络和硬件设备,只需在服务器端进行简单的软件开发。

图3为根据本发明的自适应流媒体的播放方法的另一个实施例的信息交互示意图,如图3所示:客户端请求二级索引文件index.m3u8,服务器收到请求后通过哈希算法将每个分片的原始长链接URL字符串处理为短链接URL字符串,更新index.m3u8索引文件传送给客户端,将映射关系写入数据库中。通过哈希算法可以将任意长度的二进制值映射为较短的固定长度的二进制值。客户端通过短链接URL请求第一个分片内容001.ts,服务器通过数据库映射关系找到对应的原始长链接URL,并通过HTTP 301协议响应进行应用层重定向,将客户端转到原始长链接URL获取分片内容;客户端继续通过短链接URL请求第二个分片内容002.ts,服务器继续检索原始长链接URL,通过HTTP 301协议响应进行重定向,直到最后一个分片999.ts请求完成。

在一个实施例中,本发明提供一种流媒体服务器40,包括:转换处理模块41和索引下发模块42。转换处理模块41基于预设的转换规则对客户端请求的媒体分片索引文件进行转换处理,用以将媒体分片索引文件中的媒体分片文件原URL地址替换为媒体分片文件新URL地址;其中,媒体分片文件原URL地址的字符长度大于媒体分片文件新URL地址的字符长度。索引下发模块42将进行转换处理后的媒体分片索引文件发送给客户端;其中,客户端基于媒体分片索引文件下载媒体分片文件并进行播放。

转换处理模块41根据预设的转换算法将媒体分片文件原URL地址转换为媒体分片文件新URL地址,建立媒体分片文件新URL地址和媒体分片文件原URL地址之间的映射关系。媒体分片索引文件为m3u8文件,媒体分片为HLS切片。转换处理模块42对一级m3u8文件的URL地址不进行转换处理,提取二级m3u8文件中的媒体分片文件原URL地址,根据转换算法将此媒体分片文件原URL地址转换为具有固定长度的媒体分片文件新URL地址。转换处理模块42在二级m3u8文件中,使用此媒体分片文件新URL地址替换相对应的媒体分片文件原URL地址。

在一个实施例中,如图5所示,索引下发模块42包括:请求接收单元421和重定向单元422。请求接收单元421接收客户端发送的携带有媒体分片文件新URL地址的下载媒体分片请求。重定向单元422根据映射关系获取与此媒体分片文件新URL地址相对应的媒体分片文件原URL地址。重定向单元422将下载媒体分片请求重定向到此媒体分片文件原URL地址,以使客户端下载与此媒体分片文件原URL地址相对应的媒体分片。重定向单元422向客户端发送与下载媒体分片请求相对应的响应报文;其中,响应报文携带有重定向状态码和媒体分片文件原URL地址。

在一个实施例中,客户端接收到索引下发模块42发送的二级m3u8文件,从二级m3u8文件中获取媒体分片文件新URL地址,生成携带有媒体分片文件新URL地址的下载媒体分片请求。客户端接收到索引下发模块42发送的与下载媒体分片请求相对应的响应报文,从响应报文中获取媒体分片文件原URL地址,根据媒体分片文件原URL地址下载媒体分片文件并进行播放。客户端从二级m3u8文件中获取最后一个媒体分片文件新URL地址,在下载与最后一个媒体分片文件新URL地址相对应的下载媒体分片文件并进行播放后,将此二级m3u8文件删除。

在一个实施例中,本发明提供一种流媒体的播放系统,包括如上任一实施例中的流媒体服务器。

图6为根据本发明公开的流媒体服务器的另一个实施例的模块示意图。如图6所示,该流媒体服务器可包括存储器61、处理器62、通信接口63以及总线64。存储器61用于存储指令,处理器62耦合到存储器61,处理器62被配置为基于存储器61存储的指令执行实现上述的自适应流媒体的播放方法。

存储器61可以为高速RAM存储器、非易失性存储器(NoN-volatile memory)等,存储器61也可以是存储器阵列。存储器61还可能被分块,并且块可按一定的规则组合成虚拟卷。处理器62可以为中央处理器CPU,或专用集成电路ASIC(Application SpecificIntegrated Circuit),或者是被配置成实施本发明公开的自适应流媒体的播放方法的一个或多个集成电路。

在一个实施例中,本公开还提供一种计算机可读存储介质,其中计算机可读存储介质存储有计算机指令,指令被处理器执行时实现如上任一实施例涉及的自适应流媒体的播放方法。本领域内的技术人员应明白,本公开的实施例可提供为方法、装置、或计算机程序产品。因此,本公开可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本公开可采用在一个或多个其中包含有计算机可用程序代码的计算机可用非瞬时性存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本公开是参照根据本公开实施例的方法、设备(系统)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

至此,已经详细描述了本公开。为了避免遮蔽本公开的构思,没有描述本领域所公知的一些细节。本领域技术人员根据上面的描述,完全可以明白如何实施这里公开的技术方案。

上述实施例中的自适应流媒体的播放方法、系统以及服务器,对客户端请求的媒体分片索引文件进行转换处理,将媒体分片索引文件中的媒体分片文件原URL地址替换为长度减小的媒体分片文件新URL地址,可以大幅缩短分片URL地址长度,减少索引文件占用的存储和带宽,提高系统性能和效率;客户端需要重定向才能访问原始URL地址,能够隐藏分片内容真实的URL地址,提高内容访问的安全性;并只需在服务器端行简单的改造。

可能以许多方式来实现本发明的方法和系统。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本发明的方法和系统。用于方法的步骤的上述顺序仅是为了进行说明,本发明的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本发明实施为记录在记录介质中的程序,这些程序包括用于实现根据本发明的方法的机器可读指令。因而,本发明还覆盖存储用于执行根据本发明的方法的程序的记录介质。

本发明的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。

15页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种防水抗振型通讯设备

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类