CN102355504A - Flv在线视频缓存方法及装置 - Google Patents
Flv在线视频缓存方法及装置 Download PDFInfo
- Publication number
- CN102355504A CN102355504A CN201110314322XA CN201110314322A CN102355504A CN 102355504 A CN102355504 A CN 102355504A CN 201110314322X A CN201110314322X A CN 201110314322XA CN 201110314322 A CN201110314322 A CN 201110314322A CN 102355504 A CN102355504 A CN 102355504A
- Authority
- CN
- China
- Prior art keywords
- flv
- url
- video file
- flv video
- file
- 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.)
- Pending
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
本发明提供了一种FLV在线视频缓存方法及装置,其中,所述方法包括:S1、识别表示同一FLV视频请求的不同的URL;S2、分析所述URL,并提取视频播放的起始位置;S3、根据所述URL和所述起始位置,向客户端发送伪HTTP请求重定向报文;S4、从所述伪HTTP请求中提取所述URL和所述起始位置获得的数据,以读取本地的FLV视频文件,重构向客户端发送的FLV视频文件。本发明可让本来需要通过网络出口重复性获取的FLV格式的视频数据直接从本地服务器获取,减轻了网络出口的负担,降低网络带宽、流量的消耗,且节约了运营的成本。
Description
技术领域
本发明涉及网络技术领域,尤其涉及一种FLV在线视频缓存方法及装置。
背景技术
目前很多在线视频网站使用Flash插件的方式播放在线视频文件,浏览器只要支持Flash就可以播放在线视频。由于Flash的跨平台性,这样大大方便了服务商的部署,Flash支持的数据数据格式也成为了事实上的在线视频标准。
视频数据一般都比较大,而且对于用户来说很多都是重复性的数据,这给用户的网络出口带来了极大的负担,消耗了网络带宽,也消耗了网络的流量,增加了运营的成本。
发明内容
为了解决上述问题,本发明提供了一种FLV在线视频缓存方法及装置,该FLV在线视频缓存方法及装置可检测分析在线视频URL特征,并根据URL的特征,缓存、解析、重构FLV视频数据。
具体技术方案如下:
本发明一实施方式的一种FLV在线视频缓存方法,包括:
S1、识别表示同一FLV视频请求的不同的URL;
S2、分析所述URL,并提取视频播放的起始位置;
S3、根据所述URL和所述起始位置,向客户端发送伪HTTP请求重定向报文;
S4、从所述伪HTTP请求中提取所述URL和所述起始位置获得的数据,以读取本地的FLV视频文件,重构向客户端发送的FLV视频文件。
作为本发明的进一步改进,所述S1步骤具体包括:
S11、监听网络数据包,抓取FLV视频的HTTP请求;
S12、根据特征库,提取URL中的标识FLV视频特征唯一的特征部分;
S13、将所述特征部分重组成一内部URL标识,并计算哈希值,所述哈希值标识唯一的FLV视频文件。
作为本发明的进一步改进,所述S2步骤具体包括:
S21、监听网络数据包,抓取FLV视频的HTTP请求;
S22、根据特征库,提取指定的URL的变量值;
S23、根据所述变量值,确定播放的起始时间或在FLV视频文件中的起始位置。
作为本发明的进一步改进,所述“重构向客户端发送的FLV视频文件”具体包括:
S41、获取的FLV视频文件唯一URL标识,查询本地URL索引;
S42、判断本地FLV视频文件是否存在;
S43、若不存在,则从公网获取FLV视频文件,并发送至客户端;
S44、若存在,则根据FLV视频文件的唯一URL标识,读取本地FLV文件头;
S45、根据文件头的数据计算对应的FLV视频文件的起始位置值;
S46、根据获得的FLV视频文件的起始位置值,读取本地FLV视频文件,并与FLV文件头合并,重新生成一临时FLV视频文件。
本发明一实施方式的一种FLV在线视频缓存装置,包括:
识别单元,用于识别表示同一FLV视频请求的不同的URL;
分析单元,用于分析所述URL,并提取视频播放的起始位置;
重定向单元,用于根据所述URL和所述起始位置,向客户端发送伪HTTP请求重定向报文;
重构单元,用于从所述伪HTTP请求中提取所述URL和所述起始位置获得的数据,以读取本地的FLV视频文件,重构向客户端发送的FLV视频文件。
作为本发明的进一步改进,所述识别单元包括:
监听组件,用于监听网络数据包,抓取FLV视频的HTTP请求;
提取组件,用于根据特征库提取URL中的标识FLV视频特征唯一的特征部分;
分析组件,用于将所述特征部分重组成一内部URL标识,并计算哈希值,所述哈希值标识唯一的FLV视频文件。
作为本发明的进一步改进,所述分析单元包括:
监听组件,用于监听网络数据包,抓取FLV视频的HTTP请求;
提取组件,用于根据特征库提取指定的URL的变量值;
分析组件,用于根据所述变量值,确定播放的起始时间或在FLV视频文件中的起始位置。
作为本发明的进一步改进,所述重构单元包括:
查询组件,用于获取的FLV视频文件唯一URL标识,查询本地URL索引;
判断组件,用于判断本地FLV视频文件是否存在;若不存在,则从公网获取FLV视频文件,并发送至客户端;若存在,则根据FLV视频文件的唯一URL标识,读取本地FLV文件头;
分析组件,用于根据文件头的数据计算对应的FLV视频文件的起始位置值;
重生成组件,用于根据获得的FLV视频文件的起始位置值,读取本地FLV视频文件,并与FLV文件头合并,重新生成一临时FLV视频文件。
由以上技术方案可以看出,本发明可让本来需要通过网络出口重复性获取的FLV格式的视频数据直接从本地服务器获取,减轻了网络出口的负担,降低网络带宽、流量的消耗,且节约了运营的成本。
【附图说明】
图1是本发明一实施方式FLV在线视频缓存方法的流程图;
图2是本发明一实施方式中S1具体步骤的流程图;
图3是本发明一实施方式中S2具体步骤的流程图;
图4是本发明一实施方式中对在线视频数据重构的流程图;
图5是本发明一实施方式FLV在线视频缓存装置的模块示意图。
【具体实施方式】
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施方式对本发明进行详细描述。
如图1所示,在本发明的一实施方式中,所述FLV在线视频缓存方法包括:
S1、识别表示同一FLV视频请求的不同的URL;
S2、分析所述URL,并提取视频播放的起始位置;
S3、根据所述URL和所述起始位置,向客户端发送伪HTTP请求重定向报文;
S4、从所述伪HTTP请求中提取所述URL和所述起始位置获得的数据,以读取本地的FLV视频文件,重构向客户端发送的FLV视频文件。优选地,本地的FLV视频文件是通过对内网用户提供HTTP服务,接受内网的FLV在线视频请求,并向外网发送请求下载数据得到的。将该首次请求的FLV视频流文件存储在本地;为后继的相同的FLV视频请求提供服务。
如图2所示,在本发明的一实施方式中,所述S1步骤具体包括:
S11、监听网络数据包,抓取FLV视频的HTTP请求;优选地,通过DFA深层包检测引擎的标签方式对基于HTTP协议的FLV视频请求报文进行识别,以判断出内网用户是否在请求FLV视频流文件;
S12、根据特征库,提取URL中的标识FLV视频特征唯一的特征部分;
S13、将所述特征部分重组成一内部URL标识,并计算哈希值,所述哈希值标识唯一的FLV视频文件。
如图3所示,在本发明的一实施方式中,所述S2步骤具体包括:
S21、监听网络数据包,抓取FLV视频的HTTP请求;优选地,通过DFA深层包检测引擎的标签方式对基于HTTP协议的FLV视频请求报文进行识别,以判断出内网用户是否在请求FLV视频流文件;
S22、根据特征库,提取指定的URL的变量值;
S23、根据所述变量值,确定播放的起始时间或在FLV视频文件中的起始位置。
如图4所示,在本发明的一实施方式中,所述“重构向客户端发送的FLV视频文件”具体包括:
S41、获取的FLV视频文件唯一URL标识,查询本地URL索引;
S42、判断本地FLV视频文件是否存在;
S43、若不存在,则从公网获取FLV视频文件,并发送至客户端;
S44、若存在,则根据FLV视频文件的唯一URL标识,读取本地FLV文件头;
S45、根据文件头的数据计算对应的FLV视频文件的起始位置值;
S46、根据获得的FLV视频文件的起始位置值,读取本地FLV视频文件,并与FLV文件头合并,重新生成一临时FLV视频文件。
如图5所示,在本发明的一实施方式中,所述FLV在线视频缓存装置包括:
识别单元,用于识别表示同一FLV视频请求的不同的URL;
分析单元,用于分析所述URL,并提取视频播放的起始位置;
重定向单元,用于根据所述URL和所述起始位置,向客户端发送伪HTTP请求重定向报文;
重构单元,用于从所述伪HTTP请求中提取所述URL和所述起始位置获得的数据,以读取本地的FLV视频文件,重构向客户端发送的FLV视频文件。优选地,本地的FLV视频文件是通过对内网用户提供HTTP服务,接受内网的FLV在线视频请求,并向外网发送请求下载数据得到的。将该首次请求的FLV视频流文件存储在本地;为后继的相同的FLV视频请求提供服务。
优选地,在本发明的一实施方式中,所述识别单元还用于:
监听网络数据包,抓取FLV视频的HTTP请求;优选地,通过DFA深层包检测引擎的标签方式对基于HTTP协议的FLV视频请求报文进行识别,以判断出内网用户是否在请求FLV视频流文件;
根据特征库,提取URL中的标识FLV视频特征唯一的特征部分;
将所述特征部分重组成一内部URL标识,并计算哈希值,所述哈希值标识唯一的FLV视频文件。
优选地,在本发明的一实施方式中,所述分析单元还用于:
监听网络数据包,抓取FLV视频的HTTP请求;优选地,通过DFA深层包检测引擎的标签方式对基于HTTP协议的FLV视频请求报文进行识别,以判断出内网用户是否在请求FLV视频流文件;
根据特征库,提取指定的URL的变量值;
根据所述变量值,确定播放的起始时间或在FLV视频文件中的起始位置。
优选地,在本发明的一实施方式中,所述重构单元还用于:
获取的FLV视频文件唯一URL标识,查询本地URL索引;
判断本地FLV视频文件是否存在;
若不存在,则从公网获取FLV视频文件,并发送至客户端;
若存在,则根据FLV视频文件的唯一URL标识,读取本地FLV文件头;
根据文件头的数据计算对应的FLV视频文件的起始位置值;
根据获得的FLV视频文件的起始位置值,读取本地FLV视频文件,并与FLV文件头合并,重新生成一临时FLV视频文件。
通过以上描述可知,本发明可让本来需要通过网络出口重复性获取的FLV格式的视频数据直接从本地服务器获取,减轻了网络出口的负担,降低网络带宽、流量的消耗,且节约了运营的成本。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施方式或者实施方式的某些部分所述的方法。
以上所描述的装置实施方式仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施方式方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
本申请可用于众多通用或专用的计算***环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器***、基于微处理器的***、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何***或设备的分布式计算环境等等。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施方式中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。
上文所列出的一系列的详细说明仅仅是针对本发明的可行性实施方式的具体说明,它们并非用以限制本发明的保护范围,凡未脱离本发明技艺精神所作的等效实施方式或变更均应包含在本发明的保护范围之内。
Claims (5)
1. 一种FLV在线视频缓存方法,其特征在于,包括以下步骤:
S1、识别表示同一FLV视频请求的不同的URL;
S2、分析所述URL,并提取视频播放的起始位置;
S3、根据所述URL和所述起始位置,向客户端发送伪HTTP请求重定向报文;
S4、从所述伪HTTP请求中提取所述URL和所述起始位置获得的数据,以读取本地的FLV视频文件,重构向客户端发送的FLV视频文件;
所述S1步骤具体包括:
S11、监听网络数据包,抓取FLV视频的HTTP请求;
S12、根据特征库,提取URL中的标识FLV视频特征唯一的特征部分;
S13、将所述特征部分重组成一内部URL标识,并计算哈希值,所述哈希值标识唯一的FLV视频文件;
所述S2步骤具体包括:
S21、监听网络数据包,抓取FLV视频的HTTP请求;
S22、根据特征库,提取指定的URL的变量值;
S23、根据所述变量值,确定播放的起始时间或在FLV视频文件中的起始位置;
所述S4步骤中“重构向客户端发送的FLV视频文件”具体包括:
S41、获取的FLV视频文件唯一URL标识,查询本地URL索引;
S42、判断本地FLV视频文件是否存在;
S43、若不存在,则从公网获取FLV视频文件,并发送至客户端;
S44、若存在,则根据FLV视频文件的唯一URL标识,读取本地FLV文件头;
S45、根据文件头的数据计算对应的FLV视频文件的起始位置值;
S46、根据获得的FLV视频文件的起始位置值,读取本地FLV视频文件,并与FLV文件头合并,重新生成一临时FLV视频文件。
2.一种FLV在线视频缓存装置,其特征在于,所述FLV在线视频缓存装置包括:
识别单元,用于识别表示同一FLV视频请求的不同的URL;
分析单元,用于分析所述URL,并提取视频播放的起始位置;
重定向单元,用于根据所述URL和所述起始位置,向客户端发送伪HTTP请求重定向报文;
重构单元,用于从所述伪HTTP请求中提取所述URL和所述起始位置获得的数据,以读取本地的FLV视频文件,重构向客户端发送的FLV视频文件。
3.根据权利要求2所述的FLV在线视频缓存装置,其特征在于,所述识别单元包括:
监听组件,用于监听网络数据包,抓取FLV视频的HTTP请求;
提取组件,用于根据特征库提取URL中的标识FLV视频特征唯一的特征部分;
分析组件,用于将所述特征部分重组成一内部URL标识,并计算哈希值,所述哈希值标识唯一的FLV视频文件。
4.根据权利要求2所述的FLV在线视频缓存装置,其特征在于,所述分析单元包括:
监听组件,用于监听网络数据包,抓取FLV视频的HTTP请求;
提取组件,用于根据特征库提取指定的URL的变量值;
分析组件,用于根据所述变量值,确定播放的起始时间或在FLV视频文件中的起始位置。
5.根据权利要求2所述的FLV在线视频缓存装置,其特征在于,所述重构单元包括:
查询组件,用于获取的FLV视频文件唯一URL标识,查询本地URL索引;
判断组件,用于判断本地FLV视频文件是否存在;若不存在,则从公网获取FLV视频文件,并发送至客户端;若存在,则根据FLV视频文件的唯一URL标识,读取本地FLV文件头;
分析组件,用于根据文件头的数据计算对应的FLV视频文件的起始位置值;
重生成组件,用于根据获得的FLV视频文件的起始位置值,读取本地FLV视频文件,并与FLV文件头合并,重新生成一临时FLV视频文件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110314322XA CN102355504A (zh) | 2011-10-17 | 2011-10-17 | Flv在线视频缓存方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110314322XA CN102355504A (zh) | 2011-10-17 | 2011-10-17 | Flv在线视频缓存方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102355504A true CN102355504A (zh) | 2012-02-15 |
Family
ID=45578998
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110314322XA Pending CN102355504A (zh) | 2011-10-17 | 2011-10-17 | Flv在线视频缓存方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102355504A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102843615A (zh) * | 2012-09-05 | 2012-12-26 | 北京星网锐捷网络技术有限公司 | 在线视频文件的缓存索引方法和缓存服务器 |
CN105117350A (zh) * | 2015-08-25 | 2015-12-02 | 摩贝(上海)生物科技有限公司 | 一种可配置的缓存***和方法 |
WO2017129130A1 (zh) * | 2016-01-29 | 2017-08-03 | 腾讯科技(深圳)有限公司 | 一种音频处理的方法、服务器、用户设备及*** |
CN108322762A (zh) * | 2017-12-20 | 2018-07-24 | 湖北鸿云科技股份有限公司 | 基于flv文件的高性能媒体点播服务器及点播服务方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101635826A (zh) * | 2008-07-21 | 2010-01-27 | 中国科学院计算技术研究所 | 一种获取网络音视频节目地址的方法 |
CN101848156A (zh) * | 2010-05-19 | 2010-09-29 | 苏州迈科网络安全技术有限公司 | Flv流量本地化的方法 |
-
2011
- 2011-10-17 CN CN201110314322XA patent/CN102355504A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101635826A (zh) * | 2008-07-21 | 2010-01-27 | 中国科学院计算技术研究所 | 一种获取网络音视频节目地址的方法 |
CN101848156A (zh) * | 2010-05-19 | 2010-09-29 | 苏州迈科网络安全技术有限公司 | Flv流量本地化的方法 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102843615A (zh) * | 2012-09-05 | 2012-12-26 | 北京星网锐捷网络技术有限公司 | 在线视频文件的缓存索引方法和缓存服务器 |
CN105117350A (zh) * | 2015-08-25 | 2015-12-02 | 摩贝(上海)生物科技有限公司 | 一种可配置的缓存***和方法 |
CN105117350B (zh) * | 2015-08-25 | 2018-08-24 | 摩贝(上海)生物科技有限公司 | 一种可配置的缓存***和方法 |
WO2017129130A1 (zh) * | 2016-01-29 | 2017-08-03 | 腾讯科技(深圳)有限公司 | 一种音频处理的方法、服务器、用户设备及*** |
US11182425B2 (en) | 2016-01-29 | 2021-11-23 | Tencent Technology (Shenzhen) Company Limited | Audio processing method, server, user equipment, and system |
CN108322762A (zh) * | 2017-12-20 | 2018-07-24 | 湖北鸿云科技股份有限公司 | 基于flv文件的高性能媒体点播服务器及点播服务方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104503780B (zh) | 一种提供应用渠道包的方法和装置 | |
CN104216700B (zh) | 基于云计算的html5应用的打包、安装、卸载、运行方法的*** | |
CN102135892B (zh) | 应用程序运行方法、装置及*** | |
US7702317B2 (en) | System and method to query wireless network offerings | |
CN106878074B (zh) | 流量过滤方法及装置 | |
CN102098327A (zh) | 在线视频嗅探下载方法及装置 | |
CN102868909A (zh) | Mp4在线视频缓存方法及装置 | |
CN103944944A (zh) | 分享网页链接的方法、电子设备及*** | |
CN103095839A (zh) | 一种客户端数据展现***及方法 | |
CN104683407A (zh) | 一种页面数据和应用数据的传输方法和设备 | |
CN105068876A (zh) | 基于分布式部署真机采集手机app性能数据的方法 | |
CN105426549A (zh) | 一种读取网页资源的方法、装置及电子设备 | |
CN102932471B (zh) | 浏览器登录服务器及其实现浏览器登录的方法和*** | |
CN102355504A (zh) | Flv在线视频缓存方法及装置 | |
CN104361007B (zh) | 浏览器及其收藏夹的处理方法 | |
CN109639819A (zh) | 文件传输方法、客户端、服务器及*** | |
CN105159992A (zh) | 一种应用程序的页面内容及网络行为的检测方法及装置 | |
CN107370628B (zh) | 基于埋点的日志处理方法及*** | |
CN105099769A (zh) | 业务平台的异常操作处理方法、设备和*** | |
US8990266B2 (en) | Dynamic data transformations for network transmissions | |
CN103401931B (zh) | 一种下载文件的方法和*** | |
CN104361004B (zh) | 浏览器收藏夹数据的处理方法与浏览器 | |
CN105100291A (zh) | 一种资源地址的生成方法、装置及*** | |
CN104158697B (zh) | 一种死链检测方法及装置 | |
CN104796279A (zh) | 请求包的处理方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20120215 |