CN103188489B - Cbp解析方法及其装置 - Google Patents

Cbp解析方法及其装置 Download PDF

Info

Publication number
CN103188489B
CN103188489B CN201110456014.0A CN201110456014A CN103188489B CN 103188489 B CN103188489 B CN 103188489B CN 201110456014 A CN201110456014 A CN 201110456014A CN 103188489 B CN103188489 B CN 103188489B
Authority
CN
China
Prior art keywords
cbp
brightness
value
zero
code table
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
CN201110456014.0A
Other languages
English (en)
Other versions
CN103188489A (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.)
Shanghai Li Ke Semiconductor Technology Co., Ltd.
Original Assignee
Leadcore 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 Leadcore Technology Co Ltd filed Critical Leadcore Technology Co Ltd
Priority to CN201110456014.0A priority Critical patent/CN103188489B/zh
Publication of CN103188489A publication Critical patent/CN103188489A/zh
Application granted granted Critical
Publication of CN103188489B publication Critical patent/CN103188489B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明涉及视频处理领域,公开了一种CBP解析方法及其装置。本发明中,在解析出首个句法元素Cbp_dsc的值后,将解析到的Cbp_dsc与0xF进行与操作,如果与操作的结果为零则直接得到表示亮度的16个CBP值(B0‑B15)均为0的亮度CBP解析结果;将解析到的所述Cbp_dsc右移4位,如果右移4位后的Cbp_dsc为零,则直接判定表示色度的8个CBP值(B16‑B23)均为0的色度CBP解析结果,以提高CBP解析效率。进一步地,可通过查表的方式一次获取后面多个句法元素的信息,然后再通过查询设计的码表一次解析出多比特的CBP信息,减少判断控制信息,提高解析效率。

Description

CBP解析方法及其装置
技术领域
本发明涉及视频处理领域,特别涉及RealVideo9的CBP解析。
背景技术
RealVideo9与标准H.263以及MPEG-4相似,同属基于预测变换的混合编码架构,在编码过程中分为4个主要部分:
(1)将每帧视频分成像素块;
(2)帧内预测,削减空间冗余;
(3)通过运动估计和运动补偿进行帧间预侧,削减时间冗余;
(4)通过对原始块和对应的预测块之间差别形成的残差块进行变换、量化和熵编码,进一步削减空间冗余。
RealVideo9增加了很多新的编码技术,大大提高了编码效率。但其高性能是以其编解码的复杂度的提高为代价的,编解码算法的复杂度直接影响到开发基于RealVideo9视频解码方案的效率。
目前,RealVideo9的CBP(CodedBlockPattern,编码块模式)有24比特,分别代表了16个亮度的4(像素)x4(像素)块和8个色度的4(像素)x4(像素)块的编码情况,解析较复杂。在视频解码过程中所有视频码流都要经过CBP的解析运算,因此在整个混合编解码系统中它具有举足轻重的地位。下面对CBP编码基本原理进行具体说明。
一个宏块的CBP共有24比特,分别代表了一个宏块的16个亮度4x4块和8个色度4x4块是否为零。如图1所示,CBP由低位到高位依次为B0-B23。其中B0-B15分别对应16个4x4的亮度块(可理解为:B0-B15为16个表示亮度的CBP值),B16-B23分别对应8个4x4的色度块(可理解为:B16-B23为8个表示色度的CBP值)。编码时CBP主要分为三个部分:Cbp_dsc、8x8_dsc和CR。Cbp_dsc、8x8_dsc和CR均称为句法元素。
其中,Cbp_dsc采用了CanonicHuffman编码的方式,从整体上描述了宏块中8x8的亮度块和8x8的色度块是否为零,主要包含分量如图2所示。各分量意义如表1、表2所示。其中,Y0,Y1,Y2,Y3分别描述了一个亮度8x8块是否为零(如表1所示),C0,C1,C2,C3分别描述了2个色度4x4块是否为零(如表2所示)。
表1
C0,C1,C2,C3 [B16,B20],[B17,B21],[B18,B22],[B19,B23]1 -->
0 both(Cr,Cb)bits=0(2个比特均为0)
1 only 1 bit(Cr or Cb)=1(只有1个比特为1)
2 both(Cr,Cb)bits=1(2个比特均为1)
表2
则Cbp_dsc=((((((C0*3+C1)*3+C2)*3+C3)*2+Y0)*2+Y1)*2+Y2)*2+Y3。Cbp_dsc的值范围为0-1295。
每个8x8_dsc与Y0、Y1、Y2和Y3一一对应,描述了4个4x4块是否为零。例如某个8x8_dsc与Y0对应,则其描述了[B0,B1,B4,B5]这四个块是否为零。如与Y0对应的8x8_dsc=((B0*2+B1)*2+B4)*2+B5;8x8_dsc的值范围为0-15。
如果C0、C1、C2、C3的值为2,则表示对应的Cr和Cb的4x4块都不是非零块,比如说,C0的值为2,则说明B16与B20均为1;如果C0,C1,C2,C3的值为1,则码流中会有附加的句法元素CR来确定是Cr和Cb色度块中哪个4x4块不为零,CR等于1表示Cr中的4x4块不为零,等于0表示Cb中的4x4块不为零。比如说,如果C3的值为1,则将由码流中附加的句法元素CR指示是Cr中的4x4块(即B19)不为零,还是Cb中的4x4块(即B23)不为零,根据协议规定,CR等于1时表示B19不为零,CR等于0时表示B23不为零。
CBP解码是编码的反向过程,需要从码流中解析出编码的的各个句法元素,根据这些句法元素解析得到CBP的24个比特(即B0-B23)。在目前的解码过程中是按照协议依次解析每个句法元素,每个句法元素的解析都依赖于上个元素,即每次都需要根据当前句法来判断是否解析下一句法,这样每次只能解析出1比特的CBP,整个解码过程需要大量的判断控制,因此效率较低。
也就是说,现有的CBP解析方法由于循环判断较多,效率极低,在高比特率情况下CBP解析占用整个解码模块的10%以上,这就意味着CBP解析模块承担了相当大的运算量,因此并不适合应用在嵌入式设备中。
发明内容
本发明的目的在于提供一种CBP解析方法及其装置,使得CBP的解析效率能够有效提高,从而更好的应用于嵌入式硬件平台设计中。
为解决上述技术问题,本发明的实施方式提供了一种CBP解析方法,包含以下步骤:
解析句法元素Cbp_dsc;
将解析到的所述Cbp_dsc与0xF进行与操作,如果所述与操作的结果为零,则直接得到表示亮度的CBP值均为0的亮度CBP解析结果;如果所述与操作的结果不为零,则进行亮度CBP的解析,得到亮度CBP解析结果;
将解析到的所述Cbp_dsc右移4位,如果右移4位后的Cbp_dsc为零,则直接得到表示色度的CBP值均为0的色度CBP解析结果;如果右移4位后的Cbp_dsc不为零,则进行色度CBP的解析,得到色度CBP解析结果。
本发明的实施方式还提供了一种CBP解析装置,包含:
Cbp_dsc解析模块,用于解析句法元素Cbp_dsc;
亮度解析模块,用于在所述Cbp_dsc解析模块解析到的所述Cbp_dsc与0xF进行与操作的结果为零时,直接得到表示亮度的CBP值均为0的亮度CBP解析结果;在所述与操作的结果不为零时,进行亮度CBP的解析,得到亮度CBP解析结果;
右移模块,用于将所述Cbp_dsc解析模块解析到的所述Cbp_dsc右移4位;
色度解析模块,用于在右移4位后的Cbp_dsc为零时,直接得到表示色度的CBP值均为0的色度CBP解析结果;在右移4位后的Cbp_dsc不为零时,进行色度CBP的解析,得到色度CBP解析结果。
本发明实施方式相对于现有技术而言,无需在解码过程中按照协议依次解析每个句法元素,在解析出首个句法元素Cbp_dsc的值后,将解析到的Cbp_dsc与0xF进行与操作,如果与操作的结果为零则直接得到表示亮度的16个CBP值(B0-B15)均为0的亮度CBP解析结果;将解析到的所述Cbp_dsc右移4位,如果右移4位后的Cbp_dsc为零,则直接判定表示色度的8个CBP值(B16-B23)均为0的色度CBP解析结果。由于通过将解析到的Cbp_dsc与0xF进行与操作的结果是否为零即可得知表示亮度的CBP值是否均为0;通过将解析到的Cbp_dsc右移4位后的结果是否为零即可得知表示色度的CBP值是否均为0。无需每次都根据当前句法来判断是否解析下一句法,根据首个句法元素Cbp_dsc可以一次性解析出多个比特,因此大大减少了整个解码过程中的判断控制,有效提高了CBP的解析效率,从而更好的应用于嵌入式硬件平台设计中。
优选地,在当所述与操作的结果不为零时进行的亮度CBP解析中,查找预先存储的非零亮度块个数码表,得到非零的亮度8x8块的个数;其中,所述非零亮度块个数码表中索引为n的元素的值,表示Cbp_dsc&0xF为n时非零的亮度8x8块的个数,所述非零亮度块个数码表中的第1个元素的索引为零;以查找到的非零的亮度8x8块的个数为循环次数,根据8x8_dsc的编码方法,采用对应的解码方法依次解析得到每个亮度8x8块所包含的4个表示亮度的CBP值。由于根据Cbp_dsc的编码公式,可以总结出表征Y0、Y1、Y2和Y3不为零的个数的码表。因此可通过查表的方式直接得到Y0、Y1、Y2和Y3不为零的个数,进而解析出相应的B0-B15。通过查询设计的码表一次解析出多比特的亮度CBP信息,进一步减少了整个解码过程中的判断控制,从而提高了CBP的解析效率。
优选地,在每次解析到一个亮度8x8块所包含的4个表示亮度的CBP值时,查找预先存储的亮度8x8块位置判断码表,得到当前解析到的4个表示亮度的CBP值的存储位置。通过查表的方式得到亮度CBP值的存储位置,进一步提高了CBP的解析效率。
优选地,在当所述右移4位后的Cbp_dsc不为零时进行的色度CBP解析中,查找预先存储的码流读取比特数码表,得到C0、C1、C2、C3中为1的个数t,从而直接得到需要从码流中读取的用于标示不为零的色度4x4块位置的比特数t。由于在得到t后,可一次从码流读取t比特数据,避免了反复读码流,提升解析效率。并且,通过查找预先存储的色度CBP值码表,可一次性得到包含在C0、C1、C2、C3中的8个表示色度的CBP值。由于8个表示色度的CBP值也是通过查表的方式一次性获取,因此进一步减少了整个解码过程中的判断控制,从而提高了CBP的解析效率。
优选地,色度CBP值码表中的每个元素由8个比特表示;在查找色度CBP值码表得到8个表示色度的CBP值后,将查找到的8个表示色度的CBP值左移16位。由于表示色度的8个CBP值(B16-B23)位于整个24比特中的高8位,因此以第0-7比特表示8个色度4x4块的CBP值,最后通过左移16位得到最终的表示色度的CBP值,可以有效节省色度CBP值码表的存储空间。
附图说明
图1是根据现有技术中的亮度和色度4x4块示意图;
图2是根据现有技术中的Cbp_dsc编码公式中的各分量示意图;
图3是根据本发明第一实施方式的CBP解析方法流程图;
图4是根据本发明第一实施方式中的亮度CBP解析流程图;
图5是根据本发明第一实施方式中的色度CBP解析流程图;
图6是根据本发明第二实施方式的CBP解析装置结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明的各实施方式进行详细的阐述。然而,本领域的普通技术人员可以理解,在本发明各实施方式中,为了使读者更好地理解本申请而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本申请各权利要求所要求保护的技术方案。
本发明的第一实施方式涉及一种CBP解析方法。具体流程如图3所示。
在步骤301中,解析句法元素Cbp_dsc。在本实施方式中,句法元素Cbp_dsc和8x8_dsc的解析与现有技术相同,如基于Huffman解码算法解析Cbp_dsc,在此不再赘述。
接着,在步骤302中,将解析到的Cbp_dsc与0xF进行与操作(即Cbp_dsc&0xF),判断与操作的结果是否为零。如果判定与操作的结果为零,则直接进入步骤304;如果判定与操作的结果不为零,则进入步骤303。
具体地说,由于Cbp_dsc的编码公式为:Cbp_dsc=((((((C0*3+C1)*3+C2)*3+C3)*2+Y0)*2+Y1)*2+Y2)*2+Y3,根据低4比特的值即可以设计出以下非零亮度块个数码表:
intcbp_luma_huf_num[16]={0,1,1,2,1,2,2,3,1,2,2,3,2,3,3,4}
其中,intcbp_luma_huf_num[16]表示包含16个元素的非零亮度块个数码表,索引为n的元素的值,表示Cbp_dsc&0xF为n时非零的亮度8x8块的个数,该非零亮度块个数码表中的第1个元素的索引为零。比如说,Cbp_dsc&0xF为0,则以0为索引查找该intcbp_luma_huf_num[16],查找到的数值为0,即非零的亮度8x8块的个数为零。也就是说,Y0、Y1、Y2、Y3均为0,根据表1中对Y0,Y1,Y2,Y3的含义可知,此时B0-B15均为0。因此,如果解析到的Cbp_dsc与0xF进行与操作的结果为0,则可以直接得到表示亮度的CBP值(即B0-B15)均为0的亮度CBP解析结果,进入步骤304。
如果解析到的Cbp_dsc与0xF进行与操作的结果不为0,则进入步骤303,进行亮度CBP的解析。
在步骤303中,查找预先存储的非零亮度块个数码表(即intcbp_luma_huf_num[16]),得到非零的亮度8x8块的个数(即Num_8x8_dsc)。然后,以查找到的Num_8x8_dsc为循环次数,根据8x8_dsc的编码方法,采用对应的解码方法依次解析得到每个亮度8x8块所包含的4个表示亮度的CBP值。其中,在每次解析到一个亮度8x8块所包含的4个表示亮度的CBP值时,查找预先存储的亮度8x8块位置判断码表,得到当前解析到的4个表示亮度的CBP值的存储位置。所述亮度8x8块位置判断码表中索引为m的元素的值,表示((Cbp_dsc&0xF)<<2)+i为m时当前解析的亮度8x8块和存储该亮度8x8块所包含的4个表示亮度的CBP值的起始位置,所述亮度8x8块位置判断码表中的第1个元素的索引为零,i为循环计数值,0≤i≤所述循环次数,符号<<表示左移。
具体地说,如图4所示,在步骤401中,解析出非零的亮度8x8块个数Num_8x8_dsc,即根据码表:
intcbp_luma_huf_num[16]={0,1,1,2,1,2,2,3,1,2,2,3,2,3,3,4},
以(Cbp_dsc&0xF)为索引即可得到非零的亮度8x8块的个数Num_8x8_dsc(即Y0、Y1、Y2和Y3中不为零的个数)。
接着,在步骤402中,判断当前Num_8x8_dsc是否为0,如果为0则结束亮度的CBP解析;如果不为0,则进入步骤403。
在步骤403中,解析出当前8x8块所包含的4个表示亮度的CBP值。比如说,在根据Huffman解码算法解析出句法元素8x8_dsc后,可根据公式8x8_dsc=((B0*2+B1)*2+B4)*2+B5解析出该8x8块所包含的B0、B1、B4、B5的比特值。
接着,在步骤404中,查找预先存储的亮度8x8块位置判断码表,得到当前解析到的4个表示亮度的CBP值的存储位置。具体地说,根据Cbp_dsc和Num_8x8_dsc的不同,每次循环解析得到的值代表不同位置的4x4块CBP值,因此可设计一个亮度8x8块位置判断码表来得到每次循环解析的4x4块的位置。例如:
当Cbp_dsc&0xF=1时,根据Cbp_dsc的公式可知此时表示8x8块Y3的CBP值,由表1可知,此时解析的是4x4块B10、B11、B14、B15的CBP值,在设计码表时以10来表示B10、B11、B14、B15中的起始位置;
当Cbp_dsc&0xF=2时,根据Cbp_dsc的公式可知此时表示8x8块Y2(见图2)的CBP值,由表1可知,此时解析的是4x4块B8、B9、B12、B13的CBP值,在设计码表时以8来表示B8、B9、B12、B13中的起始位置;
当Cbp_dsc&0xF=4时,根据Cbp_dsc的公式可知此时表示8x8块Y1(见图2)的CBP值,由表1可知,此时解析的是4x4块B2、B3、B6、B7的CBP值,在设计码表时以2来表示B2、B3、B6、B7中的起始位置;
当Cbp_dsc&0xF=8时,根据Cbp_dsc的公式可知此时表示8x8块Y0(见图2)的CBP值,由表1可知,此时解析的是4x4块B0、B1、B4、B5的CBP值,在设计码表时以0来表示B0、B1、B4、B5中的起始位置;
当Cbp_dsc&0xF为其他值时由循环的次数来确定具体解析的是哪个8x8块的CBP值。因此,最终设计的亮度8x8块位置判断码表如下:
该亮度8x8块位置判断码表中索引为m的元素的值,表示((Cbp_dsc&0xF)<<2)+i为m时当前解析的亮度8x8块和存储该亮度8x8块所包含的4个表示亮度的CBP值的起始位置,所述亮度8x8块位置判断码表中的第1个元素的索引为零,i为循环计数值,0≤i≤所述循环次数。
由此可见,通过查询设计的亮度8x8块位置判断码表,即可得到当前解析到的4个表示亮度的CBP值的存储位置,将该8x8块CBP存放起来。然后将Num_8x8_dsc减1后重新进入步骤402。
不难发现,由于根据Cbp_dsc的编码公式,可以总结出表征Y0、Y1、Y2和Y3不为零的个数的码表。因此可通过查表的方式直接得到Y0、Y1、Y2和Y3不为零的个数,进而解析出相应的B0-B15。通过查询设计的码表一次解析出多比特的亮度CBP信息,进一步减少了整个解码过程中的判断控制,从而提高了CBP的解析效率。而且,通过查表的方式得到亮度CBP值的存储位置,进一步提高了CBP的解析效率。
通过步骤303得到亮度CBP解析结果后,或者Cbp_dsc与0xF的与操作结果为0时,进入步骤304,将解析到的Cbp_dsc右移4位,判断右移4位后的Cbp_dsc是否为零,如果右移4位后的Cbp_dsc为零,则直接得到表示色度的CBP值均为0的色度CBP解析结果,结束本流程;如果右移4位后的Cbp_dsc不为零,则进行步骤305。
由于根据Cbp_dsc的编码公式可知,当Cbp_dsc右移4位后结果为0时,说明C0、C1、C2、C3都为0,根据表2中的C0、C1、C2、C3的定义可知,此时包含在C0、C1、C2、C3中的8个表示色度的CBP值(即B16-B23)均为0。因此,如果在步骤304中判定右移4位后的Cbp_dsc为零,则可直接得到B16-B23均为0的色度CBP解析结果,结束本流程。如果右移4位后的Cbp_dsc不为零,则进行步骤305。
在步骤305中,进行色度CBP的解析。在本步骤中,通过查找预先存储的码流读取比特数码表,得到C0、C1、C2、C3中为1的个数t。该码流读取比特数码表中索引为n的元素的值,表示Cbp_dsc>>4为n时C0、C1、C2、C3中为1的个数t,所述码流读取比特数码表中的第1个元素的索引为零,符号>>表示右移。如果t为零,则直接查找预先存储的色度CBP值码表,得到包含在C0、C1、C2、C3中的8个表示色度的CBP值(即B16-B23);如果所述t不为零,则从码流中读取t比特数据后,再查找预先存储的色度CBP值码表,得到包含在C0、C1、C2、C3中的8个表示色度的CBP值。其中,色度CBP值码表中索引为n的元素的值,表示色度CBP的索引偏移量与t比特数据的值之和为n时,8个表示色度的CBP值;所述色度CBP值码表中的第1个元素的索引为零。
具体地说,由编码原理可知,当C0、C1、C2或C3等于1时需要从码流读取1比特值来标示不为零的色度4x4块位置。因此可通过Cbp_dsc的值来设计码流读取比特数码表,以Cbp_dsc>>4为索引查询此码表即可得到C0、C1、C2、C3等于1的个数t,从而一次从码流读取t比特数据,避免了反复读码流,提升解析效率。例如:
当Cbp_dsc>>4=1时,根据Cbp_dsc的公式可知此时C0、C1、C2都为0,C3等于1,因此C0、C1、C2、C3等于1的个数为1,码表值设计为1;
当Cbp_dsc>>4=2时,根据Cbp_dsc的公式可知此时C0、C1、C2都为0,C3等于2,因此C0、C1、C2、C3等于1的个数为0,码表值设计为0;
当Cbp_dsc>>4=3时,根据Cbp_dsc的公式可知此时C0、C1、C3都为0,C2等于1,因此C0、C1、C2、C3等于1的个数为1,码表值设计为1;
当Cbp_dsc>>4=4时,根据Cbp_dsc的公式可知此时C0、C1都为0,C2、C3都等于1,因此C0、C1、C2、C3等于1的个数为2,码表值设计为2;
依次类推,设计的码流读取比特数码表为:
由此可见,该码流读取比特数码表中索引为n的元素的值,即为Cbp_dsc>>4为n时C0、C1、C2、C3中为1的个数。因此,以Cbp_dsc>>4为索引,即可得到C0、C1、C2、C3中为1的个数t。从而能一次从码流读取t比特数据,避免了反复读码流,提升解析效率。
下面对本步骤中涉及到的色度CBP值码表的设计过程进行具体说明。
色度CBP值码表中存放的值是8个色度4x4块的CBP值(即B16-B23),通过查询此码表一次就可以解析出整个色度块的CBP,而不是一比特一比特的解析,大大提高了解析效率。而且,由于CBP值的低16比特分别表示了16个亮度4x4块的编码情况,第16-23比特表示了8个色度4x4块的编码情况,因此为节省数据空间,以第0-7比特表示8个色度4x4块的CBP,最后通过左移16位得到最终的CBP值。下面举例说明此码表的设计过程:
当Cbp_dsc>>4=1时,根据Cbp_dsc的公式可知此时C0、C1、C2都为0,C3等于1,由表2可知,此时表示色度4x4块B19或B23的CBP值为1,此时再查询码表intChromaCBP_Num,可知需要从码流中读取1比特数据来最终确定块B19的CBP为1还是块B23的CBP为1。那么可以将码表的CBP值设计为0x80和0x8,当从码流中读取的1比特数据为0时表示块B23的CBP为1,因此取码表值0x80,当读取的1比特为1时表示块B19的CBP为1,因此取码表值0x8;
当Cbp_dsc>>4=2时,根据Cbp_dsc的公式可知此时C0、C1、C2都为0,C3等于2,由表2可知,此时表示色度4x4块B19和B23的CBP值都为1,此时再查询码表intChromaCBP_Num,可知不需要从码流中读取比特数据。那么可以将码表的CBP值设计为0x88;
当Cbp_dsc>>4=3时,根据Cbp_dsc的公式可知此时C0、C1、C3都为0,C2等于1,由表2可知,此时表示色度4x4块B18或B22的CBP值为1,此时再查询码表intChromaCBP_Num,可知需要从码流中读取1比特数据来最终确定块B18的CBP为1还是块B22的CBP为1。那么可以将码表的CBP值设计为0x40和0x4,当从码流中读取的1比特数据为0时表示块B22的CBP为1,因此取码表值0x40,当读取的1比特为1时表示块B18的CBP为1,因此取码表值0x4;
当Cbp_dsc>>4=4时,根据Cbp_dsc的公式可知此时C0、C1都为0,C2、C3等于1,由表2可知,此时表示色度4x4块B18、B19、B22、B23的其中两个块的CBP值为1,此时再查询码表intChromaCBP_Num,可知需要从码流中读取2比特数据来最终确定哪两个块的CBP为1。那么可以将码表的CBP值设计为0xC0、0x48、0x84和0xC,当从码流中读取的2比特数据为0时表示块B22、B23的CBP为1,取码表值0xC0,当读取的2比特为1时表示块B19、B22的CBP为1,取码表值0x48,当读取的2比特为2时表示块B18、B23的CBP为1,取码表值0x84,当读取的2比特为3时表示块B18、B19的CBP为1,取码表值0xC;
依次类推,设计的码表为:
intChromaCBP[256]={
0,0x80,0x8,0x88,0x40,0x4,0xC0,0x48,0x84,0xC,0xC8,0x8C,0x44,
0xC4,0x4C,0xCC,0x20,0x2,0xA0,0x28,0x82,0xA,0xA8,0x8A,0x60,
0x24,0x42,0x6,0xE0,0x68,0xA4,0x2C,0xC2,0x4A,0x86,0xE,0xE8,
0xAC,0xCA,0x8E,0x64,0x46,0xE4,0x6C,0xC6,0x4E,0xEC,0xCE,0x22,
0xA2,0x2A,0xAA,0x62,0x26,0xE2,0x6A,0xA6,0x2E,0xEA,0xAE,
0x66,0xE6,0x6E,0xEE,0x10,0x1,0x90,0x18,0x81,0x9,0x98,0x89,0x50,
0x14,0x41,0x5,0xD0,0x58,0x94,0x1C,0xC1,0x49,0x85,0xD,0xD8,0x9C,
0xC9,0x8D,0x54,0x45,0xD4,0x5C,0xC5,0x4D,0xDC,0xCD,0x30,0x12,
0x21,0x3,0xB0,0x38,0x92,0x1A,0xA1,0x29,0x83,0xB,0xB8,0x9A,
0xA9,0x8B,0x70,0x34,0x52,0x16,0x61,0x25,0x43,0x7,0xF0,0x78,0xB4,
0x3C,0xD2,0x5A,0x96,0x1E,0xE1,0x69,0xA5,0x2D,0xC3,0x4B,0x87,
0xF,0xF8,0xBC,0xDA,0x9E,0xE9,0xAD,0xCB,0x8F,0x74,0x56,0x65,
0x47,0xF4,0x7C,0xD6,0x5E,0xE5,0x6D,0xC7,0x4F,0xFC,0xDE,0xED,
0xCF,0x32,0x23,0xB2,0x3A,0xA3,0x2B,0xBA,0xAB,0x72,0x36,0x63,
0x27,0xF2,0x7A,0xB6,0x3E,0xE3,0x6B,0xA7,0x2F,0xFA,0xBE,0xEB,
0xAF,0x76,0x67,0xF6,0x7E,0xE7,0x6F,0xFE,0xEF,0x11,0x91,0x19,
0x99,0x51,0x15,0xD1,0x59,0x95,0x1D,0xD9,0x9D,0x55,0xD5,0x5D,
0xDD,0x31,0x13,0xB1,0x39,0x93,0x1B,0xB9,0x9B,0x71,0x35,0x53,
0x17,0xF1,0x79,0xB5,0x3D,0xD3,0x5B,0x97,0x1F,0xF9,0xBD,0xDB,
0x9F,0x75,0x57,0xF5,0x7D,0xD7,0x5F,0xFD,0xDF,0x33,0xB3,
0x3B,0xBB,0x73,0x37,0xF3,0x7B,0xB7,0x3F,0xFB,0xBF,0x77,
0xF7,0x7F,0xFF
}。
由于当Cbp_dsc>>4取不同值时需要先算出色度CBP的索引偏移量,然后再以此为基础,通过从码流中读取比特值来具体确定色度CBP的值。下面举例说明色度CBP偏移码表设计过程:
当Cbp_dsc>>4=0时,有一个CBP值0;
当Cbp_dsc>>4=1时,ChromaCBP码表的偏移值为1,此时有两个CBP值;
当Cbp_dsc>>4=2时,ChromaCBP码表的偏移值为3,此时有一个CBP值;
当Cbp_dsc>>4=3时,ChromaCBP码表的偏移值为4,此时有两个CBP值;
当Cbp_dsc>>4=4时,ChromaCBP码表的偏移值为6,此时有一个CBP值;
依次类推,设计的色度CBP偏移码表为:
intChromaCBP_indexoffset[81]={
0,1,3,4,6,10,12,13,15,16,18,22,24,28,36,40,42,46,48,49,51,52,54,58,60,61,6
3,64,66,70,72,76,84,
88,90,94,96,100,108,112,120,136,144,148,156,160,162,166,168,172,180,18
4,186,190,192,193,
195,196,198,202,204,205,207,208,210,214,216,220,228,232,234,238,240,24
1,243,244,246,250,
252,253,255}。
在本实施方式中,需要将预先设计并存储上述码流读取比特数码表intChromaCBP_Num[81]、色度CBP值码表intChromaCBP[256]和色度CBP偏移码表,利用这3个码表进行色度CBP的解析。
具体地说,步骤305中进行的色度CBP解析,可通过如图5所示的流程实现。
在步骤501中,解析需要读取的比特数。具体地,以Cbp_dsc>>4为索引,查询码流读取比特数码表ChromaCBP_Num,可得到C0、C1、C2、C3中为1的个数,即需要读取的比特数t。
接着,在步骤502中,判断需要读取的比特数t是否为0,如果为0,则直接进入步骤504,查找预先存储的色度CBP值码表,得到包含在C0、C1、C2、C3中的8个表示色度的CBP值。如果需要读取的比特数t不为0,则进入步骤503,从码流中读取相应的t比特数据data,然后再进入步骤504。
在步骤504中,查询色度CBP偏移码表ChromaCBP_indexoffset,并以查找到的色度CBP的索引偏移量index_offset与读取的t比特数据data之和为索引,查询色度CBP值码表ChromaCBP,得到色度CBP值(即B16-B23)。
通过上述对各码表的设计分析可知,以Cbp_dsc>>4为索引,查表ChromaCBP_indexoffset可得index_offset,而色度CBP值码表中索引为n的元素的值,表示色度CBP的索引偏移量与t比特数据的值之和为n时,8个表示色度的CBP值(色度CBP值码表中的第1个元素的索引为零)。因此,以index_offset与读取的t比特数据data之和为索引,查询色度CBP值码表ChromaCBP,可一次性得到B16-B23。
由于在本实施方式中,通过将解析到的Cbp_dsc与0xF进行与操作的结果是否为零即可得知表示亮度的CBP值是否均为0;通过将解析到的Cbp_dsc右移4位后的结果是否为零即可得知表示色度的CBP值是否均为0。无需每次都根据当前句法来判断是否解析下一句法,根据首个句法元素Cbp_dsc可以一次性解析出多个比特,因此大大减少了整个解码过程中的判断控制,有效提高了CBP的解析效率,从而更好的应用于嵌入式硬件平台设计中。而且,通过查表的方式可一次获取后面多个句法元素的信息,然后再通过查询设计的码表一次解析出多比特的CBP信息,减少判断控制信息,提高解析效率。相对于现有技术中的需要大量的辅助判断来完成解码,比如在现有版本中解析色度CBP时现有技术每次需8次判断,本实施方式仅需1次判断,极大的提升了解码效率。由于在解析亮度CBP时也重新设计了解码码表,因此有效提升了解析效率。在相同的测试环境下分别测试了640x272分辨率码流的CBP模块的解析时间,本实施方式中CBP的解析时间在I、P、B帧时分别是现有技术的60%、63%、65%,可见效率提升了将近1倍左右。
本领域技术人员可以理解,嵌入式终端对处理速度要求极高,而RealVideo9视频解码较复杂,其中的CBP模块占了大量的解析时间,因此需要快速有效的解码方案。本实施方式在现有技术的前提下解析效率提高了一倍左右,可以很好的应用在RealVideo9视频解码的嵌入式设备中。
上面各种方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者对某些步骤进行拆分,分解为多个步骤,只要包含相同的逻辑关系,都在本专利的保护范围内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护范围内。
本发明的第二实施方式涉及一种CBP解析装置。如图6所示,包含:
Cbp_dsc解析模块,用于解析句法元素Cbp_dsc。
亮度解析模块,用于在所述Cbp_dsc解析模块解析到的所述Cbp_dsc与0xF进行与操作的结果为零时,直接得到表示亮度的CBP值均为0的亮度CBP解析结果;在所述与操作的结果不为零时,进行亮度CBP的解析,得到亮度CBP解析结果。
右移模块,用于将所述Cbp_dsc解析模块解析到的所述Cbp_dsc右移4位。
色度解析模块,用于在右移4位后的Cbp_dsc为零时,直接得到表示色度的CBP值均为0的色度CBP解析结果;在右移4位后的Cbp_dsc不为零时,进行色度CBP的解析,得到色度CBP解析结果。
其中,亮度解析模块包含以下子模块:
非零亮度块个数查找子模块,用于查找预先存储的非零亮度块个数码表,得到非零的亮度8x8块的个数;其中,所述非零亮度块个数码表中索引为n的元素的值,表示Cbp_dsc&0xF为n时非零的亮度8x8块的个数,所述非零亮度块个数码表中的第1个元素的索引为零。
亮度CBP值解析子模块,用于以查找到的非零的亮度8x8块的个数为循环次数,根据8x8_dsc的编码方法,采用对应的解码方法依次解析得到每个亮度8x8块所包含的4个表示亮度的CBP值。
在本实施方式中,亮度CBP值解析子模块还用于在所述依次解析得到每个亮度8x8块所包含的4个表示亮度的CBP值的过程中,在每次解析到一个亮度8x8块所包含的4个表示亮度的CBP值时,查找预先存储的亮度8x8块位置判断码表,得到当前解析到的4个表示亮度的CBP值的存储位置。
其中,所述亮度8x8块位置判断码表中索引为m的元素的值,表示((Cbp_dsc&0xF)<<2)+i为m时当前解析的亮度8x8块和存储该亮度8x8块所包含的4个表示亮度的CBP值的起始位置,所述亮度8x8块位置判断码表中的第1个元素的索引为零,0≤i≤所述循环次数。
色度解析模块包含以下子模块:
比特数查找子模块,用于查找预先存储的码流读取比特数码表,得到C0、C1、C2、C3中为1的个数,其中,C0、C1、C2、C3均包含2个处于不同色度8x8块中的表示色度的CBP值,所述码流读取比特数码表中索引为n的元素的值,表示Cbp_dsc>>4为n时C0、C1、C2、C3中为1的个数t,所述码流读取比特数码表中的第1个元素的索引为零。
色度CBP值解析子模块,用于在所述t为零时,直接查找预先存储的色度CBP值码表,得到包含在C0、C1、C2、C3中的8个表示色度的CBP值;在所述t不为零时,从码流中读取t比特数据后,查找预先存储的色度CBP值码表,得到包含在C0、C1、C2、C3中的8个表示色度的CBP值。
其中,所述色度CBP值码表中索引为n的元素的值,表示色度CBP的索引偏移量与所述t比特数据的值之和为n时,所述8个表示色度的CBP值;所述色度CBP值码表中的第1个元素的索引为零。色度CBP的索引偏移量通过查找预先存储的色度CBP偏移码表得到,该色度CBP偏移码表中索引为n的元素的值,表示Cbp_dsc>>4为n时的色度CBP的索引偏移量,所述色度CBP偏移码表中的第1个元素的索引为零。
值得一提的是,色度CBP值码表中的每个元素由8个比特表示;所述色度CBP值解析子模块还用于将查找到的所述8个表示色度的CBP值,左移16位。由于表示色度的8个CBP值(B16-B23)位于整个24比特中的高8位,因此以第0-7比特表示8个色度4x4块的CBP值,最后通过左移16位得到最终的表示色度的CBP值,可以有效节省色度CBP值码表的存储空间。
不难发现,本实施方式为与第一实施方式相对应的系统实施例,本实施方式可与第一实施方式互相配合实施。第一实施方式中提到的相关技术细节在本实施方式中依然有效,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在第一实施方式中。
值得一提的是,本实施方式中所涉及到的各模块均为逻辑模块,在实际应用中,一个逻辑单元可以是一个物理单元,也可以是一个物理单元的一部分,还可以以多个物理单元的组合实现。此外,为了突出本发明的创新部分,本实施方式中并没有将与解决本发明所提出的技术问题关系不太密切的单元引入,但这并不表明本实施方式中不存在其它的单元。
本领域的普通技术人员可以理解,上述各实施方式是实现本发明的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。

Claims (15)

1.一种CBP解析方法,其特征在于,包含以下步骤:
解析句法元素Cbp_dsc;
将解析到的所述Cbp_dsc与0xF进行与操作,如果所述与操作的结果为零,则直接得到表示亮度的CBP值均为0的亮度CBP解析结果;如果所述与操作的结果不为零,则进行亮度CBP的解析,得到亮度CBP解析结果;
将解析到的所述Cbp_dsc右移4位,如果右移4位后的Cbp_dsc为零,则直接得到表示色度的CBP值均为0的色度CBP解析结果;如果右移4位后的Cbp_dsc不为零,则进行色度CBP的解析,得到色度CBP解析结果。
2.根据权利要求1所述的CBP解析方法,其特征在于,所述进行亮度CBP的解析的步骤中,包含以下子步骤:
查找预先存储的非零亮度块个数码表,得到非零的亮度8x8块的个数;其中,所述非零亮度块个数码表中索引为n的元素的值,表示Cbp_dsc&0xF为n时非零的亮度8x8块的个数,所述非零亮度块个数码表中的第1个元素的索引为零;
以查找到的非零的亮度8x8块的个数为循环次数,根据8x8_dsc的编码方法,采用对应的解码方法依次解析得到每个亮度8x8块所包含的4个表示亮度的CBP值。
3.根据权利要求2所述的CBP解析方法,其特征在于,所述非零亮度块个数码表为:
intcbp_luma_huf_num[16]={0,1,1,2,1,2,2,3,1,2,2,3,2,3,3,4};其中,所述intcbp_luma_huf_num[16]为所述非零亮度块个数码表。
4.根据权利要求2所述的CBP解析方法,其特征在于,所述进行亮度CBP的解析的步骤中,还包含以下子步骤:
在所述依次解析得到每个亮度8x8块所包含的4个表示亮度的CBP值的过程中,在每次解析到一个亮度8x8块所包含的4个表示亮度的CBP值时,查找预先存储的亮度8x8块位置判断码表,得到当前解析到的4个表示亮度的CBP值的存储位置;
其中,所述亮度8x8块位置判断码表中索引为m的元素的值,表示((Cbp_dsc&0xF)<<2)+i为m时当前解析的亮度8x8块和存储该亮度8x8块所包含的4个表示亮度的CBP值的起始位置,所述亮度8x8块位置判断码表中的第1个元素的索引为零,i为循环计数值,0≤i≤所述循环次数。
5.根据权利要求4所述的CBP解析方法,其特征在于,所述亮度8x8块位置判断码表为:
intcbp_luma_huf_leftshift[64]={0,0,0,0,10,0,0,0,8,0,0,0,8,10,0,0,
2,0,0,0,2,10,0,0,2,8,0,0,2,8,10,0,
0,0,0,0,0,10,0,0,0,8,0,0,0,8,10,0,
0,2,0,0,0,2,10,0,0,2,8,0,0,2,8,10,
};
其中,所述intcbp_luma_huf_leftshift[64]为所述亮度8x8块位置判断码表。
6.根据权利要求1所述的CBP解析方法,其特征在于,所述进行色度CBP的解析的步骤中,包含以下子步骤:
查找预先存储的码流读取比特数码表,得到C0、C1、C2、C3中为1的个数,其中,C0、C1、C2、C3均包含2个处于不同色度8x8块中的表示色度的CBP值,所述码流读取比特数码表中索引为n的元素的值,表示Cbp_dsc>>4为n时C0、C1、C2、C3中为1的个数t,所述码流读取比特数码表中的第1个元素的索引为零;
如果所述t为零,则直接查找预先存储的色度CBP值码表,得到包含在C0、C1、C2、C3中的8个表示色度的CBP值;如果所述t不为零,则从码流中读取t比特数据后,再查找预先存储的色度CBP值码表,得到包含在C0、C1、C2、C3中的8个表示色度的CBP值;
其中,所述色度CBP值码表中索引为n的元素的值,表示色度CBP的索引偏移量与所述t比特数据的值之和为n时,所述8个表示色度的CBP值;所述色度CBP值码表中的第1个元素的索引为零,所述色度CBP的索引偏移量通过查找预先存储的色度CBP偏移码表得到,该色度CBP偏移码表中索引为n的元素的值,表示Cbp_dsc>>4为n时的色度CBP的索引偏移量,所述色度CBP偏移码表中的第1个元素的索引为零。
7.根据权利要求6所述的CBP解析方法,其特征在于,所述码流读取比特数码表为:
intChromaCBP_Num[81]={0,1,0,1,2,1,0,1,0,1,2,1,2,3,2,1,2,1,0,1,
0,1,2,1,0,1,0,1,2,1,2,3,2,1,2,1,2,3,2,3,
4,3,2,3,2,1,2,1,2,3,2,1,2,1,0,1,0,1,2,1,
0,1,0,1,2,1,2,3,2,1,2,1,0,1,0,1,2,1,0,1,0
};
其中,所述intChromaCBP_Num[81]为所述码流读取比特数码表。
8.根据权利要求6所述的CBP解析方法,其特征在于,所述色度CBP值码表中的每个元素由8个比特表示;在所述查找色度CBP值码表得到8个表示色度的CBP值后,还执行以下步骤:
将查找到的8个表示色度的CBP值左移16位。
9.根据权利要求8所述的CBP解析方法,其特征在于,所述色度CBP值码表为:
intChromaCBP[256]={
0,0x80,0x8,0x88,0x40,0x4,0xC0,0x48,0x84,0xC,0xC8,0x8C,0x44,
0xC4,0x4C,0xCC,0x20,0x2,0xA0,0x28,0x82,0xA,0xA8,0x8A,0x60,
0x24,0x42,0x6,0xE0,0x68,0xA4,0x2C,0xC2,0x4A,0x86,0xE,0xE8,
0xAC,0xCA,0x8E,0x64,0x46,0xE4,0x6C,0xC6,0x4E,0xEC,0xCE,0x22,
0xA2,0x2A,0xAA,0x62,0x26,0xE2,0x6A,0xA6,0x2E,0xEA,0xAE,
0x66,0xE6,0x6E,0xEE,0x10,0x1,0x90,0x18,0x81,0x9,0x98,0x89,0x50,
0x14,0x41,0x5,0xD0,0x58,0x94,0x1C,0xC1,0x49,0x85,0xD,0xD8,0x9C,
0xC9,0x8D,0x54,0x45,0xD4,0x5C,0xC5,0x4D,0xDC,0xCD,0x30,0x12,
0x21,0x3,0xB0,0x38,0x92,0x1A,0xA1,0x29,0x83,0xB,0xB8,0x9A,
0xA9,0x8B,0x70,0x34,0x52,0x16,0x61,0x25,0x43,0x7,0xF0,0x78,0xB4,
0x3C,0xD2,0x5A,0x96,0x1E,0xE1,0x69,0xA5,0x2D,0xC3,0x4B,0x87,
0xF,0xF8,0xBC,0xDA,0x9E,0xE9,0xAD,0xCB,0x8F,0x74,0x56,0x65,
0x47,0xF4,0x7C,0xD6,0x5E,0xE5,0x6D,0xC7,0x4F,0xFC,0xDE,0xED,
0xCF,0x32,0x23,0xB2,0x3A,0xA3,0x2B,0xBA,0xAB,0x72,0x36,0x63,
0x27,0xF2,0x7A,0xB6,0x3E,0xE3,0x6B,0xA7,0x2F,0xFA,0xBE,0xEB,
0xAF,0x76,0x67,0xF6,0x7E,0xE7,0x6F,0xFE,0xEF,0x11,0x91,0x19,
0x99,0x51,0x15,0xD1,0x59,0x95,0x1D,0xD9,0x9D,0x55,0xD5,0x5D,
0xDD,0x31,0x13,0xB1,0x39,0x93,0x1B,0xB9,0x9B,0x71,0x35,0x53,
0x17,0xF1,0x79,0xB5,0x3D,0xD3,0x5B,0x97,0x1F,0xF9,0xBD,0xDB,
0x9F,0x75,0x57,0xF5,0x7D,0xD7,0x5F,0xFD,0xDF,0x33,0xB3,
0x3B,0xBB,0x73,0x37,0xF3,0x7B,0xB7,0x3F,0xFB,0xBF,0x77,
0xF7,0x7F,0xFF
};
其中,所述intChromaCBP[256]为所述色度CBP值码表。
10.根据权利要求6所述的CBP解析方法,其特征在于,所述色度CBP偏移码表为:
intChromaCBP_indexoffset[81]={
0,1,3,4,6,10,12,13,15,16,18,22,24,28,36,40,42,46,48,49,51,52,54,58,60,61,
63,64,66,70,72,76,84,
88,90,94,96,100,108,112,120,136,144,148,156,160,162,166,168,172,180,1
84,186,190,192,193,
195,196,198,202,204,205,207,208,210,214,216,220,228,232,234,238,240,2
41,243,244,246,250,
252,253,255};
其中,所述intChromaCBP_indexoffset[81]为所述色度CBP偏移码表。
11.一种CBP解析装置,其特征在于,包含:
Cbp_dsc解析模块,用于解析句法元素Cbp_dsc;
亮度解析模块,用于在所述Cbp_dsc解析模块解析到的所述Cbp_dsc与0xF进行与操作的结果为零时,直接得到表示亮度的CBP值均为0的亮度CBP解析结果;在所述与操作的结果不为零时,进行亮度CBP的解析,得到亮度CBP解析结果;
右移模块,用于将所述Cbp_dsc解析模块解析到的所述Cbp_dsc右移4位;
色度解析模块,用于在右移4位后的Cbp_dsc为零时,直接得到表示色度的CBP值均为0的色度CBP解析结果;在右移4位后的Cbp_dsc不为零时,进行色度CBP的解析,得到色度CBP解析结果。
12.根据权利要求11所述的CBP解析装置,其特征在于,所述亮度解析模块包含以下子模块:
非零亮度块个数查找子模块,用于查找预先存储的非零亮度块个数码表,得到非零的亮度8x8块的个数;其中,所述非零亮度块个数码表中索引为n的元素的值,表示Cbp_dsc&0xF为n时非零的亮度8x8块的个数,所述非零亮度块个数码表中的第1个元素的索引为零;
亮度CBP值解析子模块,用于以查找到的非零的亮度8x8块的个数为循环次数,根据8x8_dsc的编码方法,采用对应的解码方法依次解析得到每个亮度8x8块所包含的4个表示亮度的CBP值。
13.根据权利要求12所述的CBP解析装置,其特征在于,所述亮度CBP值解析子模块还用于在所述依次解析得到每个亮度8x8块所包含的4个表示亮度的CBP值的过程中,在每次解析到一个亮度8x8块所包含的4个表示亮度的CBP值时,查找预先存储的亮度8x8块位置判断码表,得到当前解析到的4个表示亮度的CBP值的存储位置;
其中,所述亮度8x8块位置判断码表中索引为m的元素的值,表示((Cbp_dsc&0xF)<<2)+i为n时当前解析的亮度8x8块和存储该亮度8x8块所包含的4个表示亮度的CBP值的起始位置,所述亮度8x8块位置判断码表中的第1个元素的索引为零,0≤i≤所述循环次数。
14.根据权利要求11所述的CBP解析装置,其特征在于,所述色度解析模块包含以下子模块:
比特数查找子模块,用于查找预先存储的码流读取比特数码表,得到C0、C1、C2、C3中为1的个数,其中,C0、C1、C2、C3均包含2个处于不同色度8x8块中的表示色度的CBP值,所述码流读取比特数码表中索引为n的元素的值,表示Cbp_dsc>>4为n时C0、C1、C2、C3中为1的个数t,所述码流读取比特数码表中的第1个元素的索引为零;
色度CBP值解析子模块,用于在所述t为零时,直接查找预先存储的色度CBP值码表,得到包含在C0、C1、C2、C3中的8个表示色度的CBP值;在所述t不为零时,从码流中读取t比特数据后,查找预先存储的色度CBP值码表,得到包含在C0、C1、C2、C3中的8个表示色度的CBP值;
其中,所述色度CBP值码表中索引为n的元素的值,表示色度CBP的索引偏移量与所述t比特数据的值之和为n时,所述8个表示色度的CBP值;所述色度CBP值码表中的第1个元素的索引为零,所述色度CBP的索引偏移量通过查找预先存储的色度CBP偏移码表得到,该色度CBP偏移码表中索引为n的元素的值,表示Cbp_dsc>>4为n时的色度CBP的索引偏移量,所述色度CBP偏移码表中的第1个元素的索引为零。
15.根据权利要求14所述的CBP解析装置,其特征在于,所述色度CBP值码表中的每个元素由8个比特表示;
所述色度CBP值解析子模块还用于将查找到的所述8个表示色度的CBP值,左移16位。
CN201110456014.0A 2011-12-30 2011-12-30 Cbp解析方法及其装置 Active CN103188489B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110456014.0A CN103188489B (zh) 2011-12-30 2011-12-30 Cbp解析方法及其装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110456014.0A CN103188489B (zh) 2011-12-30 2011-12-30 Cbp解析方法及其装置

Publications (2)

Publication Number Publication Date
CN103188489A CN103188489A (zh) 2013-07-03
CN103188489B true CN103188489B (zh) 2016-08-03

Family

ID=48679423

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110456014.0A Active CN103188489B (zh) 2011-12-30 2011-12-30 Cbp解析方法及其装置

Country Status (1)

Country Link
CN (1) CN103188489B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1615019A (zh) * 2003-11-05 2005-05-11 华为技术有限公司 一种视频宏块模式编码方法
CN1917647A (zh) * 2005-04-19 2007-02-21 三星电子株式会社 自适应地选择用于熵编码的上下文模型的方法和设备
AU2008201768A1 (en) * 2005-04-19 2008-05-08 Samsung Electronics Co., Ltd. Method and apparatus for adaptively selecting context model for entropy coding
CN101742330A (zh) * 2008-11-24 2010-06-16 北京中星微电子有限公司 一种图像编码方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060008009A1 (en) * 2004-07-09 2006-01-12 Nokia Corporation Method and system for entropy coding for scalable video codec

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1615019A (zh) * 2003-11-05 2005-05-11 华为技术有限公司 一种视频宏块模式编码方法
CN1917647A (zh) * 2005-04-19 2007-02-21 三星电子株式会社 自适应地选择用于熵编码的上下文模型的方法和设备
AU2008201768A1 (en) * 2005-04-19 2008-05-08 Samsung Electronics Co., Ltd. Method and apparatus for adaptively selecting context model for entropy coding
CN101742330A (zh) * 2008-11-24 2010-06-16 北京中星微电子有限公司 一种图像编码方法及装置

Also Published As

Publication number Publication date
CN103188489A (zh) 2013-07-03

Similar Documents

Publication Publication Date Title
EP2442482B1 (en) Method and device for implementing stream cipher
US7973802B1 (en) Optional color space conversion
CN104301113B (zh) 一种基于多证书多用途的数字签名方法和系统
CN103051682B (zh) 车载终端的无线交互方法
CN110198214A (zh) 身份标识生成方法、验证方法及装置
US20230336354A1 (en) Data transmission method and data transmission device
CN101625653A (zh) 一种多媒体产品本地数据处理校验方法
CN103188489B (zh) Cbp解析方法及其装置
do Nascimento et al. FlexAEAD-A lightweight cipher with integrated authentication
CN115348101A (zh) 基于混沌分组密码的数据加密方法及系统
Tuychiev New encryption algorithm based on network PES8-1 using of the transformations of the encryption algorithm AES
Browning et al. Designing tunable, verifiable cryptographic hardware using Cryptol
Cisco
Cisco
Cisco
Cisco
Cisco
Cisco
Tamayo-Vera et al. Leaders and followers machine learning hybrids—best reported S-boxes
CN1607764A (zh) 计算暂时密钥集成协议s盒值的装置及其方法
Boluf-Röhler et al. LEADERS AND FOLLOWERS MACHINE LEARNING HYBRIDS− BEST REPORTED S-BOXES.
Tang et al. Awareness and control of personal data Based on the Cyber-I privacy model
CN114189324B (zh) 一种消息安全签名方法、系统、设备及存储介质
Monzonís Laparra Pathfinding algorithms in graphs and applications
CN114710285B (zh) 一种面向异构并行架构的高性能sm4比特切片优化方法

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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20170421

Address after: 201206 China (Shanghai) free trade zone, the moon Road, No. 3, building fourth, room B412, level 1258

Patentee after: Shanghai Li Ke Semiconductor Technology Co., Ltd.

Address before: 201206 Pudong New Area Mingyue Road, Shanghai, No. 1258

Patentee before: Leadcore Technology Co., Ltd.