CN105472339B - 用于实现录像回放的方法、服务器和系统 - Google Patents
用于实现录像回放的方法、服务器和系统 Download PDFInfo
- Publication number
- CN105472339B CN105472339B CN201510936550.9A CN201510936550A CN105472339B CN 105472339 B CN105472339 B CN 105472339B CN 201510936550 A CN201510936550 A CN 201510936550A CN 105472339 B CN105472339 B CN 105472339B
- Authority
- CN
- China
- Prior art keywords
- nalu
- video recording
- code stream
- frame
- recording code
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/18—Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
- H04N7/181—Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast for receiving images from a plurality of remote sources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/432—Content retrieval operation from a local storage medium, e.g. hard-disk
- H04N21/4325—Content retrieval operation from a local storage medium, e.g. hard-disk by playing back content from the storage medium
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Television Signal Processing For Recording (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明公开了一种用于实现录像回放的方法、服务器和系统,涉及视频监控技术领域,其中,方法包括:对接收到的录像码流进行解析,以便确定录像码流中每个I帧的第一个网络抽象层单元NALU;以绝对时间作为载荷形成扩展NALU,将扩展NALU嵌入到每个I帧的第一个NALU之前,并将嵌入扩展NALU的录像码流存储;响应于客户端的录像回放请求,根据录像码流中扩展NALU包括的绝对时间获取相应的录像码流并发送给客户端,以便客户端进行录像回放。本发明实施例可以实现对录像的精确定位回放。
Description
技术领域
本发明涉及视频监控技术领域,尤其是一种用于实现录像回放的方法、服务器和系统。
背景技术
目前的视频监控系统中,大量的前端硬件设备普遍采用基于H.264标准算法的编解码芯片,因此前端设备输出的视频码流格式基本都是按H.264标准编码的,这导致后续的应用包括视频分发、软硬件解码、图片抓拍、录像存储等功能都是基于H.264码流来实现的。
随着视频监控系统中的录像应用从本地化向远程化发展,回放控制从粗放化到精细化的转变,要求基于H.264标准的视频码流中能够携带绝对时间信息,单原标准码流中仅携带有相对时间,无法满足诸如抽帧存储、高倍数回放控制、倒放控制、录像浓缩等精细化定位控制功能应用。因此,实际应用中,各厂家通过对录像码流进行私有化封装,将绝对时间戳信息嵌入录像码流来解决这个问题。但是,这种私有化封装导致录像码流格式的不统一,只能使用厂家提供的解码库来进行解码应用,无法对码流进行统一应用,同时使得视频监控系统后续功能更新、维护改造的难度大大增加。
随着GB/T 28181、ONVIF等通用标准协议的提出、推广和应用,前端设备接入平台的协议得到了统一和标准化。但统一接入协议标准后,统一后的标准码流缺乏一些关键信息,特别是码流中的系统绝对时间的丢失,导致了原先厂家对码流私有化后能够实现的精细化定位控制功能出现缺失。而视频监控系统的用户,特别是公安行业用户,即要求接入协议标准化,又要求录像应用精细化,特别是对录像回放时的精确定位控制功能具有强烈的需求。因此,有必要提出一种方案能够实现录像的精确回放。
发明内容
本发明实施例的一个目的是:提供一种用于实现录像回放的方法、服务器和系统,能够实现录像的精确定位回放。
根据本发明的一方面,提供一种用于实现录像回放的方法,包括:对接收到的录像码流进行解析,以便确定录像码流中每个I帧的第一个网络抽象层单元NALU;以绝对时间作为载荷形成扩展NALU,将扩展NALU嵌入到每个I帧的第一个NALU之前,并将嵌入扩展NALU的录像码流存储;响应于客户端的录像回放请求,根据录像码流中扩展NALU包括的绝对时间获取相应的录像码流并发送给客户端,以便客户端进行录像回放。
在一个实施例中,所述对接收到的录像码流进行解析,以便确定录像码流中每个I帧的第一个网络抽象层单元NALU的包括:将NALU的网络抽象层NAL头与预设的第一数字进行逻辑运算,根据运算结果确定I帧的所有NALU;将I帧的所有NALU中的第二个字节与预设的第二数字进行逻辑运算,根据运算结果确定I帧的第一个NALU。
在一个实施例中,所述将NALU的网络抽象层NAL头与预设的第一数字进行逻辑运算,根据运算结果确定I帧的所有NALU包括:将网络抽象层NAL头与预设的第一数字31进行与运算,将运算结果为5的NALU确定为I帧的NALU。
在一个实施例中,所述将I帧的所有NALU中的第二个字节与预设的第二数字进行逻辑运算,根据运算结果确定I帧的第一个NALU包括:将I帧的所有NALU中的第二个字节与预设的第二数字192进行与运算,将运算结果为80的NALU定位为I帧的第一个NALU。
在一个实施例中,所述将嵌入NALU的录像码流存储包括:将嵌入NALU的录像码流与录像索引信息对应地存储,所述录像索引信息包括录像码流的帧类型、起始时间、结束时间、起始地址和结束地址。
在一个实施例中,所述响应于客户端的录像回放请求,根据录像码流中扩展NALU包括的绝对时间获取相应的录像码流并发送给客户端,以便客户端进行录像回放包括:根据录像片段回放请求携带的绝对时间信息确定相应的索引信息;根据确定的索引信息获取相应的录像码流并发送给客户端,以便客户端进行录像回放。
根据本发明的另一方面,提供一种用于实现录像回放的服务器,包括:码流解析模块,用于对接收到的录像码流进行解析,以便确定录像码流中每个I帧的第一个网络抽象层单元NALU;扩展存储模块,用于以绝对时间作为载荷形成扩展NALU,将扩展NALU嵌入到每个I帧的第一个NALU之前,并将嵌入扩展NALU的录像码流存储;录像回放模块,用于响应于客户端的录像回放请求,根据录像码流中扩展NALU包括的绝对时间获取相应的录像码流并发送给客户端,以便客户端进行录像回放。
在一个实施例中,所述码流解析模块包括:第一运算单元,用于将NALU的网络抽象层NAL头与预设的第一数字进行逻辑运算,根据运算结果确定I帧的所有NALU;第二运算单元,将I帧的所有NALU中的第二个字节与预设的第二数字进行逻辑运算,根据运算结果确定I帧的第一个NALU。
在一个实施例中,所述第一运算单元将网络抽象层NAL头与预设的第一数字31进行与运算,将运算结果为5的NALU确定为I帧的NALU。
在一个实施例中,所述第二运算单元将I帧的所有NALU中的第二个字节与预设的第二数字192进行与运算,将运算结果为80的NALU定位为I帧的第一个NALU。
在一个实施例中,所述扩展存储模块将嵌入NALU的录像码流与录像索引信息对应地存储,所述录像索引信息包括录像码流的帧类型、起始时间、结束时间、起始地址和结束地址。
在一个实施例中,所述录像回放模块根据录像片段回放请求携带的绝对时间信息确定相应的索引信息;根据确定的索引信息获取相应的录像码流并发送给客户端,以便客户端进行录像回放。
根据本发明的又一方面,提供一种用于实现录像回放的系统,包括:上述任意一个实施例所述的用于实现录像回放的服务器和用于实现录像回放的客户端;所述客户端用于向所述服务器发起录像回放请求并接收所述服务器返回的相应的录像码流;搜索录像码流中每个I帧的扩展NALU;从每个I帧的扩展NALU中提取出绝对时间;根据提取的绝对时间进行录像回放。
在一个实施例中,所述客户端根据录像码流中每个I帧的NAL头确定每个I帧的扩展NALU。
在一个实施例中,所述客户端提取扩展NALU的NAL头与下一个NALU之间的数据,并以此作为绝对时间。
本发明实施例在接收到录像码流后,通过将绝对时间作为扩展NALU的载荷嵌入到每个I帧的第一个NALU之前,然后对录像码流进行存储,后续在客户端请求录像回放时接收到的录像码流也携带具备精确定位的绝对时间基准信息,从而使得客户端可以根据绝对时间对录像进行精确定位回放。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明用于实现录像回放的方法一个实施例的流程示意图;
图2是根据本发明一个实施例的嵌入扩展NALU的示意图;
图3是本发明用于实现录像回放的服务器一个实施例的框图;
图4是本发明用于实现录像回放的服务器另一个实施例的框图;
图5是本发明用于实现录像回放的系统一个实施例的框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为授权说明书的一部分。
在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
图1是本发明用于实现录像回放的方法一个实施例的流程示意图。该方法可以由用于实现录像回放的服务器来执行,如图1所示,包括:
步骤102,对接收到的录像码流进行解析,以便确定录像码流中每个I帧的第一个网络抽象层单元(NALU)。
其中,录像码流例如可以是由H.264码流前端设备输出的基于H.264标准的数字录像码流,在接收到录像码流后可以按照标准H.264协议将录像码流进行拆包、解包,以定位录像码流中每个I帧的第一个NALU。
步骤104,以绝对时间作为载荷形成扩展NALU,将扩展NALU嵌入到每个I帧的第一个NALU之前,并将嵌入扩展NALU的录像码流存储。
这里,绝对时间即为服务器的系统绝对时间。在一个实施例中,可以对NALU类型的定义中未被定义使用的类型,例如30(0x1E)进行扩展,以绝对时间作为载荷,也即绝对时间作为扩展NALU的内容,形成扩展NALU。
在形成扩展NALU后,将携带绝对时间的扩展NALU嵌入到每个I帧的第一个NALU之前,并将嵌入扩展NALU的录像码流存储,例如可以存储到特定的存储设备中。在一个实施例中,在将嵌入扩展NALU的录像码流存储时可以将嵌入NALU的录像码流与录像索引信息对应地存储,其中,录像索引信息可以是根据录像码流中提取的某些参数组成的,其包括但不限于录像码流的帧类型、起始时间、结束时间、起始地址和结束地址。
步骤106,响应于客户端的录像回放请求,根据录像码流中扩展NALU包括的绝对时间获取相应的录像码流并发送给客户端,以便客户端进行录像回放。
例如,用户通过客户端发起录像回放请求,要求回放某个录像片段,则可以根据录像码流中扩展NALU包括的绝对时间获取录像片段的绝对时间对应的录像码流,然后发给客户端,以便客户端根据每个I帧中扩展NALU包括的绝对时间进行录像回放,例如进行高于8倍的快速前进、快速后退,单帧前进、单帧后退或多画面同步回放等高精度回放。
在一个实施例中,嵌入NALU的录像码流与录像索引信息对应地存储在存储设备中,响应于客户端的录像回放请求,可以根据录像片段回放请求携带的绝对时间信息确定相应的索引信息,然后,根据确定的索引信息获取相应的录像码流并发送给客户端。
另外,在实际应用中,还可以对将从存储设备获取的录像码流进行封装,并且根据录像回放请求携带的控制参数对录像码流的发送速度等进行均衡控制。
本实施例在接收到录像码流后,通过将绝对时间作为扩展NALU的载荷嵌入到每个I帧的第一个NALU之前,然后对录像码流进行存储,后续在客户端请求录像回放时接收到的的录像码流也携带具备精确定位的绝对时间基准信息,从而使得客户端可以根据绝对时间对录像进行精确定位回放。
下面介绍上述步骤102的一个具体实现方式。
首先,将NALU的网络抽象层NAL头与预设的第一数字进行逻辑运算,根据运算结果确定I帧的所有NALU。
例如,可以将网络抽象层NAL头与预设的第一数字31进行与运算,如果运算结果为5,则表示该NALU是I帧的NALU。因此,可以将运算结果为5的NALU确定为I帧的NALU,从而确定出I帧的所有NALU。
需要说明的是,上述逻辑运算可以包括但不限于“与”运算,例如,本领域技术人员可以选择不同的预设的第一数字,并设定相应的逻辑运算,只要能确定NALU的类型即可。
然后,将I帧的所有NALU中的第二个字节与预设的第二数字进行逻辑运算,根据运算结果确定I帧的第一个NALU。
例如,可以将I帧的所有NALU中的第二个字节与预设的第二数字192进行与运算,如果运算结果为80,则判定第二个字节的前两个位是10,从而可以将运算结果为80的NALU定位为I帧的第一个NALU。
与上类似地,上述逻辑运算可以包括但不限于“与”运算,本领域技术人员可以选择不同的预设的第二数字,并设定相应的逻辑运算,只要能确定NALU的第二个字节是10即可。
图2是根据本发明一个实施例的嵌入扩展NALU的示意图。如图2所示,I帧的起始头包括图像参数集(PPS)、序列参数集(SPS)和NALU。扩展NALU是对NALU类型的定义中未被定义使用的类型30(0x1E)进行扩展,并以绝对时间作为载荷形成的。扩展NALU包括扩展网络抽象层(NAL)头和绝对时间,其中NAL头的单字节数值为30(0x1E),载荷部分用绝对时间填充,其大小为4个字节,故扩展NALU的长度为5个字节。扩展NALU嵌入在I帧的第一个NALU的之前的位置,也即SPS与第一稿NALU之间的位置处。
在H.264标准中,网络抽象层单元(NALU)类型取值如下表所示:
nal_unit_type | NAL类型 | C |
0 | 未使用 | |
1 | 非IDR图像中不采用数据划分的片段 | 2,3,4 |
2 | 非IDR图像中A类数据划分片段 | 2 |
3 | 非IDR图像中B类数据划分片段 | 3 |
4 | 非IDR图像中C类数据划分片段 | 4 |
5 | IDR图像的片 | 2,3 |
6 | 补充增强信息单元(SEI) | 5 |
7 | 序列参数集 | 0 |
8 | 图像参数集 | 1 |
9 | 分界符 | 6 |
10 | 序列结束 | 7 |
11 | 码流结束 | 8 |
12 | 填充 | 9 |
13..23 | 保留 | |
24..31 | 不保留(RTP打包时会用到) |
实时传输协议(RTP)打包时的扩展类型如下表所示:
从以上两表的类型定义上可以看出,NALU类型中只有30和31未被定义使用,因此,在一个实施例中,可以对NALU的类型30或31进行扩展形成扩展NALU,如此不会影响原有的定义,不会对录像码流格式产生影响,不会损坏录像图像质量。
本说明书中各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似的部分相互参见即可。与上述用于实现录像回放的方法对应地,本发明还提供了一种用于实现录像回放的服务器和系统,对于服务器和系统实施例而言,由于其与方法实施例基本对应,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
下面分别对用于实现录像回放的服务器和系统进行说明。
首先结合图3和图4介绍用于实现录像回放的服务器。
图3是本发明用于实现录像回放的服务器一个实施例的框图。如图3所示,该服务器包括码流解析模块301、扩展存储模块302和录像回放模块303。下面分别对这几个模块的功能进行说明。
码流解析模块301可以用于对接收到的录像码流进行解析,以便确定录像码流中每个I帧的第一个网络抽象层单元NALU。
扩展存储模块302可以用于以绝对时间作为载荷形成扩展NALU,将扩展NALU嵌入到每个I帧的第一个NALU之前,并将嵌入扩展NALU的录像码流存储,例如存储到存储设备中。另外,扩展存储模块302可以将嵌入NALU的录像码流与录像索引信息对应地存储,该录像索引信息可以包括但不限于录像码流的帧类型、起始时间、结束时间、起始地址和结束地址。
录像回放模块303可以用于响应于客户端的录像回放请求,根据录像码流中扩展NALU包括的绝对时间获取相应的录像码流并发送给客户端,以便客户端进行录像回放。在一个实施例中,录像回放模块303可以根据录像片段回放请求携带的绝对时间信息确定相应的索引信息;根据确定的索引信息获取相应的录像码流并发送给客户端,以便客户端进行录像回放。在实际应用中,录像回放模块303还可以用于对录像回放请求的信令进行协议解析处理,并根据请求中所携带的控制参数对录像码流的发送速度等进行均衡控制。
可选地,服务器还可以包括录像查询管理模块(图中未示出),其可以用于执行录像计划,对录像码流文件进行状态修改、文件查询、录像空间的管理和释放等。例如,录像查询管理模块可以以预定时间间隔对存储设备中的录像片段进行扫描,并根据录像计划将扫描的结果进行上报,然后对录像片段进行修改或删除等操作。此外,录像查询管理模块还可以响应于客户端的录像查询请求,及时高效地返回查询结果。
本实施例中,服务器在接收到录像码流后,通过将绝对时间作为扩展NALU的载荷嵌入到每个I帧的第一个NALU之前,然后对录像码流进行存储,后续在客户端请求录像回放时接收到的的录像码流也携带具备精确定位的绝对时间基准信息,从而使得客户端可以根据绝对时间对录像进行精确定位回放。
图4是本发明用于实现录像回放的服务器另一个实施例的框图。如图4所示,该实施例中的码流解析模块301可以包括第一运算单元311和第二运算单元321,其中:
第一运算单元311用于将NALU的网络抽象层NAL头与预设的第一数字进行逻辑运算,根据运算结果确定I帧的所有NALU。例如,第一运算单元311可以将网络抽象层NAL头与预设的第一数字31进行与运算,将运算结果为5的NALU确定为I帧的NALU。
第二运算单元用于将I帧的所有NALU中的第二个字节与预设的第二数字进行逻辑运算,根据运算结果确定I帧的第一个NALU。例如,第二运算单元可以将I帧的所有NALU中的第二个字节与预设的第二数字192进行与运算,将运算结果为80的NALU定位为I帧的第一个NALU。
下面结合图5介绍用于实现录像回放的系统。
图5是本发明用于实现录像回放的系统一个实施例的框图。如图5所示,该系统包括:上述任意一个实施例所述的用于实现录像回放的服务器501和用于实现录像回放的客户端502,服务器501和客户端502之间执行系统时钟同步机制,其中客户端502包括回放请求模块512、录像接收模块522、搜索模块532、提取模块542和回放模块552,其中:
回放请求模块512用于向服务器501发起录像回放请求,该请求为信令请求。
录像接收模块522用于接收服务器501返回的相应的录像码流。另外,录像接收模块522还可以用于对接收到的录像码流进行解码等。
搜索模块532用于搜索录像码流中每个I帧的扩展NALU。例如,搜索模块532可以根据录像码流中每个I帧的NAL头确定每个I帧的扩展NALU。当NAL头为0000000130时,可以确定NALU为扩展NALU。
提取模块542用于从每个I帧的扩展NALU中提取出绝对时间。例如,提取模块542可以提取扩展NALU的NAL头与下一个NALU之间的数据,并以此作为绝对时间。
回放模块552用于根据提取的绝对时间进行录像回放,例如进行高于8倍的快速前进、快速后退,单帧前进、单帧后退或多画面同步回放等高精度回放。
本实施例中,客户端请求录像回放时接收到的录像码流携带具备精确定位的绝对时间基准信息,从而使得客户端可以根据绝对时间对录像进行精确定位回放。
上述客户端502例如可以是WEB页面、应用客户端或者可以是一个单独的解码插件。
另外,上述用于实现录像回放的系统可以支持GB/T28181协议、ONVIF协议、PSIA协议中的一种或多种。
此外,如图5所示,上述用于实现录像回放的系统还可以包括多个前端设备503,例如前端设备513、前端设备523和前端设备533,以及存储设备504,其中,各前端设备输出的录像码流为标准H.264格式或基于标准H.264进行了传输层封装的录像码流,如标准ES、TS、PS码流;存储设备504用于存储服务器501发送的录像码流。
本发明实施例具有如下有益效果:通过对各种标准前端设备按标准协议输出标准录像码流(例如,标准H.264录像码流)嵌入绝对时间,从而在客户端请求录像码流时向客户端发送携带绝对时间的录像码流,使得客户端可以根据绝对时间进行录像的高精度回放,有利于拓宽对H.264码流标准前端设备应用的广度和深度。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
本发明的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。
Claims (13)
1.一种用于实现录像回放的方法,其特征在于,包括:
对接收到的来自前端设备的录像码流进行解析,以便确定录像码流中每个I帧的第一个网络抽象层单元NALU,其中,所述录像码流是基于H.264标准的录像码流;
以绝对时间作为载荷形成扩展NALU,将扩展NALU嵌入到每个I帧的序列参数集与第一个NALU之间,并将嵌入扩展NALU的录像码流存储到存储设备中,其中,所述扩展NALU包括网络抽象层NAL头和绝对时间;
响应于客户端的录像回放请求,根据录像码流中扩展NALU包括的绝对时间从所述存储设备获取相应的录像码流并发送给客户端,以便客户端进行录像回放;
其中,所述对接收到的来自前端设备的录像码流进行解析,以便确定录像码流中每个I帧的第一个网络抽象层单元NALU包括:
将NALU的网络抽象层NAL头与预设的第一数字进行逻辑运算,根据运算结果确定I帧的所有NALU;
将I帧的所有NALU中的第二个字节与预设的第二数字进行逻辑运算,根据运算结果确定I帧的第一个NALU。
2.根据权利要求1所述的方法,其特征在于,所述将NALU的网络抽象层NAL头与预设的第一数字进行逻辑运算,根据运算结果确定I帧的所有NALU包括:
将网络抽象层NAL头与预设的第一数字31进行与运算,将运算结果为5的NALU确定为I帧的NALU。
3.根据权利要求1所述的方法,其特征在于,所述将I帧的所有NALU中的第二个字节与预设的第二数字进行逻辑运算,根据运算结果确定I帧的第一个NALU包括:
将I帧的所有NALU中的第二个字节与预设的第二数字192进行与运算,将运算结果为80的NALU定位为I帧的第一个NALU。
4.根据权利要求1所述的方法,其特征在于,所述将嵌入NALU的录像码流存储包括:
将嵌入NALU的录像码流与录像索引信息对应地存储,所述录像索引信息包括录像码流的帧类型、起始时间、结束时间、起始地址和结束地址。
5.根据权利要求4所述的方法,其特征在于,所述响应于客户端的录像回放请求,根据录像码流中扩展NALU包括的绝对时间获取相应的录像码流并发送给客户端,以便客户端进行录像回放包括:
根据录像片段回放请求携带的绝对时间信息确定相应的索引信息;
根据确定的索引信息获取相应的录像码流并发送给客户端,以便客户端进行录像回放。
6.一种用于实现录像回放的服务器,其特征在于,包括:
码流解析模块,用于对接收到的来自前端设备的录像码流进行解析,以便确定录像码流中每个I帧的第一个网络抽象层单元NALU,其中,所述录像码流是基于H.264标准的录像码流;
扩展存储模块,用于以绝对时间作为载荷形成扩展NALU,将扩展NALU嵌入到每个I帧的序列参数集与第一个NALU之间,并将嵌入扩展NALU的录像码流存储到存储设备中,其中,所述扩展NALU包括网络抽象层NAL头和绝对时间;
录像回放模块,用于响应于客户端的录像回放请求,根据录像码流中扩展NALU包括的绝对时间从所述存储设备获取相应的录像码流并发送给客户端,以便客户端进行录像回放;
其中,所述码流解析模块包括:
第一运算单元,用于将NALU的网络抽象层NAL头与预设的第一数字进行逻辑运算,根据运算结果确定I帧的所有NALU;
第二运算单元,将I帧的所有NALU中的第二个字节与预设的第二数字进行逻辑运算,根据运算结果确定I帧的第一个NALU。
7.根据权利要求6所述的服务器,其特征在于,
所述第一运算单元将网络抽象层NAL头与预设的第一数字31进行与运算,将运算结果为5的NALU确定为I帧的NALU。
8.根据权利要求6所述的服务器,其特征在于,所述第二运算单元将I帧的所有NALU中的第二个字节与预设的第二数字192进行与运算,将运算结果为80的NALU定位为I帧的第一个NALU。
9.根据权利要求6所述的服务器,其特征在于,所述扩展存储模块将嵌入NALU的录像码流与录像索引信息对应地存储,所述录像索引信息包括录像码流的帧类型、起始时间、结束时间、起始地址和结束地址。
10.根据权利要求6所述的服务器,其特征在于,所述录像回放模块根据录像片段回放请求携带的绝对时间信息确定相应的索引信息;根据确定的索引信息获取相应的录像码流并发送给客户端,以便客户端进行录像回放。
11.一种用于实现录像回放的系统,其特征在于,包括:权利要求6-10所述的用于实现录像回放的服务器和用于实现录像回放的客户端,其中:
所述客户端用于向所述服务器发起录像回放请求并接收所述服务器返回的相应的录像码流;搜索录像码流中每个I帧的扩展NALU;从每个I帧的扩展NALU中提取出绝对时间;根据提取的绝对时间进行录像回放。
12.根据权利要求11所述的系统,其特征在于,所述客户端根据录像码流中每个I帧的NAL头确定每个I帧的扩展NALU。
13.根据权利要求12所述的系统,其特征在于,所述客户端提取扩展NALU的NAL头与下一个NALU之间的数据,并以此作为绝对时间。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510936550.9A CN105472339B (zh) | 2015-12-15 | 2015-12-15 | 用于实现录像回放的方法、服务器和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510936550.9A CN105472339B (zh) | 2015-12-15 | 2015-12-15 | 用于实现录像回放的方法、服务器和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105472339A CN105472339A (zh) | 2016-04-06 |
CN105472339B true CN105472339B (zh) | 2019-03-19 |
Family
ID=55609562
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510936550.9A Active CN105472339B (zh) | 2015-12-15 | 2015-12-15 | 用于实现录像回放的方法、服务器和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105472339B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108959306B (zh) * | 2017-05-22 | 2021-07-02 | 杭州海康威视数字技术股份有限公司 | 存储多媒体数据的方法及装置 |
CN107484039A (zh) * | 2017-08-22 | 2017-12-15 | 四川长虹电器股份有限公司 | 一种流媒体点播seek画面快速显示的方法 |
CN108449650A (zh) * | 2018-04-09 | 2018-08-24 | 四川百视通科技有限公司 | 一种rtmp直播流到http flv直播流实时转换系统及其工作方法 |
CN111556288A (zh) * | 2020-04-16 | 2020-08-18 | 西安万像电子科技有限公司 | 数据处理方法、服务器及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101325701A (zh) * | 2008-07-25 | 2008-12-17 | 北京声迅电子有限公司 | 用于硬盘录像机和视频服务器的avs编码网络传输方法 |
CN102521301A (zh) * | 2011-11-30 | 2012-06-27 | 北京中盾安全技术开发公司 | 一种监控视音频信息的检索方法及检索系统 |
CN103905906A (zh) * | 2012-12-27 | 2014-07-02 | 三星电子(中国)研发中心 | 一种基于智能电视的数据处理方法和装置 |
CN104394380A (zh) * | 2014-12-09 | 2015-03-04 | 浙江省公众信息产业有限公司 | 视频监控管理系统以及视频监控录像的回放方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101420317B (zh) * | 2008-11-21 | 2011-10-26 | 华为终端有限公司 | 媒体文件录制错误的修复方法、录制终端、服务器和系统 |
-
2015
- 2015-12-15 CN CN201510936550.9A patent/CN105472339B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101325701A (zh) * | 2008-07-25 | 2008-12-17 | 北京声迅电子有限公司 | 用于硬盘录像机和视频服务器的avs编码网络传输方法 |
CN102521301A (zh) * | 2011-11-30 | 2012-06-27 | 北京中盾安全技术开发公司 | 一种监控视音频信息的检索方法及检索系统 |
CN103905906A (zh) * | 2012-12-27 | 2014-07-02 | 三星电子(中国)研发中心 | 一种基于智能电视的数据处理方法和装置 |
CN104394380A (zh) * | 2014-12-09 | 2015-03-04 | 浙江省公众信息产业有限公司 | 视频监控管理系统以及视频监控录像的回放方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105472339A (zh) | 2016-04-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8776150B2 (en) | Implementation method and system for a media-on-demand frame-spanning playing mode in a peer-to-peer network | |
CN105472339B (zh) | 用于实现录像回放的方法、服务器和系统 | |
TWI774744B (zh) | 在使用mime類型參數之網路視頻串流中發信重要視頻資訊 | |
CN110506423B (zh) | 对包括所生成的内容的媒体数据进行编码的方法和设备 | |
CN105612753B (zh) | 媒体流传输期间在适配集合间的切换方法和装置 | |
CA2636172C (en) | Dynamic media serving infrastructure | |
CN105025319B (zh) | 一种视频推送方法和装置 | |
CN110447234A (zh) | 作为分隔符及可寻址资源标识符的区段类型 | |
JP2000513177A (ja) | 対象物をベースとするオーディオ・ビジュアル情報を処理するためのシステムおよび方法 | |
CN106134146A (zh) | 处理连续的多周期内容 | |
US7558296B2 (en) | Multiplexer and demultiplexer | |
JP6182609B2 (ja) | 字幕処理方法、装置、システム及び記憶媒体 | |
CN103747285A (zh) | 一种节目播放方法和服务端、客户端 | |
CN110209714A (zh) | 报表生成方法、装置、计算机设备及计算机可读存储介质 | |
CN105959814A (zh) | 基于场景识别的视频弹幕显示方法及其显示装置 | |
CN104683726A (zh) | 一种网络游戏录像录制及播放方法 | |
CN112218128B (zh) | 广告视频的播放方法、播放客户端及可读存储介质 | |
US20190109882A1 (en) | System and Method for Assembling and Playing a Composite Audiovisual Program Using Single-Action Content Selection Gestures and Content Stream Generation | |
JP2016072858A (ja) | メディアデータ生成方法、メディアデータ再生方法、メディアデータ生成装置、メディアデータ再生装置、コンピュータ読み取り可能な記録媒体、及びプログラム | |
CN107872716A (zh) | 一种后置封装的流式数据解析方法、装置及电子设备 | |
WO2016090916A1 (zh) | 码流传输方法和装置 | |
CN106134156A (zh) | 自适应流媒体的取证标记的信号发送和处理 | |
US9836465B2 (en) | Methods and systems for providing file data for a media file | |
CN109614378A (zh) | 一种应用于数据库日志分析的解析模型 | |
KR102196504B1 (ko) | 콘텐츠 제공 장치 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |