📄 huffcode.h
字号:
/* Copyright 1998, ESS Technology, Inc. *//* SCCSID @(#)huffcode.h 4.2 02/25/03 *//* * $Log$ */#ifndef __HUFFCODE_H__#define __HUFFCODE_H__#include "memmap.h"#define HUFFBITS unsigned long int#define HTN 34#define MXOFF 250HUFFBITS dmask = 1 << (sizeof(HUFFBITS)*8-1);unsigned int hs = sizeof(HUFFBITS)*8;struct huffcodetab { unsigned int xlen; /*max. x-index+ */ unsigned int ylen; /*max. y-index+ */ unsigned int linbits; /*number of linbits */ unsigned int linmax; /*max number to be stored in linbits */#ifdef MP3_BLK_HUFF unsigned char *sub_len; /* decoder tree sub len for block decoding */#endif unsigned char *val; /*decoder tree */ unsigned int treelen; /*length of decoder tree */};#define ddram_cached(a) (0x02000000 + ((a)<<2))#define HUFFTAB_PTR_INIT (uchar *)NULL#define HUFFSUBLEN_PTR_INIT (uchar *)NULL#if defined(MKTABLE) || defined(XSEG4_ON_FLY)#ifdef MP3_BLK_HUFFstruct huffcodetab ht[HTN] = { { 0, 0, 0, 0, HUFFSUBLEN_PTR_INIT+ 0, HUFFTAB_PTR_INIT + 0, 0}, { 1, 1, 0, 0, HUFFSUBLEN_PTR_INIT+ 0, HUFFTAB_PTR_INIT + 0, 16}, { 2, 2, 0, 0, HUFFSUBLEN_PTR_INIT+ 1, HUFFTAB_PTR_INIT + 16, 42}, { 2, 2, 0, 0, HUFFSUBLEN_PTR_INIT+ 3, HUFFTAB_PTR_INIT + 58, 42}, { 0, 0, 0, 0, HUFFSUBLEN_PTR_INIT+ 5, HUFFTAB_PTR_INIT + 100, 0}, { 3, 3, 0, 0, HUFFSUBLEN_PTR_INIT+ 5, HUFFTAB_PTR_INIT + 100, 80}, { 3, 3, 0, 0, HUFFSUBLEN_PTR_INIT+ 7, HUFFTAB_PTR_INIT + 180, 72}, { 5, 5, 0, 0, HUFFSUBLEN_PTR_INIT+ 9, HUFFTAB_PTR_INIT + 252, 150}, { 5, 5, 0, 0, HUFFSUBLEN_PTR_INIT+ 13, HUFFTAB_PTR_INIT + 402, 136}, { 5, 5, 0, 0, HUFFSUBLEN_PTR_INIT+ 18, HUFFTAB_PTR_INIT + 538, 172}, { 7, 7, 0, 0, HUFFSUBLEN_PTR_INIT+ 21, HUFFTAB_PTR_INIT + 710, 248}, { 7, 7, 0, 0, HUFFSUBLEN_PTR_INIT+ 26, HUFFTAB_PTR_INIT + 958, 258}, { 7, 7, 0, 0, HUFFSUBLEN_PTR_INIT+ 31, HUFFTAB_PTR_INIT + 1216, 272}, { 15, 15, 0, 0, HUFFSUBLEN_PTR_INIT+ 35, HUFFTAB_PTR_INIT + 1488,1004}, { 0, 0, 0, 0, HUFFSUBLEN_PTR_INIT+ 48, HUFFTAB_PTR_INIT + 2492, 0}, { 15, 15, 0, 0, HUFFSUBLEN_PTR_INIT+ 48, HUFFTAB_PTR_INIT + 2492,1006}, { 15, 15, 1, 1, HUFFSUBLEN_PTR_INIT+ 55, HUFFTAB_PTR_INIT + 3498, 998}, { 15, 15, 2, 3, HUFFSUBLEN_PTR_INIT+ 55, HUFFTAB_PTR_INIT + 3498, 998}, { 15, 15, 3, 7, HUFFSUBLEN_PTR_INIT+ 55, HUFFTAB_PTR_INIT + 3498, 998}, { 15, 15, 4, 15, HUFFSUBLEN_PTR_INIT+ 55, HUFFTAB_PTR_INIT + 3498, 998}, { 15, 15, 6, 63, HUFFSUBLEN_PTR_INIT+ 55, HUFFTAB_PTR_INIT + 3498, 998}, { 15, 15, 8, 255, HUFFSUBLEN_PTR_INIT+ 55, HUFFTAB_PTR_INIT + 3498, 998}, { 15, 15, 10,1023, HUFFSUBLEN_PTR_INIT+ 55, HUFFTAB_PTR_INIT + 3498, 998}, { 15, 15, 13,8191, HUFFSUBLEN_PTR_INIT+ 55, HUFFTAB_PTR_INIT + 3498, 998}, { 15, 15, 4, 15, HUFFSUBLEN_PTR_INIT+ 66, HUFFTAB_PTR_INIT + 4496, 964}, { 15, 15, 5, 31, HUFFSUBLEN_PTR_INIT+ 66, HUFFTAB_PTR_INIT + 4496, 964}, { 15, 15, 6, 63, HUFFSUBLEN_PTR_INIT+ 66, HUFFTAB_PTR_INIT + 4496, 964}, { 15, 15, 7, 127, HUFFSUBLEN_PTR_INIT+ 66, HUFFTAB_PTR_INIT + 4496, 964}, { 15, 15, 8, 255, HUFFSUBLEN_PTR_INIT+ 66, HUFFTAB_PTR_INIT + 4496, 964}, { 15, 15, 9, 511, HUFFSUBLEN_PTR_INIT+ 66, HUFFTAB_PTR_INIT + 4496, 964}, { 15, 15, 11,2047, HUFFSUBLEN_PTR_INIT+ 66, HUFFTAB_PTR_INIT + 4496, 964}, { 15, 15, 13,8191, HUFFSUBLEN_PTR_INIT+ 66, HUFFTAB_PTR_INIT + 4496, 964}, { 0, 15, 0, 0, HUFFSUBLEN_PTR_INIT+ 73, HUFFTAB_PTR_INIT + 5460, 64}, { 0, 15, 0, 0, HUFFSUBLEN_PTR_INIT+ 75, HUFFTAB_PTR_INIT + 5524, 48}, };#elsestruct huffcodetab ht[HTN] = { { 0, 0, 0, 0, HUFFTAB_PTR_INIT, 0}, { 1, 1, 0, 0, HUFFTAB_PTR_INIT, 7}, { 2, 2, 0, 0, HUFFTAB_PTR_INIT+ 7 * 2, 17}, { 2, 2, 0, 0, HUFFTAB_PTR_INIT+ 24 * 2, 17}, { 0, 0, 0, 0, HUFFTAB_PTR_INIT+ 41 * 2, 0}, { 3, 3, 0, 0, HUFFTAB_PTR_INIT+ 41 * 2, 31}, { 3, 3, 0, 0, HUFFTAB_PTR_INIT+ 72 * 2, 31}, { 5, 5, 0, 0, HUFFTAB_PTR_INIT+ 103 * 2, 71}, { 5, 5, 0, 0, HUFFTAB_PTR_INIT+ 174 * 2, 71}, { 5, 5, 0, 0, HUFFTAB_PTR_INIT+ 245 * 2, 71}, { 7, 7, 0, 0, HUFFTAB_PTR_INIT+ 316 * 2,127}, { 7, 7, 0, 0, HUFFTAB_PTR_INIT+ 443 * 2,127}, { 7, 7, 0, 0, HUFFTAB_PTR_INIT+ 570 * 2,127}, { 15, 15, 0, 0, HUFFTAB_PTR_INIT+ 697 * 2,511}, { 0, 0, 0, 0, HUFFTAB_PTR_INIT+1200 * 2, 0}, { 15, 15, 0, 0, HUFFTAB_PTR_INIT+1208 * 2,511}, { 15, 15, 1, 1, HUFFTAB_PTR_INIT+1719 * 2,511}, { 15, 15, 2, 3, HUFFTAB_PTR_INIT+1719 * 2,511}, { 15, 15, 3, 7, HUFFTAB_PTR_INIT+1719 * 2,511}, { 15, 15, 4, 15, HUFFTAB_PTR_INIT+1719 * 2,511}, { 15, 15, 6, 63, HUFFTAB_PTR_INIT+1719 * 2,511}, { 15, 15, 8, 255, HUFFTAB_PTR_INIT+1719 * 2,511}, { 15, 15, 10,1023, HUFFTAB_PTR_INIT+1719 * 2,511}, { 15, 15, 13,8191, HUFFTAB_PTR_INIT+1719 * 2,511}, { 15, 15, 4, 15, HUFFTAB_PTR_INIT+2230 * 2,512}, { 15, 15, 5, 31, HUFFTAB_PTR_INIT+2230 * 2,512}, { 15, 15, 6, 63, HUFFTAB_PTR_INIT+2230 * 2,512}, { 15, 15, 7, 127, HUFFTAB_PTR_INIT+2230 * 2,512}, { 15, 15, 8, 255, HUFFTAB_PTR_INIT+2230 * 2,512}, { 15, 15, 9, 511, HUFFTAB_PTR_INIT+2230 * 2,512}, { 15, 15, 11,2047, HUFFTAB_PTR_INIT+2230 * 2,512}, { 15, 15, 13,8191, HUFFTAB_PTR_INIT+2230 * 2,512}, { 0, 15, 0, 0, HUFFTAB_PTR_INIT+2742 * 2, 31}, { 0, 15, 0, 0, HUFFTAB_PTR_INIT+2773 * 2, 31} }; #endif /* end of MP3_BLK_HUFF */#endif /* end of MKTABLE */#endif /* end of __HUFFCODE_H__ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -