播放流媒体的方法、装置及系统的制作方法

文档序号:7857008阅读:346来源:国知局
专利名称:播放流媒体的方法、装置及系统的制作方法
技术领域
本发明涉及移动通信技术领域,具体而言,涉及一种播放流媒体的方法、装置及系统。
背景技术
在超文本标记语言HTML5标准越来越普及的情况下,不少音视频内容提供商开始在移动平台上面使用HTML5的video/audio标准来提供自己的内容。其中不少厂商使用的是苹果公司提供的HTTP Live Streaming方案,然而,苹果公司提供的HTTP LiveStreaming方案只能够在ipad/iphone平台进行播放,即使别的平台的用户为访问设定网页而把自己浏览器的用户代理设置为iphone/ipad,仍然会由于格式不支持而导致播放失败。
图I是根据现有技术的Apple HTTP Live Streaming媒体播放方案的流程图。如图I所示,Apple HTTP Live Streaming媒体播放方案包括如下步骤(I)通过音视频输入设备输入音视频,音视频设备可能是视频采集卡或者其他的录入设备。(2)通过服务器中的媒体编码器执行音频视频的压缩,然后通过流分段器将压缩后的音频视频分割成小的文件片段(即.ts文件)。(3)在分发服务器上存放索引文件(即Index file)以及.ts文件,索引文件及.ts文件的存放位置由URL指向,外界不关心具体的绝对路径。(4)用户通过客户端获取音频视频文件,客户端可以是手机或者个人计算机等终端设备。由上可见,分发的时候,采用的是“Index file”加上一组.ts文件的方式。其中Index file就是〈video〉或者〈audio〉标签的src属性或者source标签指向的文件,在Apple HTTP Live Streaming方案中索引文件的后缀名通常为〃· m3u8〃。根据Apple官方的文档描述,.ts文件存放的编码信息是MPEG-2格式的,而有一些网站(如http://www.qiyi. com)在ts流内存放的是AVC (h264编码)。从理论上来讲,在多数Android手机的自带媒体播放器中是可以播放MPEG-2以及AVC格式的文件的,但是由于Android系统自带的媒体播放器无法正确解析.m3u8文件的列表格式,所以用户在使用Andro i d手机播放App I eHTTP Live Streaming方案的视频时会出现播放失败的情况。针对相关技术中非Apple用户客户端不能解析Apple HTTP Live Streaming媒体播放方案中M3U8文件的列表格式,因而不能享受播放服务的相关技术问题,尚未提出有效的解决方案。

发明内容
针对相关技术的非Apple用户客户端由于不能解析Apple HTTP Live Streaming媒体播放方案中M3U8文件的列表格式,因而不能播放M3U8文件的问题,本发明的主要目的在于提供一种播放流媒体的方法、装置及系统以解决上述问题。为了实现上述目的,根据本发明的一个方面,提供了一种播放流媒体的方法,该方法包括获取用户用于播放流媒体文件的播放请求;根据播放请求从服务器下载与流媒体对应的M3U8文件,其中,M3U8文件包含有媒体文件的URL信息;解析M3U8文件,获取M3U8文件中的一条或多条URL信息;根据获取到的各个URL信息调用播放器播放每条URL信息所对应的媒体文件。进一步地,从服务器上获取与各个URL信息所对应的媒体文件;播放媒体文件。进一步地,获取用户访问网页的访问请求;根据访问请求解析网页的HTML,获取video标签或audio标签及video标签或audio标签指向的链接地址;判断与链接地址所对应的第一文件是否是M3U8文件,其中,如果是,则标记第一文件为M3U8文件,以供用户播放;如果不是,则用户直接播放第一文件。
进一步地,根据链接地址的后缀判断URL的MME类型是否是M3U8,其中,如果MIME类型是M3U8,则确定第一文件是M3U8文件;如果MME类型不是M3U8,则确定第一文件不是M3U8文件。进一步地,判断客户端是否存在M3U8文件,其中,如果客户端不存在M3U8文件,则从服务器下载M3U8文件;如果客户端存在M3U8文件,则进入解析M3U8文件的步骤。为了实现上述目的,根据本发明的一个方面,提供了一种播放流媒体的装置,该装置包括第一获取模块,用于获取用户用于播放流媒体文件的播放请求;第一下载模块,用于根据播放请求从服务器下载与流媒体对应的M3U8文件;第一解析模块,用于解析M3U8文件,获取M3U8文件中的一条或多条URL信息;第一播放模块,用于根据获取到的各个URL信息播放每条URL信息所对应的媒体文件。进一步地,所述第一播放模块包括第二获取模块,用于从服务器上获取与各个URL信息所对应的媒体文件;第二播放模块,用于播放媒体文件。进一步地,所述装置还包括第三获取模块,用于获取用户访问网页的访问请求;第二解析模块,用于根据访问请求解析网页的HTML,以获取video标签或audio标签及video标签或audio标签指向的链接地址;第二判断模块,用于判断与链接地址所对应的第一文件是否是M3U8文件;第一标记模块,用于在所述第二判断模块判断出第一文件是M3U8文件时,标记第一文件为M3U8文件,以供用户播放;第三播放模块,用于在所述第二判断模块判断出第一文件不是M3U8文件时,直接播放第一文件。进一步地,所述第二判断模块包括第三判断模块,用于根据链接地址的后缀判断URL的MME类型是否是M3U8,其中,如果MME类型是M3U8,则确定第一文件是M3U8文件,如果MME类型不是M3U8,则确定第一文件不是M3U8文件。根据本发明的另一个方面,提供了一种播放流媒体的系统,该系统包括浏览器,用于根据用户播放流媒体的播放请求从服务器下载与流媒体对应的M3U8文件,然后解析M3U8文件,获取M3U8文件中的一条或多条URL信息,再根据获取到的各个URL信息调用播放器播放每条URL信息所对应的媒体文件。通过本发明,非Apple用户客户端通过从服务器上下载M3U8文件,并对下载到的M3U8文件进行解析,从而可以获取到需要播放的媒体文件在该M3U8文件中保存的URL信息,然后根据获取到的URL信息来调用播放器播放每个URL信息所对应的媒体文件,解决了现有技术中非Apple用户客户端不能解析Apple HTTP Live Streaming媒体播放方案中M3U8文件的列表格式,因而不能支持Apple HTTP Live Streaming播放方案的问题,从而实现了非Apple用户客户端对Apple HTTP Live Streaming播放方案的支持。


构成本申请的一部分的说明书附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中图I是根据本发明的现有技术的Apple HTTP Live Streaming媒体播放方案的流程图;图2是根据本发明的实施例的播放流媒体的方法的流程图;图3是根据图2所示的实施例的播放流媒体的方法的业务流程图; 图4是根据图3所示的实施例的播放流媒体的方法的业务需求图;图5是根据本发明的实施例的播放流媒体的装置的结构示意图;以及图6是根据图5所示的实施例的播放流媒体的装置的结构示意图。
具体实施例方式需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。图2是根据本发明的实施例的播放流媒体的方法的流程图。如图2所示根据本发明的播放流媒体的方法包括如下步骤步骤S101,获取用户用于播放流媒体的播放请求。步骤S103,根据播放请求从服务器下载与流媒体对应的M3U8文件,其中,M3U8文件包含有媒体文件的URL信息。步骤S105,解析M3U8文件,获取M3U8文件中的一条或多条URL信息。步骤S107,根据获取到的各个URL信息调用播放器播放每条URL信息所对应的媒体文件。优选地,在本申请的上述实施例中,根据获取到的各个URL信息来播放每条URL信息所对应的媒体文件的步骤还包括从服务器上获取与各个媒体文件的URL信息所对应的媒体文件;然后播放媒体文件。在本发明的播放流媒体的方法实施例中,非Apple用户客户端根据播放流媒体的请求,通过从服务器上下载与流媒体对应的M3U8文件,并对下载到的M3U8文件进行解析,从而可以获取到需要播放的媒体文件在该M3U8文件中保存的链接地址,然后通过媒体文件的链接地址(即URL信息)来访问服务器,在获取到该M3U8文件中保存的链接地址之后,可以通过下载该链接地址对应的媒体文件并交由系统媒体播放器来播放,或者从服务器上获取并播放该URL信息对应的媒体文件,解决了现有技术中非Apple用户客户端不能解析Apple HTTPLive Streaming媒体播放方案中M3U8文件的列表格式,因而不能支持AppleHTTP Live Streaming播放方案的问题,从而实现了非Apple系列智能手机对Apple HTTPLive Streaming播放方案的支持。根据本申请的上述实施例,在获取用户用于播放M3U8文件的播放请求之前,该方法还可以包括获取用户访问网页的访问请求;根据访问请求解析网页的HTML,获取video标签或audio标签及video标签或audio标签指向的链接地址;然后,判断与链接地址所对应的第一文件是否是M3U8文件,其中,如果是,则标记第一文件为M3U8文件,以供用户播放;如果不是,则用户直接播放该文件。在本发明的上述实施例中,判断与链接地址所对应的第一文件是否是M3U8文件的步骤还可以包括根据链接地址的后缀判断URL的多媒体文件格式MME的类型是否是M3U8,其中,如果MME类型是M3U8,则确定第一文件是M3U8文件;如果MME类型不是M3U8,则确定第一文件不是M3U8文件。具体地,通过video标签或audio标签的SCR属性判断MIME类型是不是M3U8格式的文件。优选地,MME类型通过对URL的后缀查表得到,通常把后缀m3u或者m3u8的文件当作M3U8格式的文件。根据本发明的播放流媒体的方法,在根据播放请求从服务器下载M3U8文件之前,该方法还可以包括判断客户端是否存在M3U8文件,其中,如果客户端不存在M3U8文件,则 从服务器下载M3U8文件;如果客户端存在M3U8文件,则进入解析M3U8文件的流程。优选地,根据访问请求解析网页的HTML,以获取video标签或audio标签的步骤还包括如果没有获取到video标签或audio标签,则当前页面不包含音视频文件,退出播放功能。根据本申请的上述实施例,播放流媒体的方法包括如下步骤(I)用户通过客户端中的手机浏览器访问一个支持播放Apple HTTP LiveStreaming格式的网址。其中,在访问某些网站之前,需要把浏览器伪装成iphone的浏览器(即设置手机浏览器的user-agent为iphone浏览器的user-agent字符串)。(2 )从访问的页面发现视频。具体地,在浏览器内对访问页面的HTML进行解析,发现video标签或audio标签及其对应的URL信息,则确定该页面存在音视频文件;如果未发现video或audio标签,则该页面没有音视频文件,客户端退出播放功能。(3)根据上述步骤中发现的音视频文件的URL来判定该URL指向的文件是否是AppleHTTP Live Streaming的内容源,判定成立则进入(4)中Apple HTTP Live Streaming的处理流程;判定不成立,则进入普通媒体文件的播放流程。优选地,根据上述URL中文件名的后缀判定该URL指向的文件是否是Apple HTTP Live Streaming的内容源。(4)标记播放该音视频需要使用Apple HTTP Live Streaming的播放方式。特别地,在HTML的video标签或audio标签内嵌入M3U8文件的情况下,直到video或audio的播放动作被触发,才进入播放流程。(5)访问页面上的video对象或audio对象,当播放动作被触发以后,先判断是否已经下载和保存了 M3U8文件,若没有下载过M3U8文件,则下载并且解析出M3U8文件对应的播放列表,并将M3U8文件保存,若已经下载和解析了 M3U8文件,则进行当前媒体片段的播放。其中,每次播放下一个媒体文件的时候都从索引文件(即M3U8文件)获取媒体文件的URL,保存下载到的M3U8文件就可以避免每次播放媒体文件都重新下载M3U8文件。优选地,媒体文件可以是TS文件。图3是根据图2所示的实施例的播放流媒体的方法的业务流程图。具体的,如图3所示,本申请在客户端与服务器之间实现的播放流媒体的业务流程实施例包括如下步骤首先,客户端获取用户发送的播放流媒体的请求。具体地,该步骤可以通过以下方法实现用户通过点击浏览器中的界面向浏览器发送播放请求,浏览器接收到用户输入的播放请求,向服务器发送该播放请求。然后,客户端判断是否已经下载了与流媒体对应的M3U8文件,如果没有下载则从服务器下载M3U8文件,并且解析出媒体文件的URL信息,如果已经下载,则进入下一步流程。接着,通过客户端上的浏览器来获取所解析出的当前播放的媒体文件的URL信息,并根据该媒体文件的URL信息从服务器查询得到对应的媒体文件。最后,通过客户端上的浏览器来调用媒体播放器,从而播放服务器上的媒体文件。客户端对M3U8文件循环进行上述步骤的操作,以完成对整个页面M3U8文件的下载、解析,用于供用户播放。图4是根据图3所示的实施例的播放流媒体的方法的业务需求图。具体的,如图4所示,根据本申请的客户端上所实现的播放流媒体的业务流程实现方法,浏览器对象和播放对象的调用顺序包括如下步骤(I)用户客户端调用播放函数,向服务器发送播放流媒体的请求。具体操作方法如上述对图3描述中的客户端获取用户发送的播放请求的步骤。(2)浏览器判断是否需要下载与流媒体对应的M3U8文件,其中,如果没有下载该M3U8文件,则需要下载M3U8文件,如果客户端已经存储有该M3U8文件,则不需要重复下载。具体地,在执行上述步骤S103之前,浏览器判断是否需要下载M3U8文件,根据判断结果对该M3U8文件进行相应的处理,即如果没有下载该M3U8文件,则下载M3U8文件,如果客户端已经存储有该M3U8文件,则无需重复下载。(3 )解析下载到的M3U8文件。(4)通过上步骤中的解析过程,从而获取媒体文件的URL信息,该URL信息对应可以实现播放的媒体文件。具体地,通过步骤(3)和(4)可以实现图2所示的步骤S105。 (5)浏览器调用播放器,播放当前URL信息对应的媒体文件。具体地,根据本申请的上述实施例,用户使用Android系统自带的浏览器,切换到iPhone的User-Agent (即在浏览器里设置浏览器标识为iPhone),然后访问http://www.qiyi. com,会出现视频播放失败情况。在使用本申请的播放流媒体的方法的浏览器时进行同样的User-Agent设置,然后访问http://www. qiyi. com,会出现播放界面,播放页面提示用户在加载视频,然后开始播放。其中,客户端浏览器的播放界面优选是全屏的播放界面。之所以有这样的区别,是因为Android系统自带的浏览器会得到一个M3U8文件(即索引文件)的链接地址,并且尝试把这个文件当作媒体文件来进行播放,由于Android系统自带的浏览器无法解析M3U8文件,就会播放失败。然而,采用本申请的播放流媒体的方法的浏览器,会判断访问到的音视频文件是否是M3U8文件。具体地,客户端可以根据该链接地址(即URL信息)中含有m3u8字样判断该文件是M3U8格式文件,客户端可以根据该链接地址的video/audio标签传递的codec为application/x-mpeg判断该音视频文件是M3U8文件。如果判定上述链接地址是M3U8格式,根据本申请的上述实施例,客户端的浏览器会对前述链接地址指向的M3U8文件进行下载及解析,从而可以根据解析到M3U8中的媒体文件的URL信息(链接地址信息)调用播放器播放URL信息对应的媒体文件。具体地,在M3U8文件中,每一行都是一个单位,这些单位可以是URL,也可以是“#EXTINF”或者“#EXTM3U”,其中,“#EXTM3U”是文件头,表明这个文件类型,“#EXTINF”用于表示紧跟着一行有效URL所指向媒体文件的播放时长。对于“#EXTINF”或者“#EXTM3U”这两个参数,客户端在解析的时候不关心,在判断文件头有效以后,就循环地解析出非“#”号开始的行,当作媒体文件的URL存放起来,以供用户播放。需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。图5是根据本发明的实施例的播放流媒体的装置的结构示意图。图6是根据图5所示的实施例的播放流媒体的装置的结构示意图。如图5和图6所示,本申请的播放流媒 体的装置包括第一获取模块10、第一下载模块30、第一解析模块50和第一播放模块70。具体地,第一获取模块10,用于获取用户用于播放流媒体文件的播放请求;第一下载模块30,用于根据播放请求从服务器下载与流媒体对应的M3U8文件;第一解析模块50,用于解析M3U8文件,以获取M3U8文件中的一条或多条URL信息;第一播放模块70,用于根据获取到的各个URL信息来播放每条URL信息所对应的媒体文件。其中,第一获取模块10、第一下载模块30以及第一解析模块50可以优选安装在客户端的浏览器中,第一播放模块70可以优选安装在播放器中。优选地,在本申请的上述实施例中,第一播放模块70还可以包括第二获取模块701,用于从服务器上获取与各个URL信息所对应的媒体文件;第二播放模块703,用于播放媒体文件。根据本申请的播放流媒体的装置,通过采用第一获取模块、第一下载模块、第一解析模块和第一播放模块,使得非Apple用户客户端根据播放流媒体的请求从服务器上下载与流媒体对应的M3U8文件,并对下载到的M3U8文件进行解析,从而可以获取到需要播放的媒体文件在该M3U8文件中保存的链接地址,然后通过媒体文件的链接地址(即URL信息)来访问服务器,在获取到该M3U8文件中保存的链接地址之后,可以通过下载该链接地址对应的媒体文件并交由系统媒体播放器来播放,或者从服务器上获取并播放该URL信息对应的媒体文件,解决了现有技术中非Apple用户客户端由于不能解析AppleHTTP Live Streaming媒体播放方案中M3U8文件的列表格式,因而不能支持Apple HTTPLive Streaming播放方案的问题,从而实现了非Apple系列智能手机对Apple HTTP LiveStreaming播放方案的支持。在本发明的播放流媒体的装置实施例中,该装置还可以包括第一判断模块,用于判断客户端是否存在M3U8文件;第二下载模块,用于下载M3U8文件。其中,如果客户端不存在M3U8文件,则直接进入解析模块,进入解析M3U8文件的流程。在本申请的上述实施例中,该装置还可以包括第三获取模块,用于获取用户访问网页的访问请求;第二解析模块,用于根据访问请求解析网页的HTML,以获取video标签或audio标签及video标签或audio标签指向的链接地址;第二判断模块,用于判断与链接地址所对应的第一文件是否是M3U8文件;第一标记模块,用于在所述第二判断模块判断出第一文件是M3U8文件时,标记第一文件为M3U8文件,以供用户播放;第三播放模块,用于在所述第二判断模块判断出第一文件不是M3U8文件时,直接播放第一文件。
在本发明的播放流媒体的装置实施例中,该装置还可以包括第一判断模块,用于判断客户端是否存在M3U8文件;第二下载模块,用于下载M3U8文件。其中,如果客户端不存在M3U8文件,则直接进入解析模块,进入解析M3U8文件的流程。优选地,第二判断模块还可以包括第三判断模块,用于根据链接地址的后缀判断URL的MME类型是否是M3U8,其中,如果MME类型是M3U8,则确定第一文件是M3U8文件,如果MME类型不是M3U8,则确定第一文件不是M3U8文件。根据本申请的播放流媒体的系统实施例,该系统包括浏览器,用于根据用户播放流媒体的播放请求从服务器下载与流媒体对应的M3U8文件,然后解析M3U8文件以获取M3U8文件中的一条或多条URL信息,再根据获取到的各个URL信息来调用播放器以播放每条URL信息所对应的媒体文件。根据本申请提供的播放流媒体的系统,通过安装在系统上的浏览器根据用户播放流媒体的播放请求从服务器下载与流媒体对应的M3U8文件,然后解析M3U8文件以获取M3U8文件中的一条或多条URL信息,再根据获取到的各个URL信息来调用播放器以播放每条URL信息所对应的媒体文件,解决了现有技术中非Apple用户客户端不能解析AppleHTTP Live Streaming媒体播放方案中M3U8文件的列表格式,因而不能支持Apple HTTPLive Streaming播放方案的问题,从而实现了非Apple系列智能手机对Apple HTTP LiveStreaming播放方案的支持。从以上的描述中,可以看出,本发明上述的实施例实现了如下技术效果通过对 M3U8文件的下载和解析,把得到的真实的媒体文件的URL信息交由系统媒体播放器来播放,解决了现有技术中非Apple用户客户端不能解析M3U8文件的列表格式,不能播放M3U8文件的问题,从而实现了非Apple系列智能手机对Apple HTTP Live Streaming播放方案的支持。在非Apple系列手机的内置媒体播放器不支持Apple HTTP Live Streaming格式(M3U8文件)的前提下,应用本申请的方法及装置,把识别M3U8文件的过程放到浏览器中处理,通过在客户端下载并解析M3U8文件,然后把解析M3U8文件后获取到的媒体文件的链接地址传递给媒体播放器,根据媒体文件的链接地址来播放媒体文件,进而实现了在非Apple平台支持Apple HTTP Live Streaming格式的流媒体播放的功能。显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种播放流媒体的方法,其特征在于,包括 获取用户用于播放流媒体的播放请求; 根据所述播放请求从服务器下载与所述流媒体对应的M3U8文件,其中,所述M3U8文件包含有媒体文件的URL信息; 解析所述M3U8文件,获取所述M3U8文件中的一条或多条URL信息; 根据获取到的各个所述URL信息调用播放器播放每条URL信息所对应的所述媒体文件。
2.根据权利要求I所述的方法,其特征在于,根据获取到的各个URL信息调用播放器播放每条URL信息所对应的媒体文件的步骤包括 从所述服务器上获取与所述各个URL信息所对应的媒体文件; 播放所述媒体文件。
3.根据权利要求I或2所述的方法,其特征在于,在获取用户用于播放流媒体的播放请求之前,所述方法还包括 获取用户访问网页的访问请求; 根据所述访问请求解析所述网页的HTML,获取video标签或audio标签及所述video标签或audio标签指向的链接地址; 判断与所述链接地址所对应的第一文件是否是M3U8文件,其中, 如果是,则标记所述第一文件为M3U8文件,以供用户播放; 如果不是,则直接播放第一文件。
4.根据权利要求3所述的方法,其特征在于,判断与链接地址所对应的第一文件是否是M3U8文件的步骤包括 根据所述链接地址的后缀判断所述URL的MME类型是否是M3U8,其中, 如果所述MME类型是M3U8,则确定所述第一文件是M3U8文件; 如果所述MME类型不是M3U8,则确定所述第一文件不是M3U8文件。
5.根据权利要求4所述的方法,其特征在于,在根据所述播放请求从服务器下载所述流媒体对应的M3U8文件之前,所述方法还包括 判断客户端是否存在所述M3U8文件,其中, 如果所述客户端不存在所述M3U8文件,则从所述服务器下载所述M3U8文件; 如果所述客户端存在所述M3U8文件,则进入解析所述M3U8文件的步骤。
6.一种播放流媒体的装置,其特征在于,包括 第一获取模块,用于获取用户用于播放流媒体的播放请求; 第一下载模块,用于根据所述播放请求从服务器下载与所述流媒体对应的M3U8文件; 第一解析模块,用于解析所述M3U8文件,获取所述M3U8文件中的一条或多条URL信息; 第一播放模块,用于根据获取到的各个所述URL信息播放每条URL信息所对应的媒体文件。
7.根据权利要求6所述的装置,其特征在于,所述第一播放模块包括 第二获取模块,用于从所述服务器上获取与所述各个URL信息所对应的媒体文件; 第二播放模块,用于播放所述媒体文件。
8.根据权利要求6或7所述的装置,其特征在于,所述装置还包括 第三获取模块,用于获取用户访问网页的访问请求; 第二解析模块,用于根据所述访问请求解析所述网页的HTML,获取video标签或audio标签及所述video标签或audio标签指向的链接地址; 第二判断模块,用于判断与所述链接地址所对应的第一文件是否是M3U8文件; 第一标记模块,用于在所述第二判断模块判断出第一文件是M3U8文件时,标记所述第一文件为M3U8文件,以供用户播放; 第三播放模块,用于在所述第二判断模块判断出第一文件不是M3U8文件时,直接播放第一文件。
9.根据权利要求8所述的装置,其特征在于,所述第二判断模块包括 第三判断模块,用于根据所述链接地址的后缀判断所述URL的MME类型是否是M3U8,其中,如果所述MME类型是M3U8,则确定所述第一文件是M3U8文件,如果所述MME类型不是M3U8,则确定所述第一文件不是M3U8文件。
10.一种播放流媒体的系统,其特征在于,包括 浏览器,用于根据用户播放流媒体的播放请求从服务器下载与所述流媒体对应的M3U8文件,然后解析所述M3U8文件,获取所述M3U8文件中的一条或多条URL信息,再根据获取到的各个所述URL信息调用播放器播放每条URL信息所对应的所述媒体文件。
全文摘要
本发明提供了一种播放流媒体的方法、装置及系统,其中,该方法包括获取用户用于播放流媒体文件的播放请求;根据播放请求从服务器下载与流媒体对应的M3U8文件,其中,M3U8文件包含有媒体文件的URL信息;解析M3U8文件,获取M3U8文件中的一条或多条URL信息;根据获取到的各个URL信息调用播放器播放每条URL信息所对应的媒体文件。通过本发明能够解决现有技术中非Apple用户客户端不能播放M3U8文件的问题,从而实现了非Apple系列智能手机对Apple HTTP Live Streaming播放方案的支持。
文档编号H04N21/858GK102843614SQ20121026556
公开日2012年12月26日 申请日期2012年7月27日 优先权日2012年7月27日
发明者梁捷, 俞永福, 何小鹏, 朱顺炎, 劳永超 申请人:优视科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1