《一种流媒体播放方法及装置.pdf》由会员分享,可在线阅读,更多相关《一种流媒体播放方法及装置.pdf(14页完整版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 104243430 A (43)申请公布日 2014.12.24 CN 104243430 A (21)申请号 201310246666.0 (22)申请日 2013.06.20 H04L 29/06(2006.01) (71)申请人 腾讯科技 (深圳) 有限公司 地址 518044 广东省深圳市福田区振兴路赛 格科技园 2 栋东 403 室 (72)发明人 周洪权 (74)专利代理机构 北京品源专利代理有限公司 11332 代理人 马晓亚 (54) 发明名称 一种流媒体播放方法及装置 (57) 摘要 本发明公开了一种流媒体播放方法及装置, 该方法包括 : 获取媒体流。
2、的索引文件, 其中媒体 流包括索引文件和至少两个切片文件, 索引文件 记录有所述至少两个切片文件中各切片文件的时 间信息和地址信息 ; 根据索引文件获取媒体流的 各切片文件 ; 将所获取到的所有的切片文件合并 转换为一个本地媒体文件 ; 利用本地播放器播放 本地媒体文件 ; 其中, 本地媒体文件的格式为本 地播放器所支持的格式。本发明能够将本地播放 器非支持的格式的媒体流利用本地播放器进行播 放。 (51)Int.Cl. 权利要求书 2 页 说明书 6 页 附图 5 页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书2页 说明书6页 附图5页 (10)申请公布号 CN 。
3、104243430 A CN 104243430 A 1/2 页 2 1. 一种流媒体播放方法, 其特征在于, 所述方法包括 : 获取媒体流的索引文件, 其中所述媒体流包括索引文件和至少两个切片文件, 所述索 引文件记录有所述至少两个切片文件中各切片文件的时间信息和地址信息 ; 根据所述索引文件获取所述媒体流的各切片文件 ; 将所获取到的所有的切片文件合并转换为一个本地媒体文件 ; 利用本地播放器播放所述本地媒体文件 ; 其中, 所述本地媒体文件的格式为所述本地播放器所支持的格式。 2. 根据权利要求 1 所述的流媒体播放方法, 其特征在于, 所述将所获取到的所有的切 片文件合并转换为一个本地。
4、媒体文件的步骤包括 : 按照所述时间信息, 将所获取到的所有的切片文件合并为一个完整文件 ; 将所述完整文件转换成所述本地播放器所支持的播放格式的本地媒体文件。 3. 根据权利要求 1 所述的流媒体播放方法, 其特征在于, 获取媒体流的索引文件的步 骤包括 : 向服务器发送媒体播放请求 ; 从所述服务器获取媒体流的索引文件。 4. 根据权利要求 3 所述的流媒体播放方法, 其特征在于, 根据所述索引文件, 获取所述 媒体流的各切片文件的步骤包括 : 解析所述索引文件, 确定所述媒体流的各切片文件的地址信息 ; 根据所述媒体流的各切片文件的地址信息, 从所述服务器获取各切片文件。 5. 根据权利。
5、要求 3 所述的流媒体播放方法, 其特征在于, 根据所述索引文件, 获取所述 媒体流的各切片文件的步骤包括 : 解析所述索引文件, 确定所述媒体流的各切片文件的地址信息和所述地址信息中所包 含的名称信息 ; 对本地存储器进行扫描, 获取所述本地存储器中已下载的切片文件, 其中已下载的切 片文件为与所述媒体流的切片文件名称相一致的切片文件 ; 根据所述地址信息, 从所述服务器获取除已下载的切片文件之外的其它切片文件。 6. 根据权利要求 5 所述的流媒体播放方法, 其特征在于, 根据所述索引文件, 获取所述 媒体流的各切片文件的步骤之后还包括 : 将从所述服务器获取的各切片文件保存至本地存 储器。
6、。 7. 根据权利要求 1 所述的流媒体播放方法, 其特征在于, 所述媒体流为基于超文本传 输协议实时流协议的媒体流, 所述索引文件为 M3U8 索引文件, 所述切片文件为传输流切片 文件。 8. 根据权利要求 1 所述的流媒体播放方法, 其特征在于, 所述本地媒体文件的格式为 FLV 格式, 所述本地播放器为 Flash 播放器。 9. 一种流媒体播放装置, 其特征在于, 所述装置包括 : 索引文件获取模块, 用于获取媒体流的索引文件, 其中所述媒体流包括索引文件和至 少两个切片文件, 所述索引文件记录有所述至少两个切片文件中各切片文件的时间信息和 地址信息 ; 切片文件获取模块, 用于根据。
7、所述索引文件获取所述媒体流的各切片文件 ; 转换模块, 用于将所获取到的所有的切片文件合并转换为一个本地媒体文件 ; 播放模块, 用于利用本地播放器播放所述本地媒体文件 ; 权 利 要 求 书 CN 104243430 A 2 2/2 页 3 其中, 所述本地媒体文件的格式为所述本地播放器所支持的格式。 10. 根据权利要求 9 所述的流媒体播放装置, 其特征在于, 所述转换模块具体用于 : 按照所述时间信息, 将所获取到的所有的切片文件合并为一个完整文件 ; 将所述完整文件转换成所述本地播放器所支持的播放格式的本地媒体文件。 11. 根据权利要求 9 所述的流媒体播放装置, 其特征在于, 所。
8、述索引文件获取模块具体 用于 : 向服务器发送媒体播放请求 ; 从所述服务器获取媒体流的索引文件。 12. 根据权利要求 11 所述的流媒体播放装置, 其特征在于, 所述切片文件获取模块包 括 : 解析子模块, 用于解析所述索引文件, 确定所述媒体流的各切片文件的地址信息 ; 获取子模块, 用于根据所述媒体流的各切片文件的地址信息, 从所述服务器获取各切 片文件。 13. 根据权利要求 11 所述的流媒体播放装置, 其特征在于, 所述切片文件获取模块包 括 : 解析子模块, 用于解析所述索引文件, 确定所述媒体流的各切片文件的地址信息和所 述地址信息中所包含的名称信息 ; 第一获取子模块, 用。
9、于对本地存储器进行扫描, 获取所述本地存储器中已下载的切片 文件, 其中已下载的切片文件为与所述媒体流的切片文件名称相一致的切片文件 ; 第二获取子模块, 用于根据所述地址信息, 从所述服务器获取除已下载的切片文件之 外的其它切片文件。 14. 根据权利要求 13 所述的流媒体播放装置, 其特征在于, 所述装置还包括存储模块, 用于将所述切片文件获取模块获取到的各切片文件保存至所述本地存储器。 15. 根据权利要求 9 所述的流媒体播放装置, 其特征在于, 所述媒体流为基于超文本传 输协议实时流协议的媒体流, 所述索引文件为 M3U8 索引文件, 所述切片文件为传输流切片 文件。 16. 根据。
10、权利要求 9 所述的流媒体播放装置, 其特征在于, 所述本地媒体文件的格式为 FLV 格式, 所述本地播放器为 Flash 播放器。 权 利 要 求 书 CN 104243430 A 3 1/6 页 4 一种流媒体播放方法及装置 技术领域 0001 本发明涉及信息技术领域, 具体涉及流媒体技术领域, 尤其涉及一种流媒体播放 方法及装置。 背景技术 0002 通过互联网获取流媒体并进行播放, 已经成为用户设备 (例如智能手机、 台式电 脑、 笔记本电脑) 上最重要的功能之一。传统的流媒体传输是基于专门的流媒体传输协议来 实现的, 例如 RTMP(Routing Table Maintenance。
11、 Protocol, 路由选择表维护协议) 、 RTSP (Real Time Streaming Protocol, 实时流传输协议) 、 MMS(Multimedia Message Service, 多媒体短信服务 ) 协议等。但是, 采用基于上述专门的流媒体传输协议对流媒体进行传输 时, 在实际的网络环境中通常会由于防火墙、 NAT(Network Address Translation, 网络地 址转换) 路由器的存在, 而无法建立有效的传输数据的网络通路。 0003 为此, 苹果公司提出 HLS(HTTP Live Streaming, 超文本传输协议实时流) 协议, 将原本连续的。
12、媒体流切分为若干个 TS(Transport Stream, 传输流) 切片文件, 并相应生成 一个M3U8索引文件 (播放列表文件) , 然后将TS切片文件和M3U8索引文件存储至HTTP服务 器。所述若干个 TS 切片文件和 M3U8 索引文件组成 HLS 媒体流。相应的终端, 例如 IPhone、 Ipad、 Itouch、 Mac, 利用 HTTP 协议从 HTTP 服务器获取 M3U8 索引文件, 并根据 M3U8 索引文 件提供的 URL(Uniform Resourse Locator, 统一资源定位符) 获取 TS 切片文件, 进而实现 对流媒体的播放。由于流媒体数据通过 HT。
13、TP 协议传输, 可以完全不用考虑防火墙或者代理 的问题, 而且 TS 切片文件的时长很短, 相应的终端可以很快的选择和切换码率, 以适应不 同带宽条件下的播放。然而, 目前诸多除苹果终端外的其它被广泛使用的终端不支持对基 于 HLS 协议的媒体流的播放, 并且即便是支持基于 HLS 协议的媒体流播放的终端也不能够 实现基于 HLS 协议的媒体流的离线播放, 严重影响用户的视频观看体验。 发明内容 0004 鉴于以上理由, 本发明实施例提出一种流媒体播放方法及装置, 来解决以上背景 技术部分提到的技术问题。 0005 一种流媒体播放方法, 所述方法包括 : 0006 获取媒体流的索引文件, 其。
14、中所述媒体流包括索引文件和至少两个切片文件, 所 述索引文件记录有所述至少两个切片文件中各切片文件的时间信息和地址信息 ; 0007 根据所述索引文件获取所述媒体流的各切片文件 ; 0008 将所获取到的所有的切片文件合并转换为一个本地媒体文件 ; 0009 利用本地播放器播放所述本地媒体文件 ; 0010 其中, 所述本地媒体文件的格式为所述本地播放器所支持的格式。 0011 相应地, 本发明实施例还提供了一种流媒体播放装置, 所述装置包括 : 0012 索引文件获取模块, 用于获取媒体流的索引文件, 其中所述媒体流包括索引文件 说 明 书 CN 104243430 A 4 2/6 页 5 。
15、和至少两个切片文件, 所述索引文件记录有所述至少两个切片文件中各切片文件的时间信 息和地址信息 ; 0013 切片文件获取模块, 用于根据所述索引文件获取所述媒体流的各切片文件 ; 0014 转换模块, 用于将所获取到的所有的切片文件合并转换为一个本地媒体文件 ; 0015 播放模块, 用于利用本地播放器播放所述本地媒体文件 ; 0016 其中, 所述本地媒体文件的格式为所述本地播放器所支持的格式。 0017 相较于现有技术, 本发明实施例通过将所获取到的所有的切片文件合并转换为一 个本地媒体文件, 利用本地播放器播放本地媒体文件, 进而实现了终端上对本地播放器不 支持的格式的媒体流的播放, 。
16、提高了用户对流媒体的观看体验。 附图说明 0018 图 1 是本发明第一实施例提供的一种流媒体播放方法的流程示意图 ; 0019 图2是本发明第一实施例提供的一种基于HLS协议的流媒体传输系统的结构示意 图 ; 0020 图 3 是本发明第二实施例提供的一种流媒体播放方法的流程示意图 ; 0021 图 4 是本发明第二实施例提供的根据所述 M3U8 索引文件, 从 HTTP 服务器、 本地存 储器获取所述媒体流的各 TS 切片文件的流程示意图 ; 0022 图 5 是本发明第三实施例提供的一种流媒体播放装置的结构示意图 ; 0023 图 6 是本发明第四实施例提供的一种流媒体播放装置的结构示意。
17、图。 具体实施方式 0024 下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是, 此处所描 述的具体实施例仅用于解释本发明, 而非对本发明的限定。 另外还需要说明的是, 为了便于 描述, 附图中仅示出了与本发明相关的部分而非全部内容。 0025 本发明实施例的流媒体播放方法、 流媒体播放装置可以运行于安装有 Android (谷 歌公司开发的用于便携式可移动智能设备的操作系统平台) 、 iOS(苹果公司开发的用于便 携式可移动智能设备的操作系统平台) 、 Windows Phone(微软公司开发的用于便携式可移 动智能设备的操作系统平台) 等操作系统的终端中, 该终端可以是智能手机。
18、、 平板电脑、 个 人数字助理、 笔记本电脑、 台式电脑等等中的任意一种, 该终端中可以包括中央处理器、 存 储器、 开关器件、 电源、 时钟信号生成器、 图像处理器、 声音处理器等中的任意组合, 上述中 央处理器、 存储器、 开关器件、 电源、 时钟信号生成器、 图像处理器、 声音处理器等中的任意 组合用于实现本发明的实施例的流媒体播放方法及流媒体播放装置中的功能。 0026 在本发明实施例的流媒体播放方法、 流媒体播放装置中, 所涉及的媒体流为包括 索引文件和至少两个切片文件, 且所述索引文件记录有所述至少两个切片文件中各切片文 件的时间信息和地址信息的媒体流, 以下各实施例均以基于 HL。
19、S 协议的媒体流为例进行阐 述。其中, 基于 HLS 协议的媒体流的索引文件为 M3U8 索引文件, 切片文件为 TS 文件。 0027 图 1-2 示出了本发明的第一实施例。 0028 图1是本发明第一实施例提供的一种流媒体播放方法的流程示意图。 参见图1, 该 方法包括 : 说 明 书 CN 104243430 A 5 3/6 页 6 0029 步骤 S101、 获取基于 HLS 协议的媒体流的 M3U8 索引文件。 0030 图2是本发明第一实施例提供的一种基于HLS协议的流媒体传输系统的结构示意 图。参见图 2, 发射流媒体的卫星 201 或者采集流媒体的摄像机 202 将流媒体传送至。
20、编码 切割装置203中 ; 编码切割装置203对所接收的流媒体进行编码和封装, 生成TS文件, 并采 用切片工具将 TS 文件切割成多个连续的、 固定长度的 TS 小文件得到 TS 切片文件, 同时生 成与 TS 切片文件相对应的 M3U8 索引文件 ; HTTP 服务器 204 接收并存储编码切割装置 203 发送的基于 HLS 协议的媒体流 : TS 切片文件和 M3U8 索引文件 ; 台式电脑 205 或者智能手机 206 从 HTTP 服务器 204 不断地下载并播放 TS 切片文件。 0031 在本实施例中, 可通过无线连接方式将媒体播放请求发送给存储有 TS 切片文件 和M3U8索。
21、引文件的HTTP服务器, 其中所述媒体播放请求为HTTP请求 ; 然后, 接收所述HTTP 服务器提供的对上述媒体播放请求的回复, 其中所述回复包含了与媒体播放请求相对应的 基于 HLS 协议的媒体流的 M3U8 索引文件。M3U8 索引文件记录有至少两条时间信息及与所 述至少两条时间信息中的每一条时间信息对应的 TS 切片文件的时间信息 (播放长度) 和地 址信息 (定位所述 TS 切片文件的 URL) 。 0032 步骤 S102、 根据所述 M3U8 索引文件, 从 HTTP 服务器获取所述媒体流的各 TS 切片 文件。 0033 在步骤 S102 中, 首先按照 M3U 格式和 UTF。
22、-8 字符编码格式对 M3U8 索引文件进行 解析, 确定所述媒体流的各 TS 切片文件的地址信息 ; 然后向 HTTP 服务器发送 TS 切片文件 获取请求, 其中该请求包括了所有TS切片文件的地址信息 ; 最后接收HTTP服务器根据所述 请求发送的各 TS 切片文件。 0034 例如, 一个基于 HLS 协议的媒体流的 M3U8 索引文件可以描述为 : 0035 #EXTM3U 0036 #EXT-X-MEDIA-SEQUENCE:6 0037 #EXT-X-TARGETDURATION:10 0038 #EXTINF:10, 0039 http:/live.example.com/1.t。
23、s 0040 #EXTINF:10, 0041 http:/live.example.com/2.ts 0042 #EXTINF:10, 0043 http:/live.example.com/3.ts 0044 通过对上述 M3U8 索引文件进行解析, 得出该 M3U8 索引文件共包括 3 个 TS 切片文 件, 所述3个TS切片文件的名称信息分别为 : 1.ts、 2.ts、 3.ts, 时间信息 (播放长度) 分别为 10 秒、 10 秒、 10 秒, 地址信息 URL 分别为 : http:/live.example.com/1.ts、 http:/live. example.com/。
24、2.ts、 http:/live.example.com/3.ts。 0045 步骤 S103、 将所获取到的所有的 TS 切片文件合并转换为一个本地媒体文件。 0046 从 HTTP 服务器获取到所有的 TS 切片文件后, 按照 M3U8 索引文件中的时间信息将 所有的 TS 切片文件合并为一个完整 TS 文件, 然后将该完整 TS 文件转换成本地播放器所支 持的播放格式的本地媒体文件。其中, 转换过程可根据 TS 封装格式标准及本地播放器所支 持的播放格式标准实现。例如, 可将完整 TS 文件转换成本地 Flash 播放器所支持的 FLV 格 说 明 书 CN 104243430 A 6 。
25、4/6 页 7 式的本地媒体文件。当然, 本地媒体文件的格式还可以是 MPEG、 MPG、 DAT、 AVI、 MOV、 3GP 等 为本地播放器所支持的格式。 0047 步骤 S104、 利用本地播放器播放所述本地媒体文件。 0048 在本实施中, 本地播放器为终端上已安装好的流媒体播放器。 0049 本发明第一实施例, 通过将所获取到的所有的传输流切片文件合并转换为一个本 地媒体文件, 利用本地播放器播放本地媒体文件, 能够使得除苹果终端外的其它被广泛使 用的终端也能够播放基于 HLS 协议的媒体流。 0050 图 3-4 示出了本发明的第二实施例。 0051 图3是本发明第二实施例提供的。
26、一种流媒体播放方法的流程示意图。 参见图3, 该 方法包括 : 0052 步骤 S301、 获取基于 HLS 协议的媒体流的 M3U8 索引文件。 0053 与第一实施例的步骤 S101 相同, 这里不再赘述。 0054 步骤 S302、 根据所述 M3U8 索引文件, 从 HTTP 服务器、 本地存储器获取所述媒体流 的各 TS 切片文件。 0055 图 4 是本发明第二实施例提供的根据所述 M3U8 索引文件, 从 HTTP 服务器、 本地存 储器获取所述媒体流的各 TS 切片文件的流程示意图。参见图 4, 步骤 S302 进一步包括 : 0056 子步骤 S3021、 解析所述 M3U8。
27、 索引文件, 确定所述媒体流的各 TS 切片文件的地址 信息和地址信息中所包含的名称信息 ; 0057 子步骤 S3022、 对本地存储器进行扫描, 获取所述本地存储器中已下载的 TS 切片 文件, 其中已下载的 TS 切片文件为与所述媒体流的 TS 切片文件名称相一致的 TS 切片文 件 ; 0058 子步骤 S3023、 根据所述地址信息, 从 HTTP 服务器获取除已下载的 TS 切片文件之 外的其它 TS 切片文件。 0059 在子步骤 S3023 中, 可先向 HTTP 服务器发送 TS 切片文件获取请求, 其中该请求包 括了除已下载的TS切片文件之外的其它TS切片文件的地址信息 ;。
28、 然后接收HTTP服务器根 据所述请求发送的 TS 切片文件。 0060 步骤 S303、 将从 HTTP 服务器获取的各 TS 切片文件保存至本地存储器。 0061 在根据所述 M3U8 索引文件, 获取到所述媒体流的各 TS 切片文件之后, 将从 HTTP 服务器获取的各 TS 切片文件保存至本地存储器, 其中所保存的位置可以是外存 (例如, 本 地磁盘) 或内存中。由于内存通常用来存储 CPU 运算所需要的代码, 为了减小内存负担、 不 影响 CPU 执行速度, 优选的, 将所述各 TS 切片文件保存至本地磁盘。 0062 步骤 S304、 将所获取到的所有的 TS 切片文件合并转换为一。
29、个本地媒体文件。 0063 与第一实施例的步骤 S103 相同, 这里不再赘述。 0064 步骤 S305、 利用本地播放器播放所述本地媒体文件。 0065 与第一实施例的步骤 S104 相同, 这里不再赘述。 0066 在本实例中, 步骤 S303 和步骤 S304-S305 是没有先后顺序关系的, 可先执行步骤 S304-S305, 再执行步骤S303, 或者先执行步骤S304, 再执行步骤S303, 最后执行步骤S305。 0067 本发明第二实施例通过将所获取到的所有的传输流切片文件合并转换为一个本 地媒体文件, 利用本地播放器播放本地媒体文件, 能够使得除苹果终端外的其它被广泛使 说。
30、 明 书 CN 104243430 A 7 5/6 页 8 用的终端也能够支持基于 HLS 协议的媒体流的播放 ; 通过将各传输流切片文件保存至本地 存储器, 能够使得后续在重复播放 HLS 媒体时可无需再从 HTTP 服务器获取传输流切片文 件, 而直接查找本地存储器中存储的传输流切片文件, 这样可以不必受限于网络环境, 节省 上网流量, 大大提升了用户的视频观看体验。 0068 图 5 示出了本发明的第三实施例。 0069 图 5 是本发明第三实施例提供的一种流媒体播放装置的结构示意图。参见图 5, 该装置包括 : 索引文件获取模块501, 用于获取基于HLS协议的媒体流的M3U8索引文件。
31、 ; 切 片文件获取模块 502, 用于根据所述 M3U8 索引文件, 从 HTTP 服务器获取所述媒体流的各 TS 切片文件 ; 转换模块 503, 用于将所获取到的所有的 TS 切片文件合并转换为一个本地媒体 文件 ; 播放模块 504, 用于利用本地播放器播放所述本地媒体文件。其中, 所述本地媒体文 件的格式为所述本地播放器所支持的格式。 0070 在本实施例中, 索引文件获取模块 501 可通过无线连接方式将媒体播放请求发送 给存储有 TS 切片文件和 M3U8 索引文件的 HTTP 服务器, 其中所述媒体播放请求为 HTTP 请 求 ; 然后, 索引文件获取模块501接收所述HTTP。
32、服务器提供的对上述媒体播放请求的回复, 其中所述回复包含了与媒体播放请求相对应的基于 HLS 协议的媒体流的 M3U8 索引文件。 M3U8 索引文件记录有至少两条时间信息及与所述至少两条时间信息中的每一条时间信息 对应的 TS 切片文件的时间信息 (播放长度) 和地址信息 (定位所述 TS 切片文件的 URL) 。 0071 在本实施例中, 切片文件获取模块 502 包括 : 0072 解析子模块5021, 用于首先按照M3U格式和UTF-8字符编码格式对M3U8索引文件 进行解析, 确定所述媒体流的各 TS 切片文件的地址信息 ; 0073 获取子模块 5022, 用于根据所述媒体流的各传。
33、输流切片文件的地址信息, 从 HTTP 服务器获取各传输流切片文件。 0074 具体的, 获取子模块 5022 先向 HTTP 服务器发送 TS 切片文件获取请求, 其中该请 求包括了所有 TS 切片文件的地址信息, 而后接收 HTTP 服务器根据所述请求发送的各 TS 切 片文件。 0075 在本实施例中, 在切片文件获取模块 502 从 HTTP 服务器获取到所有的 TS 切片文 件后, 转换模块 503 按照 M3U8 索引文件记录的时间信息将所有的 TS 切片文件合并为一个 完整 TS 文件, 然后将该完整 TS 文件转换成本地播放器所支持的播放格式的一个本地媒体 文件。其中, 转换过。
34、程可根据 TS 封装格式标准及本地播放器所支持的播放格式标准实现。 例如, 转换模块 503 可将完整 TS 文件转换成本地 Flash 播放器所支持的 FLV 格式的本地媒 体文件。当然, 本地媒体文件的格式还可以是 MPEG、 MPG、 DAT、 AVI、 MOV、 3GP 等为本地播放 器所支持的格式。 0076 本发明第三实施例, 通过将所获取到的所有的传输流切片文件合并转换为一个本 地媒体文件, 利用本地播放器播放本地媒体文件, 能够使得除苹果终端外的其它被广泛使 用的终端也能够支持基于 HLS 协议的媒体流的播放。 0077 图 6 示出了本发明的第四实施例。 0078 图6是本发。
35、明第四实施例提供的一种流媒体播放装置的结构示意图。 参见图6, 该 装置包括 : 索引文件获取模块601, 用于获取基于HLS协议的媒体流的M3U8索引文件 ; 切片 文件获取模块602, 用于根据所述M3U8索引文件, 从HTTP服务器、 本地存储器获取所述媒体 说 明 书 CN 104243430 A 8 6/6 页 9 流的各 TS 切片文件 ; 存储模块 603, 用于将切片文件获取模块 602 从 HTTP 服务器获取的各 TS 切片文件保存至本地存储器 ; 转换模块 604, 用于将所获取到的所有的 TS 切片文件合并 转换为一个本地媒体文件 ; 播放模块 605, 用于利用本地播。
36、放器播放所述本地媒体文件。其 中, 所述本地媒体文件的格式为所述本地播放器所支持的格式。 0079 在本实施例中, 索引文件获取模块 601 与第三实施例中的索引文件获取模块 501 的功能相同, 转换模块 604 与第三实施例中的转换模块 503 的功能相同, 播放模块 605 与第 三实施例中的播放模块 504 的功能相同, 这里均不再做详细赘述。 0080 在本实施例中, 切片文件获取模块 602 包括 : 0081 解析子模块6021, 用于解析所述M3U8索引文件, 确定所述媒体流的各TS切片文件 的地址信息和地址信息中所包含的名称信息 ; 0082 第一获取子模块 6022, 用于。
37、对本地存储器进行扫描, 获取所述本地存储器中已下 载的 TS 切片文件, 其中已下载的 TS 切片文件为与所述媒体流的 TS 切片文件名称相一致的 TS 切片文件 ; 0083 第二获取子模块6023, 用于根据所述地址信息, 从HTTP服务器获取除已下载的TS 切片文件之外的其它 TS 切片文件。 0084 具体的, 第二获取子模块 6023 可先向 HTTP 服务器发送 TS 切片文件获取请求, 其 中该请求包括了除已下载的 TS 切片文件之外的其它 TS 切片文件的地址信息, 然后接收 HTTP 服务器根据所述请求发送的 TS 切片文件。 0085 在本实施例中, 存储模块 603 将从。
38、 HTTP 服务器获取的各 TS 切片文件保存至本地 存储器, 其中所保存的位置可以是外存 (例如, 本地磁盘) 或内存中。由于内存通常用来存储 CPU 运算所需要的代码, 为了减小内存负担、 不影响 CPU 执行速度, 优选的, 存储模块 603 将 所述各 TS 切片文件保存至本地磁盘。 0086 本发明第四实施例通过将所获取到的所有的传输流切片文件合并转换为一个本 地媒体文件, 利用本地播放器播放所述本地媒体文件, 能够使得除苹果终端外的其它被广 泛使用的终端也能够支持基于 HLS 协议的媒体流的播放 ; 通过将各传输流切片文件保存至 本地存储器, 能够使得后续在重复播放HLS媒体时可无。
39、需再从HTTP服务器获取传输流切片 文件, 而直接查找本地存储器中存储的传输流切片文件, 这样可以不必受限于网络环境, 节 省上网流量, 大大提升了用户的视频观看体验。 0087 以上实施例提供的技术方案中的全部或部分内容可以通过软件编程实现, 其软件 程序存储在可读取的存储介质中, 存储介质例如 : 计算机中的硬盘、 光盘或软盘。 0088 以上所述仅为本发明的较佳实施例, 并不用以限制本发明, 凡在本发明的精神和 原则之内, 所作的任何修改、 等同替换、 改进等, 均应包含在本发明的保护范围之内。 说 明 书 CN 104243430 A 9 1/5 页 10 图 1 图 2 说 明 书 附 图 CN 104243430 A 10 2/5 页 11 图 3 说 明 书 附 图 CN 104243430 A 11 3/5 页 12 图 4 说 明 书 附 图 CN 104243430 A 12 4/5 页 13 图 5 说 明 书 附 图 CN 104243430 A 13 5/5 页 14 图 6 说 明 书 附 图 CN 104243430 A 14 。