CN107040784B - 一种视频缓冲处理方法、系统和装置 - Google Patents

一种视频缓冲处理方法、系统和装置 Download PDF

Info

Publication number
CN107040784B
CN107040784B CN201710175517.8A CN201710175517A CN107040784B CN 107040784 B CN107040784 B CN 107040784B CN 201710175517 A CN201710175517 A CN 201710175517A CN 107040784 B CN107040784 B CN 107040784B
Authority
CN
China
Prior art keywords
data
output
buffer
video
frame
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
Application number
CN201710175517.8A
Other languages
English (en)
Other versions
CN107040784A (zh
Inventor
郑锐
王海蛟
阳树和
王立国
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Zhonghang Shixing Technology Co ltd
Original Assignee
Shenzhen Zhonghang Shixing Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Zhonghang Shixing Technology Co ltd filed Critical Shenzhen Zhonghang Shixing Technology Co ltd
Priority to CN201710175517.8A priority Critical patent/CN107040784B/zh
Publication of CN107040784A publication Critical patent/CN107040784A/zh
Application granted granted Critical
Publication of CN107040784B publication Critical patent/CN107040784B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output

Abstract

本发明公开了一种视频缓冲处理方法,包括:解析输入的视频数据并将帧计数嵌入视频数据,标记其为预处理数据;设置若干缓存区,依顺序将预处理数据写入对应缓存区;基于FIFO原则预处理数据,标记该预处理数据为缓存帧数据;获取输出的缓存帧数据的帧计数,如出现连续的相同帧计数,则放弃后一个缓存帧数据。系统和装置用于执行对应方法。本发明对待传输视频数据进行标记,设置与若干与帧数据大小相符的缓存区,将视频数据依次存入缓存区,然后基于预设的规则输出视频数据,基于标记判断数据是否正确输出,能够解决因为时钟差异导致的输送误差,提高视频数据缓存过程的传输准确性。

Description

一种视频缓冲处理方法、系统和装置
技术领域
本发明涉及一种视频缓冲处理方法、系统和装置,属于视频信息处理领域。
背景技术
随着计算机技术的发展,各种测量技术应运而生,基于多路同步视频的空中运动轨迹测量也得到发展。基于视频的测量对多路视频同步要求高,多路视频测量首先要求是视频采集的同步,其次是处理压缩等过程不能出现丢帧。
目前视频压缩处理已经有相当多的嵌入式处理芯片,但芯片的处理能力还是有限的,不能完全满足所有视频采集压缩的需求。采用多芯片处理可以提高系统的处理能力,基于FPGA的视频实时预处理就可以减少压缩芯片的处理难度,视频预处理和视频压缩不在同一芯片时,就需要进行视频的缓冲处理,以匹配两块芯片的视频数据。视频处理的数据量比较庞大,当前使用较多的视频缓冲处理是乒乓处理,乒乓处理在不同时钟域间处理时可能存在丢帧问题。
发明内容
为了解决上述问题,本发明通过提供一种视频缓冲处理方法、系统和装置。
本发明采用的技术方案一方面为一种视频缓冲处理方法,包括:解析输入的视频数据并将帧计数嵌入视频数据,标记该嵌入帧计数的视频数据为预处理数据;设置若干视频帧大小的缓存区,依顺序将预处理数据写入对应缓存区;基于FIFO的原则输出缓存区中存储的预处理数据,标记该预处理数据为缓存帧数据;获取输出的缓存帧数据的帧计数,如出现连续的相同帧计数,则放弃后一个缓存帧数据。
优选地,所述视频数据的输入速率大于输出的帧速率。
本发明采用的技术方案另一方面为一种视频缓冲处理系统,包括:预处理模块,用于解析输入的视频数据并将帧计数嵌入视频数据,标记该嵌入帧计数的视频数据为预处理数据;缓存模块,用于设置若干视频帧大小的缓存区,依顺序将预处理数据写入对应缓存区,基于FIFO的原则输出缓存区中存储的预处理数据,标记该预处理数据为缓存帧数据;输出模块,用于获取输出的缓存帧数据的帧计数,如出现连续的相同帧计数,则放弃后一个缓存帧数据。
本发明采用的技术方案另一方面为一种视频缓冲处理装置,包括:数据输入端、输入缓冲器、读写控制器、输出缓冲器、中继缓冲器和数据输出端;其中,所述数据输入端用于将帧计数嵌入待传输数据,所述输出缓冲器获取数据输入端的数据并存储,所述读写控制器用于基于预设的规则从输入缓冲器读取数据并写入中继缓冲器或从中继缓冲器读取数据并写入输出缓冲器,所述数据输出端用于从输出缓冲器读取待输出数据并读取对应的帧计数,基于帧计数处理并输出该待输出数据。
优选地,所述数据输入端的数据输入速率大于数据输出端的输出速率。
优选地,所述预设的规则为数据先进先出原则。
本发明的有益效果为对待传输视频数据进行标记,设置与若干与帧数据大小相符的缓存区,将视频数据依次存入缓存区,然后基于预设的规则输出视频数据,基于标记判断数据是否正确输出,能够解决因为时钟差异导致的输送误差,提高视频数据缓存过程的传输准确性。
附图说明
图1所示为基于本发明实施例的一种视频缓冲处理方法的示意图;
图2所示为基于本发明实施例的一种视频缓冲处理装置的示意图。
具体实施方式
以下结合实施例对本发明进行说明。
基于发明的实施例1,如图1所示一种视频缓冲处理方法,包括:解析输入的视频数据并将帧计数嵌入视频数据,标记该嵌入帧计数的视频数据为预处理数据;设置若干视频帧大小的缓存区,依顺序将预处理数据写入对应缓存区;基于FIFO的原则输出缓存区中存储的预处理数据,标记该预处理数据为缓存帧数据;获取输出的缓存帧数据的帧计数,如出现连续的相同帧计数,则放弃后一个缓存帧数据。
所述视频数据的输入速率大于输出的帧速率。
乒乓操作在针对不同时钟之间的处理时,由于输入端和输出的时钟来自不同的时钟源,时钟源本身存在运行的频偏,随着时间的进行,两个时钟之间的误差就会累计变大,最终导致丢帧的风险,本方案设计一种可靠的视频缓冲处理方法,缓冲的处理方法如下:
1、在视频输入端对每帧视频数据进行统计,并将帧计数(即一共通过了几帧)嵌入到视频当中;
2、(FPGA)在设计时保证输出的帧速率略大于输入的帧速率;
3、在外部存储器上分配3个视频帧大小的地址空间,用于视频的缓冲;
4、将接收到的有效视频帧从第一个缓冲区开始,按顺序依次写入对应的地址空间,写完最后一个地址空间后返回第一个;
5、视频输出端永远从上一次写完的地址空间里读取视频数并输出;
6、后端判断读出视频数据的帧计数,如果当前帧和前一帧的帧计数相同,则该帧输出无效,不做处理。
基于发明的实施例2,一种视频缓冲处理系统,包括:预处理模块,用于解析输入的视频数据并将帧计数嵌入视频数据,标记该嵌入帧计数的视频数据为预处理数据;缓存模块,用于设置若干视频帧大小的缓存区,依顺序将预处理数据写入对应缓存区,基于FIFO的原则输出缓存区中存储的预处理数据,标记该预处理数据为缓存帧数据;输出模块,用于获取输出的缓存帧数据的帧计数,如出现连续的相同帧计数,则放弃后一个缓存帧数据。
基于发明的实施例3,如图2所示一种视频缓冲处理装置,包括:数据输入端、输入缓冲器、读写控制器、输出缓冲器、中继缓冲器和数据输出端;其中,所述数据输入端用于将帧计数嵌入待传输数据,所述输出缓冲器获取数据输入端的数据并存储,所述读写控制器用于基于预设的规则从输入缓冲器读取数据并写入中继缓冲器或从中继缓冲器读取数据并写入输出缓冲器,所述数据输出端用于从输出缓冲器读取待输出数据并读取对应的帧计数,基于帧计数处理并输出该待输出数据。
输入缓冲区主要由FIFO存储器构成,接收并写入有效的视频数据,当达到预置的数据量时,由读写控制模块读取并写入到DDR3存储器(即中继缓冲器)中。
输出缓冲区由FIFO存储器构成,提供待输出的视频数据,当数据少于预置值时,由读写控制模块从DDR3存储器中读取数据并写入到缓冲区,输出端再进行数据提取和输出。
读写控制模块负责完成视频缓冲的调度。首先读写控制模块将DDR3存储空间分为三个地址块,用于缓存视频帧,当输入缓冲区的数据达到一定量时,将输入缓冲区的数据写到写地址块,当输出缓冲区的数据少于一定量时,从地址块中读出数据写到输出缓冲区,通过分时轮询的读取和写入,从而保证输入缓冲区的数据不会满,输出缓冲区的数据不会空。当一帧视频数据全部写入到其中一个地址块后,输入地址自动指向下一个地址块(例如第一地址块到第二地址块),若为最后一个地址块,则指向第一个地址块。当一帧数据从地址块读取完成后,读取地址指向当前输入地址块的前一个地址块(例如输入的地址块为第二地址块,则读取为第一地址块)。
所述数据输入端的数据输入速率大于数据输出端的输出速率。
所述预设的规则为数据先进先出原则。
基于发明的实施例4,输入和输出端由于需采用不同时钟源,两个时钟各在各自的时钟域内并行独立运行,随着时间的进行,很容易出现输入比输出快或输出比输入块,当输入比输出快时,输出视频帧率小于输入视频帧率,存在丢帧问题;当输出比输入快时,输出的帧率大于输入的帧率,这时可保证每帧视频都输出到后端,即不会丢帧。这样设计时必须要保证输出的速率总大于输入,输入时钟由采集芯片决定所以不可控制,所以就需要对输出时钟进行调整,在理论输出的频率的基础上增加10%。
在输出大于输入的情况下,虽然不丢帧但也会出现重复帧输出的情况,即相同的帧输出两次。为保证后端能识别重复的帧,采用在输入端对视频帧进行标记的方法。利用视频数据的数据量很大,对单个字节数据的改变不敏感的特点,对输入视频的部分数据用帧计数进行替代,每接收一帧数据帧计数加一,从0到255循环计数,这样写入的相邻3帧数据不会出现相同的帧序号,若相邻两帧的帧序号相同即说明存在重复帧。
在输入端对行同步信号、列同步信号进行计数,当行计数和列计数都为1时,将当前的帧计数写入输入缓冲区替代原始的视频数据,其它时间则直接将视频数据写入到输入缓冲区,从而达到实时标记视频帧的目的。
缓冲区对视频缓冲的作用,这里以最极限的情况进行说明,当输出端输入完一帧(存储于RAM3),而输入端也即将写完一帧(存储于RAM1)的情况进行说明。由于输入端对RAM1还没写完继续向RAM1写入,按照规则,输出端将对RAM3的视频进行重复输出,在输出端再次完成一帧输出后,这时输入端已经写完RAM1,并对RAM2进行写入,由于输出的帧率比输入快,输出完成一帧时,输入不能完成一帧的写入,即输入端还在进行RAM2的写入,输出端对RAM1的内容进行输出,这样在插入一帧的视频的情况下,不会出现跳帧问题。
以上所述,只是本发明的较佳实施例而已,本发明并不局限于上述实施方式,只要其以相同的手段达到本发明的技术效果,都应属于本发明的保护范围。在本发明的保护范围内其技术方案和/或实施方式可以有各种不同的修改和变化。

Claims (3)

1.一种视频缓冲处理装置,其特征在于,包括:
数据输入端、输入缓冲器、读写控制器、输出缓冲器、中继缓冲器和数据输出端;其中,
所述数据输入端用于将帧计数嵌入待传输数据,所述输出缓冲器获取数据输入端的数据并存储,所述读写控制器用于基于预设的规则从输入缓冲器读取数据并写入中继缓冲器或从中继缓冲器读取数据并写入输出缓冲器,所述数据输出端用于从输出缓冲器读取待输出数据并读取对应的帧计数,基于帧计数处理并输出该待输出数据;
所述输入缓冲器包括有输入缓冲区,所述输入缓冲区主要由FIFO存储器构成,接收并写入有效的视频数据,当达到预置的数据量时,由所述读写控制器读取并写入到DDR3存储器中;
所述输出缓冲器包括有输出缓冲区,所述输出缓冲区由FIFO存储器构成,提供待输出的视频数据,当数据少于预置值时,由所述读写控制器从DDR3存储器中读取数据并写入到缓冲区,所述数据输出端再进行数据提取和输出;所述帧计数用于在输入端对行同步信号、列同步信号进行计数,所述帧计数的行计数和列计数都为1时,将当前的帧计数写入所述输入缓冲器中替代原始的视频数据,其他时间则直接将视频数据写入所述输入缓冲器中。
2.根据权利要求1所述的一种视频缓冲处理装置,其特征在于,所述数据输入端的数据输入速率大于数据输出端的输出速率。
3.根据权利要求1所述的一种视频缓冲处理装置,其特征在于,所述预设的规则为数据先进先出原则。
CN201710175517.8A 2017-03-22 2017-03-22 一种视频缓冲处理方法、系统和装置 Active CN107040784B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710175517.8A CN107040784B (zh) 2017-03-22 2017-03-22 一种视频缓冲处理方法、系统和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710175517.8A CN107040784B (zh) 2017-03-22 2017-03-22 一种视频缓冲处理方法、系统和装置

Publications (2)

Publication Number Publication Date
CN107040784A CN107040784A (zh) 2017-08-11
CN107040784B true CN107040784B (zh) 2020-12-15

Family

ID=59533322

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710175517.8A Active CN107040784B (zh) 2017-03-22 2017-03-22 一种视频缓冲处理方法、系统和装置

Country Status (1)

Country Link
CN (1) CN107040784B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109803065B (zh) * 2019-01-28 2021-02-26 深兰人工智能芯片研究院(江苏)有限公司 一种数据处理方法及系统
CN116743951B (zh) * 2023-08-09 2024-01-12 山东云海国创云计算装备产业创新中心有限公司 一种视频数据处理方法、系统、存储介质和电子设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101175012A (zh) * 2006-11-01 2008-05-07 大唐移动通信设备有限公司 一种分帧媒体数据传输方法、系统及装置
CN101335602A (zh) * 2008-06-11 2008-12-31 南京磐能电力科技股份有限公司 一种基于fpga的点到多点udp实时数据发送和确认方法
CN101771554A (zh) * 2008-12-31 2010-07-07 中国航空工业第一集团公司第六三一研究所 一种余度管理电路及其管理方法
CN101897139A (zh) * 2007-10-10 2010-11-24 Lg电子株式会社 在无线网络中重传多播帧的方法及处理接收到的多播帧的方法
CN102006173A (zh) * 2010-10-28 2011-04-06 武汉中元华电科技股份有限公司 一种以太网接口扩展方法及装置
CN104125424A (zh) * 2014-08-06 2014-10-29 中航华东光电(上海)有限公司 一种基于fpga的高速、可变帧视频显存设计方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101996662B (zh) * 2010-10-22 2012-08-08 深圳市万兴软件有限公司 视频文件的连接输出方法和装置
CN102270444B (zh) * 2011-09-07 2014-03-26 东莞中山大学研究院 视频处理芯片数据流控制及帧缓存装置
CN103269421B (zh) * 2013-05-23 2016-05-18 广东威创视讯科技股份有限公司 视频图像的降帧方法和系统
CN103997615A (zh) * 2014-05-05 2014-08-20 中国科学院长春光学精密机械与物理研究所 一种基于FPGA的Camera Link转SD/HD-SDI的装置
CN105574810B (zh) * 2015-12-18 2019-03-15 上海华力创通半导体有限公司 用于图像系统总线带宽不足的图像实时传输容错方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101175012A (zh) * 2006-11-01 2008-05-07 大唐移动通信设备有限公司 一种分帧媒体数据传输方法、系统及装置
CN101897139A (zh) * 2007-10-10 2010-11-24 Lg电子株式会社 在无线网络中重传多播帧的方法及处理接收到的多播帧的方法
CN101335602A (zh) * 2008-06-11 2008-12-31 南京磐能电力科技股份有限公司 一种基于fpga的点到多点udp实时数据发送和确认方法
CN101771554A (zh) * 2008-12-31 2010-07-07 中国航空工业第一集团公司第六三一研究所 一种余度管理电路及其管理方法
CN102006173A (zh) * 2010-10-28 2011-04-06 武汉中元华电科技股份有限公司 一种以太网接口扩展方法及装置
CN104125424A (zh) * 2014-08-06 2014-10-29 中航华东光电(上海)有限公司 一种基于fpga的高速、可变帧视频显存设计方法

Also Published As

Publication number Publication date
CN107040784A (zh) 2017-08-11

Similar Documents

Publication Publication Date Title
CN111417935B (zh) 用于分布式缓冲器存储器系统的地址/命令芯片同步的自动数据芯片地址定序器
CN107040784B (zh) 一种视频缓冲处理方法、系统和装置
CN109919952A (zh) 一种在fpga中将大图切割为几幅小图并同时显示的方法
US20110320647A1 (en) Skip based control logic for first in first out buffer
US20110264853A1 (en) Signal control device and signal control method
US20160335734A1 (en) Memory subsystem synchronization primitives
CN116225990A (zh) 基于fpga的多通道ddr读写仲裁装置
CN105874774B (zh) 用于在帧的处理过程中保持计数表的计数表保持装置以及相关的保持方法
CN106792070B (zh) 一种音视频数据dma传输方法及装置
WO2003001449A3 (en) Method and system for processing two-dimensional image data
US7549074B2 (en) Content deskewing for multichannel synchronization
CN105138467B (zh) 数据存取装置、方法及磁共振设备
US8922676B2 (en) Video frame buffer
US10637780B2 (en) Multiple datastreams processing by fragment-based timeslicing
EP1353510A3 (en) Image processing apparatus and image processing method
CN1984339A (zh) 用于存储数据分组的方法和系统
CN100592777C (zh) 信息处理装置和方法
EP2133797B1 (en) Dma transfer device and method
JP4126959B2 (ja) データ転送システム、およびアクセスモニタ装置
CN111669516A (zh) 一种基于fpga实现八路视频数据的横向拼接及imu数据的实时同步方法
CN117097881B (zh) 一种图像处理模块的调试方法和装置
RU2601833C1 (ru) Прибор приема-передачи информационных массивов
CN117788269B (zh) 一种基于fpga的光斑质心快速定位方法及其相关设备
CN115865808B (zh) 灵活以太网的数据块的处理方法、装置、存储介质
CN111221716B (zh) 一种基于fpga可配置数据仿真合成方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant