一种确定视频流的时间轴的方法以及系统转让专利

申请号 : CN201610635899.3

文献号 : CN107690053B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 刘江轮隋丽平王辉刘军何代钦

申请人 : 北京国基科技股份有限公司

摘要 :

本发明提供一种确定视频流的时间轴的方法以及系统,所述方法包括:视频转换模块对一视频流进行格式转换;与所述视频转换模块相连接的一主处理器对格式转换后的视频流进行压缩;场信号检测模块检测所述视频流的每一帧的开始以及结束,输出与每一帧的开始以及结束相对应的脉冲信号;授时模块输出与卫星时间同步的秒脉冲;分别与所述的场信号检测模块、授时模块相连接的可编程芯片对所述的秒脉冲进行细分至毫秒级,并根据所述的脉冲信号输出时间戳;所述的主处理器将所述的时间戳打包至压缩后的视频流,得到带时间戳的视频流。解决了传统视频打时间戳方案不能校准时间、毫秒精度问题。

权利要求 :

1.一种确定视频流的时间轴的系统,其特征是,所述的系统包括视频处理模块以及与所述视频处理模块相连接的时间同步模块,其中,所述的视频处理模块包括一视频转换模块以及与所述视频转换模块相连接的一主处理器;

所述的视频转换模块,用于对一视频流进行格式转换;

所述的主处理器,用于对格式转换后的视频流进行压缩;

所述的时间同步模块包括一场信号检测模块、一授时模块、分别与所述的场信号检测模块、授时模块相连接的可编程芯片;

所述的场信号检测模块,用于检测所述视频流的每一帧的开始以及结束,输出与每一帧的开始以及结束相对应的脉冲信号;

所述的授时模块,用于输出与卫星时间同步的秒脉冲;

所述的可编程芯片,用于对所述的秒脉冲进行细分至毫秒级,并根据所述的脉冲信号输出时间戳;

所述的主处理器,还用于将所述的时间戳打包至压缩后的视频流,得到带时间戳的视频流;

所述的主处理器,还用于接收定位信息以及时间信息,并在小于T2-T1时间内对所述的定位信息以及时间信息进行解析,在T2时刻清除RSTn信号,复位所述的可编程芯片,其中,所述T1为第一个PPS上升沿,所述T2为所述T1之后RSTn下降沿,RSTn为复位CPLD的信号;

所述的可编程芯片在T3时刻开始工作,对1秒进行千等分,在复位之后的第一个所述的秒脉冲有效开始计数,所述T3为第二个PPS上升沿;

所述的主处理器在检测到中断信号后,在T6时刻读取所述的可编程芯片的计数值,所述的T6为所述主处理器读取CPLD计数值的时刻;

所述的主处理器在等待一帧结束后,将所述计数值和自身的时间做运算并存储。

2.根据权利要求1所述的系统,其特征是,所述的视频转换模块将所述视频流由pal制式的模拟信号转换为BT656格式的数字信号。

3.根据权利要求2所述的系统,其特征是,所述的主处理器将BT656格式的数字信号由yuv格式压缩成h.264格式。

4.根据权利要求3所述的系统,其特征是:

所述授时模块与所述主处理器的一串口对接;

所述的授时模块,还用于间隔从所述串口输出定位信息以及时间信息。

5.根据权利要求4所述的系统,其特征是:

所述的可编程芯片在T4时刻检测到所述脉冲信号有效,将计数值写入寄存器,并立刻置位中断信号,所述的T4为所述视频流的场传输至CPLD的时刻;

所述的主处理器在检测到所述中断信号后,在T6时刻读取所述的可编程芯片的计数值,所述的T6为所述主处理器读取CPLD计数值的时刻;

所述的视频转换模块在T5时刻开始对一视频流进行格式转换,并输出至所述的主处理器,所述的T5为视频流经所述视频转换模块转为BT656格式并输出至主处理的时刻。

6.根据权利要求5所述的系统,其特征是,所述的视频转换模块的型号为ADV7282,所述的主处理器的型号为Hi3531,所述的授时模块为北斗或GPS或GLONASS模块,所述的场信号检测模块由ASIC实现,所述的可编程芯片由CPLD或FPGA或ASIC搭建。

7.一种确定视频流的时间轴的方法,其特征是,所述的方法:视频转换模块对一视频流进行格式转换;

与所述视频转换模块相连接的一主处理器对格式转换后的视频流进行压缩;

场信号检测模块检测所述视频流的每一帧的开始以及结束,输出与每一帧的开始以及结束相对应的脉冲信号;

授时模块输出与卫星时间同步的秒脉冲;

分别与所述的场信号检测模块、授时模块相连接的可编程芯片对所述的秒脉冲进行细分至毫秒级,并根据所述的脉冲信号输出时间戳;

所述的主处理器将所述的时间戳打包至压缩后的视频流,得到带时间戳的视频流;

所述的主处理器接收定位信息以及时间信息;

所述的主处理器在小于T2-T1时间内对所述的定位信息以及时间信息进行解析,其中,所述的T1为第一个PPS上升沿,T2为所述T1之后RSTn下降沿;

所述的主处理器在T2时刻清除RSTn信号,复位所述的可编程芯片,所述的RSTn为复位CPLD的信号;

所述的可编程芯片在T3时刻开始工作,对1秒进行千等分,所述T3为第二个PPS上升沿;

所述的可编程芯片在复位之后的第一个所述的秒脉冲有效开始计数;

所述的主处理器在检测到中断信号后,在T6时刻读取所述的可编程芯片的计数值,所述的T6为所述主处理器读取CPLD计数值的时刻;

所述的主处理器在等待一帧结束后,将所述计数值和自身的时间做运算并存储。

8.根据权利要求7所述的方法,其特征是,所述的视频转换模块将所述视频流由pal制式的模拟信号转换为BT656格式的数字信号。

9.根据权利要求8所述的方法,其特征是,所述的主处理器将BT656格式的数字信号由yuv格式压缩成h.264格式。

10.根据权利要求9所述的方法,其特征是,所述的方法还包括:所述的授时模块间隔从一串口输出定位信息以及时间信息,所述授时模块与所述主处理器的所述串口对接。

11.根据权利要求10所述的方法,其特征是,所述的方法还包括:所述的可编程芯片在T4时刻检测到所述脉冲信号有效;

所述的可编程芯片将计数值写入寄存器;

所述的可编程芯片立刻置位中断信号,所述的T4为所述视频流的场传输至CPLD的时刻;

所述的视频转换模块在T5时刻开始对一视频流进行格式转换,输出至所述的主处理器,所述的T5为视频流经所述视频转换模块转为BT656格式并输出至主处理的时刻。

12.根据权利要求11所述的方法,其特征是,所述的视频转换模块的型号为ADV7282,所述的主处理器的型号为Hi3531,所述的授时模块为北斗或GPS或GLONASS模块,所述的场信号检测模块由ASIC实现,所述的可编程芯片由CPLD或FPGA或ASIC搭建。

说明书 :

一种确定视频流的时间轴的方法以及系统

技术领域

[0001] 本发明关于视频监控技术领域,特别是关于视频的时间标定技术,具体的讲是一种确定视频流的时间轴的方法及系统。

背景技术

[0002] 在视频监控领域,监控设备记录的视频在事件分析、回溯、证据提取等方面起到关键作用。作为一种辅助监控手段,在记录视频的同时也加入了一些数据信息,如时标、位置、异常状态等。
[0003] 传统的录制设备依靠本地时钟来标定时间信息,可以做到秒级精度。然而在某些特殊应用场景,要求视频中每帧的时间戳精确至1毫秒。对于此类要求,传统的打时间戳方式已经不能满足。图1所示的是现有技术中的一种打时间戳的方式,其是本地时钟+处理器的方式,其主要通过将视频输入后经过视频转换芯片、主处理器编码、本地晶振得到带时间戳的视频流。
[0004] 上述的这种打时间戳方式不能避免本地晶振所产生的累加误差和主处理器非实时性造成的误差。即使对本地时钟校准也难以做到1毫秒的精度。从视频输入到编码过程约有几十毫秒的误差,而且传统方式不能校准此误差。
[0005] 因此,如何研究和开发出一种新的方案以解决传统视频打时间戳方案不能校准时间是本领域亟待解决的技术难题。

发明内容

[0006] 为了克服现有技术存在的上述技术问题,本发明提供了一种确定视频流的时间轴的方法以及系统,通过时钟源由本地时钟改为卫星授时方式,实现时间与全世界同步,不需要本地时钟重新校准,通过授时模块、场信号检测模块、主处理器以及可编程芯片实现视频打时间戳的1ms精度。
[0007] 本发明的目的之一是,提供一种确定视频流的时间轴的方法,所述方法包括:视频转换模块对一视频流进行格式转换;与所述视频转换模块相连接的一主处理器对格式转换后的视频流进行压缩;场信号检测模块检测所述视频流的每一帧的开始以及结束,输出与每一帧的开始以及结束相对应的脉冲信号;授时模块输出与卫星时间同步的秒脉冲;分别与所述的场信号检测模块、授时模块相连接的可编程芯片对所述的秒脉冲进行细分至毫秒级,并根据所述的脉冲信号输出时间戳;所述的主处理器将所述的时间戳打包至压缩后的视频流,得到带时间戳的视频流。
[0008] 在本发明的优选实施方式中,所述的视频转换模块将所述视频流由pal制式的模拟信号转换为BT656格式的数字信号。
[0009] 在本发明的优选实施方式中,所述的主处理器将BT656格式的数字信号由yuv格式压缩成h.264格式。
[0010] 在本发明的优选实施方式中,所述的方法还包括:所述的授时模块间隔从一串口输出定位信息以及时间信息,所述授时模块与所述主处理器的所述串口对接;所述的主处理器接收所述的定位信息以及时间信息;所述的主处理器在小于T2-T1时间内对所述的定位信息以及时间信息进行解析,其中,所述的T1为第一个PPS上升沿,T2为所述T1之后RSTn下降沿;所述的主处理器在T2时刻清除RSTn信号,复位所述的可编程芯片,所述的RSTn为复位CPLD的信号。
[0011] 在本发明的优选实施方式中,所述的方法还包括:所述的可编程芯片在T3时刻开始工作,对1秒进行千等分,所述T3为第二个PPS上升沿;所述的可编程芯片在复位之后的第一个所述的秒脉冲有效开始计数。
[0012] 在本发明的优选实施方式中,所述的方法还包括:所述的可编程芯片在T4时刻检测到所述脉冲信号有效;所述的可编程芯片将计数值写入寄存器;所述的可编程芯片立刻置位中断信号,所述的T4为所述视频流的场传输至CPLD的时刻;所述的主处理器在检测到所述中断信号后,在T6时刻读取所述的可编程芯片的计数值,所述的T6为所述主处理器读取CPLD计数值的时刻;所述的视频转换模块在T5时刻开始对一视频流进行格式转换,输出至所述的主处理器,所述的T5为视频流经所述视频转换模块转为BT656格式并输出至主处理的时刻;所述的主处理器在等待一帧结束后,将所述计数值和自身的时间做运算并存储。
[0013] 在本发明的优选实施方式中,所述的视频转换模块的型号为ADV7282,所述的主处理器的型号为Hi3531,所述的授时模块为北斗或GPS或GLONASS模块,所述的场信号检测模块由ASIC实现,所述的可编程芯片由CPLD或FPGA或ASIC搭建。
[0014] 本发明的目的之一是,提供了一种确定视频流的时间轴的系统,所述的系统包括视频处理模块以及与所述视频处理模块相连接的时间同步模块,其中,所述的视频处理模块包括一视频转换模块以及与所述视频转换模块相连接的一主处理器;所述的视频转换模块,用于对一视频流进行格式转换;所述的主处理器,用于对格式转换后的视频流进行压缩;所述的时间同步模块包括一场信号检测模块、一授时模块、分别与所述的场信号检测模块、授时模块相连接的可编程芯片;所述的场信号检测模块,用于检测所述视频流的每一帧的开始以及结束,输出与每一帧的开始以及结束相对应的脉冲信号;所述的授时模块,用于输出与卫星时间同步的秒脉冲;所述的可编程芯片,用于对所述的秒脉冲进行细分至毫秒级,并根据所述的脉冲信号输出时间戳;所述的主处理器,还用于将所述的时间戳打包至压缩后的视频流,得到带时间戳的视频流。
[0015] 在本发明的优选实施方式中,所述的视频转换模块将所述视频流由pal制式的模拟信号转换为BT656格式的数字信号。
[0016] 在本发明的优选实施方式中,所述的主处理器将BT656格式的数字信号由yuv格式压缩成h.264格式。
[0017] 在本发明的优选实施方式中,所述授时模块与所述主处理器的一串口对接;所述的授时模块,还用于间隔从所述串口输出定位信息以及时间信息;所述的主处理器,用于接收所述的定位信息以及时间信息,并在小于T2-T1时间内对所述的定位信息以及时间信息进行解析,在T2时刻清除RSTn信号,复位所述的可编程芯片,其中,所述的T1为第一个PPS上升沿,T2为所述T1之后RSTn下降沿,RSTn为复位CPLD的信号。
[0018] 在本发明的优选实施方式中,所述的可编程芯片在T3时刻开始工作,对1秒进行千等分,在复位之后的第一个所述的秒脉冲有效开始计数,所述T3为第二个PPS上升沿。
[0019] 在本发明的优选实施方式中,所述的可编程芯片在T4时刻检测到所述脉冲信号有效,将计数值写入寄存器,并立刻置位中断信号,所述的T4为所述视频流的场传输至CPLD的时刻;所述的主处理器在检测到所述中断信号后,在T6时刻读取所述的可编程芯片的计数值,所述的T6为所述主处理器读取CPLD计数值的时刻;所述的视频转换模块在T5时刻开始对一视频流进行格式转换,并输出至所述的主处理器,所述的T5为视频流经所述视频转换模块转为BT656格式并输出至主处理的时刻;所述的主处理器在等待一帧结束后,将所述计数值和自身的时间做运算并存储。
[0020] 在本发明的优选实施方式中,所述的视频转换模块的型号为ADV7282,所述的主处理器的型号为Hi3531,所述的授时模块为北斗或GPS或GLONASS模块,所述的场信号检测模块由ASIC实现,所述的可编程芯片由CPLD或FPGA或ASIC搭建。
[0021] 本发明的有益效果在于,提供了一种确定视频流的时间轴的方法以及系统,通过时钟源由本地时钟改为卫星授时方式,实现时间与全世界同步,不需要本地时钟重新校准;对纳秒级精度的秒脉冲信号进行细分,进而实现毫秒级分辨率;以视频源的场开始信号而非在视频转换后作为同步时刻,避免了由于视频转换、系统非实时性造成的延时和误差。
[0022] 为让本发明的上述和其他目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附图式,作详细说明如下。

附图说明

[0023] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0024] 图1为现有技术中的一种视频打时间戳方式的示意图;
[0025] 图2为本发明实施例提供的一种确定视频流的时间轴的系统的结构框图;
[0026] 图3为本发明实施例提供的一种确定视频流的时间轴的系统中视频处理模块的结构框图;
[0027] 图4为本发明实施例提供的一种确定视频流的时间轴的系统中时间同步模块的结构框图;
[0028] 图5为本发明实施例提供的一种确定视频流的时间轴的方法的流程图;
[0029] 图6为本发明实施例提供的一种确定视频流的时间轴的方法的进一步的流程图;
[0030] 图7为本发明实施例提供的一种确定视频流的时间轴的方法的进一步的流程图;
[0031] 图8为本发明实施例提供的一种确定视频流的时间轴的方法的进一步的流程图;
[0032] 图9为本发明提供的具体实施例中确定视频流的时间轴的系统的结构示意图;
[0033] 图10为本发明提供的具体实施例中CPU、北斗、计数器同步握手的时序图;
[0034] 图11为本发明提供的具体实施例中CPU、北斗、计数器同步握手的示意图;
[0035] 图12为本发明提供的具体实施例中视频转换、场同步、中断的时序图;
[0036] 图13为本发明提供的具体实施例中视频转换、场同步、中断的示意图。

具体实施方式

[0037] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0038] 本发明针对现有技术中打时间戳方式不能避免本地晶振所产生的累加误差和主处理器非实时性造成的误差的技术问题,提出了一种新的视频打时间戳方式。
[0039] 图2为本发明实施例提供的一种确定视频流的时间轴的系统的结构框图,由图2可知,所述的系统包括视频处理模块100以及与所述视频处理模块相连接的时间同步模块200。
[0040] 图3为视频处理模块的结构框图,由图3可知,视频处理模块100包括一视频转换模块10以及与所述视频转换模块相连接的一主处理器20;
[0041] 所述的视频转换模块10,用于对一视频流进行格式转换。在本发明的具体实施例中,所述的视频转换模块将所述视频流由pal制式的模拟信号转换为BT656格式的数字信号。
[0042] 所述的主处理器20,用于对格式转换后的视频流进行压缩。在本发明的具体实施例中,所述的主处理器将BT656格式的数字信号由yuv格式压缩成h.264格式。
[0043] 图4为时间同步模块的结构框图,由图4可知,所述的时间同步模块200包括一场信号检测模块30、一授时模块40、分别与所述的场信号检测模块、授时模块相连接的可编程芯片50;
[0044] 所述的场信号检测模块30,用于检测所述视频流的每一帧的开始以及结束,输出与每一帧的开始以及结束相对应的脉冲信号;
[0045] 所述的授时模块40,用于输出与卫星时间同步的秒脉冲;
[0046] 所述的可编程芯片50,用于对所述的秒脉冲进行细分至毫秒级,并根据所述的脉冲信号输出时间戳;
[0047] 所述的主处理器20,还用于将所述的时间戳打包至压缩后的视频流,得到带时间戳的视频流。
[0048] 如上即是本发明提供的一种确定视频流的时间轴的系统,时钟源由本地时钟改为卫星授时方式,实现时间与全世界同步,不需要本地时钟重新校准。对纳秒级精度的秒脉冲信号进行细分,进而实现毫秒级分辨率。以视频源的场开始信号而非在视频转换后作为同步时刻,避免了由于视频转换、系统非实时性造成的延时和误差。
[0049] 在本发明的其他实施方式中,主处理器与可编程芯片配合实现计时、打标。同步过程需要三个步骤:1、主处理器获取卫星时间,并与可编程芯片同步。2、当可编程芯片开始计时,等待检测到视频信号的场同步信号。检测到信号后,将当前时间写入寄存器,由主处理器在适时时机读取。3、主处理器的视频接口在获取一帧图像后,产生一个中断。主处理器将最后读取的时间信息打包至当前帧,实现帧同步计时。
[0050] 下面描述每个过程的工作原理。
[0051] 步骤一:主处理器与可编程芯片同步握手
[0052] 所述授时模块与所述主处理器的一串口对接;
[0053] 所述的授时模块,还用于间隔从所述串口输出定位信息以及时间信息;
[0054] 所述的主处理器,用于接收所述的定位信息以及时间信息,并在小于T2-T1时间内对所述的定位信息以及时间信息进行解析,在T2时刻清除RSTn信号,复位所述的可编程芯片,其中,所述的T1为第一个PPS上升沿,PPS为Pulse Per Second,即每秒脉冲数,T2为T1之后RSTn下降沿,RSTn为复位CPLD的信号,CPLD为复杂可编程逻辑器件。
[0055] 步骤二:可编程芯片与主处理器同步计时。
[0056] 所述的可编程芯片在T3时刻开始工作,对1秒进行千等分,在复位之后的第一个所述的秒脉冲有效开始计数,所述T3为第二个PPS上升沿。
[0057] 步骤三:主处理器获取一帧图像,读取时间戳,并同步存储。
[0058] 所述的可编程芯片在T4时刻检测到所述脉冲信号有效,将计数值写入寄存器,并立刻置位中断信号,所述的T4为开始检测到视频流的场,所述视频流的场传输至CPLD的时刻;
[0059] 所述的主处理器在检测到所述中断信号后,在T6时刻读取所述的可编程芯片的计数值,所述的T6为主处理器读取CPLD计数值的时刻;
[0060] 所述的视频转换模块在T5时刻开始对一视频流进行格式转换,并输出至所述的主处理器,所述的T5为视频信号经视频转换模块转为BT656格式并输出至主处理的时刻;
[0061] 所述的主处理器在等待一帧结束后,将所述计数值和自身的时间做运算并存储。
[0062] 如上即是本发明提供的一种确定视频流的时间轴的系统,采用卫星授时方式后,不需要定期校准系统时间,实现自动化。用可编程器件对脉冲信号细分,实现毫秒级时标精度。
[0063] 图5为本发明实施例提供的一种确定视频流的时间轴的方法的流程图,由图5可知,该方法包括:
[0064] S101:视频转换模块对一视频流进行格式转换。在具体的实施方式中,所述的视频转换模块将所述视频流由pal制式的模拟信号转换为BT656格式的数字信号
[0065] S102:与所述视频转换模块相连接的一主处理器对格式转换后的视频流进行压缩。在具体的实施方式中,所述的主处理器将BT656格式的数字信号由yuv格式压缩成h.264格式。
[0066] S103:场信号检测模块检测所述视频流的每一帧的开始以及结束,输出与每一帧的开始以及结束相对应的脉冲信号;
[0067] S104:授时模块输出与卫星时间同步的秒脉冲;
[0068] S105:分别与所述的场信号检测模块、授时模块相连接的可编程芯片对所述的秒脉冲进行细分至毫秒级,并根据所述的脉冲信号输出时间戳;
[0069] S106:所述的主处理器将所述的时间戳打包至压缩后的视频流,得到带时间戳的视频流。
[0070] 如上即是本发明提供的一种确定视频流的时间轴的方法,时钟源由本地时钟改为卫星授时方式,实现时间与全世界同步,不需要本地时钟重新校准。对纳秒级精度的秒脉冲信号进行细分,进而实现毫秒级分辨率。以视频源的场开始信号而非在视频转换后作为同步时刻,避免了由于视频转换、系统非实时性造成的延时和误差。
[0071] 在本发明的其他实施方式中,主处理器与可编程芯片配合实现计时、打标。同步过程需要三个步骤:1、主处理器获取卫星时间,并与可编程芯片同步。2、当可编程芯片开始计时,等待检测到视频信号的场同步信号。检测到信号后,将当前时间写入寄存器,由主处理器在适时时机读取。3、主处理器的视频接口在获取一帧图像后,产生一个中断。主处理器将最后读取的时间信息打包至当前帧,实现帧同步计时。
[0072] 下面描述每个过程的工作原理。
[0073] 步骤一:主处理器与可编程芯片同步握手
[0074] 图6为本发明实施例提供的一种确定视频流的时间轴的方法的进一步的流程图,由图6可知,步骤一包括:
[0075] S201:所述的授时模块间隔从一串口输出定位信息以及时间信息,所述授时模块与所述主处理器的所述串口对接;
[0076] S202:所述的主处理器接收所述的定位信息以及时间信息;
[0077] S203:所述的主处理器在小于T2-T1时间内对所述的定位信息以及时间信息进行解析,其中,所述的T1为第一个PPS上升沿,T2为所述T1之后RSTn下降沿;
[0078] S204:所述的主处理器在T2时刻清除RSTn信号,复位所述的可编程芯片,所述的RSTn为复位CPLD的信号。
[0079] 步骤二:可编程芯片与主处理器同步计时。
[0080] 图7为本发明实施例提供的一种确定视频流的时间轴的方法的进一步的流程图,由图7可知,步骤二包括:
[0081] S301:所述的可编程芯片在T3时刻开始工作,对1秒进行千等分,所述T3为第二个PPS上升沿;
[0082] S302:所述的可编程芯片在复位之后的第一个所述的秒脉冲有效开始计数。
[0083] 步骤三:主处理器获取一帧图像,读取时间戳,并同步存储。
[0084] 图8为本发明实施例提供的一种确定视频流的时间轴的方法的进一步的流程图,由图8可知,步骤三包括:
[0085] S401:所述的可编程芯片在T4时刻检测到所述脉冲信号有效;
[0086] S402:所述的可编程芯片将计数值写入寄存器;
[0087] S403:所述的可编程芯片立刻置位中断信号,所述的T4为所述视频流的场传输至CPLD的时刻;
[0088] S404:所述的主处理器在检测到所述中断信号后,在T6时刻读取所述的可编程芯片的计数值,所述的T6为所述主处理器读取CPLD计数值的时刻;
[0089] S405:所述的视频转换模块在T5时刻开始对一视频流进行格式转换,输出至所述的主处理器,所述的T5为视频流经所述视频转换模块转为BT656格式并输出至主处理的时刻;
[0090] S406:所述的主处理器在等待一帧结束后,将所述计数值和自身的时间做运算并存储。
[0091] 如上介绍一种新的视频打时间戳方式:1、时钟源由本地时钟改为卫星授时方式,实现时间与全世界同步,不需要本地时钟重新校准。2、对纳秒级精度的秒脉冲信号进行细分,进而实现毫秒级分辨率。3、以视频源的场开始信号而非在视频转换后作为同步时刻,避免了由于视频转换、系统非实时性造成的延时和误差。
[0092] 本发明解决了如下技术问题:
[0093] (1)解决传统视频打时间戳方案不能校准时间、毫秒精度问题;
[0094] (2)解决视频从输入到编码过程造成的时间差。
[0095] 下面结合具体的实施例,详细介绍本发明的技术方案。图9为本发明提供的具体实施例中确定视频流的时间轴的系统的结构示意图,由图9可知,该具体实施例中,采用北斗授时+可编程逻辑+主处理器,相对于上述现有常用方案,具有以下优势:
[0096] (1)北斗授时模块提供秒级精度时间信息和纳秒级精度脉冲信号。
[0097] 主处理器获取北斗模块的秒级时间信息,通过总线接口获取可编程芯片细分后的毫秒时间。
[0098] (2)检测到的场信号输入给可编程芯片,用于校准视频输入到编码过程的时差。
[0099] 本方案从物理上可分视频处理模块和时间同步模块,下面将分别描述各部分功能和工作原理。
[0100] 所述的视频转换模块的型号为ADV7282,所述的主处理器的型号为Hi3531,所述的授时模块为北斗或GPS或GLONASS全球卫星导航系统模块,所述的场信号检测模块由ASIC实现,所述的可编程芯片由CPLD或FPGA或专用集成电路ASIC搭建。
[0101] 具体的,本案采用的主处理器是海思的Hi3531。Hi3531是针对多路D1和多路高清DVR、NVR产品应用开发的一款专业高端SOC芯片。Hi3531内置高性能双核A9处理器、高达5路1080P实时多协议编解码能力的引擎和专用TOE网络加速模块,应对越来越高的高清应用和网络需求;集成优异的视频引擎和编解码算法并结合多路高清显示输出能力,充分满足客户产品的高质量图像体验。Hi3531高度集成和丰富的外围接口,在满足客户差异化产品功能、性能、图像质量要求的同时,大大降低ebom物料成本成本。
[0102] 前端的视频转换模块采用AnalogDevice公司的ADV7282。ADV7282是一款支持NTSC、PAL等制式的模拟视频转换芯片,具有低功耗、低成本、易于使用等特点。ADV7282的BT656输出模式可以与HI3531无缝对接。
[0103] 本案采用的授时模块是北斗模块UM220。UM220是国产北斗、GPS双模授时定位模块,支持串口输出和脉冲输出。可编程芯片使用xilinx公司coolrunner系列CPLD。场信号检测由专用ASIC实现。
[0104] 在本发明的其他实施方式中,授时模块可以用北斗、GPS、GLONASS模块等实现。本案中采取的北斗模块型号UM220相对于其它授时系统具有自主国产、稳定可靠特点,不会受国外的一些因素影响应用。本案的系统以海思hi3531多媒体处理器为核心。可编程芯片可以用CPLD、FPGA或ASIC搭建,本案使用xilinx公司的CPLD实现。
[0105] 在本实施例中,将所有模块集成到一块单板。视频转换芯片ADV7282与主处理器HI3531的第1路标清通道对接。授时模块UM220与主处理器HI3531的第2路串口对接。授时模块UM220的秒脉冲信号同时输出到可编程器件和主处理器HI3531(GPIO管脚)。场信号检测芯片与可编程器件对接。可编程器件通过总线方式与主处理器HI3531对接。
[0106] 在此方案中,主处理器中CPU与可编程芯片CPLD(计数器)配合实现计时、打标。同步过程需要三个步骤:1、CPU获取卫星时间,并与计数器同步。2、当计数器开始计时,等待检测到视频信号的场同步信号。检测到信号后,将当前时间写入寄存器,由CPU在适时时机读取。3、CPU的视频接口在获取一帧图像后,产生一个中断。CPU将最后读取的时间信息打包至当前帧,实现帧同步计时。
[0107] 下面描述每个过程的工作原理。图10为本发明提供的具体实施例中CPU、北斗、计数器同步握手的时序图,图11为本发明提供的具体实施例中CPU、北斗、计数器同步握手的示意图,图12为本发明提供的具体实施例中视频转换、场同步、中断的时序图,图13为本发明提供的具体实施例中视频转换、场同步、中断的示意图。
[0108] 步骤一:CPU与CPLD同步握手
[0109] 在北斗模块正常工作后,北斗模块会间隔从串口(UART_TX)输出定位和时间信息,辅助输出秒脉冲信号(PPS)。在T1时刻PPS有效,UART_TX输出有用信息。CPU接收串口信息,在小于T2-T1时间内完成北斗信息的解析,并在T2时刻清除RSTn信号,复位(握手)计数器。
[0110] 步骤二:计数器与CPU同步计时。
[0111] 计数器在T3时刻开始工作,对1秒进行千等分(1毫秒)。此时CPU已经与卫星同步,精度1秒,而计数器在复位之后的第一个PPS有效开始计数。计数的参考时钟源来自外部晶振,若实现小于1毫秒误差,震荡精度必须在工作温度内小于100ppm,此案例选25ppm。
[0112] 步骤三:CPU获取一帧图像,读取时间戳,并同步存储。
[0113] 视频信号输入至转换器视频转换芯片(ADV7282)的同时被分离出场同步信号(FIELD)。在T4时刻,CPLD检测到FIELD有效,将计数值写入寄存器,并立刻置位中断(INT)信号。CPU在检测到INT信号后,在T6时刻读取DATA[15:0]总线的计数值。当视频转换芯片ADV7282检测到视频信号后在T5时刻开始转换并输出到CPU的视频接口(VIU0)。CPU在等待一帧结束后,将计数值和自身时间做运算并存储。T6对T5没有严格要求,一般只要求T5小于帧结束时间即可。DATA总线设计为16位,可以计数1024X64mS=64S,满足应用要求。
[0114] 本案为单板结构,局部总线通信。北斗模块与CPLD协同实现与卫星时间的ms级同步。计时模块与视频源有同步机制。本案没有经过网络,北斗模块直接对接CPU。本案说明了对时之后的时间戳与每帧图像的关系,即对每帧图像采集的时间进行毫秒级标定。
[0115] 综上所述,本发明提出的一种确定视频流的时间轴的方法以及系统,通过时钟源由本地时钟改为卫星授时方式,实现时间与全世界同步,不需要本地时钟重新校准;对纳秒级精度的秒脉冲信号进行细分,进而实现毫秒级分辨率;以视频源的场开始信号而非在视频转换后作为同步时刻,避免了由于视频转换、系统非实时性造成的延时和误差。
[0116] 本发明的有益效果在于:
[0117] 1、采用卫星授时方式后,不需要定期校准系统时间,实现自动化。
[0118] 2、用可编程器件对脉冲信号细分,实现毫秒级时标精度。
[0119] 本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一般计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
[0120] 本领域技术人员还可以了解到本发明实施例列出的各种功能是通过硬件还是软件来实现取决于特定的应用和整个系统的设计要求。本领域技术人员可以对于每种特定的应用,可以使用各种方法实现所述的功能,但这种实现不应被理解为超出本发明实施例保护的范围。
[0121] 本发明中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。