CN115734004A - 视频处理方法、装置、系统和设备 - Google Patents
视频处理方法、装置、系统和设备 Download PDFInfo
- Publication number
- CN115734004A CN115734004A CN202110997377.9A CN202110997377A CN115734004A CN 115734004 A CN115734004 A CN 115734004A CN 202110997377 A CN202110997377 A CN 202110997377A CN 115734004 A CN115734004 A CN 115734004A
- Authority
- CN
- China
- Prior art keywords
- data
- memory
- video
- module
- encoder
- 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.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 22
- 238000000034 method Methods 0.000 claims abstract description 52
- 230000005540 biological transmission Effects 0.000 claims abstract description 36
- 238000012545 processing Methods 0.000 claims description 58
- 230000008569 process Effects 0.000 claims description 36
- 230000001360 synchronised effect Effects 0.000 claims description 35
- 238000004590 computer program Methods 0.000 claims description 8
- 230000006835 compression Effects 0.000 claims description 6
- 238000007906 compression Methods 0.000 claims description 6
- 239000000872 buffer Substances 0.000 claims description 4
- 230000004044 response Effects 0.000 claims description 4
- 238000005516 engineering process Methods 0.000 abstract description 10
- 230000006870 function Effects 0.000 description 10
- 230000003993 interaction Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000003139 buffering effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Abstract
本申请公开了一种视频处理方法、装置、系统和设备。其中,该方法包括:编码器获取目标格式的视频数据;编码器将视频数据写入第一存储器,并实时检测写入第一存储器中的第一数据的数据量,在数据量达到预设阈值时,对第一数据进行编码,得到编码数据,其中,视频数据包括第一数据;编码器将编码数据传输至解码器,其中,解码器用于对编码数据进行解码。本申请解决了相关技术中的视频传输方案存在较大的传输延时的技术问题。
Description
技术领域
本申请涉及视频传输技术领域,具体而言,涉及一种视频处理方法、装置、系统和设备。
背景技术
随着视频传输技术的发展,网络化、IP化的分布式视频传输方案如今被广泛应用于视频会议、联合指挥、坐席管理、楼宇间信息共享等多种场景中,特别是视频会议及坐席管理等应用场景,对于视频传输的画质以及实时性提出了越来越高的要求,在这种背景下,降低视频的传输延时成为迫切的需求。
相关技术方案中,通常采用FPGA(Field Programmable Gate Array,现场可编程门阵列)+ARM(Advanced RISC Machines,高级精简指令集处理器)的硬件架构,在编码端,FPGA将视频源捕获后发送给ARM,ARM对输入源的视频流进行H264/H265编码,然后发送到网络,解码端从网络上获取到编码数据之后,ARM再对其进行H264/H265解码,然后发送给FPGA进行显示,该架构中,FPGA主要负责视频捕获和显示。然而,该方案需要涉及到两个主控芯片之间的交互,设计较为复杂,且受接口带宽的限制,在传输过程中需要多次缓存视频流,存在较大的传输延时。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本申请实施例提供了一种视频处理方法、装置、系统和设备,以至少解决相关技术中的视频传输方案存在较大的传输延时的技术问题。
根据本申请实施例的一个方面,提供了一种视频处理方法,包括:编码器获取视频数据;所述编码器将所述视频数据写入第一存储器,在写入过程中,所述编码器实时检测写入所述第一存储器中的第一数据的数据量,在所述数据量达到预设阈值时,对所述第一数据进行编码,得到编码数据,其中,所述视频数据中包括所述第一数据;所述编码器将所述编码数据传输至解码器,其中,所述解码器用于对所述编码数据进行解码。
可选地,所述编码器中包括视频接口处理模块和视频图像处理模块;所述编码器获取视频源,并通过所述视频接口处理模块将所述视频源解析为时序信号数据;所述编码器通过所述视频图像处理模块将所述时序信号数据转换为目标格式的所述视频数据,其中,目标格式的所述视频数据用于进行编码处理。
可选地,所述编码器中包括写内存模块和所述第一存储器;所述编码器通过所述写内存模块将所述视频数据写入所述第一存储器,其中,所述第一存储器为双倍速率同步动态随机存储器。
可选地,所述编码器中还包括同步控制逻辑模块和编码模块;所述编码器通过所述同步控制逻辑模块实时检测写入所述第一存储器中的所述第一数据的数据量;在检测到所述第一数据的数据量达到所述预设阈值时,所述编码器通过所述同步控制逻辑模块将所述第一数据从所述第一存储器传输至所述编码模块进行编码,其中,所述编码模块用于对所述第一数据进行深压缩,得到所述编码数据,并将所述编码数据发送至所述第一存储器。
可选地,所述编码器响应于上层应用的控制指令,将所述编码数据从所述第一存储器传输至所述解码器中的第二存储器,其中,所述第二存储器为双倍速率同步动态随机存储器。
根据本申请实施例的另一方面,还提供了一种视频处理方法,包括:解码器持续接收编码器传输的编码数据进行解码,并将得到的解码数据缓存在第二存储器中,得到第二数据;在所述第二数据中包括至少一帧完整图像数据时,所述解码器将所述第二数据输出至显示器进行显示。
可选地,所述解码器中包括所述第二存储器和解码模块;所述解码器通过所述第二存储器持续接收所述编码器传输的所述编码数据,其中,所述第二存储器为双倍速率同步动态随机存储器;所述解码器通过所述解码模块对所述编码数据进行解码,并将得到的解码数据缓存在所述第二存储器中,得到所述第二数据。
可选地,所述解码器中还包括读内存模块和视频接口输出模块;在缓存的所述第二数据中包括至少一帧完整图像数据时,所述解码器通过所述读内存模块从所述第二存储器中读取所述第二数据,并将所述第二数据发送至所述视频接口输出模块;所述解码器通过所述视频接口输出模块将所述第二数据输出至所述显示器,其中,所述显示器用于显示所述至少一帧完整图像。
根据本申请实施例的另一方面,还提供了一种视频处理装置,包括:获取模块,用于获取视频数据;编码模块,用于将所述视频数据写入第一存储器,在写入过程中,实时检测写入所述第一存储器中的第一数据的数据量,在所述数据量达到预设阈值时,对所述第一数据进行编码,得到编码数据,其中,所述视频数据中包括所述第一数据;传输模块,用于将所述编码数据传输至解码器,其中,所述解码器用于对所述编码数据进行解码。
根据本申请实施例的另一方面,还提供了一种视频处理装置,包括:解码模块,用于持续接收编码器传输的编码数据进行解码,并将得到的解码数据缓存在第二存储器中,得到第二数据;输出模块,用于在所述第二数据中包括至少一帧完整图像数据时,将所述第二数据输出至显示器进行显示。
根据本申请实施例的另一方面,还提供了一种视频处理系统,包括:编码器,包括:写内存模块,第一存储器,同步控制逻辑模块和编码模块;其中,所述写内存模块用于将视频数据写入所述第一存储器;所述同步控制逻辑模块用于在写入过程中实时检测写入所述第一存储器中的第一数据的数据量,在所述数据量达到预设阈值时,将所述第一数据发送至所述编码模块,其中,所述视频数据包括所述第一数据;所述编码模块用于对所述第一数据进行编码,并将得到的编码数据发送至所述第一存储器;所述第一存储器用于将所述编码数据传输至解码器;所述解码器,包括:第二存储器,解码模块,读内存模块和视频接口输出模块,其中,所述第二存储器用于持续接收所述编码器传输的所述编码数据;所述解码模块用于对所述编码数据进行解码,并将得到的解码数据缓存在所述第二存储器中,得到第二数据;所述读内存模块用于在所述第二数据中包括至少一帧完整图像数据时,从所述第二存储器中读取所述第二数据,并将所述第二数据发送至所述视频接口输出模块;所述视频接口输出模块用于将所述第二数据输出至显示器进行显示。
可选地,所述编码器中还包括:视频接口处理模块,用于将获取的视频源解析为时序信号数据;视频图像处理模块,用于将所述时序信号数据转换为目标格式的所述视频数据,其中,目标格式的所述视频数据用于进行编码处理。
根据本申请实施例的另一方面,还提供了一种视频处理设备,包括:存储器和处理器,其中,所述存储器中存储有计算机程序,所述处理器被配置为通过所述计算机程序执行上述的视频处理方法。
在本申请实施例中,直接通过FPGA实现编码器和解码器的功能,避免了多个主控芯片之间交互造成的视频传输延时;在编码过程中,将视频数据写入第一存储器时,利用同步控制逻辑模块实时检测写入的数据量,当数据量达到预设阈值时即可进行编码,而无需等到缓存一帧图像数据后再进行编码,从而有效降低了编码过程中的延时;在解码过程中,直接对接收的编码数据进行解码并缓存,每当缓存一帧完整图像数据时即输出并显示,也可以降低解码过程中的延时。通过上述过程,本申请有效降低了视频传输过程中的延时,从而解决了相关技术中的视频传输方案存在较大的传输延时技术问题。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请实施例的一种视频处理方法的流程示意图;
图2是根据本申请实施例的另一种视频处理方法的流程示意图;
图3是根据本申请实施例的一种视频处理装置的结构示意图;
图4是根据本申请实施例的另一种视频处理装置的结构示意图;
图5是根据本申请实施例的一种视频处理系统的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例1
在相关技术中,通常采用FPGA+ARM的硬件架构实现视频传输,在编码端,FPGA将视频源捕获后发送给ARM,ARM对输入源的视频流进行H264/H265编码,然后发送到网络,解码端从网络上获取到编码数据之后,ARM再对其进行H264/H265解码,然后发送给FPGA进行显示,其中,FPGA主要负责视频捕获和显示。然而,该方案涉及到两个主控芯片之间的交互,设计较为复杂,且受接口带宽的限制,在传输过程中需要多次缓存视频流,存在较大的传输延时。
为了解决上述问题,本申请提出直接基于FPGA实现视频传输中的编码器和解码器的功能,从而避免多个主控芯片之间交互造成的视频传输延时。
具体地,本申请实施例从编码器侧提供了一种视频处理方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图1是根据本申请实施例的一种可选的视频处理方法,如图1所示,该方法包括步骤S102-S106,其中:
步骤S102,编码器获取视频数据。
步骤S104,编码器将视频数据写入第一存储器,在写入过程中,编码器实时检测写入第一存储器中的第一数据的数据量,在数据量达到预设阈值时,对第一数据进行编码,得到编码数据,其中,视频数据中包括第一数据。
步骤S106,编码器将编码数据传输至解码器,其中,解码器用于对编码数据进行解码。
在本申请一些可选的实施例中,基于FPGA实现的编码器中通常包括以下模块:视频接口处理模块,视频图像处理模块,写内存模块,第一存储器,同步控制逻辑模块和编码模块。以下以具体的视频编码流程对编码器中的各个模块的功能进行说明。
首先,编码器获取视频源,并通过视频接口处理模块将视频源解析为时序信号数据。具体地,当视频源进入编码器后,视频接口处理模块会对LVDS(Low VoltageDifferential Signaling,低压差分信号)的视频源数据进行解析,将其转换为标准的时序(Timing)信号数据;如果输入的视频源数据本身已经是标准的时序信号数据,则直接跳过。由于该过程为流水处理模式,基本不产生延时。
之后,编码器会通过视频图像处理模块将时序信号数据转换为编码所需的格式,即得到目标格式的视频数据,该目标格式的视频数据用于进行编码处理。该过程同样为流水处理模式,基本不产生延时。
在得到目标格式的视频数据后,编码器通过写内存模块将视频数据写入第一存储器,其中,第一存储器通常为双倍速率同步动态随机存储器(Double Data RateSynchronous Dynamic Random Access Memory,简称为DDR)。
为了进一步降低延时,编码器会通过同步控制逻辑模块实时检测写入第一存储器中的第一数据的数据量;在检测到第一数据的数据量达到预设阈值时,编码器通过同步控制逻辑模块将第一数据从第一存储器传输至编码模块进行编码,其中,编码模块用于对第一数据进行深压缩,得到编码数据,并将编码数据发送至第一存储器。
其中,数据量的预设阈值由用户根据自身需求进行设置,该数据量通常以写入图像的行数(图像数据为逐行写入)来表示。以视频传输中的一帧图像为例,传统方案中需要先缓存该帧图像,即等待该帧图像全部写入存储器后再进行编码;而本申请则由用户设置数据量阈值,假如用户设置的阈值为10行,同步控制逻辑模块会实时检测写入第一存储器中的图像行数,每写入10行数据时,同步控制逻辑模块会从第一存储器中读取这10行数据并将其发送至编码单元进行编码。编码模块通常采用深压缩模式,即对这10行数据进行H264/H265编码处理,得到相应的编码数据,并将编码数据返回至第一存储器。
编码器响应于上层应用的控制指令,将编码数据从第一存储器传输至解码器中的第二存储器,其中,第二存储器为双倍速率同步动态随机存储器。具体地,上层应用会依据返回第一存储器的编码数据的数据量,控制编码器进行发包处理,即将编码数据从第一存储器通过网络传输至解码器中的第二存储器。
在整个编码过程中,从获取输入视频源一直到编码完成,最后通过网络发包,本申请都实现了最低延时处理。
在本申请实施例中,直接通过FPGA实现编码器的功能,避免了多个主控芯片之间交互造成的视频传输延时;其中,将视频数据写入第一存储器时,利用同步控制逻辑模块实时检测写入的数据量,当数据量达到预设阈值时即可进行编码,而无需等到缓存一帧图像数据后再进行编码,从而有效降低了编码过程中的延时,进而解决了相关技术中的视频传输方案存在较大的传输延时技术问题。
实施例2
根据本申请实施例,还从解码器侧提供了另一种视频处理方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图2是根据本申请实施例的一种可选的视频处理方法,如图2所示,该方法包括步骤S202-S204,其中:
步骤S202,解码器持续接收编码器传输的编码数据进行解码,并将得到的解码数据缓存在第二存储器中,得到第二数据。
步骤S204,在第二数据中包括至少一帧完整图像数据时,解码器将第二数据输出至显示器进行显示。
在本申请一些可选的实施例中,基于FPGA实现的解码器中通常包括以下模块:第二存储器,解码模块,读内存模块和视频接口输出模块。以下以具体的视频解码流程对解码器中的各个模块的功能进行说明。
首先,解码器通过第二存储器持续接收编码器传输的编码数据,该第二存储器同样为双倍速率同步动态随机存储器;解码器会通过解码模块对接收的编码数据进行H264/H265解码,然后将得到的解码数据写入第二存储器进行缓存,得到第二数据。考虑到解码模块读取数据、解码、写入数据所耗的时间,该过程延时在一帧左右。
由实施例1的编码过程可知,编码器每次传输的编码数据可能只是一帧图像中的若干行数据,因此,解码模块每次解码的数据也只是对应的一帧图像中的若干行数据,考虑到视频输出时图像的完整性,不可能直接将这些解码数据输出进行显示,因此需要先将所有解码数据在第二存储器中缓存,直至缓存的第二数据对应一帧完整图像时,再将第二数据输出进行显示。
具体地,在缓存的第二数据中包括至少一帧完整图像数据时,解码器通过读内存模块从第二存储器中读取第二数据,并将第二数据发送至视频接口输出模块;解码器通过视频接口输出模块将第二数据输出至显示器,其中,显示器用于显示至少一帧完整图像。
当第二存储器中缓存的第二数据对应一帧完整图像数据时,上层应用会通知读内存模块将第二数据从第二存储器中读取出来,并发送到视频接口输出模块,由视频接口输出模块将解码数据对应的一帧完整图像输出至显示器显示。该过程延时同样在一帧左右。
在本申请实施例中,直接通过FPGA实现解码器的功能,避免了多个主控芯片之间交互造成的视频传输延时;在解码过程中,直接对接收的编码数据进行解码并缓存,每当缓存一帧完整图像数据时即输出并显示,也可以降低解码过程中的延时,从而解决了相关技术中的视频传输方案存在较大的传输延时技术问题。
实施例3
根据本申请实施例,还提供了一种用于实现实施例1中的视频处理方法的视频处理装置,如图3所示,该装置包括获取模块30,编码模块32和传输模块34,其中:
获取模块30,用于获取视频数据。
编码模块32,用于将视频数据写入第一存储器,在写入过程中,实时检测写入第一存储器中的第一数据的数据量,在数据量达到预设阈值时,对第一数据进行编码,得到编码数据,其中,视频数据中包括第一数据。
传输模块34,用于将编码数据传输至解码器,其中,解码器用于对编码数据进行解码。
需要说明的是,本申请实施例中的视频处理装置中的各模块与实施例1中的视频处理方法实施步骤一一对应,由于实施例1中已经进行了详尽的描述,本实施例中部分未体现的细节可以参考实施例1,在此不再过多赘述。
实施例4
根据本申请实施例,还提供了一种用于实现实施例2中的视频处理方法的视频处理装置,如图4所示,该装置包括解码模块40和输出模块42,其中:
解码模块40,用于持续接收编码器传输的编码数据进行解码,并将得到的解码数据缓存在第二存储器中,得到第二数据。
输出模块42,用于在第二数据中包括至少一帧完整图像数据时,将第二数据输出至显示器进行显示。
需要说明的是,本申请实施例中的视频处理装置中的各模块与实施例2中的视频处理方法实施步骤一一对应,由于实施例1中已经进行了详尽的描述,本实施例中部分未体现的细节可以参考实施例1,在此不再过多赘述。
实施例5
根据本申请实施例,还提供了一种视频处理系统,用于实现低延时的视频传输。如图5所示,该系统中至少包括编码器50和解码器52,其中:
编码器50中至少包括:写内存模块500,第一存储器501,同步控制逻辑模块502和编码模块503。具体地,写内存模块500用于将视频数据写入第一存储器501;同步控制逻辑模块502用于在写入过程中实时检测写入第一存储器501中的第一数据的数据量,在数据量达到预设阈值时,将第一数据发送至编码模块503,其中,视频数据包括第一数据;编码模块503用于对第一数据进行编码,并将得到的编码数据发送至第一存储器501;第一存储器用于将编码数据传输至解码器52。
可选地,编码器50中还包括视频接口处理模块504和视频图像处理模块505。具体地,视频接口处理模块504用于将获取的视频源解析为时序信号数据;视频图像处理模块505用于将时序信号数据转换为目标格式的视频数据,其中,目标格式的视频数据用于进行编码处理。
以下以具体的视频编码流程对编码器中的各个模块的功能进行说明。
首先,编码器获取视频源,并通过视频接口处理模块将视频源解析为时序信号数据。具体地,当视频源进入编码器后,视频接口处理模块会对LVDS的视频源数据进行解析,将其转换为标准的时序信号数据;如果输入的视频源数据本身已经是标准的时序信号数据,则直接跳过。由于该过程为流水处理模式,基本不产生延时。
之后,编码器会通过视频图像处理模块将时序信号数据转换为编码所需的格式,即得到目标格式的视频数据,该目标格式的视频数据用于进行编码处理。该过程同样为流水处理模式,基本不产生延时。
在得到目标格式的视频数据后,编码器通过写内存模块将视频数据写入第一存储器,其中,第一存储器通常为双倍速率同步动态随机存储器。
为了进一步降低延时,编码器会通过同步控制逻辑模块实时检测写入第一存储器中的第一数据的数据量;在检测到第一数据的数据量达到预设阈值时,编码器通过同步控制逻辑模块将第一数据从第一存储器传输至编码模块进行编码,其中,编码模块用于对第一数据进行深压缩,得到编码数据,并将编码数据发送至第一存储器。
其中,数据量的预设阈值由用户根据自身需求进行设置,该数据量通常以写入图像的行数(图像数据为逐行写入)来表示。以视频传输中的一帧图像为例,传统方案中需要先缓存该帧图像,即等待该帧图像全部写入存储器后再进行编码;而本申请则由用户设置数据量阈值,假如用户设置的阈值为10行,同步控制逻辑模块会实时检测写入第一存储器中的图像行数,每写入10行数据时,同步控制逻辑模块会从第一存储器中读取这10行数据并将其发送至编码单元进行编码。编码模块通常采用深压缩模式,即对这10行数据进行H264/H265编码处理,得到相应的编码数据,并将编码数据返回至第一存储器。
编码器响应于上层应用的控制指令,将编码数据从第一存储器传输至解码器中的第二存储器,其中,第二存储器为双倍速率同步动态随机存储器。具体地,上层应用会依据返回第一存储器的编码数据的数据量,控制编码器进行发包处理,即将编码数据从第一存储器通过网络传输至解码器中的第二存储器。
在整个编码过程中,从获取输入视频源一直到编码完成,最后通过网络发包,本申请都实现了最低延时处理。
解码器52中至少包括:第二存储器520,解码模块521,读内存模块522和视频接口输出模块523。具体地,第二存储器520用于持续接收编码器50传输的编码数据;解码模块521用于对编码数据进行解码,并将得到的解码数据缓存在第二存储器520中,得到第二数据;读内存模块522用于在第二数据中包括至少一帧完整图像数据时,从第二存储器520中读取第二数据,并将第二数据发送至视频接口输出模块523;视频接口输出模块523用于将第二数据输出至显示器进行显示。
以下以具体的视频解码流程对解码器中的各个模块的功能进行说明。
首先,解码器通过第二存储器持续接收编码器传输的编码数据,该第二存储器同样为双倍速率同步动态随机存储器;解码器会通过解码模块对接收的编码数据进行H264/H265解码,然后将得到的解码数据写入第二存储器进行缓存,得到第二数据。考虑到解码模块读取数据、解码、写入数据所耗的时间,该过程延时在一帧左右。
由实施例1的编码过程可知,编码器每次传输的编码数据可能只是一帧图像中的若干行数据,因此,解码模块每次解码的数据也只是对应的一帧图像中的若干行数据,考虑到视频输出时图像的完整性,不可能直接将这些解码数据输出进行显示,因此需要先将所有解码数据在第二存储器中缓存,直至缓存的第二数据对应一帧完整图像时,再将第二数据输出进行显示。
具体地,在缓存的第二数据中包括至少一帧完整图像数据时,解码器通过读内存模块从第二存储器中读取第二数据,并将第二数据发送至视频接口输出模块;解码器通过视频接口输出模块将第二数据输出至显示器,其中,显示器用于显示至少一帧完整图像。
当第二存储器中缓存的第二数据对应一帧完整图像数据时,上层应用会通知读内存模块将第二数据从第二存储器中读取出来,并发送到视频接口输出模块,由视频接口输出模块将解码数据对应的一帧完整图像输出至显示器显示。该过程延时同样在一帧左右。
在本申请实施例中,直接通过FPGA实现编码器和解码器的功能,避免了多个主控芯片之间交互造成的视频传输延时;在编码过程中,将视频数据写入第一存储器时,利用同步控制逻辑模块实时检测写入的数据量,当数据量达到预设阈值时即可进行编码,而无需等到缓存一帧图像数据后再进行编码,从而有效降低了编码过程中的延时;在解码过程中,直接对接收的编码数据进行解码并缓存,每当缓存一帧完整图像数据时即输出并显示,也可以降低解码过程中的延时。本申请有效降低了视频传输过程中的延时,从而解决了相关技术中的视频传输方案存在较大的传输延时技术问题。
实施例6
根据本申请实施例,还提供了一种视频处理设备,该设备包括:存储器和处理器,其中,该存储器中存储有计算机程序,该处理器被配置为通过计算机程序执行实施例1或实施例2中的视频处理方法。
具体地,在计算机程序运行时,处理器执行以下步骤:获取视频数据;将视频数据写入第一存储器,在写入过程中,实时检测写入第一存储器中的第一数据的数据量,在数据量达到预设阈值时,对第一数据进行编码,得到编码数据,其中,视频数据中包括第一数据;将编码数据传输至解码器,其中,解码器用于对编码数据进行解码。
可选地,在计算机程序运行时,处理器还执行以下步骤:持续接收编码器传输的编码数据进行解码,并将得到的解码数据缓存在第二存储器中,得到第二数据;在第二数据中包括至少一帧完整图像数据时,解码器将第二数据输出至显示器进行显示。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
在本申请的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (13)
1.一种视频处理方法,其特征在于,包括:
编码器获取视频数据;
所述编码器将所述视频数据写入第一存储器,在写入过程中,所述编码器实时检测写入所述第一存储器中的第一数据的数据量,在所述数据量达到预设阈值时,对所述第一数据进行编码,得到编码数据,其中,所述视频数据中包括所述第一数据;
所述编码器将所述编码数据传输至解码器,其中,所述解码器用于对所述编码数据进行解码。
2.根据权利要求1所述的方法,其特征在于,所述编码器中包括视频接口处理模块和视频图像处理模块,编码器获取视频数据,包括:
所述编码器获取视频源,并通过所述视频接口处理模块将所述视频源解析为时序信号数据;
所述编码器通过所述视频图像处理模块将所述时序信号数据转换为目标格式的所述视频数据,其中,目标格式的所述视频数据用于进行编码处理。
3.根据权利要求1所述的方法,其特征在于,所述编码器中包括写内存模块和所述第一存储器,所述编码器将所述视频数据写入第一存储器,包括:
所述编码器通过所述写内存模块将所述视频数据写入所述第一存储器,其中,所述第一存储器为双倍速率同步动态随机存储器。
4.根据权利要求3所述的方法,其特征在于,所述编码器中还包括同步控制逻辑模块和编码模块,所述编码器实时检测写入所述第一存储器中的第一数据的数据量,在所述数据量达到预设阈值时,对所述第一数据进行编码,得到编码数据,包括:
所述编码器通过所述同步控制逻辑模块实时检测写入所述第一存储器中的所述第一数据的数据量;
在检测到所述第一数据的数据量达到所述预设阈值时,所述编码器通过所述同步控制逻辑模块将所述第一数据从所述第一存储器传输至所述编码模块进行编码,其中,所述编码模块用于对所述第一数据进行深压缩,得到所述编码数据,并将所述编码数据发送至所述第一存储器。
5.根据权利要求4所述的方法,其特征在于,所述编码器将所述编码数据传输至解码器,包括:
所述编码器响应于上层应用的控制指令,将所述编码数据从所述第一存储器传输至所述解码器中的第二存储器,其中,所述第二存储器为双倍速率同步动态随机存储器。
6.一种视频处理方法,其特征在于,包括:
解码器持续接收编码器传输的编码数据进行解码,并将得到的解码数据缓存在第二存储器中,得到第二数据;
在所述第二数据中包括至少一帧完整图像数据时,所述解码器将所述第二数据输出至显示器进行显示。
7.根据权利要求6所述的方法,其特征在于,所述解码器中包括所述第二存储器和解码模块,解码器持续接收编码器传输的编码数据进行解码,并将得到的解码数据缓存在第二存储器中,得到第二数据,包括:
所述解码器通过所述第二存储器持续接收所述编码器传输的所述编码数据,其中,所述第二存储器为双倍速率同步动态随机存储器;
所述解码器通过所述解码模块对所述编码数据进行解码,并将得到的解码数据缓存在所述第二存储器中,得到所述第二数据。
8.根据权利要求7所述的方法,其特征在于,所述解码器中还包括读内存模块和视频接口输出模块,在所述第二数据中包括至少一帧完整图像数据时,所述解码器将所述第二数据输出至显示器进行显示,包括:
在缓存的所述第二数据中包括至少一帧完整图像数据时,所述解码器通过所述读内存模块从所述第二存储器中读取所述第二数据,并将所述第二数据发送至所述视频接口输出模块;
所述解码器通过所述视频接口输出模块将所述第二数据输出至所述显示器,其中,所述显示器用于显示所述至少一帧完整图像。
9.一种视频处理装置,其特征在于,包括:
获取模块,用于获取视频数据;
编码模块,用于将所述视频数据写入第一存储器,在写入过程中,实时检测写入所述第一存储器中的第一数据的数据量,在所述数据量达到预设阈值时,对所述第一数据进行编码,得到编码数据,其中,所述视频数据中包括所述第一数据;
传输模块,用于将所述编码数据传输至解码器,其中,所述解码器用于对所述编码数据进行解码。
10.一种视频处理装置,其特征在于,包括:
解码模块,用于持续接收编码器传输的编码数据进行解码,并将得到的解码数据缓存在第二存储器中,得到第二数据;
输出模块,用于在所述第二数据中包括至少一帧完整图像数据时,将所述第二数据输出至显示器进行显示。
11.一种视频处理系统,其特征在于,包括:
编码器,包括:写内存模块,第一存储器,同步控制逻辑模块和编码模块;其中,所述写内存模块用于将视频数据写入所述第一存储器;所述同步控制逻辑模块用于在写入过程中实时检测写入所述第一存储器中的第一数据的数据量,在所述数据量达到预设阈值时,将所述第一数据发送至所述编码模块,其中,所述视频数据包括所述第一数据;所述编码模块用于对所述第一数据进行编码,并将得到的编码数据发送至所述第一存储器;所述第一存储器用于将所述编码数据传输至解码器;
所述解码器,包括:第二存储器,解码模块,读内存模块和视频接口输出模块,其中,所述第二存储器用于持续接收所述编码器传输的所述编码数据;所述解码模块用于对所述编码数据进行解码,并将得到的解码数据缓存在所述第二存储器中,得到第二数据;所述读内存模块用于在所述第二数据中包括至少一帧完整图像数据时,从所述第二存储器中读取所述第二数据,并将所述第二数据发送至所述视频接口输出模块;所述视频接口输出模块用于将所述第二数据输出至显示器进行显示。
12.根据权利要求11所述的系统,其特征在于,所述编码器中还包括:
视频接口处理模块,用于将获取的视频源解析为时序信号数据;
视频图像处理模块,用于将所述时序信号数据转换为目标格式的所述视频数据,其中,目标格式的所述视频数据用于进行编码处理。
13.一种视频处理设备,其特征在于,包括:存储器和处理器,其中,所述存储器中存储有计算机程序,所述处理器被配置为通过所述计算机程序执行权利要求1至5中或权利要求6至8中任意一项所述的视频处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110997377.9A CN115734004A (zh) | 2021-08-27 | 2021-08-27 | 视频处理方法、装置、系统和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110997377.9A CN115734004A (zh) | 2021-08-27 | 2021-08-27 | 视频处理方法、装置、系统和设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115734004A true CN115734004A (zh) | 2023-03-03 |
Family
ID=85290379
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110997377.9A Pending CN115734004A (zh) | 2021-08-27 | 2021-08-27 | 视频处理方法、装置、系统和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115734004A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116233453A (zh) * | 2023-05-06 | 2023-06-06 | 北京爱芯科技有限公司 | 一种视频编码方法及装置 |
-
2021
- 2021-08-27 CN CN202110997377.9A patent/CN115734004A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116233453A (zh) * | 2023-05-06 | 2023-06-06 | 北京爱芯科技有限公司 | 一种视频编码方法及装置 |
CN116233453B (zh) * | 2023-05-06 | 2023-07-14 | 北京爱芯科技有限公司 | 一种视频编码方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5188033B2 (ja) | 記録再生装置、送出装置及び伝送システム。 | |
CN104333762A (zh) | 一种视频解码方法 | |
CN102404578A (zh) | 一种多通道视频传输系统及方法 | |
US8908982B2 (en) | Image encoding device and image encoding method | |
CN110784740A (zh) | 视频处理方法、装置、服务器及可读存储介质 | |
CN104144322A (zh) | 移动终端上实现视频监控的方法、系统与视频处理服务器 | |
CN104918123A (zh) | 用于运动视频回放的方法和系统 | |
CN104853132A (zh) | 一种延时视频录制方法及系统 | |
CN102196249B (zh) | 监控数据回放方法及编码器、视频管理服务器 | |
CN111641804A (zh) | 视频数据处理方法和装置、终端、摄像头及视频会议系统 | |
US20140308017A1 (en) | Imaging device, video recording device, video display device, video monitoring device, video monitoring system, and video monitoring method | |
CN109644290B (zh) | 数据转接装置、数据采集装置及系统、方法 | |
CN115734004A (zh) | 视频处理方法、装置、系统和设备 | |
US20120033727A1 (en) | Efficient video codec implementation | |
CN101192903B (zh) | 数据帧编解码控制方法 | |
US7561746B2 (en) | Image transmitter for transmitting a frame of a fixed number of packets where each packet has a fixed number of image data | |
CN103733615B (zh) | 用于端到端编码的视频传输系统的按需内部更新 | |
CN107241325A (zh) | 一种ip视频超低延时传输方法及装置 | |
CN110798688A (zh) | 一种基于实时传输的高清视频压缩编码系统 | |
CN114339070B (zh) | 一种基于MPSoC的多路图像处理显示交互系统 | |
CN112291483B (zh) | 视频推送方法及系统、电子设备及可读存储介质 | |
US20150264360A1 (en) | Video transmission system, video encoding apparatus, and video decoding apparatus | |
CN111372085B (zh) | 影像解码装置与方法 | |
CN107241601B (zh) | 图像数据传输方法、装置及终端 | |
KR100899666B1 (ko) | 분산 다중 스트리밍 전송 장치 |
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 |