专利名称:一种视频数据帧的播放方法、系统及播放器的制作方法
技术领域:
本发明属于安防和家电领域,尤其涉及一种视频数据帧的播放方法、系统及播放
O
背景技术:
随着社会的发展和科技的进步,小区内越来越多的用到视频监控,在现有的视频监控系统中,视频数据帧的播放方法是播放器从网络接收到视频数据帧后,将该数据帧的接收时间作为基础构造时间戳,时间戳=接收时间*90 ;播放器按上述时间戳播放视频数据。按照现有技术所提供的技术方案,存在如下技术问题现有技术提供的技术方案播放视频数据是按构造的时间戳来播放视频数据的,而在网络中收到数据帧的时间间隔是无规律波动,上述时间间隔无规律波动必然使得时间戳无规律波动,进而导致上述视频数据播放不流畅。
发明内容
本发明实施例的目的在于提供一种视频数据帧的播放方法,旨在解决现有技术视频数据播放不流畅的问题。本发明实施例是这样实现的,一种视频数据帧的播放方法,所述方法具体包括如下步骤接收到当前数据帧后,获取当前数据帧的接收时间;计算当前数据帧与前一数据帧的接收时间差值;根据该接收时间差值确定当前数据帧对应的接收时间差值的平均值;设定当前数据帧的时间戳=前一数据帧时间戳+接收时间差值的平均值*90 ;按当前数据帧的时间戳对当前数据帧播放。本发明还提供一种视频数据帧的播放系统,所述系统具体包括获取单元,用于接收到当前数据帧后,获取当前数据帧的接收时间;计算单元,用于计算当前数据帧与前一数据帧的接收时间差值;所述计算单元还用于根据该接收时间差值计算确定当前数据帧对应的接收时间差值的平均值;所述计算单元还用于设定当前数据帧的时间戳=前一数据帧时间戳+接收时间差值的平均值*90;播放单元,用于按当前数据帧的时间戳对当前数据帧播放。本发明还提供一种播放器,该播放器包括上述的视频数据帧的播放系统。本发明实施例与现有技术相比,有益效果在于本发明的技术方案时间戳的计算方法是根据前一数据帧时间戳加上接收时间差值的平均值*90来确定的,所以当出现接收数据帧的时间间隔无规律波动时,即接收时间的差值无规律时,由于其加入的是接收时间差的平均值,当个接收时间差值对平均值的影响也会削弱很多,减弱了当个接收时间差值对时间戳的影响,所以其具有播放流畅的特点。
图1是本发明提供的一种视频数据帧的播放方法的流程图;图2是本发明实施例一提供的视频数据帧的播放方法的流程图;图3是本发明实施例二提供的视频数据帧的播放系统结构图。
具体实施例方式为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。本发明提供一种视频数据帧的播放方法,该方法如图1所示,具体包括如下步骤S11、接收到当前数据帧后,获取当前数据帧的接收时间;S12、计算当前数据帧与前一数据帧的接收时间差值;S13、根据该差值确定当前数据帧对应的接收时间差值的平均值;S14、设定当前数据帧的时间戳=前一数据帧时间戳+接收时间差值的平均值 *90 ;S15、按当前数据帧的时间戳对当前数据帧播放。需要说明的是,上述前一数据帧可以为当前数据帧的前一个数据帧;实现S13的具体方法可以为下述方式中的任一种方式A、比较S12计算出的差值是否大于设定阈值,如大于该设定阈值,则确定当前数据帧对应的接收时间差值的平均值等于前一数据帧对应的接收时间差值的平均值;如小于该设定阈值,则将该接收时间差加入到接收时间差的数组中计算得到当前数据帧对应的接收时间差值的平均值;如等于设定阈值,则确定当前数据帧对应的接收时间差值的平均值等于前一数据帧对应的接收时间差值的平均值,或将该接收时间差加入到接收时间差的数组中计算得到当前数据帧对应的接收时间差值的平均值。方式B、将S12中计算出的差值与前一数据帧对应的接收时间差值与时间差的标准差之和进行比较;如小于,则该接收时间差加入到接收时间差的数组中计算得到当前数据帧对应的接收时间差值的平均值;如大于,则确定当前数据帧对应的接收时间差值的平均值等于前一数据帧对应的接收时间差值的平均值;如等于,则该接收时间差加入到接收时间差的数组中计算得到当前数据帧对应的接收时间差值的平均值,或定当前数据帧对应的接收时间差值的平均值等于前一数据帧对应的接收时间差值的平均值。方式C、不进行判断,直接将该接收时间差值加入接收时间差的数组中计算得到当前数据帧对应的接收时间差值的平均值。下面以一个实际的例子来说明计算平均值的方法,这里假设接收时间差值为10, 该接收时间差值的数组有2值,分别为15、20,则将10加入到数组中,计算数组中3个值的平均值,当前数据帧对应的平均值=(10+15+20)/3 = 15需要说明的是,在方式B中还可以包括下述步骤,将该接收时间差加入到接收时间差的数组中计算得到当前数据帧的接收时间差的标准差。上述标准差的计算方法可以参见《数理统计》。本实施例提供的方法在进行视频播放时,时间戳的计算方法是根据前一数据帧时间戳加上接收时间差值的平均值*90来确定的,所以当出现接收数据帧的时间间隔无规律波动时,即接收时间的差值无规律时,由于其加入的是接收时间差的平均值,当个接收时间差值对平均值的影响也会削弱很多,减弱了单个接收时间差值对时间戳的影响,所以其具有播放流畅的特点。实施例一本实施例提供一种视频数据帧的播放方法,该方法由播放器完成,本实施例实现的技术场景为在播放器内定义三个参数,分别为时间戳st,该初始值可以为0 ;接收时间差的平均值Aimeavarage,该初始值可以为IOOms ;接收时间差的标准差biaodef,该初始值可以为0 ;在播放器内定义一个长度为η的整数数组framelist,初始值可以为0 ;定义接收的数据帧的个数mframe,初始值可以为0 ;定义两个时间类型的值timel,time2 ;该方法如图2所示,具体包括如下步骤S21、接收到当前数据帧时,获取当前数据帧的接收时间time2 ;S22、判断time2_timel (前一数据帧接收时间)-timeavarage (接收时间差的平均值)是否小于biaodef (接收时间差的标准差);如判断出是则执行S23-S26;如否则执行 S25-S26 ;S23、将framelist (整数数组)的长度值η加1,并将time2-timel的值加入到 frameIist ;S24、将 framelist 中的所有值平均得到 timeavarage ;S25、确定当前数据帧的st =前一数据帧的时间戳+timeavarage*90 ;S26、按当前数据帧的st对当前数据帧播放。需要说明的是,由于上述参数均为变量,所以该参数对应的值也不一定相同,例如,当S22中判断为否后,执行S25和S26,其中S25中的timeavarage的值即为S22中的 timeavarage (前一数据帧计算出的平均值)的值;当S22中判断为是时,执行S23-S26,其中S25中的timeavarage的值为SM中计算得到的timeavarage (当前帧计算出的平均值)。下面以实际的例子来说明上述方法的实现步骤,这里的framelist内的值假设有 2 个,分别为 IOms 禾P 20ms ;则 S22 中,timeavarage = (10+20)/2 = 15ms ;假设 time2_timel =18ms,计算得至Ij biaodef = 5ms ;time2-timel_timeavarage = 3 ;所以 S22 中判断出是, 执行 S23 和 S24,在 S24 中计算 timeavarage = (10+20+18)/3 = 16ms ;在 S25 中确定当前数据帧的st =前一帧的st+16*90 ;按前一帧的st+16*90对当前数据帧播放。假设time2-timel= 21ms ;time2-timel_timeavarage = 6 ;所以 S22判断出否,执行S25和S26,由于time2-timel的值较大(即时间间隔波动较大),所以将该time2_timel 的值不加入framelist ;所以无需执行步骤S23和S24,所以S25中的timeavarage = 15ms ; S25计算出的当前st =前一帧的st+15*90。需要说明的是,上述时间戳=时间*90为时间戳的标准算法;上述设定的st、 timeavarage> biaodef > framelist、nframe、timel 禾口 time2 均为变量。本实施例提供的方法在进行视频播放时,是按前一帧的st+timeavarage*90来播放的,由于该播放时加入的是平均值,所以即使时间间隔波动较大,经取平均值数据以后,其对该数据帧的影响也会减少很多,所以其不会导致视频帧的播放不流畅,并且该方法在time2-timel-timeavarage的值大于biaodef,即时间间隔波动较大时,以前一帧对应的timeavarage的值来计算当前数据帧的st,播放该数据帧不考虑该接收时间差,进一步减少了时间间隔波动对视频播放连续性的影响,在timd-timel-timeavarage的值小于 biaodef,更新timeavarage的值,并以更新后的值来计算当前数据帧的st,所以该方法具有实时更新timeavarage的值,st的值计算更准确的特点。实施例二 本实施例提供一种视频数据帧的播放方法,本实施例与实施例一不同之处在于, 用S^替换步骤S23 ;S29、判断time2-timel是否小于设定阈值;如判断出是则执行S23-S26 ;如否则执行 S25-S26 ;与实施例一不同之处在于,本实施例不用计算时间戳标准差变量,而是直接用一个定值(设定阈值)来替换该时间戳标准差变量。本实施例提供的方法在进行视频播放时,是按前一帧的st+timeavarage*90来播放的,由于该播放时加入的是平均值,所以即使时间间隔波动较大,在取平均值以后,其对该数据帧的影响也会减少很多,所以其不会导致视频帧的播放不流畅,并且该方法在 time2-timel的值较大(即时间间隔波动较大)时,还是以前一帧对应的timeavarage的值来计算当前数据帧的st,播放该数据帧不考虑该接收时间差,进一步减少了时间间隔波动对视频播放连续性的影响,所以该方法具有视频播放流畅的特点。本发明还一种视频数据帧的播放系统,该系统如图3所示,具体包括获取单元31接收到当前数据帧后,获取当前数据帧的接收时间;计算单元32计算当前数据帧与前一数据帧的接收时间差值;计算单元32还根据该接收时间差值确定当前数据帧对应的接收时间差值的平均值;计算单元32还设定当前数据帧的时间戳=前一数据帧时间戳+接收时间差值的平均值*90 ;播放单元33按计算单元32得到的当前数据帧的时间戳对当前数据帧播放。可选的,上述计算单元还可以完成下述操作中的任一种或多种操作A、将该接收时间差值加入接收时间差的数组中计算得到当前数据帧对应的接收时间差值的平均值。操作B、比较接收时间差值是否大于设定阈值,如接收时间差值大于该设定阈值, 则确定当前数据帧对应的接收时间差值的平均值等于前一数据帧对应的接收时间差值的平均值;如小于该设定阈值,则将该接收时间差加入到接收时间差的数组中计算得到当前数据帧对应的接收时间差值的平均值;如等于该设定阈值,则确定当前数据帧对应的接收时间差值的平均值等于前一数据帧对应的接收时间差值的平均值,或将该接收时间差加入到接收时间差的数组中计算得到当前数据帧对应的接收时间差值的平均值。操作C、比较接收时间差值是否小于前一数据帧对应的接收时间差值+前一数据帧对应的接收时间差的标准差;如小于,则该接收时间差加入到接收时间差的数组中计算得到当前数据帧对应的接收时间差值的平均值;如大于,则确定当前数据帧对应的接收时间差值的平均值等于前一数据帧对应的接收时间差值的平均值;如等于,则该接收时间差加入到接收时间差的数组中计算得到当前数据帧对应的接收时间差值的平均值,或确定当前数据帧对应的接收时间差值的平均值等于前一数据帧对应的接收时间差值的平均值。本实施例提供的系统在进行视频播放时,时间戳的计算方法是根据前一数据帧时间戳加上接收时间差值的平均值*90来确定的,所以当出现接收数据帧的时间间隔无规律波动时,即接收时间的差值无规律时,由于其加入的是接收时间差的平均值,单个接收时间差值的变化对平均值的影响也会削弱很多,减弱了单个接收时间差值对时间戳的影响,所以其具有播放流畅的特点。本发明还提供一种播放器,上述播放器包括上述视频数据帧的播放系统。本实施例提供的播放器在进行视频播放时,时间戳的计算方法是根据前一数据帧时间戳加上接收时间差值的平均值*90来确定的,所以当出现接收数据帧的时间间隔无规律波动时,即接收时间的差值无规律时,由于其加入的是接收时间差的平均值,单个接收时间差值对平均值的影响也会削弱很多,减弱了单个接收时间差值对时间戳的影响,所以其具有播放流畅的特点。值得注意的是,上述播放器和系统实施例中,所包括的各个单元只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。另外,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件完成,相应的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。综上所述,本发明提供的技术方案具有播放流畅的优点。以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
8
权利要求
1.一种视频数据帧的播放方法,其特征在于,所述方法具体包括如下步骤接收到当前数据帧后,获取当前数据帧的接收时间;计算当前数据帧与前一数据帧的接收时间差值;根据该接收时间差值确定当前数据帧对应的接收时间差值的平均值;设定当前数据帧的时间戳=前一数据帧时间戳+接收时间差值的平均值*90 ;按当前数据帧的时间戳对当前数据帧播放。
2.根据权利要求1所述的方法,其特征在于,所述根据该接收时间差值确定当前数据帧对应的接收时间差值的平均值的步骤具体包括将该接收时间差值加入接收时间差的数组中计算得到当前数据帧对应的接收时间差值的平均值。
3.根据权利要求1所述的方法,其特征在于,所述根据该接收时间差值确定当前数据帧对应的接收时间差值的平均值的步骤具体包括比较接收时间差值是否大于设定阈值,如大于该设定阈值,则确定当前数据帧对应的接收时间差值的平均值等于前一数据帧对应的接收时间差值的平均值;如小于该设定阈值,则将该接收时间差加入到接收时间差的数组中计算得到当前数据帧对应的接收时间差值的平均值;如等于,则确定当前数据帧对应的接收时间差值的平均值等于前一数据帧对应的接收时间差值的平均值或将该接收时间差加入到接收时间差的数组中计算得到当前数据帧对应的接收时间差值的平均值。
4.根据权利要求1所述的方法,其特征在于,所述根据该接收时间差值确定当前数据帧对应的接收时间差值的平均值的步骤具体包括比较接收时间差值是否小于前一数据帧对应的接收时间差值+前一数据帧对应的接收时间差的标准差;如小于,则该接收时间差加入到接收时间差的数组中计算得到当前数据帧对应的接收时间差值的平均值;如大于,则确定当前数据帧对应的接收时间差值的平均值等于前一数据帧对应的接收时间差值的平均值;如等于,则将该接收时间差加入到接收时间差的数组中计算得到当前数据帧对应的接收时间差值的平均值或选定当前数据帧对应的接收时间差值的平均值等于前一数据帧对应的接收时间差值的平均值。
5.根据权利要求4所述的方法,其特征在于,所述方法在该接收时间差加入到接收时间差的数组中计算得到当前数据帧对应的接收时间差值的平均值的步骤之后,还包括将该接收时间差加入到接收时间差的数组中计算得到当前数据帧的接收时间差的标准差。
6.一种视频数据帧的播放系统,其特征在于,所述系统具体包括获取单元,用于接收到当前数据帧后,获取当前数据帧的接收时间;计算单元,用于计算当前数据帧与前一数据帧的接收时间差值;所述计算单元还用于根据该接收时间差值计算确定当前数据帧对应的接收时间差值的平均值;所述计算单元还用于设定当前数据帧的时间戳=前一数据帧时间戳+接收时间差值的平均值*90 ;播放单元,用于按当前数据帧的时间戳对当前数据帧播放。
7.根据权利要求6所述的系统,其特征在于,所述计算单元还用于将该接收时间差值加入接收时间差的数组中计算得到当前数据帧对应的接收时间差值的平均值。
8.根据权利要求6所述的系统,其特征在于,所述计算单元还用于比较接收时间差值是否大于设定阈值,如大于该设定阈值,则确定当前数据帧对应的接收时间差值的平均值等于前一数据帧对应的接收时间差值的平均值;如小于或该设定阈值,则将该接收时间差加入到接收时间差的数组中计算得到当前数据帧对应的接收时间差值的平均值;如等于该设定阈值,则确定当前数据帧对应的接收时间差值的平均值等于前一数据帧对应的接收时间差值的平均值或将该接收时间差加入到接收时间差的数组中计算得到当前数据帧对应的接收时间差值的平均值。
9.根据权利要求6所述的系统,其特征在于,所述计算单元还用于比较接收时间差值是否小于前一数据帧对应的接收时间差值+前一数据帧对应的接收时间差的标准差;如小于,则该接收时间差加入到接收时间差的数组中计算得到当前数据帧对应的接收时间差值的平均值;如大于,则确定当前数据帧对应的接收时间差值的平均值等于前一数据帧对应的接收时间差值的平均值;如等于,则将该接收时间差加入到接收时间差的数组中计算得到当前数据帧对应的接收时间差值的平均值或选定当前数据帧对应的接收时间差值的平均值等于前一数据帧对应的接收时间差值的平均值。
10.一种播放器,其特征在于,所述播放器包括权利要求6-9任一项所述的视频数据帧的播放系统。
全文摘要
本发明适用于安防和家电领域,具体提供了一种视频数据帧的播放方法、系统及播放器;该方法具体包括接收到当前数据帧后,获取当前数据帧的接收时间;计算当前数据帧与前一数据帧的接收时间差值;根据该接收时间差值确定当前数据帧对应的接收时间差值的平均值;设定当前数据帧的时间戳=前一数据帧时间戳+接收时间差值的平均值*90;按当前数据帧的时间戳对当前数据帧播放。本发明提供的方法具有播放流畅的特点。
文档编号G11B20/10GK102376324SQ20101024851
公开日2012年3月14日 申请日期2010年8月9日 优先权日2010年8月9日
发明者阳天发 申请人:Tcl集团股份有限公司