[发明专利]一种快速提取比特流哈夫曼解码方法无效
申请号: | 200710040445.2 | 申请日: | 2007-05-09 |
公开(公告)号: | CN101051845A | 公开(公告)日: | 2007-10-10 |
发明(设计)人: | 谭建国 | 申请(专利权)人: | 上海广电(集团)有限公司中央研究院 |
主分类号: | H03M7/40 | 分类号: | H03M7/40 |
代理公司: | 上海新天专利代理有限公司 | 代理人: | 张静洁 |
地址: | 200233*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 快速 提取 比特流 哈夫曼 解码 方法 | ||
1.一种快速提取比特流哈夫曼解码方法,其特征在于,包含以下步骤:
步骤1、重新构造新的哈夫曼码表的码值表,索引表和码长表;
步骤2、基于步骤1中所构造的新哈夫曼码表,快速从比特流中剥离出需要的位数来实现快速哈夫曼解码。
2.如权利要求1所述的快速提取比特流哈夫曼解码方法,其特征在于,所述的步骤1具体包含以下步骤:
步骤1.1、根据哈夫曼码表中原来的码长表Table_len1中的各个码长值的大小,按照顺序重新进行排序,将排序后获得的新码长表存储在表Table_len2中;
步骤1.2、将从原来码长表映射到新码长表的映射关系存储到映射表Table_Index中;
步骤1.3、按照表Table_Index中的映射关系,将哈夫曼码表中原来的码值表Table_val1对应映射到新的码值表Table_val中;
步骤1.4、在码长表Table_len2的基础上,生成新的码长表Table_len;
所述的码值表Table_val,码长表Table_len和映射表Table_Index组成重新构造后的新的哈夫曼码表。
3.如权利要求2所述的快速提取比特流哈夫曼解码方法,其特征在于,所述的步骤1.1中,根据哈夫曼码表中原来的码长表Table_len1中的各个码长值的大小,按照从小到大的顺序重新进行排序,得到Table_len2。
4.如权利要求2所述的快速提取比特流哈夫曼解码方法,其特征在于,所述的步骤1.1中,根据哈夫曼码表中原来的码长表Table_len1中的各个码长值的大小,按照从大到小的顺序重新进行排序,得到Table_len2。
5.如权利要求2所述的快速提取比特流哈夫曼解码方法,其特征在于,所述的步骤1.4具体包含以下步骤:
步骤1.4.1、用码长表Table_len2中的最后一个码长值减去排列在其前一个,即最后第二个的码长值,并将相减所得的结果覆盖存储在最后一个码长值所在的存储空间;
步骤1.4.2、用码长表Table_len2中的最后第二个码长值减去排列在其前一个,即最后第三个的码长值,并将相减所得的结果覆盖存储在最后第二个码长值所在的存储空间;如此类推;
步骤1.4.3、用码长表Table_len2中的第二个码长值减去排列在其前一个,即第一个的码长值,并将相减所得的结果覆盖存储在第二个码长值所在的存储空间;
步骤1.4.4、由于码长表Table_len2中的第一个码长值前面没有数据,故码长表中的第1个码长值保持不变,由此生成新的码长表Table_len。
6.如权利要求1所述的快速提取比特流哈夫曼解码方法,其特征在于,所述的步骤2具体包含以下步骤:
步骤2.1、设置记忆变量m,val和bitCnt的初始值均为0;其中,bitCnt用来存储从比特流中提取的比特位数;m用来记录在码表中上一次搜索到的位置,val用来记录从比特流中提取bitCnt个比特位对应的值;
步骤2.2、获取前一次在码长表中搜索到的位置:将记忆变量m赋值给j,即:j=m;
步骤2.3、从比特流中依次读取相应位比特数据:
步骤2.4、判断val的值是否等于Table_val[j]的值,若相等,执行步骤2.5;若不相等,执行步骤2.6;
步骤2.5、将循环变量j对应的映射索引Table_Index[j]作为解码信息返回,同时返回解码信息编码的位数bitCnt的值,结束解码过程;
步骤2.6、依次循环判断当前Table_Index[j+1]和bitCnt是否为解码获得的信息。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海广电(集团)有限公司中央研究院,未经上海广电(集团)有限公司中央研究院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200710040445.2/1.html,转载请声明来源钻瓜专利网。
- 上一篇:防闪字库处理方法及其应用芯片
- 下一篇:在多层网络中计算客户层业务路由的方法