一种实时视频处理方法和装置制造方法

文档序号:7997860阅读:108来源:国知局
一种实时视频处理方法和装置制造方法
【专利摘要】本发明公开了一种实时视频处理方法和装置,方法步骤:通过与之连接的视频采集设备获取实时视频数据,将实时视频数据进行编码生成视频流文件;按规定的时间片将视频流文件分割成若干视频流片段;接收客户端的浏览器发送的视频处理请求,视频处理请求包括与实时视频数据对应的视频ID、视频预览或播放的起始位置;响应视频处理请求,与客户端的浏览器建立至少两条视频推送通道;通过至少两条视频推送通道将若干视频流片段交替推送至客户端的浏览器。有益效果:通过在服务器与Web客户端设置至少两个视频推送通道,交替推送分割实时视频数据所形成的视频流片段,使得Web客户端浏览器在播放视频流片段时,不受分析时间的影响,播放流畅。
【专利说明】一种实时视频处理方法和装置

【技术领域】
[0001]本发明涉及视频处理【技术领域】,尤其涉及一种实时视频处理方法和装置。

【背景技术】
[0002]随着视频监控的网络化,使用Web客户端作为视频监控交互界面已经形成必然的发展趋势。而现有技术中,通常使用户数据包协议UDP (User Datagram Protocol)进行音视频文件的传输,因此Web客户端只能通过安装插件形式(例如Adobe flash插件)来实现音视频文件的播放,或者在Web客户端安装特定的软件后播放从服务器请求的音视频文件或实时视频数据,这使得视频监控网络化受到很大的限制。例如当用户在外地利用非个人计算机预览或播放公司的监控视频,则必须在该计算机上先安装特定的软件。
[0003]随着HTML5规范的推出,这一现象得到改变。采用HTML5的技术后,浏览器可以不依赖外部插件实现音视频播控、矢量图形绘制、本地信息保存查询等等。但是,由于HTML5规范本身并不支持流媒体传输,为了使被播放的音视频看起来是“实时的”、“连续的”,音视频源在播放时需要被分割成多个文件视频片段,并连续的推送到Web客户端,在Web客户端的浏览器需要对第一个视频片段先分析后播放,然后对第二个视频片段分析、播放,依次进行;而受每一视频片段的分析时间的影响,实时播放过程会出现不流畅的现象。


【发明内容】

[0004]本发明的目的是提供一种实时视频处理方法和装置,以解决现有技术中客户端中符合HTML5规范的浏览器对实时视频预览或播放时不流畅的问题。
[0005]本发明的目的是通过以下技术方案实现的:
[0006]本发明实施例提供一种实时视频处理方法,步骤如下:
[0007]通过与之连接的视频采集设备获取实时视频数据,将实时视频数据进行编码生成视频流文件;
[0008]按规定的时间片将所述视频流文件进行分割成若干视频流片段;
[0009]接收客户端的浏览器发送的视频处理请求,所述视频处理请求包括与所述实时视频数据对应的视频ID、视频预览或播放的起始位置;
[0010]响应所述视频处理请求,与所述客户端的浏览器建立至少两条视频推送通道;
[0011]通过所述至少两条视频推送通道将若干所述视频流片段交替推送至所述客户端的浏览器。
[0012]优选的,按规定的时间片将所述视频流文件进行分割成若干视频流片段后,还包括:
[0013]根据若干所述视频流片段建立索引文件,所述索引文件用于查找及定位所述视频流片段。
[0014]优选的,响应所述视频处理请求,与所述客户端的浏览器建立至少两条视频推送通道,具体包括:
[0015]向所述客户端的浏览器推送视频显示窗口,所述视频显示窗口调用所述客户端的浏览器内嵌的视频译码器;
[0016]与所述视频显示窗口建立至少两条视频推送通道。
[0017]优选的,通过所述至少两条视频推送通道将若干所述视频流片段交替推送至所述客户端的浏览器,具体包括:
[0018]根据所述视频ID调用与之对应的所述索引文件,以及根据所述预览或播放的起始位置查找所述索引文件,从而定位所述预览或播放的起始位置对应的所述视频流片段;
[0019]通过所述至少两条视频推送通道,由所述预览或播放的起始位置对应的所述视频流片段开始交替向所述视频显示窗口推送所述预览或播放的起始位置对应的所述视频流片段及后续的所述视频流片段。
[0020]优选的,经前一视频通道推送所述视频流片段与经后一视频通道推送所述视频流片段的时间间隔小于或等于所述视频流片段的分割时的所述时间片。
[0021]优选的,所述浏览器为Googe浏览器,所述视频译码器为Ogg Theora、V8或H.264 ;或者,
[0022]所述浏览器为IE9浏览器,所述视频译码器为H.264 ;或者,
[0023]浏览器为Opera、Mozilla或Chrome浏览器,所述视频译码器为VP8。
[0024]本发明实施例有益效果如下:通过在服务器与Web客户端设置至少两个视频推送通道,交替推送分割实时视频数据所形成的视频流片段,使得Web客户端浏览器在播放视频流片段时,不受分析时间的影响,播放流畅。
[0025]本发明实施例提供一种实时视频数据处理装置,包括:
[0026]编码单元,用于通过与之连接的视频采集设备获取实时视频数据,将实时视频数据进行编码生成视频流文件,以及将所述视频流文件发送给视频流分割单元;
[0027]所述视频流分割单元,用于接收所述编码单元发送的所述视频流文件,按规定的时间片将所述视频流文件分割成若干视频流片段;
[0028]视频处理请求接收单元,用于接收客户端的浏览器发送的视频处理请求,所述视频处理请求包括与所述实时视频数据对应的视频ID、视频预览或播放的起始位置;
[0029]视频处理请求响应单元,用于响应所述视频处理请求,与所述客户端的浏览器建立至少两条视频推送通道;
[0030]视频流片段推送单元,用于通过所述至少两条视频推送通道将若干所述视频流片段交替推送至所述客户端的浏览器。
[0031]优选的,还包括索引文件生成单元,用于根据若干所述视频流片段建立索引文件,所述索引文件用于查找及定位所述视频流片段。
[0032]优选的,所述视频处理请求响应单元,具体用于向所述客户端的浏览器推送视频显示窗口,所述视频显示窗口调用所述客户端的浏览器内嵌的视频译码器;
[0033]以及与所述视频显示窗口建立至少两条视频推送通道。
[0034]优选的,所述视频流片段推送单元,具体用于根据所述视频ID调用与之对应的所述索引文件,以及根据所述预览或播放的起始位置查找所述索引文件,从而定位所述预览或播放的起始位置对应的所述视频流片段;
[0035]通过所述至少两条视频推送通道,由所述预览或播放的起始位置对应的所述视频流片段开始交替向所述视频显示窗口推送所述预览或播放的起始位置对应的所述视频流片段及后续的所述视频流片段。
[0036]本发明实施例有益效果如下:通过在服务器与Web客户端设置至少两个视频推送通道,交替推送分割实时视频数据所形成的视频流片段,使得Web客户端浏览器在播放视频流片段时,不受分析时间的影响,播放流畅。

【专利附图】

【附图说明】
[0037]图1为本发明实施例一所述方法的流程图;
[0038]图2为本发明实施例二所述方法中实时视频播放的各时间段示意图;
[0039]图3为本发明实施例三所述方法中实时视频播放的各时间段示意图;
[0040]图4为本发明实施例四所述装置的结构示意图。

【具体实施方式】
[0041 ] 下面结合说明书附图对本发明实施例的实现过程进行详细说明。
[0042]本发明实施例一,提供一种实时视频处理方法,如图1所示,步骤如下:
[0043]步骤S101,通过与之连接的视频采集设备获取实时视频数据,将实时视频数据进行编码生成视频流文件。
[0044]步骤S102,按规定的时间片将视频流文件进行分割成若干视频流片段。
[0045]步骤S103,接收客户端的浏览器发送的视频处理请求,视频处理请求包括与实时视频数据对应的视频ID、视频预览或播放的起始位置。
[0046]步骤S104,响应视频处理请求,与客户端的浏览器建立至少两条视频推送通道。
[0047]步骤S105,通过至少两条视频推送通道将若干视频流片段交替推送至客户端的浏
IrWSB
JaL-HPT O
[0048]优选的,步骤S102之后,还根据若干视频流片段建立索引文件,索引文件用于查找及定位视频流片段。
[0049]索引文件可以为业内常用的m3u8格式,也可以根据客户的设定,采用较为私有的索引文件格式,这并不成为本发明的限制。
[0050]优选的,步骤S104具体包括:向客户端的浏览器推送视频显示窗口,视频显示窗口调用客户端的浏览器内嵌的视频译码器;与视频显示窗口建立至少两条视频推送通道。
[0051]优选的,步骤S105具体包括:根据视频ID调用与之对应的索引文件,以及根据预览或播放的起始位置查找索引文件,从而定位预览或播放的起始位置对应的视频流片段;
[0052]通过至少两条视频推送通道,由预览或播放的起始位置对应的视频流片段开始交替向视频显示窗口推送预览或播放的起始位置对应的视频流片段及后续的视频流片段。
[0053]在此需要注意的是,基于本发明的目的,在具有至少两条视频推送通道的基础上,我们需要优化至少两个视频推送通道中,前一视频推道与后一视频推送通道在推送视频流片段时的时间间隔。优选的,经前一视频通道推送视频流片段与经后一视频通道推送视频流片段的时间间隔小于或等于视频流片段的分割时的时间片,实际是该时间片也是视频流片段的播放时间,这也意味着当前一视频通道推送完成后,Web客户端浏览器在播放前一视频通道推送的视频流片段时,Web客户端浏览器对后一视频通道推送的视频流片段有充足的解析时间。
[0054]基于浏览器与译码器兼容的问题,优选的,浏览器为Googe浏览器,视频译码器为Ogg Theora, V8 或 H.264 ;或者,
[0055]浏览器为IE9浏览器,视频译码器为H.264 ;或者,
[0056]浏览器为Opera、Mozilla或Chrome浏览器,视频译码器为VP8。
[0057]需要注意的是,通常对实时视频数据所编码的视频流文件按时间片分割后,其视频流片段的格式与视频流文件的格式可以相同;当然,也可以根据不同的需要进行格式转换。在本发明中,由于基于HTML5的客户端浏览器有多种,对于不同的客户端浏览器,本发明的方案中能采用的视频流文件的格式与客户端浏览器对应,随着客户端浏览器技术的发展,其所能支持的视频流文件的格式也会相应的增加,因此,以上的视频流文件格式并非作为本发明方案的限定,只是为了进行举例说明。
[0058]本发明实施例有益效果如下:通过在服务器与Web客户端设置至少两个视频推送通道,交替推送分割实时视频数据所形成的视频流片段,使得Web客户端浏览器在播放视频流片段时,不受分析时间的影响,播放流畅。
[0059]本发明实施例二,以两个视频推送通道的情况下的实施情况为例进行说明,如图2所示,在此我们认为服务器端推送视频流片段的时刻与客户端浏览器解析该视频流片段的时刻为同一时刻,即服务器推送的视频流片段即时到达客户端浏览器。当然这是理想状态下,也有可能由于网络状况原因造成服务器推送时间延长。为了清楚的描述该过程,结合服务器的视频推送通道和客户端浏览器来说明实进播放过程,根据图2我们可以有如下理解:tA为准备时间,该准备时间tA即为客户端浏览器对服务器推送的视频流片段的解析时间,在理想状态下,准备时间一全部为解析时间,此时服务器通道处于非工作状态;在服务器推送视频流片段有所延迟的情况下,准备时间tA中有一部分时间用于等待服务器的推送;tv为播放时间,即客户端浏览器播放某一视频推送通道(例如第一视频推送通道)推送的视频流片段,此时服务器的该视频推送通道处于非工作状态;tD为等待时间,实际上该时间为服务器的其中一个通道(例如第一视频推送通道)的非工作状态的延续,其中,tv=tD+tA。步骤如下:
[0060]步骤一、当服务器通过第一视频推送通道推送完成第一个视频流片段后,客户端浏览器对应第一视频推送通道推送的第一视频流片段有一个准备时间tA,即客户端浏览器对该第一视频流片段的解析时间。
[0061]步骤二、客户端浏览器开始播放该视频流片段。
[0062]步骤三、客户端浏览器播放该视频流片段过程中,服务器通过第二视频推送通道推送第二个视频流片段,推送的时刻如图2所示。
[0063]步骤四、客户端浏览器解析完第二个视频流片段并结束准备时间、后,客户端浏览器正好播放完第一个视频流片段,客户端浏览器则继续播放第二个视频流片段。此时第一视频通道进行等待时间tD。
[0064]重复以上步骤,依次完成若干个视频片段的推送的播放。
[0065]本发明实施例三,以两个视频推送通道的情况下的实施情况为例进行说明,如图3所示,在此我们认为服务器端推送视频流片段的时刻与客户端浏览器解析该视频流片段的时刻为同一时刻。其中tA为准备时间,tv为播放时间,tD为等待时间。步骤如下:
[0066]步骤一、当服务器通过第一视频推送通道推送完成第一个视频流片段后,客户端浏览器对应第一视频推送通道推送的第一视频流片段有一个准备时间tA,即客户端浏览器对该第一视频流片段的解析时间。
[0067]步骤二、客户端浏览器开始播放该视频流片段。
[0068]步骤三、客户端浏览器播放该视频流片段过程中,服务器通过第二视频推送通道推送第二个视频流片段,推送的时刻如图3所示。
[0069]步骤四、客户端浏览器解析完第二个视频流片段并结束准备时间、后,客户端浏览器正好播放完第一个视频流片段,客户端浏览器则继续播放第二个视频流片段。此时第一视频通道不进行等待时间tD。而是直接进行准备时间,即第三个视频流片段的推送,相应的客户端浏览器对第三个视频流片段进行解析。
[0070]重复以上步骤,依次完成若干个视频片段的推送的播放。
[0071]由实施例二或实施例三,服务器由两个视频通道交替推送视频流片段,使客户端浏览器有充足的时间解析每个视频流片段,在播放时不需要等待,克服了播放不流畅的问题。
[0072]本发明实施例四提供一种实时视频数据处理装置,如图4所示,包括:
[0073]编码单元401,用于通过与之连接的视频采集设备获取实时视频数据,将实时视频数据进行编码生成视频流文件,以及将视频流文件发送给视频流分割单元;
[0074]视频流分割单元402,用于接收编码单元发送的视频流文件,按规定的时间片将视频流文件分割成若干视频流片段;
[0075]视频处理请求接收单元403,用于接收客户端的浏览器发送的视频处理请求,视频处理请求包括与实时视频数据对应的视频ID、视频预览或播放的起始位置;
[0076]视频处理请求响应单元404,用于响应视频处理请求,与客户端的浏览器建立至少两条视频推送通道;
[0077]视频流片段推送单元405,用于通过至少两条视频推送通道将若干视频流片段交替推送至客户端的浏览器。
[0078]优选的,还包括索引文件生成单元406,用于根据若干视频流片段建立索引文件,索引文件用于查找及定位视频流片段。
[0079]优选的,视频处理请求响应单元404,具体用于向客户端的浏览器推送视频显示窗口,视频显示窗口调用客户端的浏览器内嵌的视频译码器;
[0080]以及与视频显示窗口建立至少两条视频推送通道。
[0081]优选的,视频流片段推送单元405,具体用于根据视频ID调用与之对应的索引文件,以及根据预览或播放的起始位置查找索引文件,从而定位预览或播放的起始位置对应的视频流片段;
[0082]通过至少两条视频推送通道,由预览或播放的起始位置对应的视频流片段开始交替向视频显示窗口推送预览或播放的起始位置对应的视频流片段及后续的视频流片段。
[0083]本发明实施例有益效果如下:通过,实现通过在服务器与Web客户端设置至少两个视频推送通道,交替推送分割实时视频数据所形成的视频流片段,使得Web客户端浏览器在播放视频流片段时,不受分析时间的影响,播放流畅。
[0084]显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
【权利要求】
1.一种实时视频处理方法,其特征在于,步骤如下: 通过与之连接的视频采集设备获取实时视频数据,将实时视频数据进行编码生成视频流文件; 按规定的时间片将所述视频流文件进行分割成若干视频流片段; 接收客户端的浏览器发送的视频处理请求,所述视频处理请求包括与所述实时视频数据对应的视频ID、视频预览或播放的起始位置; 响应所述视频处理请求,与所述客户端的浏览器建立至少两条视频推送通道; 通过所述至少两条视频推送通道将若干所述视频流片段交替推送至所述客户端的浏IrWSBJaL-HPT O
2.如权利要求1所述的方法,其特征在于,按规定的时间片将所述视频流文件进行分割成若干视频流片段后,还包括: 根据若干所述视频流片段建立索引文件,所述索引文件用于查找及定位所述视频流片段。
3.如权利要求2 所述的方法,其特征在于,响应所述视频处理请求,与所述客户端的浏览器建立至少两条视频推送通道,具体包括: 向所述客户端的浏览器推送视频显示窗口,所述视频显示窗口调用所述客户端的浏览器内嵌的视频译码器; 与所述视频显示窗口建立至少两条视频推送通道。
4.如权利要求3所述的方法,其特征在于,通过所述至少两条视频推送通道将若干所述视频流片段交替推送至所述客户端的浏览器,具体包括: 根据所述视频ID调用与之对应的所述索引文件,以及根据所述预览或播放的起始位置查找所述索引文件,从而定位所述预览或播放的起始位置对应的所述视频流片段; 通过所述至少两条视频推送通道,由所述预览或播放的起始位置对应的所述视频流片段开始交替向所述视频显示窗口推送所述预览或播放的起始位置对应的所述视频流片段及后续的所述视频流片段。
5.如权利要求4所述的方法,其特征在于,经前一视频通道推送所述视频流片段与经后一视频通道推送所述视频流片段的时间间隔小于或等于所述视频流片段的分割时的所述时间片。
6.如权利要求3至5任一项所述的方法,其特征在于,所述浏览器为Google浏览器,所述视频译码器为Ogg Theora, V8或H.264 ;或者, 所述浏览器为IE9浏览器,所述视频译码器为H.264 ;或者, 浏览器为Opera、Mozilla或Chrome浏览器,所述视频译码器为VP8。
7.一种实时视频数据处理装置,其特征在于,包括: 编码单元,用于通过与之连接的视频采集设备获取实时视频数据,将实时视频数据进行编码生成视频流文件,以及将所述视频流文件发送给视频流分割单元; 所述视频流分割单元,用于接收所述编码单元发送的所述视频流文件,按规定的时间片将所述视频流文件分割成若干视频流片段; 视频处理请求接收单元,用于接收客户端的浏览器发送的视频处理请求,所述视频处理请求包括与所述实时视频数据对应的视频ID、视频预览或播放的起始位置;视频处理请求响应单元,用于响应所述视频处理请求,与所述客户端的浏览器建立至少两条视频推送通道; 视频流片段推送单元,用于通过所述至少两条视频推送通道将若干所述视频流片段交替推送至所述客户端的浏览器。
8.如权利要求7所述的装置,其特征在于,还包括索引文件生成单元,用于根据若干所述视频流片段建立索引文件,所述索引文件用于查找及定位所述视频流片段。
9.如权利要求8所述的装置,其特征在于,所述视频处理请求响应单元,具体用于向所述客户端的浏览器推送视频显示窗口,所述视频显示窗口调用所述客户端的浏览器内嵌的视频译码器; 以及与所述视频显示窗口建立至少两条视频推送通道。
10.如权利要求9所述的装置,其特征在于,所述视频流片段推送单元,具体用于根据所述视频ID调用与之对应的所述索引文件,以及根据所述预览或播放的起始位置查找所述索引文件,从而定位所述预览或播放的起始位置对应的所述视频流片段; 通过所述至少两条视频推送通道,由所述预览或播放的起始位置对应的所述视频流片段开始交替向所述视频显示窗口推送所述预览或播放的起始位置对应的所述视频流片段及后续的所述视频流 片段。
【文档编号】H04N21/238GK104080014SQ201310106900
【公开日】2014年10月1日 申请日期:2013年3月28日 优先权日:2013年3月28日
【发明者】廖晨歌, 殷俊, 朱丛虎, 张兴明, 傅利泉, 朱江明, 吴军, 吴坚 申请人:浙江大华技术股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1