CN103581764B - 适于hls视频文件下载存储方法、下载存储系统及播放系统 - Google Patents

适于hls视频文件下载存储方法、下载存储系统及播放系统 Download PDF

Info

Publication number
CN103581764B
CN103581764B CN201210258027.1A CN201210258027A CN103581764B CN 103581764 B CN103581764 B CN 103581764B CN 201210258027 A CN201210258027 A CN 201210258027A CN 103581764 B CN103581764 B CN 103581764B
Authority
CN
China
Prior art keywords
file
blocked
catalogue
blocked file
download
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201210258027.1A
Other languages
English (en)
Other versions
CN103581764A (zh
Inventor
张宗飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
WUHAN NET POWER TECHNOLOGY Co Ltd
Original Assignee
WUHAN NET POWER TECHNOLOGY Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by WUHAN NET POWER TECHNOLOGY Co Ltd filed Critical WUHAN NET POWER TECHNOLOGY Co Ltd
Priority to CN201210258027.1A priority Critical patent/CN103581764B/zh
Publication of CN103581764A publication Critical patent/CN103581764A/zh
Application granted granted Critical
Publication of CN103581764B publication Critical patent/CN103581764B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Transfer Between Computers (AREA)

Abstract

本发明涉及一种适于HLS视频文件下载存储方法及HLS视频文件播放系统。其中,下载存储方法包括下列步骤:获取分块文件目录步骤,解析分块文件目录步骤,下载分块文件步骤、生成本地分块文件目录步骤、生成本地HTTP服务器步骤以及建立本地HTTP服务器步骤。本发明能能够顺利下载HLS协议传输的流媒体节目数据的分块目录及分块数据,并在客户端进行存储,以实现客户端播放器在离线情况下进行本地播放。

Description

适于HLS视频文件下载存储方法、下载存储系统及播放系统
技术领域
本发明涉及一种视频文件下载方法、系统及播放系统,特别是涉及一种HLS视频文件下载方法、系统及下载播放系统。
背景技术
HTTP Live Streaming(本专利文件简称:HLS)是苹果公司创造的一种基于Http协议的流媒体通信协议,其文件路径均是合法的URL,流媒体文件的播放列表格式是M3U8格式。它将整个媒体流分成一个个小的分块,每一个小的分块均通过HTTP协议传输,它主要运用于向iOS设备(如:iPhone,iPad)传送视频、音频流。它的主要优点如下:利用既有的HTTP协议,不需要安装特殊的服务端软件;对发送的媒体流进行加密和认证。但它有明显的缺点,即必须连接到网络,如下载只能下载流媒体的播放列表,也即M3U8格式的播放列表(下文为描述方便,简称分块文件目录),而不能下载各分块文件,故不能实现离线播放。
发明内容
本发明所要解决的技术问题在于针对上述现有技术存在的不足而提供一种能下载HLS协议文件的目录和各个小分块,并进行存储的方法,以实现离线播放,以及该下载、存储系统和播放系统。
本发明为解决上述基于HLS视频文件下载问题,所采用的下载存储方法,包括下列步骤:
1)获取分块文件目录步骤,本地客户端通过HTTP协议向流媒体服务器请求获取节目数据的远程分块文件目录;
2)解析分块文件目录步骤,对远程分块文件目录进行解析以确定节目数据的各分块路径是否为合法的URL,并确定各分块文件的数量及对应的网址;
3)下载分块文件步骤,根据解析的各分块网址下载节目数据的所有分块文件至客户端;
4)生成本地分块文件目录步骤,将节目数据的远程分块文件目录转换为本地分块文件目录;
5)生成本地HTTP服务器步骤,在本地建立HTTP服务器,并将分块文件和本地分块文件目录置于该HTTP服务器中。
按上述方案,所述解析分块文件目录步骤包括:将获取的远程分块文件目录的每一行数据置于数组中;对数组中每一行数据进行筛选,如#开头的数据行不做处理,非#开头的数据行为分块文件地址,输入分块文件下载步骤。
按上述方案,下载到本地的分块文件的排列顺序与分块文件目录的排列顺序一致。
按上述方案,所述生成本地分块文件目录步骤为,将获取的分块文件目录中各分块文件的网址修改为各分块文件对应的本地地址。
按上述方案,所述本地分块文件目录的各分块文件的本地存储地址可以是分块文件的相对地址,或下载后分块文件的绝对地址。
按上述方案,还包括建立文件夹步骤,建立本地文件夹,并将下载的分块文件及生成的本地分块文件目录均置于该视频文件夹中的步骤。
按上述方案,所述建立文件夹步骤在下载分块文件之前完成。
HLS视频文件下载存储方系统,包括:
1)获取分块文件目录模块,用于客户端通过HTTP协议向流媒体服务器请求获取节目数据的远程分块文件目录;
2)解析分块文件目录模块,用于对分块目录进行解析,判断分块文件路径是否为合法的URL,确定各分块文件数量及网址,并将分块网址传给下载分块文件模块;
3)下载分块文件模块,用于基于解析分块文件目录模块传送的分块文件网址将所有分块文件下载至客户端;
4)生成本地分块文件目录模块,用于将下载后的节目数据的各分块文件,依序生成本地分块目录;
5)生成本地HTTP服务器模块,用于在本地建立HTTP服务器,并将下载的分块文件及本地分块文件目录置于该服务器中。
按上述方案,还包括自动建立文件夹模块,用于建立文件夹并使下载的分块文件及生成的本地分块文件目录置于该文件夹中。
按上述方案,下载分块文件模块将下载的各分块文件在客户端的排列顺序与远程分块文件目录中各分块文件的排列顺序一致。
HLS视频文件播放系统,包括:HLS视频文件下载存储方系统和播放模块,所述的HLS视频文件下载存储方系统采用如权上述任一项所述的系统。
本发明的有益效果:能够顺利下载HLS协议传输的流媒体节目数据的分块目录及分块数据,并在客户端进行存储,以实现客户端播放器在离线情况下进行本地播放。
附图说明
图1为本发明下载存储方法流程图;
图2为本发明下载存储系统的结构原理图;
图3为本发明播放器结构原理图;
图4为本发明远程流媒体视频文件的分块文件目录;
图5为本发明本地流媒体视频文件分块文件目录。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本发明,并不用于限制本发明。
图1示出了本法明实施例提供的基于HTTP协议播放的流媒体文件下载方法。
在步骤S101中,本地客户端通过HTTP协议向流媒体服务器请求获取节目数据的远程分块文件目录,所下载的远程分块文件目录,也即流媒体的远程M3U8播放列表。
在步骤S102中,对分块目录进行解析以确定节目数据的各分块路径是否为合法的URL,如果不是,则停止后续操作,该类文件非本方法可下载;如果是,则继续操作,获得各分块文件的数量及对应的网址。
在步骤S103中,建立本地文件夹,并将下载的分块文件及建立的本地播放目录均置于该视频文件夹中。
在步骤S104中,根据解析的分块网址下载节目数据的所有分块文件至客户端。
在步骤S105中,将节目数据的分块目录转换为本地媒体分块目录,所生成的本地媒体分块目录,也即流媒体的本地M3U8播放列表。
在步骤S106中,在本地建立HTTP服务器,并将分块文件和分块目录置于该HTTP服务器中。
本发明方法,步骤S103可以在步骤S102之前完成,也可以作为本发明的第一步骤。
更进一步的,步骤S102筛选获得分块文件的数量及网址步骤,是把分块文件目录的所有数据行置于数组中进行筛选,非“#”开头的数据行为各分块文件的网址。
更进一步的,步骤S104下载后的分块分拣在文件夹中的排列顺序与分块文件目录中各分块文件的排列顺序一致。
更进一步的,步骤S105,为将获取的分块文件目录中各分块文件的网址修改为各分块文件对应的本地地址。
更进一步的,步骤S105中各分块文件的本地地址既可以为各分块文件的相对地址。
图2示出了本发明HLS视频文件下载存储系统结构原理。
获取分块目录模块101,用于客户端通过HTTP协议向流媒体服务器请求获取节目数据的分块文件目录,具体步骤为:通过HTTP协议向流媒体远程服务器发出获取节目数据分块目录的请求,并下载该分块目录;解析分块目录模块102,用于对远程分块目录进行解析,判断分块文件路径是否为合法的URL,如果不是则非本系统可下载的文件,提示客户终端停止操作,如果是则继续操作,确定各分块文件数量及网址,并将分块网址传给下载分块文件模块;建立文件夹模块103,用于建立文件夹并使下载的分块文件及生成的本地分块文件目录置于该文件夹中;下载节目分块模块104,用于根据解析分块目录模块102传送的各分块文件的网址将所有分块文件下载至客户端,并将下载的分块文件的排列顺序与分块目录中文件顺序一致;生成本地分块文件目录模块105,用于将下载后的节目数据的各分块文件依序生成本地分块目录,所生成的本地分块文件目录与下载的分块目录相比,仅将分块文件的网址修改为分块文件的本地地址;生成本地http服务器模块106,用于在本地建立HTTP服务器,并将下载的分块文件及本地分块文件目录置于该服务器中。
本发明方法,建立文件夹模块103也可以设置在解析分块目录模块102与获取分块目录模块101之间。
图3示出了本发明播放器的结构原理图,所述播放器包括本发明HLS视频文件下载存储系统201和播放模块202,通过HLS视频文件下载存储系统201下载流媒体文件,通过播放模块202进行播放。播放模块可为普通播放器的播放模块。
图4为某一流媒体文件远程分块文件目录示例,即M3U8格式播放列表,“http”开头的数据行为各分块文件的远程播放(在线)地址。如只下载该播放列表,离线后无法连接分块文件的远程播放地址,故而无法离线播放。
图5为通过本发明方法及设备下载分块文件并重新建立的分块文件目录示例,也即M3U8格式的播放列表,列表中的“0.ts”、”1.ts”等为下载到本地的各分块文件的播放地址。离线播放是,通过本地分块文件目录,找到各分块文件地址,进行播放。

Claims (10)

1.一种HLS视频文件下载存储方法,包括下列步骤:
1)获取分块文件目录步骤,本地客户端通过HTTP协议向流媒体服务器请求获取节目数据的远程分块文件目录;
2)解析分块文件目录步骤,对远程分块文件目录进行解析以确定节目数据的各分块路径是否为合法的URL,并确定各分块文件的数量及对应的网址;
3)下载分块文件步骤,根据解析的各分块网址下载节目数据的所有分块文件至客户端;
4)生成本地分块文件目录步骤,将节目数据的远程分块文件目录转换为本地分块文件目录;
5)生成本地HTTP服务器步骤,在本地建立HTTP服务器,并将分块文件和本地分块文件目录置于该HTTP服务器中。
2.根据权利要求1所述的HLS视频文件下载存储方法,其特征在于:所述解析分块文件目录步骤包括:将获取的远程分块文件目录的每一行数据置于数组中;对数组中每一行数据进行筛选,如#开头的数据行不做处理,非#开头的数据行为分块文件地址,输入分块文件下载步骤。
3.根据权利要求1所述的HLS视频文件下载存储方法,其特征在于:下载到本地的分块文件的排列顺序与分块文件目录的排列顺序一致。
4.根据权利要求1或2或3所述的HLS视频文件下载存储方法,其特征在于:所述生成本地分块文件目录步骤为,将获取的分块文件目录中各分块文件的网址修改为各分块文件对应的本地地址。
5.根据权利要求4所述的HLS视频文件下载存储方法,其特征在于:所述本地分块文件目录的各分块文件的本地存储地址可以是分块文件的相对地址,或下载后分块文件的绝对地址。
6.根据权利要求1或2或3所述的HLS视频文件下载存储方法,其特征在于:还包括建立文件夹步骤,建立本地文件夹,并将下载的分块文件及生成的本地分块文件目录均置于该视频文件夹中的步骤。
7.一种HLS视频文件下载存储方系统,包括:
1)获取分块文件目录模块,用于客户端通过HTTP协议向流媒体服务器请求获取节目数据的远程分块文件目录;
2)解析分块文件目录模块,用于对分块目录进行解析,判断分块文件路径是否为合法的URL,确定各分块文件数量及网址,并将分块网址传给下载分块文件模块;
3)下载分块文件模块,用于基于解析分块文件目录模块传送的分块文件网址将所有分块文件下载至客户端;
4)生成本地分块文件目录模块,用于将下载后的节目数据的各分块文件,依序生成本地分块目录;
5)生成本地HTTP服务器模块,用于在本地建立HTTP服务器,并将下载的分块文件及本地分块文件目录置于该服务器中。
8.根据权利要求7所述HLS视频文件下载存储方系统,其特征在于:还包括自动建立文件夹模块,用于建立文件夹并使下载的分块文件及生成的本地分块文件目录置于该文件夹中。
9.根据权利要求7所述HLS视频文件下载存储方系统,其特征在于:下载分块文件模块将下载的各分块文件在客户端的排列顺序与远程分块文件目录中各分块文件的排列顺序一致。
10.一种HLS视频文件播放系统,包括:HLS视频文件下载存储方系统和播放模块,其特征在于:所述的HLS视频文件下载存储方系统采用如权利要求7至9任一项所述的系统。
CN201210258027.1A 2012-07-24 2012-07-24 适于hls视频文件下载存储方法、下载存储系统及播放系统 Active CN103581764B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210258027.1A CN103581764B (zh) 2012-07-24 2012-07-24 适于hls视频文件下载存储方法、下载存储系统及播放系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210258027.1A CN103581764B (zh) 2012-07-24 2012-07-24 适于hls视频文件下载存储方法、下载存储系统及播放系统

Publications (2)

Publication Number Publication Date
CN103581764A CN103581764A (zh) 2014-02-12
CN103581764B true CN103581764B (zh) 2017-01-25

Family

ID=50052519

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210258027.1A Active CN103581764B (zh) 2012-07-24 2012-07-24 适于hls视频文件下载存储方法、下载存储系统及播放系统

Country Status (1)

Country Link
CN (1) CN103581764B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104244079B (zh) * 2013-06-07 2019-07-16 腾讯科技(深圳)有限公司 一种视频下载方法及装置
CN104965693A (zh) * 2014-08-29 2015-10-07 腾讯科技(深圳)有限公司 一种视频处理的方法和系统
CN106713221A (zh) * 2015-07-29 2017-05-24 中兴通讯股份有限公司 一种多媒体文件下载的方法及装置
CN106021248A (zh) * 2015-09-16 2016-10-12 展视网(北京)科技有限公司 一种元搜索引擎相关的视频文件下载系统及方法
CN105335242B (zh) * 2015-11-02 2019-03-26 传线网络科技(上海)有限公司 Ios系统中后台下载视频文件的方法及系统
CN106375834B (zh) * 2016-08-31 2019-08-02 广州易方信息科技股份有限公司 一种基于iOS操作系统的在线加密切片视频离线播放方法及装置
EP3997888A1 (en) 2019-07-12 2022-05-18 Carrier Corporation A system and a method for streaming videos by creating object urls at client
CN110798714B (zh) * 2019-10-23 2022-02-01 深圳创维新世界科技有限公司 一种基于hls的本地视频播放系统及播放方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101252454A (zh) * 2008-03-10 2008-08-27 中国电信股份有限公司 一种客户端视频播放系统及其方法
CN101938483A (zh) * 2010-09-03 2011-01-05 中兴通讯股份有限公司 一种直播内容分发方法和系统
CN102238434A (zh) * 2011-07-22 2011-11-09 中兴通讯股份有限公司 一种iptv流媒体文件虚拟分段和使用的方法及系统
CN102572555A (zh) * 2012-01-16 2012-07-11 深圳市同洲视讯传媒有限公司 一种实现hls客户端视频直播回看的方法及系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9043484B2 (en) * 2010-04-02 2015-05-26 Disney Enterprises, Inc. Streaming playback and dynamic ad insertion

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101252454A (zh) * 2008-03-10 2008-08-27 中国电信股份有限公司 一种客户端视频播放系统及其方法
CN101938483A (zh) * 2010-09-03 2011-01-05 中兴通讯股份有限公司 一种直播内容分发方法和系统
CN102238434A (zh) * 2011-07-22 2011-11-09 中兴通讯股份有限公司 一种iptv流媒体文件虚拟分段和使用的方法及系统
CN102572555A (zh) * 2012-01-16 2012-07-11 深圳市同洲视讯传媒有限公司 一种实现hls客户端视频直播回看的方法及系统

Also Published As

Publication number Publication date
CN103581764A (zh) 2014-02-12

Similar Documents

Publication Publication Date Title
CN103581764B (zh) 适于hls视频文件下载存储方法、下载存储系统及播放系统
US7921221B2 (en) Method and apparatus for obtaining digital objects in a communication network
CN102215116B (zh) 在数字广播系统中提供时间偏移服务的方法、设备及系统
CN106685942B (zh) 视频直播回播系统以及视频直播回播方法
CN102547478B (zh) 基于cdn的流媒体触发式切片点播系统和方法
CN103051976B (zh) 一种cdn分发hls内容方法、系统及设备
CN103929427A (zh) 一种动态多线程下载装置及其下载方法
CN105100954A (zh) 一种基于互联网通信及流媒体直播的交互应答系统及方法
CN102710966A (zh) 基于http协议的视频直播方法及系统
CN102740125B (zh) 一种播放流媒体的系统和方法
CN102630378A (zh) 基于描述文件的个体化数据通信
KR20160067126A (ko) 콘텐트 전달을 위한 방법 및 장치
CN102572555A (zh) 一种实现hls客户端视频直播回看的方法及系统
US9356985B2 (en) Streaming video to cellular phones
CN104618738B (zh) 一种智能电视节目播放方法及装置
CN105657443A (zh) 一种直播时移播放方法和系统
CN103024491B (zh) 移动终端的视频播放方法和系统
CN102164317A (zh) 一种面向ip机顶盒的多服务器分段下载系统
EP3007458A1 (en) Content supply device, content supply method, program, and content supply system
CN102438004A (zh) 获取媒体文件的元数据信息的方法、系统及多媒体播放器
CN102938775A (zh) 一种视频微博发布方法、系统及客户端
CN101958901B (zh) 一种基于长期演进的多媒体点播方法、系统和移动终端
CN102291458A (zh) 一种p2p服务器架构方法
WO2011150696A1 (zh) 一种移动多媒体广播互动业务管理方法及系统
CN103856820B (zh) 用于浏览器页面的音视频点播方法及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant