首页> 中国专利> 非直接获取视频应用场合拼接视频同步播放方法及装置

非直接获取视频应用场合拼接视频同步播放方法及装置

摘要

本发明实施例公开了一种非直接获取视频应用场合拼接视频同步播放的方法及装置,可以在非直接获取视频的应用场合中,向视频植入数据,获取数据以及恢复视频。同时通过异步缓存,降低了实时性要求,有效解决了视频拼接同步的问题,大大提高了视频同步播放效果,而且具有适用性广的特点。

著录项

  • 公开/公告号CN103024453A

    专利类型发明专利

  • 公开/公告日2013-04-03

    原文格式PDF

  • 申请/专利权人 广东威创视讯科技股份有限公司;

    申请/专利号CN201210576325.5

  • 发明设计人 梁博文;彭昌辉;

    申请日2012-12-26

  • 分类号H04N21/236(20110101);H04N21/434(20110101);

  • 代理机构11227 北京集佳知识产权代理有限公司;

  • 代理人曹志霞

  • 地址 510663 广东省广州市广州高新技术产业开发区彩频路6号

  • 入库时间 2024-02-19 19:28:57

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-06-30

    专利权人的姓名或者名称、地址的变更 IPC(主分类):H04N21/236 变更前: 变更后: 申请日:20121226

    专利权人的姓名或者名称、地址的变更

  • 2016-06-01

    授权

    授权

  • 2013-05-01

    实质审查的生效 IPC(主分类):H04N21/236 申请日:20121226

    实质审查的生效

  • 2013-04-03

    公开

    公开

说明书

技术领域

本发明实施例涉及视频处理领域,具体涉及一种非直接获取视频应用场 合拼接视频同步播放方法及装置。

背景技术

在直接获取视频的应用场合,比如直接通过PCI/PCI-E卡获取视频数据, 或者直接通过以太网获取视频数据以及通过其他数据接口直接获取视频数据 的情况下,用户很容易把除视频以外的附加信息传递给获取端。

然而在某些情况下,用户并不是直接获取视频数据,而是通过不可控的 中间件来获取视频数据的,比如通过显卡获取PC的视频数据,PC视频源是 可控的,但显卡是不可控的。在通过显卡获取视频数据的应用场合里,因为 显卡的输出只有纯粹的RGB图像数据,并没有额外的数据,因此我们不能在 显卡里面采集到自定义的数据。但是很多时候我们需要实时与图像帧有关联 的信息,比如帧序号来实现视频同步,在不同的应用场合中,我们可能还需 要将其他数据附加到每一帧视频上。

在非直接获取视频数据的应用场合,只能通过更改图像信息的办法来加 入自定义数据,比如把图像固定位置某些字节的值替换为自己的数据,然后 通过PC常用接口来传送帧附加数据,在这种情况下,由于视频的传输与附加 数据的传输是异步进行,如果要做到每一帧视频对应其相应的数据,那必须 在PC端场信号切换的时间空隙来保证异步的视频帧数据以及附加数据同时 到达接收端。然而,由于显示器刷新率过低,导致场空隙时间过短,并且在 PC中识别并等待场信号刷新的时间间隔不准确,在等待后还要进行帧视频输 出,结果是视频很容易发生撕裂,而且实际上也达不到在接收端同步获取到 一一对应的视频帧及其附加数据的目的。

发明内容

本发明实施例提供了一种非直接获取视频应用场合拼接视频同步播放的 方法及装置,可以在非直接获取视频的应用场合中,向视频植入数据,获取 数据以及恢复视频。同时通过异步缓存,降低了实时性要求,有效解决了视 频拼接同步的问题,大大提高了视频同步播放效果,而且具有适用性广的特 点。

本发明实施例中的非直接获取视频应用场合拼接视频同步播放的方法, 包括:

视频源端按预置的规则用预设的帧序号数据替换每帧视频固定位置的固 定字节;

所述帧序号数据包括帧序号和附加信息;

视频源端存储被替换的固定字节及所述帧序号;

视频源端把所述帧序号和所述被替换的固定字节关联成数组,并存储所 述数组;

视频源端缓冲预设帧数的视频及与所述预设帧数的视频相对应的帧序号 及数组;

视频源端发送所述预设帧数的视频及与预设帧数的视频相对应的帧序号 及数组到FPGA接收端;

FPGA获取每帧视频中植入的帧序号数据;

FPGA根据所述帧序号查找数组中每一帧视频对应的缺失图像数据,并进 行还原;

FPGA输出还原后的视频。

可选地,所述FPGA获取每帧视频中植入的帧序号数据之后和所述FPGA 根据所述帧序号查找数组中每一帧视频对应的缺失图像数据,并进行还原之 前还包括:

FPGA检测接收到的视频是否存在丢帧或重复帧,并对所述重复帧进行过 滤帧处理。

可选地,所述FPGA检测接收到的视频是否存在丢帧或重复帧,并对所 述重复帧进行过滤帧处理包括:

(1)FPGA检测接收到的第一帧视频的帧序号是否为1,若是则触发步 骤(2),否则报告出现帧丢失;

(2)FPGA检测接收到的第N+1帧的帧序号与第N帧的帧序号之差是否 为0,若是则报告出现重复帧并触发步骤(3),否则触发步骤(4);

(3)FPGA删除第N+1帧的数据,并触发步骤(2);

(4)FPGA检测接收到的第N+1帧的帧序号与第N帧的帧序号之差是否 为1,若是则触发步骤(2),否则报告出现帧丢失。

本发明实施例中的非直接获取视频应用场合拼接视频同步播放的方法, 包括:

(1)主设备检测设备数量;

(2)主设备接收所述设备进行同步视频处理后输出的同步信号;

(3)主设备判断是否所有设备输出同步信号,若是则执行步骤(4);否 则进入计时状态并执行步骤(5);

(4)主设备向所述所有设备发送统一同步命令,告知所有设备收到命令 后进行同步输出;

(5)当计时值等于预设的等待时间值时,主设备判断是否上述所有设备 输出同步信号,若是则执行步骤(4);否则重新启动。

可选地,所述设备进行同步视频处理包括:

视频源端用预设的帧序号数据替换每帧视频固定位置的固定字节;

所述帧序号数据包括帧序号和附加信息;

视频源端存储被替换的固定字节及所述帧序号;

视频源端把所述帧序号和所述被替换的固定字节关联成数组,并存储所 述数组;

视频源端缓冲预设帧数的视频及与所述预设帧数的视频相对应的帧序号 及数组;

视频源端发送所述预设帧数的视频及与预设帧数的视频相对应的帧序号 及数组到FPGA接收端;

FPGA获取图像中植入的帧序号数据;

FPGA根据所述帧序号查找数组中每一帧视频对应的缺失图像数据,并进 行还原。

本发明实施例中的非直接获取视频应用场合拼接视频同步播放的装置, 包括:

替换单元,用于用预设的帧序号数据替换每帧视频固定位置的固定字节;

所述帧序号数据包括帧序号和附加信息;

存储单元,用于存储被替换的固定字节及所述帧序号;

关联单元,用于把所述帧序号和所述被替换的固定字节关联成数组,并 存储所述数组;

缓冲单元,用于缓冲预设帧数的视频及与所述预设帧数的视频相对应的 帧序号及数组;

发送单元,用于发送所述预设帧数的视频及与预设帧数的视频相对应的 帧序号及数组到FPGA接收端;

获取单元,用于获取图像中植入的帧序号数据;

还原单元,用于根据所述帧序号查找数组中每一帧视频对应的缺失图像 数据,并进行还原;

输出单元,用于输出还原后的视频。

可选地,所述装置还包括:

帧处理单元,用于检测接收到的视频是否存在丢帧或重复帧,并对所述 重复帧进行过滤帧处理。

可选地,所述帧处理单元包括:

第一检测子单元,用于检测接收到的第一帧视频的帧序号是否为1;

第二检测子单元,用于当检测接收到的第一帧视频的帧序号是为1时, 检测接收到的第N+1帧的帧序号与第N帧的帧序号之差是否为0;

删除子单元,用于当检测接收到的第N+1帧的帧序号与第N帧的帧序号 之差是为0时,删除第N+1帧的数据,并继续检测接收到的第N+1帧的帧序 号与第N帧的帧序号之差是否为0;

第三检测子单元,用于当检测接收到的第N+1帧的帧序号与第N帧的帧 序号之差为1时,检测接收到的第N+1帧的帧序号与第N帧的帧序号之差是 否为0。

本发明实施例中的非直接获取视频应用场合拼接视频同步播放的装置, 其特征在于,包括:

检测单元,用于检测设备数量;

接收单元,用于接收所述设备进行同步视频处理后输出的同步信号;

第一判断单元,用于判断是否所有设备输出同步信号;

发送单元,用于当确定所有设备输出同步信号时,向所述所有设备发送 统一同步命令,告知所有设备收到命令后进行同步输出;

第二判断单元,用于当计时值等于预设的等待时间值时,判断是否所述 所有设备输出同步信号。

本发明实施例中,视频源端首先按预置的规则用预设的帧序号数据替换 每帧视频固定位置的固定字节,然后存储被替换的固定字节及帧序号,接着 把帧序号和被替换的固定字节关联成数组并存储上述数组,然后缓冲预设帧 数的视频及与预设帧数的视频相对应的帧序号及数组,接着发送预设帧数的 视频及与预设帧数的视频相对应的帧序号及数组到FPGA接收端,FPGA接收 端接收之后获取每帧视频中植入的帧序号数据,然后会根据帧序号查找数组 中每一帧视频对应的缺失图像数据并进行还原,最后FPGA输出还原后的视 频。因此可以在非直接获取视频的应用场合中,向视频植入数据,获取数据 以及恢复视频。同时通过异步缓存,降低了实时性要求,有效解决了视频拼 接同步的问题,大大提高了视频同步播放效果,而且具有适用性广的特点。

附图说明

图1为本发明实施例中非直接获取视频应用场合拼接视频同步播放的方 法第一实施例流程图;

图2为本发明实施例中非直接获取视频应用场合拼接视频同步播放的方 法第二实施例流程图;

图3为本发明实施例中非直接获取视频应用场合拼接视频同步播放的方 法第三实施例流程图;

图4为本发明实施例中非直接获取视频应用场合拼接视频同步播放的装 置第一实施例结构图;

图5为本发明实施例中非直接获取视频应用场合拼接视频同步播放的装 置第二实施例结构图。

具体实施方式

本发明实施例提供了一种非直接获取视频应用场合拼接视频同步播放的 方法及装置,可以在非直接获取视频的应用场合中,向视频植入数据,获取 数据以及恢复视频。同时通过异步缓存,降低了实时性要求,有效解决了视 频拼接同步的问题,大大提高了视频同步播放效果,而且具有适用性广的特 点。

请参阅图1,本发明实施例中非直接获取视频应用场合拼接视频同步播放 的方法的第一实施例包括:

101、视频源端按预置的规则用预设的帧序号数据替换每帧视频固定位置 的固定字节;

上述帧序号数据包括帧序号和附加信息;

规则和帧序号数据可以预置在视频源端内,规则可以为:用帧序号数据 替换每帧视频固定位置的固定字节,可以是左上角4个字节的图像数据,其 中的帧序号数据的第一个字节,在视频帧数很多的情况下可以在第二个字节 或第三个字节中包含帧序号,上述的帧序号不是视频自带,而是由视频源端 编制的,具体可以为:帧序号数据为4个字节的数据,一个字节为8位二进 制数,当视频数据相对较少的情况下,可以用第一个字节中的前4位二进制 数来表示帧序号,用剩下的字节来表示附加信息。

上述所说的规则,帧序号数据都可以根据实际情况进行设定,而不限于 本实施例中提到的部分。

102、视频源端存储被替换的固定字节及帧序号;

视频源端按预置的规则用预设的帧序号数据替换每帧视频固定位置的固 定字节之后,可以存储被替换的固定字节及上述的帧序号。

103、视频源端把帧序号和被替换的固定字节关联成数组,并存储数组;

视频源端存储被替换的固定字节及帧序号之后,可以把帧序号和被替换 的固定字节关联成数组,具体可以为:假设前5帧的帧序号分别为1、2、3、 4和5,被替换的固定字节分别为a、b、c、d和e,可以用(1、a)、(2、b)、 (3、c)、(4、d)和(5、e)的方式将帧序号和被替换的固定字节关联成数组, 然后将上述的数组进行存储。

104、视频源端缓冲预设帧数的视频及与预设帧数的视频相对应的帧序号 及数组;

视频源端可以缓冲预设帧数,可以是10帧,也可以根据实际情况进行设 定帧数的视频及与预设帧数的视频相对应的帧序号及数组。

105、视频源端发送预设帧数的视频及与预设帧数的视频相对应的帧序号 及数组到FPGA接收端;

视频源端缓冲预设帧数的视频及与预设帧数的视频相对应的帧序号及数 组之后,可以向FPGA接收端发送预设帧数的视频及与预设帧数的视频相对 应的帧序号及数组。

106、FPGA获取每帧视频中植入的帧序号数据;

FPGA接收端接收到预设帧数的视频及与预设帧数的视频相对应的帧序 号及数组之后,可以获取每帧视频中植入的帧序号数据。

107、FPGA根据帧序号查找数组中每一帧视频对应的缺失图像数据,并 进行还原;

FPGA获取每帧视频中植入的帧序号数据之后,可以进行还原视频操作, 首先根据接收到的帧序号和数组,按照它们之间一一对应关系查找数组中每 一帧视频对应的缺失图像数据,然后用缺失图像数据对应替换视频中植入的 帧序号数据即可完成对视频的还原操作。

108、FPGA输出还原后的视频。

FPGA完成对视频的还原操作后,可以对还原后的视频进行输出。

本发明实施例中,视频源端首先按预置的规则用预设的帧序号数据替换 每帧视频固定位置的固定字节,然后存储被替换的固定字节及帧序号,接着 把帧序号和被替换的固定字节关联成数组并存储上述数组,然后缓冲预设帧 数的视频及与预设帧数的视频相对应的帧序号及数组,接着发送预设帧数的 视频及与预设帧数的视频相对应的帧序号及数组到FPGA接收端,FPGA接收 端接收之后获取每帧视频中植入的帧序号数据,然后会根据帧序号查找数组 中每一帧视频对应的缺失图像数据并进行还原,最后FPGA输出还原后的视 频。因此可以在非直接获取视频的应用场合中,向视频植入数据,获取数据 以及恢复视频。同时通过异步缓存,降低了实时性要求,有效解决了视频拼 接同步的问题,大大提高了视频同步播放效果,而且具有适用性广的特点。

上面简单介绍了本发明非直接获取视频应用场合拼接视频同步播放的方 法的第一实施例,下面对本发明非直接获取视频应用场合拼接视频同步播放 的方法的第二实施例进行详细的描述,请参阅图2,本发明实施例中非直接获 取视频应用场合拼接视频同步播放的方法的第二实施例包括:

201、视频源端按预置的规则用预设的帧序号数据替换每帧视频固定位置 的固定字节;

上述帧序号数据包括帧序号和附加信息;

规则和帧序号数据可以预置在视频源端内,规则可以为:用帧序号数据 替换每帧视频固定位置的固定字节,可以是左上角4个字节的图像数据,其 中的帧序号数据的第一个字节,在视频帧数很多的情况下可以在第二个字节 或第三个字节中包含帧序号,上述的帧序号不是视频自带,而是由视频源端 编制的,具体可以为:帧序号数据为4个字节的数据,一个字节为8位二进 制数,当视频数据相对较少的情况下,可以用第一个字节中的前4位二进制 数来表示帧序号,用剩下的字节来表示附加信息。

上述所说的规则,帧序号数据都可以根据实际情况进行设定,而不限于 本实施例中提到的部分。

202、视频源端存储被替换的固定字节及帧序号;

视频源端按预置的规则用预设的帧序号数据替换每帧视频固定位置的固 定字节之后,可以存储被替换的固定字节及上述的帧序号。

203、视频源端把所述帧序号和被替换的固定字节关联成数组,并存储数 组;

视频源端存储被替换的固定字节及帧序号之后,可以把帧序号和被替换 的固定字节关联成数组,具体可以为:假设前5帧的帧序号分别为1、2、3、 4和5,被替换的固定字节分别为a、b、c、d和e,可以用(1、a)、(2、b)、 (3、c)、(4、d)和(5、e)的方式将帧序号和被替换的固定字节关联成数组, 然后将上述的数组进行存储。

204、视频源端缓冲预设帧数的视频及与预设帧数的视频相对应的帧序号 及数组;

视频源端可以缓冲预设帧数,可以是10帧,也可以根据实际情况进行设 定帧数的视频及与预设帧数的视频相对应的帧序号及数组。

205、视频源端发送预设帧数的视频及与预设帧数的视频相对应的帧序号 及数组到FPGA接收端;

视频源端缓冲预设帧数的视频及与预设帧数的视频相对应的帧序号及数 组之后,可以向FPGA接收端发送预设帧数的视频及与预设帧数的视频相对 应的帧序号及数组。

206、FPGA获取每帧视频中植入的帧序号数据;

FPGA接收端接收到预设帧数的视频及与预设帧数的视频相对应的帧序 号及数组之后,可以获取每帧视频中植入的帧序号数据。

207、FPGA检测接收到的视频是否存在丢帧或重复帧,并对重复帧进行 过滤帧处理。

FPGA检测接收到的视频是否存在丢帧或重复帧的具体过程可以为:

(1)FPGA检测接收到的第一帧视频的帧序号是否为1,若是则触发步 骤(2),否则报告出现帧丢失;

(2)FPGA检测接收到的第N+1帧的帧序号与第N帧的帧序号之差是否 为0,若是则报告出现重复帧并触发步骤(3),否则触发步骤(4);

(3)FPGA删除第N+1帧的数据,并触发步骤(2);

(4)FPGA检测接收到的第N+1帧的帧序号与第N帧的帧序号之差是否 为1,若是则触发步骤(2),否则报告出现帧丢失;

完成上述检测过程可以确定接收到的帧数据是否完整。

208、FPGA根据帧序号查找数组中每一帧视频对应的缺失图像数据,并 进行还原;

FPGA确定接收到的帧数据是完整的之后,可以进行还原视频操作,首先 根据接收到的帧序号和数组,按照它们之间一一对应关系查找数组中每一帧 视频对应的缺失图像数据,然后用缺失图像数据对应替换视频中植入的帧序 号数据即可完成对视频的还原操作。

209、FPGA输出还原后的视频。

FPGA完成对视频的还原操作后,可以对还原后的视频进行输出。

本发明实施例中,视频源端首先按预置的规则用预设的帧序号数据替换 每帧视频固定位置的固定字节,然后存储被替换的固定字节及帧序号,接着 把帧序号和被替换的固定字节关联成数组并存储上述数组,然后缓冲预设帧 数的视频及与预设帧数的视频相对应的帧序号及数组,接着发送预设帧数的 视频及与预设帧数的视频相对应的帧序号及数组到FPGA接收端,FPGA接收 端接收之后获取每帧视频中植入的帧序号数据,然后会检测接收到的视频是 否存在丢帧或重复帧,并对重复帧进行过滤帧处理,确定视频完整后会根据 帧序号查找数组中每一帧视频对应的缺失图像数据并进行还原,最后FPGA 输出还原后的视频。因此可以在非直接获取视频的应用场合中,向视频植入 数据,获取数据以及恢复视频。同时通过异步缓存,降低了实时性要求,有 效解决了视频拼接同步的问题,大大提高了视频同步播放效果,而且具有适 用性广的特点,帧检测处理的加入大大增强了视频的可靠性。

上面详细介绍了本发明非直接获取视频应用场合拼接视频同步播放方法 的第二实施例,特别是其中检测帧的过程,下面对本发明非直接获取视频应 用场合拼接视频同步播放方法的第三实施例进行描述,请参阅图3,本发明 实施例中非直接获取视频应用场合拼接视频同步播放方法的第三实施例包 括:

301、主设备检测设备数量;

主设备可以检测设备的数量,以用来确定步骤302中同步信号的个数, 上述的设备可以包括PC视频源端,FPGA同步板,显示单元,RS232串口, 以及DVI视频接口;上述的主设备可以是设备加上控制模块。

其中,PC视频源端负责制作视频源,保存固定位置像素值,更改固定 位置为帧序号信息并将数据关联成数组进行缓存;RS232串口负责将关联数 组信息传送给FPGA端,同时PC端具有两个DVI视频输出接口,将制作好 并缓存的固定帧视频数据通过两个DVI分别输到FPGA同步板卡进行处理;

FPGA同步板负责接收缓存关联数组及固定视频数据,以及接收像素同步 时钟或者场同步信号等同步数据,进行视频同步处理,在同步输出端缓存视 频数据,以及固定位置像素还原,通过两个DVI接口分别将还原的视频数据 输出到显示单元;

显示单元负责接收FPGA同步板处理后的视频信息,并通过DVI连接分 别显示。

302、主设备接收设备进行同步视频处理后输出的同步信号;

上述设备进行同步视频处理可以包括:

视频源端用预设的帧序号数据替换每帧视频固定位置的固定字节之后, 可以存储被替换的固定字节及帧序号,接着视频源端把帧序号和被替换的固 定字节关联成数组,并存储该数组,然后视频源端会缓冲预设帧数,可以为 10帧的视频及与上述预设帧数的视频相对应的帧序号及数组,最后将预设帧 数的视频及与预设帧数的视频相对应的帧序号及数组发送到FPGA接收端; FPGA接收到上述预设帧数的视频及与预设帧数的视频相对应的帧序号及数 组后,可以获取图像中植入的帧序号数据,然后根据帧序号查找数组中每一 帧视频对应的缺失图像数据,并进行还原。

设备进行同步视频处理后,会向主设备输出同步信号。

303、主设备判断是否所有设备输出同步信号,若是则执行步骤304;否 则进入计时状态并执行步骤305;

主设备接收各设备输出的同步信号,当确定接收到所有设备的同步信号 时,执行步骤304,否则进入计时状态并执行步骤305。

304、主设备向所有设备发送统一同步命令,告知所有设备收到命令后进 行同步输出。

主设备确定接收到所有设备的同步信号后,会向所有设备发送统一同步 命令,告知所有设备收到命令后进行同步输出。

305、当计时值等于预设的等待时间值时,主设备判断是否所有设备输出 同步信号,若是则执行步骤304;否则重新启动。

当计时值等于预设的等待时间值时,主设备判断是否所有设备输出同步 信号,若是则执行步骤向所有设备发送统一同步命令,告知所有设备收到命 令后进行同步输出;否则重新启动。

本发明实施例中,主设备首先检测设备的数量,然后接收设备进行同步 视频处理后输出的同步信号;接着判断是否所有设备输出同步信号,若是则 向所有设备发送统一同步命令,告知所有设备收到命令后进行同步输出;否 则进入计时状态,当计时值等于预设的等待时间值时,主设备判断是否所有 设备输出同步信号,若是则向所有设备发送统一同步命令,告知所有设备收 到命令后进行同步输出,否则重新启动。所以可以在非直接获取视频的应用 场合中,向视频植入数据,获取数据以及恢复视频的基础上实现多设备同步 视频并在大屏幕同步输出功能,大大增强了本方法的适用性。

上面详细介绍了本发明非直接获取视频应用场合拼接视频同步播放的方 法的第三实施例,,特别是其中对各设备输出视频进行同步的过程,下面对本 发明非直接获取视频应用场合拼接视频同步播放装置的第一实施例进行详细 的描述,请参阅图4,本发明实施例中非直接获取视频应用场合拼接视频同步 播放装置的第一实施例包括:

替换单元401,用于用预设的帧序号数据替换每帧视频固定位置的固定字 节;

帧序号数据包括帧序号和附加信息;

存储单元402,用于存储被替换的固定字节及帧序号;

关联单元403,用于把帧序号和被替换的固定字节关联成数组,并存储数 组;

缓冲单元404,用于缓冲预设帧数的视频及与预设帧数的视频相对应的帧 序号及数组;

发送单元405,用于发送预设帧数的视频及与预设帧数的视频相对应的帧 序号及数组到FPGA接收端;

获取单元406,用于获取图像中植入的帧序号数据;

还原单元407,用于根据帧序号查找数组中每一帧视频对应的缺失图像数 据,并进行还原;

输出单元408,用于输出还原后的视频。

所述装置还包括:

帧处理单元409,用于检测接收到的视频是否存在丢帧或重复帧,并对重 复帧进行过滤帧处理。

所述帧处理单元409包括:

第一检测子单元4091,用于检测接收到的第一帧视频的帧序号是否为1;

第二检测子单元4092,用于当检测接收到的第一帧视频的帧序号是为1 时,检测接收到的第N+1帧的帧序号与第N帧的帧序号之差是否为0;

删除子单元4093,用于当检测接收到的第N+1帧的帧序号与第N帧的帧 序号之差是为0时,删除第N+1帧的数据,并继续检测接收到的第N+1帧的 帧序号与第N帧的帧序号之差是否为0;

第三检测子单元4094,用于当检测接收到的第N+1帧的帧序号与第N帧 的帧序号之差为1时,检测接收到的第N+1帧的帧序号与第N帧的帧序号之 差是否为0。

替换单元401首先按预置的规则用预设的帧序号数据替换每帧视频固定 位置的固定字节;上述帧序号数据包括帧序号和附加信息;

规则和帧序号数据可以预置在视频源端内,规则可以为:用帧序号数据 替换每帧视频固定位置的固定字节,可以是左上角4个字节的图像数据,其 中的帧序号数据的第一个字节,在视频帧数很多的情况下可以在第二个字节 或第三个字节中包含帧序号,上述的帧序号不是视频自带,而是由视频源端 编制的,具体可以为:帧序号数据为4个字节的数据,一个字节为8位二进 制数,当视频数据相对较少的情况下,可以用第一个字节中的前4位二进制 数来表示帧序号,用剩下的字节来表示附加信息。上述所说的规则,帧序号 数据都可以根据实际情况进行设定,而不限于本实施例中提到的部分。

替换单元401按预置的规则用预设的帧序号数据替换每帧视频固定位置 的固定字节之后,存储单元402可以存储被替换的固定字节及上述的帧序号。

存储单元402存储被替换的固定字节及帧序号之后,关联单元403可以 把帧序号和被替换的固定字节关联成数组,具体可以为:假设前5帧的帧序 号分别为1、2、3、4和5,被替换的固定字节分别为a、b、c、d和e,可以 用(1、a)、(2、b)、(3、c)、(4、d)和(5、e)的方式将帧序号和被替换的 固定字节关联成数组,然后将上述的数组进行存储。

接着缓冲单元404可以缓冲预设帧数,可以是10帧,也可以根据实际情 况进行设定帧数的视频及与预设帧数的视频相对应的帧序号及数组。

缓冲单元404缓冲预设帧数的视频及与预设帧数的视频相对应的帧序号 及数组之后,发送单元405可以向FPGA接收端发送预设帧数的视频及与预 设帧数的视频相对应的帧序号及数组。

FPGA接收端接收到预设帧数的视频及与预设帧数的视频相对应的帧序 号及数组之后,获取单元406可以获取每帧视频中植入的帧序号数据。

接着FPGA检测接收到的视频是否存在丢帧或重复帧,帧处理单元409 对重复帧进行过滤帧处理。FPGA检测接收到的视频是否存在丢帧或重复帧的 具体过程可以为:

(1)第一检测子单元4091检测接收到的第一帧视频的帧序号是否为1, 若是则触发步骤(2),否则报告出现帧丢失;

(2)第二检测子单元4092检测接收到的第N+1帧的帧序号与第N帧的 帧序号之差是否为0,若是则报告出现重复帧并触发步骤(3),否则触发步骤 (4);

(3)删除子单元4093删除第N+1帧的数据,并触发步骤(2);

(4)第三检测子单元4094检测接收到的第N+1帧的帧序号与第N帧的 帧序号之差是否为1,若是则触发步骤(2),否则报告出现帧丢失。

完成上述检测过程可以确定接收到的帧数据是否完整。FPGA确定接收到 的帧数据是完整的之后,还原单元407可以进行还原视频操作,首先根据接 收到的帧序号和数组,按照它们之间一一对应关系查找数组中每一帧视频对 应的缺失图像数据,然后用缺失图像数据对应替换视频中植入的帧序号数据 即可完成对视频的还原操作。

还原单元407完成对视频的还原操作后,输出单元408可以对还原后的 视频进行输出。

本发明实施例中,首先替换单元401按预置的规则用预设的帧序号数据 替换每帧视频固定位置的固定字节,然后存储单元402存储被替换的固定字 节及帧序号,接着关联单元403把帧序号和被替换的固定字节关联成数组并 存储上述数组,然后缓冲单元404缓冲预设帧数的视频及与预设帧数的视频 相对应的帧序号及数组,接着发送单元405发送预设帧数的视频及与预设帧 数的视频相对应的帧序号及数组到FPGA接收端,FPGA接收端接收之后,获 取单元406获取每帧视频中植入的帧序号数据,然后帧处理单元409会检测 接收到的视频是否存在丢帧或重复帧,并对重复帧进行过滤帧处理,确定视 频完整后还原单元407会根据帧序号查找数组中每一帧视频对应的缺失图像 数据并进行还原,最后输出单元408输出还原后的视频。因此可以在非直接 获取视频的应用场合中,向视频植入数据,获取数据以及恢复视频。同时通 过异步缓存,降低了实时性要求,有效解决了视频拼接同步的问题,大大提 高了视频同步播放效果,而且具有适用性广的特点,帧检测处理的加入大大 增强了视频的可靠性。

上面详细介绍了本发明非直接获取视频应用场合拼接视频同步播放装置 的第一实施例,特别是其中检测帧的过程,下面对本发明非直接获取视频应 用场合拼接视频同步播放装置的第二实施例进行描述,请参阅图5,本发明 实施例中非直接获取视频应用场合拼接视频同步播放装置的第二实施例包 括:

检测单元501,用于检测设备数量;

接收单元502,用于接收设备进行同步视频处理后输出的同步信号;

第一判断单元503,用于判断是否所有设备输出同步信号;

发送单元504,用于当确定所有设备输出同步信号时,向所有设备发送统 一同步命令,告知所有设备收到命令后进行同步输出。

第二判断单元505,用于当计时值等于预设的等待时间值时,判断是否所 有设备输出同步信号。

检测单元501可以检测设备的数量,以用来确定各设备进行同步视频处 理后输出的同步信号的个数,上述的设备可以包括PC视频源端,FPGA同步 板,显示单元,RS232串口,以及DVI视频接口;上述的主设备可以是设备 加上控制模块。

其中,PC视频源端负责制作视频源,保存固定位置像素值,更改固定 位置为帧序号信息并将数据关联成数组进行缓存;RS232串口负责将关联数 组信息传送给FPGA端,同时PC端具有两个DVI视频输出接口,将制作好 并缓存的固定帧视频数据通过两个DVI分别输到FPGA同步板卡进行处理;

FPGA同步板负责接收缓存关联数组及固定视频数据,以及接收像素同步 时钟或者场同步信号等同步数据,进行视频同步处理,在同步输出端缓存视 频数据,以及固定位置像素还原,通过两个DVI接口分别将还原的视频数据 输出到显示单元;

显示单元负责接收FPGA同步板处理后的视频信息,并通过DVI连接分别 显示。

接着接收单元502接收设备进行同步视频处理后输出的同步信号;

上述设备进行同步视频处理可以包括:

视频源端用预设的帧序号数据替换每帧视频固定位置的固定字节之后, 可以存储被替换的固定字节及帧序号,接着视频源端把帧序号和被替换的固 定字节关联成数组,并存储该数组,然后视频源端会缓冲预设帧数,可以为 10帧的视频及与上述预设帧数的视频相对应的帧序号及数组,最后将预设帧 数的视频及与预设帧数的视频相对应的帧序号及数组发送到FPGA接收端; FPGA接收到上述预设帧数的视频及与预设帧数的视频相对应的帧序号及数 组后,可以获取图像中植入的帧序号数据,然后根据帧序号查找数组中每一 帧视频对应的缺失图像数据,并进行还原。

设备进行同步视频处理后,会向主设备输出同步信号。

然后第一判断单元503判断是否所有设备输出同步信号,若是则发送单 元504向所有设备发送统一同步命令,告知所有设备收到命令后进行同步输 出;否则进入计时状态。

当计时值等于预设的等待时间值时,第二判断单元505判断是否所有设 备输出同步信号,若是则发送单元504向所有设备发送统一同步命令,告知 所有设备收到命令后进行同步输出;否则重新启动。

本发明实施例中,检测单元501首先检测设备的数量,然后接收单元502 接收设备进行同步视频处理后输出的同步信号;接着第一判断单元503判断 是否所有设备输出同步信号,若是则发送单元504向所有设备发送统一同步 命令,告知所有设备收到命令后进行同步输出;否则进入计时状态,当计时 值等于预设的等待时间值时,第二判断单元505判断是否所有设备输出同步 信号,若是则发送单元504向所有设备发送统一同步命令,告知所有设备收 到命令后进行同步输出,否则重新启动。所以可以在非直接获取视频的应用 场合中,向视频植入数据,获取数据以及恢复视频的基础上实现多设备同步 视频并在大屏幕同步输出功能,大大增强了本方法的适用性。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤 是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机 可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。

以上对本发明所提供的一种非直接获取视频应用场合拼接视频同步播放 方法及装置进行了详细介绍,对于本领域的一般技术人员,依据本发明实施 例的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说 明书内容不应理解为对本发明的限制。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号