CN101969552B - 一种视频数据并行处理***及其方法 - Google Patents
一种视频数据并行处理***及其方法 Download PDFInfo
- Publication number
- CN101969552B CN101969552B CN 201010546965 CN201010546965A CN101969552B CN 101969552 B CN101969552 B CN 101969552B CN 201010546965 CN201010546965 CN 201010546965 CN 201010546965 A CN201010546965 A CN 201010546965A CN 101969552 B CN101969552 B CN 101969552B
- Authority
- CN
- China
- Prior art keywords
- video
- processing system
- processing
- handle packet
- image handle
- 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
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明涉及视频处理领域,特别是一种视频数据并行处理***及其方法,所述***包括:多个视频处理***和一个视频输出***,每个视频处理***与非透明桥连接,多个视频处理***之间通过非透明桥通讯,与显示设备连接的视频输出***与非透明桥连接,通过非透明桥与每个视频处理***通讯。本发明突破了单个高性能CPU或GPU的计算能力,大大提高了海量视频信号的处理能力;而且该处理方法不会单纯地依靠硬件技术如CPU处理速度等的发展,可以通过合理调节视频处理步骤来实现快速视频处理的功能。
Description
技术领域
本发明涉及视频处理领域,特别是一种视频数据并行处理***及其方法。
背景技术
图像与人们的生产生活息息相关,是人类获取和交换信息的主要来源,据统计人类有80%以上的信息来自于图象。随着数字化进程的加速普及,人们对视频的需求提出了更高的要求,电视、内容、数字 摄像机等提供的各种形式视频正在向高清转变。高清晰度的视频在各个领域的应用越来越广,3D技术也日趋成熟,需要对海量视频数据进行复杂处理的应用越来越多,这个对视频处理技术提出了一个新的挑战。
传统的视频处理多采用GPU( Graphic Processing Unit,中文翻译为“图形处理器”)进行,限于目前单个显卡的处理能力有限,需要同时对一个大屏幕的高清视频数据进行纹理映射、颜色混合、3D渲染等操作的场合已经很难胜任了。近年来,对于视频并行运算的研究取得了很多进展,提出了很多的解决办法,但是这些办法都是仅仅解决了视频处理中的某一个问题。例如目前利用网络进行并行运算的计算机***,虽然其并行运算的能力较强,但是对于海量的视频数据,其数据传输能力有很大的局限性;网络带宽不足以实时地传输信号,这导致出现图像无法流畅显示的问题,随着目前需要处理的视频数据量的增加,这种缺陷已越来越严重。
发明内容
本发明的第一个发明目的在于提供一种视频数据并行处理***,以解决现有技术处理海量视频数据时处理能力低下的技术问题。
为了实现本发明的第一个发明目的,采用的技术方案如下:
一种视频数据并行处理***,所述***包括:多个视频处理***和一个视频输出***,每个视频处理***与非透明桥连接,多个视频处理***之间通过非透明桥通讯,与显示设备连接的视频输出***与非透明桥连接,通过非透明桥与每个视频处理***通讯。
作为一种优选方案,所述视频处理***通过PCI-E(Peripheral Component Interconnect Express)总线与非透明桥连接,所述视频输出***通过PCI-E总线与非透明桥连接。
作为进一步的优选方案,所述视频处理***包括依次连接的接收模块和处理模块:
所述接收模块用于接收图像处理数据包并发送到处理模块,所述图像处理数据包包括视频流数据和视频处理命令;
所述处理模块根据视频处理命令对视频流数据进行处理,并输出处理后的图像处理数据包。
所述处理模块还包括检测子模块,用于检测图像处理数据包是否需要后续视频处理,如果需要则修改视频处理命令为后续视频处理命令后输出处理后的图像处理数据包到后续视频处理***,否则输出处理后的图像处理数据包到视频输出***。
作为再进一步的优选方案,所述***还包括分别与多个视频处理***连接的同步模块:
所述同步模块设有定时器,当达到预先设定的处理时间时,同步模块向多个视频处理***的处理模块发出同步信号,处理模块接收到同步信号后,输出处理后的图像处理数据包。
本发明的第二个发明目的在于提供一种视频数据并行处理方法,以应用本发明第一个发明目的所提供的***。
为了实现本发明的第二个发明目的,采用的技术方案如下:
一种视频数据并行处理方法,所述方法包括:
(1)第一视频处理***在第一处理时间内对第一图像处理数据包根据进行处理得到第一视频处理***第一图像处理数据包;
(2)第一视频处理***把第一视频处理***第一图像处理数据包发送到第二视频处理***;
(3)第一视频处理***在第二处理时间内对第二图像处理数据包进行处理得到第一视频处理***第二图像处理数据包;
(4)第二视频处理***中第二处理时间内对第一视频处理***第一图像处理数据包进行处理得到第二视频处理***第一图像处理数据包,并把第二视频处理***第一图像处理数据包发送到视频输出***进行输出;
(5)第一视频处理***把第一视频处理***第二图像处理数据包发送到第二视频处理***;
(6)第二视频处理***在第三处理时间内对第一视频处理***第二图像处理数据包进行处理得到第二视频处理***第二图像处理数据包并把第二视频处理***第二图像处理数据包发送到视频输出***进行输出。
作为一种优选方案:
所述步骤(1)包括第一视频处理***在第一处理时间内根据第一视频处理命令对第一图像处理数据包根据进行处理得到第一视频处理***第一图像处理数据包;
所述步骤(3)包括第一视频处理***在第二处理时间内根据第一视频处理命令对第二图像处理数据包进行处理得到第一视频处理***第二图像处理数据包;
所述步骤(4)包括第二视频处理***中第二处理时间内根据第二视频处理命令对第一视频处理***第一图像处理数据包进行处理得到第二视频处理***第一图像处理数据包;
所述步骤(6)包括第二视频处理***在第三处理时间内根据第二视频处理命令对第一视频处理***第二图像处理数据包进行处理得到第二视频处理***第二图像处理数据包。
作为进一步的优选方案:
所述步骤(1)包括:第一视频处理***在第一处理时间内接收到包括第一视频流数据和第一视频数据处理命令的第一图像处理数据包;
第一视频处理***根据第一图像处理数据包的第一视频数据处理命令对第一视频流数据进行处理;
如果处理完毕则发送处理完成信息给同步模块,第一视频流数据处理完毕后得到第一视频处理***第一视频流数据,第一视频处理***第一视频流数据与第二视频数据处理命令组合得到第一视频处理***第一图像处理数据包,如果处理完毕后接收到同步信号,则发送第一视频处理***第一图像处理数据包到第二视频处理***;
所述步骤(3)包括:第一视频处理***在第二处理时间内接收到包括第二视频流数据和第一视频数据处理命令的第二图像处理数据包;
第一视频处理***根据第二图像处理数据包的第一视频数据处理命令对第二视频流数据进行处理;
如果处理完毕则发送处理完成信息给同步模块,第一视频流数据处理完毕后得到第一视频处理***第二视频流数据,第一视频处理***第二视频流数据与第二视频数据处理命令组合得到第一视频处理***第二图像处理数据包,如果处理完毕后接收到同步信号,则发送第一视频处理***第二图像处理数据包到第二视频处理***;
所述步骤(4)包括:第二视频处理***在第二处理时间内接收到包括第一视频处理***第一视频流数据和第二视频数据处理命令的第一视频处理***第一图像处理数据包;
第二视频处理***根据第一视频处理***第一图像处理数据包的第二视频数据处理命令对第一视频处理***第一视频流数据进行处理;
如果处理完毕则发送处理完成信息给同步模块,第一视频处理***第一视频流数据处理完毕后得到第二视频处理***第一视频流数据,作为第二视频处理***第一图像处理数据包,如果处理完毕后接收到同步信号且无需后续步骤,则输出第二视频处理***第一图像处理数据包到视频输出***,如果处理完毕后接收到同步信号且需要后续步骤,则丢弃第二视频处理***第一图像处理数据包;
所述步骤(6)包括:第二视频处理***在第三处理时间内接收到包括第一视频处理***第二视频流数据和第二视频数据处理命令的第一视频处理***第二图像处理数据包;
第二视频处理***根据第一视频处理***第二图像处理数据包的第二视频数据处理命令对第一视频处理***第二视频流数据进行处理;
如果处理完毕则发送处理完成信息给同步模块,第一视频处理***第二视频流数据处理完毕后得到第二视频处理***第二视频流数据,作为第二视频处理***第二图像处理数据包,如果处理完毕后接收到同步信号且无需后续步骤,则发送第二视频处理***第二图像处理数据包到视频输出***,如果处理完毕后接收到同步信号且需要后续步骤,则丢弃第二视频处理***第二图像处理数据包。
作为更进一步的优选方案,所述步骤(1)还包括:第一视频处理***如果未完成处理但接收到同步信号,则强制中断处理,将第一视频处理***第一视频流数据设置为第一视频流数据,将第二视频处理命令设置为第一视频处理命令,将第一视频处理***第一视频流数据和第二视频命令作为第一视频处理***第一图像处理数据包发送到第二视频处理***;
所述步骤(3)还包括:所述第一视频处理***如果未完成处理但接收到同步信号,则强制中断处理,将第一视频处理***第二视频流数据设置为第二视频流数据,将第二视频处理命令设置为第一视频处理命令,将第一视频处理***第二视频流数据和第二视频命令作为第一视频处理***第二图像处理数据包发送到第二视频处理***;
所述步骤(4)还包括:所述第二视频处理***如果未完成处理但接收到同步信号,则强制中断处理;
所述步骤(6)还包括:所述第二视频处理***如果未完成处理但接收到同步信号,则强制中断处理。
作为更进一步的优选方案,所述步骤(1)还包括:第一视频处理***如果未完成处理但接收到同步信号,则强制中断处理并丢弃第一图像处理数据包;
所述步骤(3)还包括:第一视频处理***如果未完成处理但接收到同步信号,则强制中断处理并丢弃第二图像处理数据包;
所述步骤(4)还包括:所述第二视频处理***如果未完成处理但接收到同步信号,则强制中断处理;
所述步骤(6)还包括:所述第二视频处理***如果未完成处理但接收到同步信号,则强制中断处理。
作为更进一步的优选方案,所述同步模块在以下两种情况下向第一视频处理***和第二视频处理***同时发出同步信号:
(i)到达预先设置的同步时间,或者;
(ii)接收到第一视频处理***发出的处理完成信息和第二视频处理***发出的处理完成信息。
本发明提出了一种并行视频处理的方法,以及实现该方法的硬件基础----基于PCI-E总线(Peripheral Component Interconnect Express)连接的并行视频处理***。该并行视频处理***包括了多个视频处理***,一个非透明桥和一个视频输出***。多个视频处理***和视频输出***通过PCI-E总线互联,在它们之间建立了高速的视频数据传输通道。视频处理***主要完成规定的各种视频处理,视频输出***负责完成视频数据对屏幕的输出。基于该并行视频处理***的基础上,提出了一种并行视频处理的方法。该方法人为地将需要使用的视频处理过程分为若干个步骤,每个步骤分块的原则是处理时间基本相等;视频处理步骤的粒度可大可小,小至包括一个视频数据的深度缓冲或者对数变换,大至视频数据的整个3D渲染过程;每个视频处理步骤由***内的单个视频处理***进行处理,同时考虑到每个处理步骤的时间差异性问题,提出了一种同步机制;在处理过程中,同一个时间内,每个视频处理步骤是同时在每个视频处理***进行的,达到了并行处理的效果;最后处理好的数据统一由高速的PCI-E通道送视频输出***进行输出显示。
本发明中采用了高速的PCI-E传输通道,如采用X4,通道的总带宽可以达到4GB/s(每个字节10比特来计算),单方向带宽可以达到2GB/s,该总线连接的架构解决了海量视频数据传输的瓶颈问题,为并行处理提供了硬件基础。本发明突破了单个高性能CPU或GPU的计算能力,大大提高了海量视频信号的处理能力;而且该处理方法不会单纯地依靠硬件技术如CPU处理速度等的发展,可以通过合理调节视频处理步骤来实现快速视频处理的功能。
附图说明
图1 为本发明实施例的***结构图;
图2为本发明实施例的流程图;
图3为本发明实施例的***并行处理模式示意图;
图4为本发明实施例同步模块处理流程图;
图5为本发明实施例出错处理示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步详细的说明。
如图1所示为本发明实施例的***结构图。
一种并行视频处理***,包括至少一个非透明桥、多个视频处理***和一个视频输出***,所述多个视频处理***通过PCI-E总线和非透明桥相连接;一个视频输出***通过PCI-E总线和非透明桥相连接;多个视频处理***和视频输出***通过PCI-E总线连接并进行高速视频数据交换。
非透明桥用于连接视频处理***和视频输出***,通过非透明桥芯片实现。它为***之间提供一个高速的数据交换通道和通信的桥梁。
视频处理***至少包含了一个CPU、具有图像处理功能的设备、PCI-E总线控制器以及输入输出设备,主要用于对视频数据进行处理,处理可以包括缩放、图象去噪优化、3D渲染等细粒度的处理,也可以包括3D图像处理、GIS等大粒度的处理。
视频输出***至少包含了一个CPU、具有图像处理功能的设备、PCI-E总线控制器以及输入输出设备,主要用于视频数据的输出,图像数据的后处理等,也可以实现对多个来自视频处理***的信号进行叠加输出。
参见图1,多个视频处理***和一个视频输出***通过PCI-E总线(Peripheral Component Interconnect Express,最新的总线和接口标准,该处采用2.0规范,随着规范版本提升,带宽可以相应提升)和非透明桥(NTB)相连接,利用NTB的交换(switch)功能,实现多个视频***之间的点对点通信。连接方式见图1,各个视频处理***之间相互连接,每个视频处理***都可以单独和任意一个视频处理***之间通信和进行海量数据传输;视频输出***通过非透明桥的连接,也可以和任意一个视频处理***连接,视频处理***可以将任意一个视频处理***的数据输出给屏幕显示。
每个视频处理***具有一个或多个***设备相关联的信息处理部件,***设备信息传输具有一个基础协议,即PCI-E。单通道的PCI-E总线带宽可以达到1GB/s,该总线有X1、X2、X4、X8和X16、X32(X32目前还不支持)通道规格可选,如果采用X4,通道的总带宽可以达到4GB/s(每个字节10比特来计算),单方向带宽可以达到2GB/s,即20Gbit/s。超宽的PCI-E数据传输通道为海量视频数据提供了高速通道。例如逐行扫描,帧率通常为60Hz的 1080P无压缩视频传输需要3Gbit/s的数据通道,采用PCI-E通道可以传输多个1080P视频数据,保证了视频信号传输的流畅。有了这样的高速数据传输通道,就可以实现海量视频数据的迅速传输,为并行视频处理提供了硬件基础。
在图像处理的过程中,需要对图像进行纹理映射、颜色混合、深度缓冲、模板缓冲等步骤。这些串行步骤的执行均需要非常大的计算量,并且耗时。因此,我们这里将视频图像的处理分成若干个步骤,分别由不同的视频处理***来处理,最后完成视频图像的处理并通过视频输出***进行输出显示。每个视频处理***都具备任意一个图像处理步骤的功能,它根据上一个数据流携带的处理命令来执行相应的处理。我们在传输过程中对视频流数据进行打包,一包数据可以包含一帧图像或者几十帧图像,这个可以根据实际的需求而定,原则是数据交换的次数越少越好,但是数据包也不能太大而至于影响到图像处理的时间。在数据包里边,我们专门指定了一个位置用于包含视频数据处理命令。该处理命令在该包数据被成功处理后,该位置的处理命令改为下一个处理命令。若该包数据没有被成功处理,该处理命令不变。
因为有了各个视频处理***间的高速PCI-E通道,所以数据包传送的时间相对与图像处理步骤的时间来说非常少。每个图像处理步骤都包含了一个完整的流程,如图2所示。首先,视频处理***接收到图像处理数据包,然后读图像处理命令进行解析,明确需要执行的是哪一步图像处理工作。完成命令解析后,开始执行图像步骤的处理。接着判断是否处理完毕,如果没有处理完毕则进入判断同步信号是否到来的流程,如果同步信号没有到来重新进入处理流程,如果同步信号到来则强制中断处理,将原来数据包发送到下一级处理***;如果处理完毕则发送处理完成信息给同步模块,同时在已经处理完的数据包中加入下一级处理命令。进入判断同步信号是否到来的流程,如果同步信号没有到来,进行等待;如果同步信号到来,则发送新的数据包到下一级处理流程。下一级处理流程启动后,重复如上的处理步骤。
我们可以将图像处理过程的过程分为A、B、C、D四个步骤,每个步骤在一个视频处理***中执行。如图3所示,我们采用视频处理***并行做图像处理。在T1时间周期内,由视频处理***1发起图像处理的命令,并且将完成了图像处理步骤A后的数据打包,同时加上图像处理步骤B的处理命令,发送到视频处理***2。发送完数据以后,视频处理***1继续对后续进来的视频流信号做处理。在T2时间周期内,视频处理***2接收到视频处理***1发送过来的数据包后,首先分析其图像处理命令,发现是图像处理的步骤B,便完成步骤B,同时打包该处理完的数据并加上图像处理步骤C的处理命令,将数据发送到视频处理***3。发送完数据后视频处理***2继续完成其后续视频流的处理。在T3时间周期内,视频处理***1和视频处理***2在进行视频图像处理的同时,视频处理***3接收到发过来的视频数据包后,对处理步骤命令进行分析,完成步骤C的处理;处理完毕,数据打包并添加步骤D的处理命令后发送到视频处理***4。视频处理***3继续完成后续的视频流的处理。在T4时间周期内,视频处理***1和视频处理***2在进行视频图像处理的同时,视频处理***3接收到发过来的视频数据包后,对处理步骤命令进行分析,完成步骤C的处理;处理完毕,数据打包并添加步骤D的处理命令后发送到视频处理***4。视频处理***3继续完成后续的视频流的处理。在T4的时间周期内,视频处理***1、视频处理***2和视频处理***3同时在做视频图像处理;视频处理***4接收到数据后,判断处理命令,完成步骤D的处理,此时该包图像全部处理完毕,便送视频输出***进行显示。
上述的处理过程只是一个基本视频数据并行处理方法,它的一个关键在于整个图像处理步骤时间的合理安排,要求每个操作步骤的划分合理。如果前级操作时间恰好等于后级的操作时间,则最为简单,前级的输出直接汇入后级的输入即可;如果前级操作时间大于后级的操作时间,则需要对前级的输出数据适当缓存才能汇入到后级输入端;如果前级操作时间恰好小于后级的操作时间,则必须通过复制逻辑,将数据流分流,或者在前级对数据采用存储、后处理方式,否则会造成后级数据溢出。为了解决上述问题,我们在对图像处理步骤进行划分时,尽量使得每个步骤的处理时间都相同,这样可以很大程度上缓解前后级之间处理时间不一致造成的矛盾;同时引入同步机制,在多个视频处理***之间建立一个同步信息传递机制,每个视频数据包被处理后往同步处理模块发送一个值,当在一个时间周期内所有的处理步骤往同步处理模块发送了处理完毕的值后,由同步处理模块发送视频数据流统一下传的命令。
下图4为同步模块处理流程,每次进入一个新的视频图像处理流程后,同步模块开始计数;在同步模块计数器件,图像处理的每个步骤处理完毕后,视频处理***均会发出处理完毕命令;同步模块接收该命令,并对此进行判断在该图像处理周期中所有的处理步骤是否处理完毕;如果处理完毕则发出下个处理步骤的同步信号;若没有处理完毕则通过计数器判断该次处理周期时间是否达到T,如果达到时间T则强制完成该处理周期,发出下一个处理步骤的同步信号,如果没有达到时间T则转入判断所有步骤是否处理完毕的流程中。
当强制同步信号到来时,由于某种特殊情况,视频处理***对于本***的图像处理步骤无法完成,如图5所示,在T3周期,视频处理***3处理处错。此时,为了不影响整个处理流程的时间,将数据包继续往下一级发送,并且执行相同的处理步骤。在T3时间周期,本来由视频处理***3完成的处理步骤C,出错后,在T4时间周期,由视频处理***4完成。
上述提到图像处理步骤A、B、C、D可以根据不同的应用来定义,处理步骤的粒度可大可小。对于一些比较大粒度的功能分工,如3D处理和GIS等,采用本发明实施例的方式进行处理。如图3所示,可以用步骤A表示3D处理,步骤B表示GIS处理,由两个视频处理***分别完成,同时在视频输出进行叠加显示;并采用方法中提到的同步机制使得两个***处理后的图像能同时显示。
以上所述仅是本发明的优选实施方式,应当指出,对于本领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,例如增加多条传输线等,这些改进和润饰也应视为本发明的保护范围。
Claims (7)
1.一种视频数据并行处理***,其特征在于,所述***包括:多个视频处理***和一个视频输出***,每个视频处理***与非透明桥连接,多个视频处理***之间通过非透明桥通讯,与显示设备连接的视频输出***与非透明桥连接,通过非透明桥与每个视频处理***通讯;
所述视频处理***包括依次连接的接收模块和处理模块:
所述接收模块用于接收图像处理数据包并发送到处理模块,所述图像处理数据包包括视频流数据和视频处理命令;
所述处理模块根据视频处理命令对视频流数据进行处理,并输出处理后的图像处理数据包;
所述处理模块还包括检测子模块,用于检测图像处理数据包是否需要后续视频处理,如果需要则修改视频处理命令为后续视频处理命令后输出处理后的图像处理数据包到后续视频处理***,否则输出处理后的图像处理数据包到视频输出***;
其中,视频输出***至少包含了一个CPU、具有图像处理功能的设备、PCI-E总线控制器以及输入输出设备;
视频处理***至少包含了一个CPU、具有图像处理功能的设备、PCI-E总线控制器以及输入输出设备。
2.根据权利要求1所述的视频数据并行处理***,其特征在于,所述视频处理***通过PCI-E总线与非透明桥连接,所述视频输出***通过PCI-E总线与非透明桥连接。
3.根据权利要求1所述的视频数据并行处理***,其特征在于,所述***还包括分别与多个视频处理***连接的同步模块:
所述同步模块设有定时器,当达到预先设定的处理时间时,同步模块向多个视频处理***的处理模块发出同步信号,处理模块接收到同步信号后,输出处理后的图像处理数据包。
4.一种视频数据并行处理方法,其特征在于,所述方法包括:
(1)第一视频处理***在第一处理时间内对第一图像处理数据包根据进行处理得到第一视频处理***第一图像处理数据包;
(2)第一视频处理***把第一视频处理***第一图像处理数据包发送到第二视频处理***;
(3)第一视频处理***在第二处理时间内对第二图像处理数据包进行处理得到第一视频处理***第二图像处理数据包;
(4)第二视频处理***中第二处理时间内对第一视频处理***第一图像处理数据包进行处理得到第二视频处理***第一图像处理数据包,并把第二视频处理***第一图像处理数据包发送到视频输出***进行输出;
(5)第一视频处理***把第一视频处理***第二图像处理数据包发送到第二视频处理***;
(6)第二视频处理***在第三处理时间内对第一视频处理***第二图像处理数据包进行处理得到第二视频处理***第二图像处理数据包并把第二视频处理***第二图像处理数据包发送到视频输出***进行输出;
所述步骤(1)包括第一视频处理***在第一处理时间内根据第一视频处理命令对第一图像处理数据包根据进行处理得到第一视频处理***第一图像处理数据包;
所述步骤(3)包括第一视频处理***在第二处理时间内根据第一视频处理命令对第二图像处理数据包进行处理得到第一视频处理***第二图像处理数据包;
所述步骤(4)包括第二视频处理***中第二处理时间内根据第二视频处理命令对第一视频处理***第一图像处理数据包进行处理得到第二视频处理***第一图像处理数据包;
所述步骤(6)包括第二视频处理***在第三处理时间内根据第二视频处理命令对第一视频处理***第二图像处理数据包进行处理得到第二视频处理***第二图像处理数据包;
所述步骤(1)包括:第一视频处理***在第一处理时间内接收到包括第一视频流数据和第一视频数据处理命令的第一图像处理数据包;
第一视频处理***根据第一图像处理数据包的第一视频数据处理命令对第一视频流数据进行处理;
如果处理完毕则发送处理完成信息给同步模块,第一视频流数据处理完毕后得到第一视频处理***第一视频流数据,第一视频处理***第一视频流数据与第二视频数据处理命令组合得到第一视频处理***第一图像处理数据包,如果处理完毕后接收到同步信号,则发送第一视频处理***第一图像处理数据包到第二视频处理***;
所述步骤(3)包括:第一视频处理***在第二处理时间内接收到包括第二视频流数据和第一视频数据处理命令的第二图像处理数据包;
第一视频处理***根据第二图像处理数据包的第一视频数据处理命令对第二视频流数据进行处理;
如果处理完毕则发送处理完成信息给同步模块,第一视频流数据处理完毕后得到第一视频处理***第二视频流数据,第一视频处理***第二视频流数据与第二视频数据处理命令组合得到第一视频处理***第二图像处理数据包,如果处理完毕后接收到同步信号,则发送第一视频处理***第二图像处理数据包到第二视频处理***;
所述步骤(4)包括:第二视频处理***在第二处理时间内接收到包括第一视频处理***第一视频流数据和第二视频数据处理命令的第一视频处理***第一图像处理数据包;
第二视频处理***根据第一视频处理***第一图像处理数据包的第二视频数据处理命令对第一视频处理***第一视频流数据进行处理;
如果处理完毕则发送处理完成信息给同步模块,第一视频处理***第一视频流数据处理完毕后得到第二视频处理***第一视频流数据,作为第二视频处理***第一图像处理数据包,如果处理完毕后接收到同步信号且无需后续步骤,则输出第二视频处理***第一图像处理数据包到视频输出***,如果处理完毕后接收到同步信号且需要后续步骤,则丢弃第二视频处理***第一图像处理数据包;
所述步骤(6)包括:第二视频处理***在第三处理时间内接收到包括第一视频处理***第二视频流数据和第二视频数据处理命令的第一视频处理***第二图像处理数据包;
第二视频处理***根据第一视频处理***第二图像处理数据包的第二视频数据处理命令对第一视频处理***第二视频流数据进行处理;
如果处理完毕则发送处理完成信息给同步模块,第一视频处理***第二视频流数据处理完毕后得到第二视频处理***第二视频流数据,作为第二视频处理***第二图像处理数据包,如果处理完毕后接收到同步信号且无需后续步骤,则发送第二视频处理***第二图像处理数据包到视频输出***,如果处理完毕后接收到同步信号且需要后续步骤,则丢弃第二视频处理***第二图像处理数据包。
5.根据权利要求4所述的视频数据并行处理方法,其特征在于,所述步骤(1)还包括:第一视频处理***如果未完成处理但接收到同步信号,则强制中断处理,将第一视频处理***第一视频流数据设置为第一视频流数据,将第二视频处理命令设置为第一视频处理命令,将第一视频处理***第一视频流数据和第二视频命令作为第一视频处理***第一图像处理数据包发送到第二视频处理***;
所述步骤(3)还包括:所述第一视频处理***如果未完成处理但接收到同步信号,则强制中断处理,将第一视频处理***第二视频流数据设置为第二视频流数据,将第二视频处理命令设置为第一视频处理命令,将第一视频处理***第二视频流数据和第二视频命令作为第一视频处理***第二图像处理数据包发送到第二视频处理***;
所述步骤(4)还包括:所述第二视频处理***如果未完成处理但接收到同步信号,则强制中断处理;
所述步骤(6)还包括:所述第二视频处理***如果未完成处理但接收到同步信号,则强制中断处理。
6.根据权利要求4所述的视频数据并行处理方法,其特征在于,所述步骤(1)还包括:第一视频处理***如果未完成处理但接收到同步信号,则强制中断处理并丢弃第一图像处理数据包;
所述步骤(3)还包括:第一视频处理***如果未完成处理但接收到同步信号,则强制中断处理并丢弃第二图像处理数据包;
所述步骤(4)还包括:所述第二视频处理***如果未完成处理但接收到同步信号,则强制中断处理;
所述步骤(6)还包括:所述第二视频处理***如果未完成处理但接收到同步信号,则强制中断处理。
7.根据权利要求4所述的视频数据并行处理方法,其特征在于,所述同步模块在以下两种情况下向第一视频处理***和第二视频处理***同时发出同步信号:
(i)到达预先设置的同步时间,或者;
(ii)接收到第一视频处理***发出的处理完成信息和第二视频处理***发出的处理完成信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010546965 CN101969552B (zh) | 2010-11-17 | 2010-11-17 | 一种视频数据并行处理***及其方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010546965 CN101969552B (zh) | 2010-11-17 | 2010-11-17 | 一种视频数据并行处理***及其方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101969552A CN101969552A (zh) | 2011-02-09 |
CN101969552B true CN101969552B (zh) | 2013-04-10 |
Family
ID=43548640
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201010546965 Active CN101969552B (zh) | 2010-11-17 | 2010-11-17 | 一种视频数据并行处理***及其方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101969552B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102625144A (zh) * | 2011-11-28 | 2012-08-01 | 苏州奇可思信息科技有限公司 | 基于局域网云网络的并行视频处理方法 |
CN102611918B (zh) * | 2012-03-28 | 2015-08-26 | 深圳市普乐方文化科技有限公司 | 视频同步播放控制***及方法 |
CN103873739B (zh) * | 2014-03-14 | 2017-10-17 | 中央电视台 | 多设备协同控制方法及设备 |
CN107124575A (zh) * | 2017-04-14 | 2017-09-01 | 苏州科达科技股份有限公司 | 一种媒体处理方法、装置及媒体服务器 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101025821A (zh) * | 2006-02-21 | 2007-08-29 | 辉达公司 | 不对称多gpu处理 |
CN101438319A (zh) * | 2006-05-08 | 2009-05-20 | Ati技术无限责任公司 | 使用多图形处理单元的改进的图形去阶梯 |
CN101552863A (zh) * | 2008-04-02 | 2009-10-07 | 富士施乐株式会社 | 图像处理装置、图像形成***及图像处理方法 |
CN101710314A (zh) * | 2009-11-17 | 2010-05-19 | 中兴通讯股份有限公司 | 高速***部件互连交换控制器及其实现方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100110089A1 (en) * | 2008-11-06 | 2010-05-06 | Via Technologies, Inc. | Multiple GPU Context Synchronization Using Barrier Type Primitives |
-
2010
- 2010-11-17 CN CN 201010546965 patent/CN101969552B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101025821A (zh) * | 2006-02-21 | 2007-08-29 | 辉达公司 | 不对称多gpu处理 |
CN101438319A (zh) * | 2006-05-08 | 2009-05-20 | Ati技术无限责任公司 | 使用多图形处理单元的改进的图形去阶梯 |
CN101552863A (zh) * | 2008-04-02 | 2009-10-07 | 富士施乐株式会社 | 图像处理装置、图像形成***及图像处理方法 |
CN101710314A (zh) * | 2009-11-17 | 2010-05-19 | 中兴通讯股份有限公司 | 高速***部件互连交换控制器及其实现方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101969552A (zh) | 2011-02-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101370089B (zh) | 一种拼接显示并行处理*** | |
CN102857738B (zh) | 多屏控制的图像显示***、方法及多屏控制装置 | |
CN107249101A (zh) | 一种高分辨率图像采集与处理装置 | |
CN106934758B (zh) | 一种基于fpga的立体图像视频实时融合方法及*** | |
CN204857144U (zh) | Led显示屏控制***和发送卡 | |
CN101516015B (zh) | 多路视频数据采集处理和传输的方法 | |
CN103595924B (zh) | 一种基于Cameralink的图像融合***及其方法 | |
CN102572398B (zh) | 多路视频处理装置、***及方法 | |
CN102611869A (zh) | 一种面向输出的多屏拼接***网络传输技术 | |
CN109743515A (zh) | 一种基于软核平台的异步视频融合叠加***及方法 | |
CN101969552B (zh) | 一种视频数据并行处理***及其方法 | |
CN104717485A (zh) | 一种基于fpga的vga接口裸眼3d显示*** | |
CN105611295A (zh) | 一种在soc上实现视频采集压缩传输的***和方法 | |
CN103957374A (zh) | 一种基于dp接口的8k超高清显示*** | |
CN105261328A (zh) | 一种基于arm和fpga的led显示屏控制*** | |
CN110519531A (zh) | 多路高清视频分布式处理设备 | |
CN108419336B (zh) | 一种led灯光屏幕控制***及其实现方法 | |
CN105427772A (zh) | 共用协议层的多通道显示接口信号生成***及方法 | |
CN102497526B (zh) | 一种同一链路显示多路视频的方法及*** | |
CN110225316B (zh) | 一种软硬协同的多路视频处理装置及*** | |
CN106851183A (zh) | 基于fpga的多路视频处理***及其方法 | |
CN102438121A (zh) | 数据传输方法、***及串行高速输入输出口网关设备 | |
CN104469241B (zh) | 一种实现视频帧率变换的装置 | |
CN113986192A (zh) | 一种CoaXPress接口数据和Cameralink接口数据互相转换的方法 | |
CN102214080A (zh) | 基于USB Video Class的多点式VGA图像采集和显示*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address |
Address after: Kezhu road high tech Industrial Development Zone, Guangzhou city of Guangdong Province, No. 233 510670 Patentee after: Wei Chong group Limited by Share Ltd Address before: 510663 No. 6, color road, hi tech Industrial Development Zone, Guangdong, Guangzhou, China Patentee before: Guangdong Weichuangshixun Science and Technology Co., Ltd. |
|
CP03 | Change of name, title or address |