CN105847817A - 一种视频处理设备和方法 - Google Patents
一种视频处理设备和方法 Download PDFInfo
- Publication number
- CN105847817A CN105847817A CN201510018968.1A CN201510018968A CN105847817A CN 105847817 A CN105847817 A CN 105847817A CN 201510018968 A CN201510018968 A CN 201510018968A CN 105847817 A CN105847817 A CN 105847817A
- Authority
- CN
- China
- Prior art keywords
- data
- reference frame
- storage
- frame data
- group
- 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.)
- Granted
Links
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明涉及视频处理领域,特别涉及一种视频处理设备和方法,该设备包括视频解码器和外部存储器,其中所述视频解码器包括数据缓存器组和处理器,用以解决目前解码器中参考帧读取采用二维数据缓存结构,解码器向外部存储器发送的命令离散,请求读取的数据相关性较小,外部存储器对数据进行处理的效率较低的问题。所述处理器将多条具有相关性的所述数据缓存器组中未存储的参考帧数据的命令整合成一个命令队列,一起发送给外部存储器,由于处理器向外部存储器发送的请求读取参考帧数据的命令队列中的参考帧数据相关性较大,进而提高了外部存储器对数据进行处理的效率。
Description
技术领域
本发明涉及视频处理领域,特别涉及一种视频处理设备和方法。
背景技术
近年来视频编解码方面的应用得到了飞速发展,且视频的分辨率、码率都得到很大提高,HEVC(High Efficiency Video Coding,视频压缩标准)是两大组织成立的联合小组正在研究的下一代新的视频压缩编码方案,主要针对高清和超高清的视频图像,HEVC目标在H.264/AVC high profile的基础上,对高分辨率/高保真的视频图像压缩效率提高一倍,也就是在保证相同视频图像质量的前提下,视频流的码率减少50%。
HEVC的编解码架构采用传统的混合视频编码架构,也就是预测加熵编码。预测是为了消除像素间时间和空间的相关性,空间的相关性采用帧内预测消除,而时间的相关性采用帧间预测消除。在视频编码中,帧间预测对编码性能影响最大。在解码端,解码器在做帧间预测的时候需要大量的读取已经解码的帧缓冲集合中的像素信息,而帧缓存所占空间巨大,只能放在外部存储器DDR(Double Data Rate,双倍速率同步动态随机存储器)中,这样会带来巨大的带宽损耗,这也是影响解码器性能的主要原因。
为了提高解码器的带宽性能,参考帧读取一般会使用数据缓存器结构,数据缓存器带来两个方面的性能提升:最大限度的利用已经存储的参考帧数据;降低数据的延时。但现有技术中,参考帧读取数据缓存器都是采用二维数据缓存结构,解码器每读取一个参考帧块发送一条命令,在M*N大小的参考数据空间里如果包含了K个参考帧块,就要发送K条命令,这也导致向外部存储器发送的命令离散。
综上所述,目前解码器中参考帧读取采用二维数据缓存结构,解码器中数据缓存器向外部存储器发送的命令离散,请求读取的数据相关性较小,外部存储器对数据进行处理的效率较低。
发明内容
本发明实施例提供一种视频处理设备,该设备包括视频解码器和外部存储器,其中所述视频解码器包括数据缓存器组和处理器;
所述处理器,用于确定所述数据缓存器组内是否存储有要读取的全部参考帧数据;若没有存储或只存储有部分所述参考帧数据,则所述处理器向所述外部存储器发送请求读取未存储的参考帧数据的命令队列,其中所述命令队列中的每个命令对应地读取参考帧中不同存储位置上的参考帧数据;根据收到的参考帧数据在参考帧中的位置,确定所述数据缓存器组中对应的存储位置,并将收到的参考帧数据存储到确定的所述数据缓存器组中对应的存储位置上;在确定所述命令队列读取的所有参考帧数据在所述数据缓存器组中存储完毕之后,从所述数据缓存器组中读取要读取的全部参考帧数据。
所述外部存储器,用于接收所述处理器发送的所述命令队列,并针对收到的一个命令,将所述命令对应的参考帧数据返回给所述数据缓存器组。
较佳地,处理器还用于:
根据下列方式生成命令队列:
确定需要读取的参考帧数据在参考帧中的位置信息,并查找位置信息对应的外部存储器中的存储位置信息;根据确定的存储位置信息,生成命令队列。
较佳地,参考帧以分块方式存储于外部存储器中,分块是对一参考帧的参考帧数据进行均分的若干大小相等的数据存储块;
数据存储块包括多个大小相等的子数据存储块;
每个子数据存储块用于存储参考帧中对应位置的参考帧数据。
较佳地,数据缓存器组包括至少一个数据缓存器,每个数据缓存器大小与分块大小相对应;
数据缓存器包括多个大小相等的子数据缓存块;
每个子数据缓存块用于存储子数据存储块中对应位置的参考帧数据。
较佳地,处理器还用于:
在确定数据缓存器组是否存储有要读取的全部参考帧数据之后,若存储有全部参考帧数据,确定参考帧数据在参考帧中的位置对应的数据缓存器组中的子数据缓存块,并读取子数据缓存块上存储的参考帧数据。
较佳地,处理器具体用于:
根据查询表组中的查询位上的信息确定数据缓存器组是否存储有要读取的全部参考帧数据;
其中,每个查询表组包含多个查询表,每个查询表对应一个不同的数据缓存器,一个查询表中每个查询位对应数据缓存器中一个不同的子数据缓存块,一个查询位上的信息表示对应的子数据缓存块中存储的参考帧数据在每个参考帧中的位置。
较佳地,处理器具体用于:
根据收到的参考帧数据在参考帧中的位置,确定对应的数据缓存器组的一个子数据缓存块,并将收到的参考帧数据存储到选择的子数据缓存块上。
较佳地,处理器还用于:
在处理器确定数据缓存器组内是否存储有要读取的全部参考帧数据之前,通过查询存储信息表组的相应存储信息位,确定解码器要读取的全部参考帧数据;
其中,存储信息表组包含多个存储信息表,每个存储信息表大小与分块大小相对应,一个存储信息位上的信息表示对应的数据缓存器组中子数据缓存块和/或外部存储器中的子数据存储块中的参考帧数据是否为待存储的参考帧数据。
较佳地,处理器具体用于:
重置存储信息表组中的所有存储信息位,以使重置后的存储信息表组中的所有存储信息位上的信息表示不是待存储的参考帧数据;
依次确定待处理的参考帧数据在数据缓存器组中对应的子数据缓存块和/或外部存储器中对应的子数据存储块,并确定子数据缓存块和/或子数据存储块在存储信息表组中的位置,将确定的存储信息表组位置上的存储信息位标识为表示是待存储的参考帧数据的信息;
当已标有待存储的存储信息位再次被确定需要被标识为是待存储的参考帧数据的信息和/或待处理帧块标识结束,则存储信息表组中已被标识为是待存储的参考帧数据的信息的所有信息位对应的数据缓存器组和外部存储器中相应的参考帧数据即为全部参考帧数据;
其中,待处理帧块标识结束表示已经确定处理帧块的最后一个参考帧数据在数据缓存器组中对应的子数据缓存块和/或外部存储器中对应的子数据存储块,并确定子数据缓存块和/或子数据存储块在存储信息表组中的位置,将确定的存储信息表组位置上的存储信息位标识为表示是待存储的参考帧数据的信息。
本发明实施例提供的一种视频处理方法应用于一种视频处理设备中,所述视频处理设备包括视频解码器和外部存储器,其中所述视频解码器包括数据缓存器组和处理器,该方法包括:
所述处理器确定所述数据缓存器组内是否存储有要读取的全部参考帧数据;
若没有存储或只存储有部分所述参考帧数据,则所述处理器向所述外部存储器发送请求读取未存储的参考帧数据的命令队列,其中所述命令队列中的每个命令对应地读取参考帧中不同存储位置上的参考帧数据;
所述外部存储器接收所述处理器发送的所述命令队列,并针对收到的一个命令,将所述命令对应的参考帧数据返回给所述数据缓存器组;
所述处理器根据收到的参考帧数据在参考帧中的位置,确定所述数据缓存器组中对应的存储位置,并将收到的参考帧数据存储到确定的所述数据缓存器组中对应的存储位置上;
所述处理器在确定所述命令队列读取的所有参考帧数据在所述数据缓存器组中存储完毕之后,从所述数据缓存器组中读取要读取的全部参考帧数据。
本发明实施中,所述处理器将多条具有相关性的所述数据缓存器组中未存储的参考帧数据的命令整合成一个命令队列,一起发送给外部存储器,由于处理器向外部存储器发送的请求读取参考帧数据的命令队列中的参考帧数据相关性较大,进而提高了外部存储器对数据进行处理的效率。
附图说明
图1为本发明实施例提供的一种视频处理设备的基本结构示意图;
图2A为本发明实施例提供的亮度数据存储块划分的示意图;
图2B为本发明实施例提供的子亮度数据存储块划分的示意图;
图3A为本发明实施例提供的色度数据存储块划分的示意图;
图3B为本发明实施例提供的子色度数据存储块划分的示意图;
图4A为本发明实施例提供的亮度缓存器0划分的示意图;
图4B为本发明实施例提供的亮度缓存器1划分的示意图;
图5A为本发明实施例提供的色度缓存器0划分的示意图;
图5B为本发明实施例提供的色度缓存器1划分的示意图;
图6A为本发明实施例提供的亮度缓存器0对应的亮度数据缓存块0存储亮度数据的示意图;
图6B为本发明实施例提供的亮度缓存器1对应的亮度数据缓存块1存储亮度数据的示意图;
图7A为本发明实施例提供的亮度数据缓存块0对应的亮度数据存储信息表0在重置之后的示意图;
图7B为本发明实施例提供的亮度数据缓存块1对应的亮度数据存储信息表1在重置之后的示意图;
图8A为本发明实施例提供的亮度数据缓存块0对应的亮度数据存储信息表0在置1时的示意图;
图8B为本发明实施例提供的亮度数据缓存块1对应的亮度数据存储信息表1在置1时的示意图;
图9A为本发明实施例提供的亮度数据存储信息表0中亮度存储信息位出现两次被置1时,该亮度数据存储信息表0中的亮度存储信息位的示意图;
图9B为本发明实施例提供的亮度数据存储信息表1中亮度存储信息位出现两次被置1时,该亮度数据存储信息表1中的亮度存储信息位的示意图;
图10为本发明实施例提供的查询表的划分结构示意图;
图11为本发明实施例提供的一种视频处理方法的步骤流程图;
图12为本发明实施例提供的一种视频处理方法的总体流程图。
具体实施方式
本发明实施例一种视频处理设备,该设备包括视频解码器和外部存储器,其中视频解码器包括数据缓存器组和处理器;处理器,用于确定数据缓存器组内是否存储有要读取的全部参考帧数据;若没有存储或只存储有部分参考帧数据,则处理器向外部存储器发送请求读取未存储的参考帧数据的命令队列,其中命令队列中的每个命令对应地读取参考帧中不同存储位置上的参考帧数据;根据收到的参考帧数据在参考帧中的位置,确定数据缓存器组中对应的存储位置,并将收到的参考帧数据存储到确定的数据缓存器组中对应的存储位置上;在确定命令队列读取的所有参考帧数据在数据缓存器组中存储完毕之后,从数据缓存器组中读取要读取的全部参考帧数据。外部存储器,用于接收处理器发送的命令队列,并针对收到的一个命令,将该命令对应的参考帧数据返回给数据缓存器组。由于处理器向外部存储器发送的请求读取参考帧数据的命令队列中的参考帧数据相关性较大,进而提高了外部存储器对数据进行处理的效率。
以下结合说明书附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。并且在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
如图1所示,为本发明实施例提供的一种视频处理设备,该设备包括视频解码器10和外部存储器11,其中视频解码器10包括数据缓存器组12和处理器13;
处理器13,用于确定数据缓存器组12内是否存储有视频解码器10要读取的全部参考帧数据;若没有存储或只存储有部分参考帧数据,则处理器13向外部存储器11发送请求读取未存储的参考帧数据的命令队列,其中命令队列中的每个命令对应地读取参考帧中不同存储位置上的参考帧数据;根据收到的参考帧数据在参考帧中的位置,确定数据缓存器组12中对应的存储位置,并将收到的参考帧数据存储到确定的数据缓存器组12中对应的存储位置上;在确定命令队列读取的所有参考帧数据在数据缓存器组12中存储完毕之后,从数据缓存器组12中读取视频解码器10要读取的全部参考帧数据。
外部存储器11,用于接收处理器发送的命令队列,并针对收到的一个命令,将命令对应的参考帧数据返回给数据缓存器组12。
实施中,为了能让本发明的视频处理设备中多条命令连续发出,本发明实施例采用了命令合并的措施,即将一串的命令作为一个命令序列连续的发出,有效的保证了有相关性的命令可以连续的发出。采用这种方式的设备在从外部存储器读取数据时,相比于离散发出命令的设备而言,视频解码器和外部存储器的内存系统的性能都是得到了提升。下面具体进行介绍。
较佳地,处理器还用于:
根据下列方式生成命令队列:
确定需要读取的参考帧数据在参考帧中的位置信息,并查找位置信息对应的外部存储器中的存储位置信息;根据确定的存储位置信息,生成命令队列。
具体的,处理器在生成命令队列时,处理器先确定要读取的参考帧数据在参考帧中的位置信息,然后再根据确定的位置信息查找要读取的参考帧数据在外部存储器中具体存在哪个位置,即查找位置信息对应的外部存储器中的存储位置信息,最后根据查找到的存储位置信息生成关于要读取的参考帧数据的命令队列。同时,可以将要读取的相关的参考帧数据的命令合并成一个命令序列连续的发出,有相关性的命令序列方便存取数据,降低了处理器读取数据的延时,提高了解码器和外部存储器存取数据的速度,进而能够提升系统的性能。
实施中,视频解码器进行帧间预测时需要读取的参考帧数据包括亮度数据和色度数据两种,针对这两种数据,本发明实施例中在外部存储器和数据缓存器组中划分块的方式相同,只是亮度数据和色度数据分块的大小不相同,因此本发明实施例不再分别介绍亮度数据和色度数据,只以参考帧数据为例进行详细介绍。
外部存储器用于存储在视频解码器做帧间预测时需要读取的已经解码的帧缓冲集合中的像素信息。下面具体针对外部存储器进行介绍。
较佳地,参考帧以分块方式存储于外部存储器中,分块是对一参考帧的参考帧数据进行均分的若干大小相等的数据存储块;
数据存储块包括多个大小相等的子数据存储块;
每个子数据存储块用于存储参考帧中对应位置的参考帧数据。
实施中,本发明实施例中外部存储器是以分块方式存储数据的,即将一参考帧的参考帧数据划分成若干大小相等的数据存储块,且每个数据存储块又被划分为多个大小相等的子数据存储块。
由于针对亮度数据和色度数据,数据存储块划分的大小不相同,因此实施例中分别对亮度和色度两种情况下的数据存储块的大小进行说明。
较佳地,如图2A所示,本发明实施例将一参考帧数据中的亮度数据划分为若干个64*64的亮度数据存储块,也就是4k bytes(4096字节=64*64)的亮度数据,这样做的目的是为了匹配外部存储器中的存储页的大小。如图2B所示,每个亮度数据存储块又划分为64个16*4大小的个子亮度数据存储块。实际生产制造过程中,亮度数据存储块和子亮度数据存储块的大小可以根据实际需要进行设定,可以认为是一个参考数据块的大小,本实施例以64*64大小的亮度数据存储块,以及16*4大小的子亮度数据存储块进行举例说明。
如图3A所示,本发明实施例将一参考帧数据中的色度数据划分为若干个64*32的色度数据存储块,也就是2k bytes(2048字节=64*32)的色度数据,这样做的目的是为了匹配外部存储器中的存储页的大小。如图3B所示,每个色度数据存储块又划分为32个16*4大小的个子色度数据存储块。实际生产制造过程中,色度数据存储块和子色度数据存储块的大小可以根据实际需要进行设定,可以认为是一个参考数据块的大小,本实施例以64*32大小的色度数据存储块,以及16*4大小的子色度数据存储块进行举例说明。
与外部存储器类似,数据缓存器组也是以分块的方式存储数据,分块的大小与外部存储器中的分块大小相对应。本发明实施例中的数据缓存器组采用多路缓存的级联方式,优选的采用双路缓存的方式,以下均以双路缓存的方式进行举例介绍。
实施中,数据缓存器组是指视频解码器中用于缓存参考帧数据的存储器组,由于参考帧数据包括亮度数据和色度数据两种,且数据缓存器组采用多路缓存的级联方式,因而数据缓存器组中也包括亮度数据缓存器组和色度数据缓存器组两种。要读取的所有参考帧数据都需要从数据缓存器组中读取,下面具体对数据缓存器组进行介绍。
较佳地,数据缓存器组包括至少一个数据缓存器,每个数据缓存器大小与分块大小相对应;
数据缓存器包括多个大小相等的子数据缓存块;
每个子数据缓存块用于存储子数据存储块中对应位置的参考帧数据。
实施中,本发明实施例中数据缓存器组中包括亮度数据缓存器和色度数据缓存器两种,且数据缓存器组外部存储器类似,也是以分块方式存储数据的,分块的方式与外部存储器中的分块方式相同,即每个数据缓存器划分成若干大小相等的数据缓存块,且每个数据缓存块又被划分为多个大小相等的子数据缓存块。
由于针对亮度数据和色度数据,数据缓存块划分的大小不相同,因此实施例中分别对亮度和色度两种情况下的数据缓存块的大小进行说明。
实施中,对于参考两个或两个以上帧的预测编码技术,可以参考当前帧的参考帧0和参考帧1的参考数据,现有技术中是将这两个数据必须分开存储在两个数据缓存器中,且每个数据缓存器只能存放一种类型的参考数据。而本发明实施例采用了多路缓存的结构,以双路缓存为例,针对参考帧数据,当前帧的参考帧0和参考帧1的参考帧数据可以不加区分地放入双路缓存器对应的两个数据缓存块中的任何一个。下面针对双路缓存结构进行具体介绍。
第一、针对亮度数据;
由于本发明实施例采用了双路缓存结构,每个数据缓存器组包括亮度缓存器0和亮度缓存器1两路,其中,每路亮度缓存器对应一个亮度数据缓存块,且亮度数据缓存块的尺寸大小与外部存储器中的亮度数据存储块的尺寸相同,为64*64的大小,且为了与外部存储器的划分模式相对应,每个亮度数据缓存块划分为64个16*4(64byte)的子亮度数据缓存块。一般设计中使用的是32byte的子亮度数据缓存块,本设计64byte的优势是能够减少将近一半的命令请求数。例如,64byte的数据可以用4个burst8传输即可。如图4A所示,为本发明实施例提供的亮度缓存器0划分的示意图;如图4B所示,为本发明实施例提供的亮度缓存器1划分的示意图。
第二、针对色度数据;
由于本发明实施例采用了双路缓存结构,每个数据缓存器组包括色度缓存器0和色度缓存器1两路,其中,每路色度缓存器对应一个色度数据缓存块,且色度数据缓存块的尺寸大小与外部存储器中的色度数据存储块的尺寸相同,为64*32的大小,且为了与外部存储器的划分模式相对应,每个色度数据缓存块划分为32个16*4(64byte)的子色度数据缓存块。一般设计中使用的是32byte的子色度数据缓存块,本设计64byte的优势是能够减少将近一半的命令请求数。例如,64byte的数据可以用4个burst8传输即可。如图5A所示,为本发明实施例提供的色度缓存器0划分的示意图;如图5B所示,为本发明实施例提供的色度缓存器1划分的示意图。
在处理器确定数据缓存器组内是否存储有要读取的全部参考帧数据之前,处理器要先确定要读取的全部参考帧数据都是哪些数据,为了能够准确的确定出这些数据,本发明实施例引入了存储信息表组的概念,由于针对亮度数据和色度数据,数据缓存器组和外部存储器中的数据缓存块和数据存储块的分块大小也不相同,但处理器确定亮度数据和色度数据的过程类似,因此下面举例说明的过程中,仅针对亮度数据为例进行说明,下面进行具体介绍。
较佳地,处理器还用于:
在处理器确定数据缓存器组内是否存储有要读取的全部参考帧数据之前,通过查询存储信息表组的相应存储信息位,确定解码器要读取的全部参考帧数据;
其中,存储信息表组包含多个存储信息表,每个存储信息表大小与分块大小相对应,一个存储信息位上的信息表示对应的数据缓存器组中子数据缓存块和/或外部存储器中的子数据存储块中的参考帧数据是否为待存储的参考帧数据。
实施中,处理器在确定数据缓存器组内是否存储有要读取的全部参考帧数据之前,可以通过查询存储信息表组来确定要读取的全部参考帧数据。其中,视频解码器中包括多个用于表示存储信息的独立的寄存器,形成存储信息组,用于在确定要读取的全部参考帧数据时,记录在外部数据存储器和/或数据缓存器组中是否有频解码器要读取的参考帧数据。
存储信息组中的每个存储信息对应数据缓存器组和外部存储器中的一个不同的数据缓存器,且每个存储信息与数据缓存器和外部存储器一样,分成多个小块,且分块的大小和个数完全相同;每个小块代表一个存储信息位,一个存储信息中的存储信息位对应数据缓存器和/或外部存储器中一个不同的子数据缓存块和/或子数据存储块,且每个存储信息位上的信息用于表示与其对应的子数据缓存块和/或子数据存储块中存储的参考帧数据是否为要读取的参考帧数据(即待存储的参考帧数据)。
本实施例仅以32x32大小为单位进行预测操作,实际应用中可以不限于此大小。假设32x32大小的参考帧数据,视频解码器要分成3次读取这些参考帧数据,则每次读取的参考帧数据为一个处理帧块的参考帧数据。处理器在确定数据缓存器组中是否存储有要读取的全部参考帧数据之前,可以通过查询存储信息表组来确定要读取的全部参考帧数据。
其中,亮度缓存器0和亮度缓存器1两路对应的亮度数据缓存块中,既可以存储当前帧的参考帧0的参考数据,又可以存储参考帧1的参考数据。假设某个亮度数据要存储到亮度数据缓存块0中某一个子亮度数据缓存块上,如果该子亮度数据缓存块已经被占用,则可以将该亮度数据存储到亮度数据缓存块1中对应位置的子亮度数据缓存块上。
下面以亮度数据和双路缓存的情况为例结合附图进行详细举例说明。
如图6A所示,为本发明实施例提供的亮度缓存器0对应的亮度数据缓存块0存储亮度数据的示意图,如图6B所示,为本发明实施例提供的亮度缓存器1对应的亮度数据缓存块1存储亮度数据的示意图。假设有一个要存储到子亮度数据缓存块13上的数据,在附图5A中,亮度缓存器0对应的子亮度数据缓存块13都已经存储了亮度数据,而亮度缓存器1对应的子亮度数据缓存块13还未存放亮度数据,则数据缓存器组可以把亮度数据存放于亮度缓存器1对应的子亮度数据缓存块13上。这样可以提高数据缓存器组的利用率。
较佳地,处理器具体用于:
重置存储信息表组中的所有存储信息位,以使重置后的存储信息表组中的所有存储信息位上的信息表示不是待存储的参考帧数据;
实施中,每次确定要读取的全部参考帧数据之前,需要先对存储信息表组进行重置,即将存储信息表组中的所有存储信息位上的信息都重置为表示不是要读取的参考帧数据(即不是待存储的参考帧数据)。如图7A所示,为本发明实施例提供的亮度数据缓存块0对应的亮度数据存储信息表0在重置之后的示意图;如图7B所示,为本发明实施例提供的亮度数据缓存块1对应的亮度数据存储信息表1在重置之后的示意图。其中,存储信息表组中的存储信息位上的信息为0时,表示该位不是待存储的参考帧数据;存储信息表组中的存储信息位上的信息为1时,表示该位是待存储的参考帧数据。因而,重置之后,存储信息表组中的所有存储信息位都为0。
较佳地,处理器具体用于:
依次确定待处理的参考帧数据在数据缓存器组中对应的子数据缓存块和/或外部存储器中对应的子数据存储块,并确定子数据缓存块和/或子数据存储块在存储信息表组中的位置,将确定的存储信息表组位置上的存储信息位标识为表示是待存储的参考帧数据的信息;
当已标有待存储的存储信息位再次被确定需要被标识为是待存储的参考帧数据的信息和/或待处理帧块标识结束,则存储信息表组中已被标识为是待存储的参考帧数据的信息的所有信息位对应的数据缓存器组和外部存储器中相应的参考帧数据即为全部参考帧数据;
其中,待处理帧块标识结束表示已经确定处理帧块的最后一个参考帧数据在数据缓存器组中对应的子数据缓存块和/或外部存储器中对应的子数据存储块,并确定子数据缓存块和/或子数据存储块在存储信息表组中的位置,将确定的存储信息表组位置上的存储信息位标识为表示是待存储的参考帧数据的信息。
实施中,处理器根据存储信息表来确定要读取的全部参考帧数据,也可以说是处理器要先扫描一遍数据缓存器组和外部存储器中解码器要读取的参考帧数据,即依次确定待处理的参考帧数据在数据缓存器组中对应的子数据缓存块和/或外部存储器中对应的子数据存储块,然后确定子数据缓存块和/或子数据存储块在存储信息表组中的位置,最后将确定的存储信息表组位置上的存储信息位标识为表示是待存储的参考帧数据的信息。
如图8A所示,为本发明实施例提供的亮度数据缓存块0对应的亮度数据存储信息表0在置1时的示意图;如图8B所示,为本发明实施例提供的亮度数据缓存块1对应的亮度数据存储信息表1在置1时的示意图;图8A和图8B分别为处理器在依次确定待处理的参考帧数据在数据缓存器组中对应的子数据缓存块和/或外部存储器中对应的子数据存储块时,假设确定的待处理的亮度参考帧数据是存储在亮度数据缓存器组中对应的子亮度数据缓存块0中,则确定子亮度数据缓存块在亮度存储信息表组中的位置也是在0的位置,并将确定的存储信息表组位置0上的存储信息位置1(即标识为表示是待存储的参考帧数据的信息);确定的待处理的亮度参考帧数据是存储在外部存储器中对应的子数据存储块的情况,与在亮度数据缓存器组中对应的子亮度数据缓存块上类似,因此,处理器要确定要读取的参考帧数据不管是存储在亮度数据缓存器组中,还是存储在外部存储器中,对应的亮度存储信息表组中的位置上的存储信息位都会置1。
实施中,出现但不仅限于下列两种情况时,处理器会确定出要读取的全部参考帧数据。
第一、当已标有待存储的存储信息位再次被确定需要被标识为是待存储的参考帧数据的信息,则存储信息表组中已被标识为是待存储的参考帧数据的信息的所有信息位对应的数据缓存器组和外部存储器中相应的参考帧数据即为全部参考帧数据;
也就是说,多路亮度缓存器对应的亮度数据存储块中,其中同一个子亮度数据缓存块对应的亮度存储信息位出现两次被置1的情况时,代表此子亮度数据存储块在多路缓存器对应的的亮度数据存储块中都已经被处理器确定为解码器要读取的待存储的参考帧数据,如果处理器继续确定要读取的参考帧数据,且该参考帧数据也是这两次被置1的存储信息位,则此时将发生冲突,处理器不能再继续确定了,即表示处理器已经确定完要读取的全部待存储的参考帧数据。
例如,如图9A所示,为本发明实施例提供的亮度数据存储信息表0中亮度存储信息位出现两次被置1时,该亮度数据存储信息表0中的亮度存储信息位的示意图;如图9B所示,为本发明实施例提供的亮度数据存储信息表1中亮度存储信息位出现两次被置1时,该亮度数据存储信息表1中的亮度存储信息位的示意图。其中图9A和9B中亮度数据存储信息表0和亮度数据存储信息表1中的第13个亮度存储信息位均为1,如果处理器继续确定要读取的参考帧数据,且该参考帧数据也是第13个亮度存储信息位,由于两路中的第13个亮度存储信息位都已经被处理器确定为解码器要读取的待存储的参考帧数据,此时将发生冲突,处理器不能再继续确定了,则表示此时处理器已经确定完要读取的全部参考帧数据。
第二、待处理帧块标识结束,则存储信息表组中已被标识为是待存储的参考帧数据的信息的所有信息位对应的数据缓存器组和外部存储器中相应的参考帧数据即为全部参考帧数据;
其中,待处理帧块标识结束表示已经确定处理帧块的最后一个参考帧数据在数据缓存器组中对应的子数据缓存块和/或外部存储器中对应的子数据存储块,并确定子数据缓存块和/或子数据存储块在存储信息表组中的位置,将确定的存储信息表组位置上的存储信息位标识为表示是待存储的参考帧数据的信息。
也就是说,本实施例以32x32大小为单位进行预测操作,假设32x32大小的参考帧数据,视频解码器要分成3次读取这些参考帧数据,则每次读取的参考帧数据为一个处理帧块的参考帧数据,当处理帧块中的最后一个参考帧数据也被确定完成,则表示待处理帧块标识结束,而确定参考帧数据的过程与上一种情况相同。
实施中,处理器可以判断数据缓存器组中是否存储有要读取的全部参考帧数据,若是,则直接从数据缓存器组中读取要读取的全部参考帧数据,若不是,则要向外部存储器发送请求读取未存储的参考帧数据的命令。下面针对处理器判断得到的两种不同的结果分别进行介绍。
情况一、数据缓存器组中没有存储或只存储有部分要读取的参考帧数据。
在判断数据缓存器组中是否存储有要读取的全部参考帧数据时,需要通过查询表组来确定,下面具体进行介绍。
较佳地,处理器具体用于:
根据查询表组中的查询位上的信息确定数据缓存器组是否存储有要读取的全部参考帧数据;
其中,每个查询表组包含多个查询表,每个查询表对应一个不同的数据缓存器,一个查询表中每个查询位对应数据缓存器中一个不同的子数据缓存块,一个查询位上的信息表示对应的子数据缓存块中存储的参考帧数据在每个参考帧中的位置。
实施中,视频解码器中包括多个用于存储查询表的寄存器,形成查询表组,该查询表组中的每个查询表对应数据缓存器组中的一个不同的数据缓存器,且每个查询表与数据缓存器一样,分成多个小块,且分块的大小和个数完全相同;如图10所示,为本发明实施例提供的查询表的划分结构示意图。图中每个小块代表一个查询位,一个查询表中的查询位对应数据缓存器中一个不同的子数据缓存块,且每个查询位上的信息用于表示与其对应的子数据缓存块中存储的参考帧数据在每个参考帧中的位置。
只要通过查询表组就能知道要读取的全部参考帧数据在数据缓存器组中是否都有,若没有存储或只存储有部分要读取的参考帧数据时,处理器会向外部存储器去读取数据,下面具体进行介绍。
较佳地,处理器具体用于:
若没有存储或只存储有部分参考帧数据,则处理器向外部存储器发送请求读取未存储的参考帧数据的命令队列,其中命令队列中的每个命令对应地读取参考帧中不同存储位置上的参考帧数据;
实施中,若处理器通过查询表组确定要读取的全部参考帧数据在数据缓存器组没有存储或只存储有部分,则处理器会确定没有存储的参考帧数据,将没有存储的所有参考帧数据的命令形成一个命令队列,并向外部存储器发送请求读取没有存储的参考帧数据的命令队列,其中,命令队列中的每个命令中都包含要读取的参考帧数据的位置信息,因而命令队列中每个命令要读取的是参考帧中不同存储位置上的参考帧数据。
较佳地,外部存储器,用于接收处理器发送的命令队列,并针对收到的一个命令,将命令对应的参考帧数据返回给数据缓存器组。
实施中,外部存储器在收到处理器发送的读取未存储的参考帧数据的命令队列后,针对收到的命令队列中的每条命令,外部存储器将该命令要读取的参考帧数据返回给数据缓存器组,也就说,外部存储器会将处理器发送的请求读取未存储的参考帧数据的命令队列中所有的参考帧数据都返回给数据缓存器组,以便处理器能够从数据缓存器组中读取这些参考帧数据。
较佳地,处理器具体用于:
根据收到的参考帧数据在参考帧中的位置,确定对应的数据缓存器组的一个子数据缓存块,并将收到的参考帧数据存储到确定的子数据缓存块上。
实施中,处理器会根据外部存储器返给数据缓存器的参考帧数据在参考帧中的位置,来从数据缓存器组中找到对应的子数据缓存块,并将该参考帧数据存储到确定的子数据缓存块上。
较佳地,处理器具体用于:
在确定命令队列读取的所有参考帧数据在数据缓存器组中存储完毕之后,从数据缓存器组中读取要读取的全部参考帧数据。
实施中,当处理器将数据缓存器组中未存储的要读取的参考帧数据返回并存储到数据缓存器组中后,处理器会从数据缓存器组中读取要读取的全部参考帧数据,即一起读取数据缓存器组中原来存储的参考帧数据和外部存储器返给数据缓存器组的参考帧数据。
除了上述情况一,数据缓存器组中没有存储或只存储有部分要读取的参考帧数据外,数据缓存器组中也可能存储有全部要读取的参考帧数据。下面具体进行介绍。
情况二、数据缓存器组中存储有全部要读取的参考帧数据。
较佳地,处理器还用于:
在确定数据缓存器组是否存储有要读取的全部参考帧数据之后,若存储有全部参考帧数据,确定参考帧数据在参考帧中的位置对应的数据缓存器组中的子数据缓存块,并读取子数据缓存块上存储的参考帧数据。
实施中,若处理器通过查询表组确定数据缓存器组中存储有全部要读取的参考帧数据,则处理器将确定要读取的所有参考帧数据在视频帧中的位置对应的数据缓存器组中的子数据缓存块,并从确定的子数据存储块上读取存储的参考帧数据,无需再去外部存储器读取数据,进而能够降低时延,提高系统的性能。
基于同一发明构思,本发明实施例中还提供了一种视频处理方法,由于这些方法解决问题的原理与视频处理设备相似,因此这些方法的实施可以参见设备的实施,重复之处不再赘述。
如图11所示,本发明实施例一种视频处理方法的步骤流程图,应用于一种视频处理设备中,视频处理设备包括视频解码器和外部存储器,其中视频解码器包括数据缓存器组和处理器,该方法包括下列步骤:
步骤1101、处理器确定数据缓存器组内是否存储有要读取的全部参考帧数据;
步骤1102、若没有存储或只存储有部分参考帧数据,则处理器向外部存储器发送请求读取未存储的参考帧数据的命令队列,其中命令队列中的每个命令对应地读取参考帧中不同存储位置上的参考帧数据;
步骤1103、外部存储器接收处理器发送的命令队列,并针对收到的一个命令,将命令对应的参考帧数据返回给数据缓存器组;
步骤1104、处理器根据收到的参考帧数据在参考帧中的位置,确定数据缓存器组中对应的存储位置,并将收到的参考帧数据存储到确定的数据缓存器组中对应的存储位置上;
步骤1105、处理器在确定命令队列读取的所有参考帧数据在数据缓存器组中存储完毕之后,从数据缓存器组中读取要读取的全部参考帧数据。
较佳地,处理器根据下列方式生成命令队列:
处理器确定需要读取的参考帧数据在参考帧中的位置信息,并查找位置信息对应的外部存储器中的存储位置信息;
处理器根据确定的存储位置信息,生成命令队列。
较佳地,参考帧以分块方式存储于外部存储器中,分块是对一参考帧的参考帧数据进行均分的若干大小相等的数据存储块;
数据存储块包括多个大小相等的子数据存储块;
每个子数据存储块用于存储参考帧中对应位置的参考帧数据。
较佳地,数据缓存器组包括至少一个数据缓存器,每个数据缓存器大小与分块大小相对应;
数据缓存器包括多个大小相等的子数据缓存块;
每个子数据缓存块用于存储子数据存储块中对应位置的参考帧数据。
较佳地,处理器确定数据缓存器组是否存储有要读取的全部参考帧数据之后,还包括:
若存储有全部参考帧数据,处理器确定参考帧数据在参考帧中的位置对应的数据缓存器组中的子数据缓存块,并读取子数据缓存块上存储的参考帧数据。
较佳地,处理器确定数据缓存器组是否存储有要读取的全部参考帧数据,包括:
处理器根据查询表组中的查询位上的信息确定数据缓存器组是否存储有要读取的全部参考帧数据;
其中,每个查询表组包含多个查询表,每个查询表对应一个不同的数据缓存器,一个查询表中每个查询位对应数据缓存器中一个不同的子数据缓存块,一个查询位上的信息表示对应的子数据缓存块中存储的参考帧数据在每个参考帧中的位置。
较佳地,处理器根据收到的参考帧数据在参考帧中的位置,确定数据缓存器组中对应的存储位置,并将收到的参考帧数据存储到确定的数据缓存器组中对应的存储位置上,包括:
处理器根据收到的参考帧数据在参考帧中的位置,确定对应的数据缓存器组的一个子数据缓存块,并将收到的参考帧数据存储到确定的子数据缓存块上。
较佳地,在处理器确定数据缓存器组内是否存储有要读取的全部参考帧数据之前,还包括:
处理器通过查询存储信息表组的相应存储信息位,确定解码器要读取的全部参考帧数据;
其中,存储信息表组包含多个存储信息表,每个存储信息表大小与分块大小相对应,一个存储信息位上的信息表示对应的数据缓存器组中子数据缓存块和/或外部存储器中的子数据存储块中的参考帧数据是否为待存储的参考帧数据。
较佳地,处理器通过查询存储信息表组中相应存储信息位确定解码器要读取的全部参考帧数据,包括:
处理器重置存储信息表组中的所有存储信息位,以使重置后的存储信息表组中的所有存储信息位上的信息表示不是待存储的参考帧数据;
处理器依次确定待处理的参考帧数据在数据缓存器组中对应的子数据缓存块和/或外部存储器中对应的子数据存储块,并确定子数据缓存块和/或子数据存储块在存储信息表组中的位置,将确定的存储信息表组位置上的存储信息位标识为表示是待存储的参考帧数据的信息;
当已标有待存储的存储信息位再次被确定需要被标识为是待存储的参考帧数据的信息和/或待处理帧块标识结束,则存储信息表组中已被标识为是待存储的参考帧数据的信息的所有信息位对应的数据缓存器组和外部存储器中相应的参考帧数据即为全部参考帧数据;
其中,待处理帧块标识结束表示已经确定处理帧块的最后一个参考帧数据在数据缓存器组中对应的子数据缓存块和/或外部存储器中对应的子数据存储块,并确定子数据缓存块和/或子数据存储块在存储信息表组中的位置,将确定的存储信息表组位置上的存储信息位标识为表示是待存储的参考帧数据的信息。
根据上述对本发明实施例一种视频处理方法的描述,总结出该方法的总体流程图,如图12所示,为本发明实施例提供的一种视频处理方法的总体流程图,包括下列步骤:
步骤1201、处理器重置存储信息表组中的所有存储信息位;
步骤1202、处理器依次确定待处理的参考帧数据在数据缓存器组中对应的子数据缓存块和/或外部存储器中对应的子数据存储块,并确定子数据缓存块和/或子数据存储块在存储信息表组中的位置,将确定的存储信息表组位置上的存储信息位标识为表示是待存储的参考帧数据的信息;
步骤1203、当已标有待存储的存储信息位再次被确定需要被标识为是待存储的参考帧数据的信息和/或待处理帧块标识结束,则存储信息表组中已被标识为是待存储的参考帧数据的信息的所有信息位对应的数据缓存器组和外部存储器中相应的参考帧数据即为全部参考帧数据;
步骤1204、处理器根据查询表组中的查询位上的信息确定数据缓存器组是否存储有要读取的全部参考帧数据,若是,则执行步骤1209,否则执行步骤1205;
步骤1205、处理器向外部存储器发送请求读取未存储的参考帧数据的命令队列并执行步骤1206;
步骤1206、外部存储器接收处理器发送的命令队列,并针对收到的一个命令,将命令对应的参考帧数据返回给数据缓存器组;
步骤1207、处理器根据收到的参考帧数据在参考帧中的位置,确定对应的数据缓存器组的一个子数据缓存块,并将收到的参考帧数据存储到确定的子数据缓存块上;
步骤1208、处理器在确定命令队列读取的所有参考帧数据在数据缓存器组中存储完毕之后,从数据缓存器组中读取要读取的全部参考帧数据;
步骤1209、若存储有全部参考帧数据,处理器确定参考帧数据在参考帧中的位置对应的数据缓存器组中的子数据缓存块,并读取子数据缓存块上存储的参考帧数据。
本发明实施例一种视频处理设备,该设备包括视频解码器和外部存储器,其中视频解码器包括数据缓存器组和处理器;处理器,用于确定数据缓存器组内是否存储有要读取的全部参考帧数据;若没有存储或只存储有部分参考帧数据,则处理器向外部存储器发送请求读取未存储的参考帧数据的命令队列,其中命令队列中的每个命令对应地读取参考帧中不同存储位置上的参考帧数据;根据收到的参考帧数据在参考帧中的位置,确定数据缓存器组中对应的存储位置,并将收到的参考帧数据存储到确定的数据缓存器组中对应的存储位置上;在确定命令队列读取的所有参考帧数据在数据缓存器组中存储完毕之后,从数据缓存器组中读取要读取的全部参考帧数据。外部存储器,用于接收处理器发送的命令队列,并针对收到的一个命令,将命令对应的参考帧数据返回给数据缓存器组。由于处理器向外部存储器发送的请求读取参考帧数据的命令队列中的参考帧数据相关性较大,进而提高了外部存储器对数据进行处理的效率。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明实施例可以通过硬件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,本发明实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
本领域技术人员可以理解附图只是一个优选实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
本领域技术人员可以理解实施例中用户设备中的模块可以按照实施例描述进行分布于实施例的用户设备中,也可以进行相应变化位于不同于本实施例的一个或多个用户设备中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (18)
1.一种视频处理设备,其特征在于,该设备包括视频解码器和外部存储器,其中所述视频解码器包括数据缓存器组和处理器;
所述处理器,用于确定所述数据缓存器组内是否存储有要读取的全部参考帧数据;若没有存储或只存储有部分所述参考帧数据,则向所述外部存储器发送请求读取未存储的参考帧数据的命令队列,其中所述命令队列中的每个命令对应地读取参考帧中不同存储位置上的参考帧数据;根据收到的参考帧数据在参考帧中的位置,确定所述数据缓存器组中对应的存储位置,并将收到的参考帧数据存储到确定的所述数据缓存器组中对应的存储位置上;在确定所述命令队列读取的所有参考帧数据在所述数据缓存器组中存储完毕之后,从所述数据缓存器组中读取要读取的全部参考帧数据;
所述外部存储器,用于接收所述处理器发送的所述命令队列,并针对收到的一个命令,将所述命令对应的参考帧数据返回给所述数据缓存器组。
2.根据权利要求1所述的设备,其特征在于,所述处理器还用于:
根据下列方式生成所述命令队列:
确定需要读取的所述参考帧数据在参考帧中的位置信息,并查找所述位置信息对应的所述外部存储器中的存储位置信息;根据确定的所述存储位置信息,生成所述命令队列。
3.根据权利要求1的设备,其特征在于,所述参考帧以分块方式存储于所述外部存储器中,所述分块是对一参考帧的参考帧数据进行均分的若干大小相等的数据存储块;
所述数据存储块包括多个大小相等的子数据存储块;
每个所述子数据存储块用于存储所述参考帧中对应位置的参考帧数据。
4.根据权利要求3所述的设备,其特征在于,所述数据缓存器组包括至少一个数据缓存器,每个数据缓存器大小与所述分块大小相对应;
所述数据缓存器包括多个大小相等的子数据缓存块;
每个所述子数据缓存块用于存储所述子数据存储块中对应位置的参考帧数据。
5.根据权利要求4所述的设备,其特征在于,所述处理器还用于:
在确定所述数据缓存器组是否存储有要读取的全部参考帧数据之后,若存储有所述全部参考帧数据,确定所述参考帧数据在参考帧中的位置对应的所述数据缓存器组中的子数据缓存块,并读取所述子数据缓存块上存储的参考帧数据。
6.根据权利要求4所述的设备,其特征在于,所述处理器具体用于:
根据查询表组中的查询位上的信息确定所述数据缓存器组是否存储有要读取的全部参考帧数据;
其中,每个查询表组包含多个查询表,每个查询表对应一个不同的数据缓存器,一个查询表中每个查询位对应数据缓存器中一个不同的子数据缓存块,一个查询位上的信息表示对应的子数据缓存块中存储的参考帧数据在每个参考帧中的位置。
7.根据权利要求4所述的设备,其特征在于,所述处理器具体用于:
根据收到的参考帧数据在参考帧中的位置,确定对应的所述数据缓存器组的一个子数据缓存块,并将收到的所述参考帧数据存储到确定的子数据缓存块上。
8.根据权利要求4所述的设备,其特征在于,所述处理器还用于:
在确定所述数据缓存器组内是否存储有要读取的全部参考帧数据之前,通过查询存储信息表组的相应存储信息位,确定所述解码器要读取的全部参考帧数据;
其中,存储信息表组包含多个存储信息表,每个存储信息表大小与所述分块大小相对应,一个存储信息位上的信息表示对应的所述数据缓存器组中子数据缓存块和/或所述外部存储器中的子数据存储块中的参考帧数据是否为待存储的参考帧数据。
9.根据权利要求8所述的设备,其特征在于,所述处理器具体用于:
重置所述存储信息表组中的所有存储信息位,以使重置后的所述存储信息表组中的所有存储信息位上的信息表示不是待存储的参考帧数据;
依次确定待处理的参考帧数据在所述数据缓存器组中对应的子数据缓存块和/或所述外部存储器中对应的子数据存储块,并确定所述子数据缓存块和/或所述子数据存储块在存储信息表组中的位置,将确定的存储信息表组位置上的存储信息位标识为表示是待存储的参考帧数据的信息;
当已标有待存储的存储信息位再次被确定需要被标识为是待存储的参考帧数据的信息和/或待处理帧块标识结束,则所述存储信息表组中已被标识为是待存储的参考帧数据的信息的所有信息位对应的所述数据缓存器组和所述外部存储器中相应的参考帧数据即为全部参考帧数据;
其中,所述待处理帧块标识结束表示已经确定处理帧块的最后一个参考帧数据在所述数据缓存器组中对应的子数据缓存块和/或所述外部存储器中对应的子数据存储块,并确定所述子数据缓存块和/或所述子数据存储块在存储信息表组中的位置,将确定的存储信息表组位置上的存储信息位标识为表示是待存储的参考帧数据的信息。
10.一种视频处理方法,应用于一种视频处理设备中,所述视频处理设备包括视频解码器和外部存储器,其中所述视频解码器包括数据缓存器组和处理器,其特征在于,该方法包括:
所述处理器确定所述数据缓存器组内是否存储有要读取的全部参考帧数据;
若没有存储或只存储有部分所述参考帧数据,则所述处理器向所述外部存储器发送请求读取未存储的参考帧数据的命令队列,其中所述命令队列中的每个命令对应地读取参考帧中不同存储位置上的参考帧数据;
所述外部存储器接收所述处理器发送的所述命令队列,并针对收到的一个命令,将所述命令对应的参考帧数据返回给所述数据缓存器组;
所述处理器根据收到的参考帧数据在参考帧中的位置,确定所述数据缓存器组中对应的存储位置,并将收到的参考帧数据存储到确定的所述数据缓存器组中对应的存储位置上;
所述处理器在确定所述命令队列读取的所有参考帧数据在所述数据缓存器组中存储完毕之后,从所述数据缓存器组中读取要读取的全部参考帧数据。
11.根据权利要求10所述的方法,其特征在于,所述处理器根据下列方式生成所述命令队列:
所述处理器确定需要读取的所述参考帧数据在参考帧中的位置信息,并查找所述位置信息对应的所述外部存储器中的存储位置信息;
所述处理器根据确定的所述存储位置信息,生成所述命令队列。
12.根据权利要求10的方法,其特征在于,所述参考帧以分块方式存储于所述外部存储器中,所述分块是对一参考帧的参考帧数据进行均分的若干大小相等的数据存储块;
所述数据存储块包括多个大小相等的子数据存储块;
每个所述子数据存储块用于存储所述参考帧中对应位置的参考帧数据。
13.根据权利要求12所述的方法,其特征在于,所述数据缓存器组包括至少一个数据缓存器,每个数据缓存器大小与所述分块大小相对应;
所述数据缓存器包括多个大小相等的子数据缓存块;
每个所述子数据缓存块用于存储所述子数据存储块中对应位置的参考帧数据。
14.根据权利要求13所述的方法,其特征在于,所述处理器确定所述数据缓存器组是否存储有要读取的全部参考帧数据之后,还包括:
若存储有所述全部参考帧数据,所述处理器确定所述参考帧数据在参考帧中的位置对应的所述数据缓存器组中的子数据缓存块,并读取所述子数据缓存块上存储的参考帧数据。
15.根据权利要求13所述的方法,其特征在于,所述处理器确定所述数据缓存器组是否存储有要读取的全部参考帧数据,包括:
所述处理器根据查询表组中的查询位上的信息确定所述数据缓存器组是否存储有要读取的全部参考帧数据;
其中,每个查询表组包含多个查询表,每个查询表对应一个不同的数据缓存器,一个查询表中每个查询位对应数据缓存器中一个不同的子数据缓存块,一个查询位上的信息表示对应的子数据缓存块中存储的参考帧数据在每个参考帧中的位置。
16.根据权利要求13所述的方法,其特征在于,所述处理器根据收到的参考帧数据在参考帧中的位置,确定所述数据缓存器组中对应的存储位置,并将收到的参考帧数据存储到确定的所述数据缓存器组中对应的存储位置上,包括:
所述处理器根据收到的参考帧数据在参考帧中的位置,确定对应的所述数据缓存器组的一个子数据缓存块,并将收到的所述参考帧数据存储到确定的子数据缓存块上。
17.根据权利要求13所述的方法,其特征在于,在所述处理器确定所述数据缓存器组内是否存储有要读取的全部参考帧数据之前,还包括:
所述处理器通过查询存储信息表组的相应存储信息位,确定所述解码器要读取的全部参考帧数据;
其中,存储信息表组包含多个存储信息表,每个存储信息表大小与所述分块大小相对应,一个存储信息位上的信息表示对应的所述数据缓存器组中子数据缓存块和/或所述外部存储器中的子数据存储块中的参考帧数据是否为待存储的参考帧数据。
18.根据权利要求17所述的方法,其特征在于,所述处理器通过查询存储信息表组中相应存储信息位确定所述解码器要读取的全部参考帧数据,包括:
所述处理器重置所述存储信息表组中的所有存储信息位,以使重置后的所述存储信息表组中的所有存储信息位上的信息表示不是待存储的参考帧数据;
所述处理器依次确定待处理的参考帧数据在所述数据缓存器组中对应的子数据缓存块和/或所述外部存储器中对应的子数据存储块,并确定所述子数据缓存块和/或所述子数据存储块在存储信息表组中的位置,将确定的存储信息表组位置上的存储信息位标识为表示是待存储的参考帧数据的信息;
当已标有待存储的存储信息位再次被确定需要被标识为是待存储的参考帧数据的信息和/或待处理帧块标识结束,则所述存储信息表组中已被标识为是待存储的参考帧数据的信息的所有信息位对应的所述数据缓存器组和所述外部存储器中相应的参考帧数据即为全部参考帧数据;
其中,所述待处理帧块标识结束表示已经确定处理帧块的最后一个参考帧数据在所述数据缓存器组中对应的子数据缓存块和/或所述外部存储器中对应的子数据存储块,并确定所述子数据缓存块和/或所述子数据存储块在存储信息表组中的位置,将确定的存储信息表组位置上的存储信息位标识为表示是待存储的参考帧数据的信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510018968.1A CN105847817B (zh) | 2015-01-14 | 2015-01-14 | 一种视频处理设备和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510018968.1A CN105847817B (zh) | 2015-01-14 | 2015-01-14 | 一种视频处理设备和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105847817A true CN105847817A (zh) | 2016-08-10 |
CN105847817B CN105847817B (zh) | 2019-09-17 |
Family
ID=56579931
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510018968.1A Active CN105847817B (zh) | 2015-01-14 | 2015-01-14 | 一种视频处理设备和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105847817B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1589019A (zh) * | 2004-08-05 | 2005-03-02 | 联合信源数字音视频技术(北京)有限公司 | 帧场视频解码中运动矢量存取的控制装置及其方法 |
CN1622626A (zh) * | 2004-12-21 | 2005-06-01 | 北京中星微电子有限公司 | 一种视频编解码过程中宏块预取的方法 |
CN101206618A (zh) * | 2006-09-08 | 2008-06-25 | 三星电子株式会社 | 融合式存储器设备及方法 |
CN101399977A (zh) * | 2007-09-29 | 2009-04-01 | 智多微电子(上海)有限公司 | 解码装置中控制片内存储器的数据并行读写的方法及装置 |
CN102340662A (zh) * | 2010-07-22 | 2012-02-01 | 炬才微电子(深圳)有限公司 | 一种视频处理设备和方法 |
-
2015
- 2015-01-14 CN CN201510018968.1A patent/CN105847817B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1589019A (zh) * | 2004-08-05 | 2005-03-02 | 联合信源数字音视频技术(北京)有限公司 | 帧场视频解码中运动矢量存取的控制装置及其方法 |
CN1622626A (zh) * | 2004-12-21 | 2005-06-01 | 北京中星微电子有限公司 | 一种视频编解码过程中宏块预取的方法 |
CN101206618A (zh) * | 2006-09-08 | 2008-06-25 | 三星电子株式会社 | 融合式存储器设备及方法 |
CN101399977A (zh) * | 2007-09-29 | 2009-04-01 | 智多微电子(上海)有限公司 | 解码装置中控制片内存储器的数据并行读写的方法及装置 |
CN102340662A (zh) * | 2010-07-22 | 2012-02-01 | 炬才微电子(深圳)有限公司 | 一种视频处理设备和方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105847817B (zh) | 2019-09-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111434112B (zh) | 全局匹配patch的获取方法及装置 | |
JP7216351B2 (ja) | 点群符号化構造 | |
US11394970B2 (en) | Image encoding and decoding method and device | |
US8442107B2 (en) | Memory mapping apparatus and method for video decoder/encoder | |
US9143793B2 (en) | Video processing system, computer program product and method for managing a transfer of information between a memory unit and a decoder | |
CN100367804C (zh) | 存储器访问方法和存储器访问装置 | |
US10735727B2 (en) | Method of adaptive filtering for multiple reference line of intra prediction in video coding, video encoding apparatus and video decoding apparatus therewith | |
US20140086309A1 (en) | Method and device for encoding and decoding an image | |
US20220321912A1 (en) | Point cloud data transmission device, point cloud data transmission method, point cloud data reception device, and point cloud data reception method | |
CN101873490B (zh) | 图像处理方法和使用该方法的图像信息编码设备 | |
US20080259089A1 (en) | Apparatus and method for performing motion compensation by macro block unit while decoding compressed motion picture | |
CN117528069A (zh) | 位移矢量预测方法、装置及设备 | |
US8737469B1 (en) | Video encoding system and method | |
US8837585B2 (en) | Tertiary content addressable memory based motion estimator | |
CN105791819B (zh) | 一种图像的帧压缩方法、图像的解压缩方法及装置 | |
US7715479B2 (en) | Power-aware on-chip memory management for video coding algorithms | |
CN103327340B (zh) | 一种整数搜索方法及装置 | |
CN105847817A (zh) | 一种视频处理设备和方法 | |
US20080317361A1 (en) | Method and apparatus for encoding/decoding image by partitioning image | |
CN117793372A (zh) | 预测方法、编码器、解码器以及计算机存储介质 | |
JP2020530229A (ja) | 動き補償参照フレーム圧縮 | |
US10244247B2 (en) | Enhanced data processing apparatus employing multiple-block based pipeline and operation method thereof | |
US10026149B2 (en) | Image processing system and image processing method | |
US9298673B2 (en) | Electronic device and information processing method | |
Yan et al. | A high throughput and energy efficient Lepton hardware encoder with hash-based memory optimization |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP01 | Change in the name or title of a patent holder | ||
CP01 | Change in the name or title of a patent holder |
Address after: 519085 High-tech Zone, Tangjiawan Town, Zhuhai City, Guangdong Province Patentee after: ACTIONS TECHNOLOGY Co.,Ltd. Address before: 519085 High-tech Zone, Tangjiawan Town, Zhuhai City, Guangdong Province Patentee before: ACTIONS (ZHUHAI) TECHNOLOGY Co.,Ltd. |