⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 aac_dec_huff_tables_int.c

📁 audio-video-codecs.rar语音编解码器
💻 C
📖 第 1 页 / 共 3 页
字号:
/*
//
//                  INTEL CORPORATION PROPRIETARY INFORMATION
//     This software is supplied under the terms of a license agreement or
//     nondisclosure agreement with Intel Corporation and may not be copied
//     or disclosed except in accordance with the terms of that agreement.
//     Copyright(c) 2003-2006 Intel Corporation. All Rights Reserved.
//
//     Intel(R) Integrated Performance Primitives AAC Decode Sample for Windows*
//
//  By downloading and installing this sample, you hereby agree that the
//  accompanying Materials are being provided to you under the terms and
//  conditions of the End User License Agreement for the Intel(R) Integrated
//  Performance Primitives product previously accepted by you. Please refer
//  to the file ippEULA.rtf or ippEULA.txt located in the root directory of your Intel(R) IPP
//  product installation for more information.
//
//  MPEG-4 and AAC are international standards promoted by ISO, IEC, ITU, ETSI
//  and other organizations. Implementations of these standards, or the standard
//  enabled platforms may require licenses from various entities, including
//  Intel Corporation.
//
*/

#include "ippdc.h"

/********************************************************************/

Ipp32s aacidec_vlcShifts[] = {
  0, 2, 2, 3, 3, 6, 6, 6, 6, 6, 6, 6
};
Ipp32s aacidec_vlcOffsets[] = {
  0, 2, 2, 4, 4, 32, 32, 32, 32, 32, 32, 32
};
Ipp32s aacidec_vlcTypes[]= {
  5, 0, 0, 4, 4, 1, 1, 4, 4, 4, 4, 3, 5, 5, 5, 5
};
Ipp32s aacidec_vlcTuples[]= {
  1, 4, 4, 4, 4, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1
};
Ipp32s aacidec_vlcTableSizes[] = {
  121 /*sf_book */, 81, 81, 81, 81, 81, 81, 64, 64, 169, 169, 289
};
Ipp32s aacidec_vlcNumSubTables[] = {
  6, 4, 2, 7, 5, 4, 3, 5, 4, 6, 4, 4
};

Ipp32s aacidec_vlcSubTablesSizes0[]  = {5, 3, 2, 2, 3, 4};
Ipp32s aacidec_vlcSubTablesSizes1[]  = {5, 2, 2, 2};
Ipp32s aacidec_vlcSubTablesSizes2[]  = {6, 3};
Ipp32s aacidec_vlcSubTablesSizes3[]  = {3, 3, 2, 2, 2, 2, 2};
Ipp32s aacidec_vlcSubTablesSizes4[]  = {4, 3, 2, 2, 1};
Ipp32s aacidec_vlcSubTablesSizes5[]  = {5, 4, 2, 2};
Ipp32s aacidec_vlcSubTablesSizes6[]  = {6, 3, 2};
Ipp32s aacidec_vlcSubTablesSizes7[]  = {3, 3, 2, 2, 2};
Ipp32s aacidec_vlcSubTablesSizes8[]  = {5, 2, 2, 1};
Ipp32s aacidec_vlcSubTablesSizes9[]  = {3, 3, 3, 2, 2, 2};
Ipp32s aacidec_vlcSubTablesSizes10[] = {6, 3, 2, 1};
Ipp32s aacidec_vlcSubTablesSizes11[] = {5, 3, 2, 2};

Ipp32s *aacidec_vlcSubTablesSizes[] = {
  aacidec_vlcSubTablesSizes0, aacidec_vlcSubTablesSizes1,
  aacidec_vlcSubTablesSizes2, aacidec_vlcSubTablesSizes3,
  aacidec_vlcSubTablesSizes4, aacidec_vlcSubTablesSizes5,
  aacidec_vlcSubTablesSizes6, aacidec_vlcSubTablesSizes7,
  aacidec_vlcSubTablesSizes8, aacidec_vlcSubTablesSizes9,
  aacidec_vlcSubTablesSizes10, aacidec_vlcSubTablesSizes11
};

static IppsVLCTable_32s aacidec_sf_book[] = {
  {   60, 0x00000000,  1},  {   59, 0x00000004,  3},
  {   58, 0x0000000b,  4},  {   61, 0x0000000a,  4},
  {   62, 0x0000000c,  4},  {   57, 0x0000001a,  5},
  {   63, 0x0000001b,  5},  {   55, 0x0000003a,  6},
  {   56, 0x00000038,  6},  {   64, 0x00000039,  6},
  {   65, 0x0000003b,  6},  {   54, 0x00000079,  7},
  {   66, 0x00000078,  7},  {   67, 0x0000007a,  7},
  {   51, 0x000000fa,  8},  {   52, 0x000000f8,  8},
  {   53, 0x000000f6,  8},  {   68, 0x000000f7,  8},
  {   69, 0x000000f9,  8},  {   49, 0x000001f8,  9},
  {   50, 0x000001f7,  9},  {   70, 0x000001f6,  9},
  {   71, 0x000001f9,  9},  {   46, 0x000003f9, 10},
  {   47, 0x000003f7, 10},  {   48, 0x000003f5, 10},
  {   72, 0x000003f4, 10},  {   73, 0x000003f6, 10},
  {   74, 0x000003f8, 10},  {   43, 0x000007f9, 11},
  {   45, 0x000007f8, 11},  {   75, 0x000007f5, 11},
  {   76, 0x000007f4, 11},  {   77, 0x000007f6, 11},
  {   78, 0x000007f7, 11},  {   40, 0x00000ff9, 12},
  {   41, 0x00000ff7, 12},  {   42, 0x00000ff6, 12},
  {   44, 0x00000ff4, 12},  {   79, 0x00000ff5, 12},
  {   80, 0x00000ff8, 12},  {   38, 0x00001ff7, 13},
  {   39, 0x00001ff5, 13},  {   81, 0x00001ff4, 13},
  {   82, 0x00001ff6, 13},  {   83, 0x00001ff8, 13},
  {   32, 0x00003ff9, 14},  {   33, 0x00003ff5, 14},
  {   34, 0x00003ff7, 14},  {   35, 0x00003ff3, 14},
  {   36, 0x00003ff6, 14},  {   37, 0x00003ff2, 14},
  {   84, 0x00003ff8, 14},  {   85, 0x00003ff4, 14},
  {   30, 0x00007ff6, 15},  {   31, 0x00007ff7, 15},
  {   87, 0x00007ff4, 15},  {   89, 0x00007ff5, 15},
  {   24, 0x0000fff5, 16},  {   26, 0x0000fff2, 16},
  {   27, 0x0000fff3, 16},  {   28, 0x0000fff4, 16},
  {   29, 0x0000fff1, 16},  {   86, 0x0000fff0, 16},
  {   88, 0x0000fff6, 16},  {   22, 0x0001ffef, 17},
  {   23, 0x0001fff0, 17},  {   25, 0x0001ffee, 17},
  {    0, 0x0003ffe8, 18},  {    1, 0x0003ffe6, 18},
  {    2, 0x0003ffe7, 18},  {    3, 0x0003ffe5, 18},
  {   19, 0x0003ffe4, 18},  {   21, 0x0003ffe3, 18},
  {   90, 0x0003ffe2, 18},  {    4, 0x0007fff5, 19},
  {    5, 0x0007fff1, 19},  {    6, 0x0007ffed, 19},
  {    7, 0x0007fff6, 19},  {    8, 0x0007ffee, 19},
  {    9, 0x0007ffef, 19},  {   10, 0x0007fff0, 19},
  {   11, 0x0007fffc, 19},  {   12, 0x0007fffd, 19},
  {   13, 0x0007ffff, 19},  {   14, 0x0007fffe, 19},
  {   15, 0x0007fff7, 19},  {   16, 0x0007fff8, 19},
  {   17, 0x0007fffb, 19},  {   18, 0x0007fff9, 19},
  {   20, 0x0007fffa, 19},  {   91, 0x0007ffd9, 19},
  {   92, 0x0007ffda, 19},  {   93, 0x0007ffdb, 19},
  {   94, 0x0007ffdc, 19},  {   95, 0x0007ffdd, 19},
  {   96, 0x0007ffde, 19},  {   97, 0x0007ffd8, 19},
  {   98, 0x0007ffd2, 19},  {   99, 0x0007ffd3, 19},
  {  100, 0x0007ffd4, 19},  {  101, 0x0007ffd5, 19},
  {  102, 0x0007ffd6, 19},  {  103, 0x0007fff2, 19},
  {  104, 0x0007ffdf, 19},  {  105, 0x0007ffe7, 19},
  {  106, 0x0007ffe8, 19},  {  107, 0x0007ffe9, 19},
  {  108, 0x0007ffea, 19},  {  109, 0x0007ffeb, 19},
  {  110, 0x0007ffe6, 19},  {  111, 0x0007ffe0, 19},
  {  112, 0x0007ffe1, 19},  {  113, 0x0007ffe2, 19},
  {  114, 0x0007ffe3, 19},  {  115, 0x0007ffe4, 19},
  {  116, 0x0007ffe5, 19},  {  117, 0x0007ffd7, 19},
  {  118, 0x0007ffec, 19},  {  119, 0x0007fff4, 19},
  {  120, 0x0007fff3, 19}
};

static IppsVLCTable_32s aacidec_spec_book1[] = {
  {  -43, 0x000007f8, 11},  {  -42, 0x000001f1,  9},
  {  -41, 0x000007fd, 11},  {  -39, 0x000003f5, 10},
  {  -38, 0x00000068,  7},  {  -37, 0x000003f0, 10},
  {  -35, 0x000007f7, 11},  {  -34, 0x000001ec,  9},
  {  -33, 0x000007f5, 11},  {  -27, 0x000003f1, 10},
  {  -26, 0x00000072,  7},  {  -25, 0x000003f4, 10},
  {  -23, 0x00000074,  7},  {  -22, 0x00000011,  5},
  {  -21, 0x00000076,  7},  {  -19, 0x000001eb,  9},
  {  -18, 0x0000006c,  7},  {  -17, 0x000003f6, 10},
  {  -11, 0x000007fc, 11},  {  -10, 0x000001e1,  9},
  {   -9, 0x000007f1, 11},  {   -7, 0x000001f0,  9},
  {   -6, 0x00000061,  7},  {   -5, 0x000001f6,  9},
  {   -3, 0x000007f2, 11},  {   -2, 0x000001ea,  9},
  {   -1, 0x000007fb, 11},  {   21, 0x000001f2,  9},
  {   22, 0x00000069,  7},  {   23, 0x000001ed,  9},
  {   25, 0x00000077,  7},  {   26, 0x00000017,  5},
  {   27, 0x0000006f,  7},  {   29, 0x000001e6,  9},
  {   30, 0x00000064,  7},  {   31, 0x000001e5,  9},
  {   37, 0x00000067,  7},  {   38, 0x00000015,  5},
  {   39, 0x00000062,  7},  {   41, 0x00000012,  5},
  {   42, 0x00000000,  1},  {   43, 0x00000014,  5},
  {   45, 0x00000065,  7},  {   46, 0x00000016,  5},
  {   47, 0x0000006d,  7},  {   53, 0x000001e9,  9},
  {   54, 0x00000063,  7},  {   55, 0x000001e4,  9},
  {   57, 0x0000006b,  7},  {   58, 0x00000013,  5},
  {   59, 0x00000071,  7},  {   61, 0x000001e3,  9},
  {   62, 0x00000070,  7},  {   63, 0x000001f3,  9},
  {   85, 0x000007fe, 11},  {   86, 0x000001e7,  9},
  {   87, 0x000007f3, 11},  {   89, 0x000001ef,  9},
  {   90, 0x00000060,  7},  {   91, 0x000001ee,  9},
  {   93, 0x000007f0, 11},  {   94, 0x000001e2,  9},
  {   95, 0x000007fa, 11},  {  101, 0x000003f3, 10},
  {  102, 0x0000006a,  7},  {  103, 0x000001e8,  9},
  {  105, 0x00000075,  7},  {  106, 0x00000010,  5},
  {  107, 0x00000073,  7},  {  109, 0x000001f4,  9},
  {  110, 0x0000006e,  7},  {  111, 0x000003f7, 10},
  {  117, 0x000007f6, 11},  {  118, 0x000001e0,  9},
  {  119, 0x000007f9, 11},  {  121, 0x000003f2, 10},
  {  122, 0x00000066,  7},  {  123, 0x000001f5,  9},
  {  125, 0x000007ff, 11},  {  126, 0x000001f7,  9},
  {  127, 0x000007f4, 11}
};
static IppsVLCTable_32s aacidec_spec_book2[] = {
  {  -43, 0x000001f3,  9},  {  -42, 0x0000006f,  7},
  {  -41, 0x000001fd,  9},  {  -39, 0x000000eb,  8},
  {  -38, 0x00000023,  6},  {  -37, 0x000000ea,  8},
  {  -35, 0x000001f7,  9},  {  -34, 0x000000e8,  8},
  {  -33, 0x000001fa,  9},  {  -27, 0x000000f2,  8},
  {  -26, 0x0000002d,  6},  {  -25, 0x00000070,  7},
  {  -23, 0x00000020,  6},  {  -22, 0x00000006,  5},
  {  -21, 0x0000002b,  6},  {  -19, 0x0000006e,  7},
  {  -18, 0x00000028,  6},  {  -17, 0x000000e9,  8},
  {  -11, 0x000001f9,  9},  {  -10, 0x00000066,  7},
  {   -9, 0x000000f8,  8},  {   -7, 0x000000e7,  8},
  {   -6, 0x0000001b,  6},  {   -5, 0x000000f1,  8},
  {   -3, 0x000001f4,  9},  {   -2, 0x0000006b,  7},
  {   -1, 0x000001f5,  9},  {   21, 0x000000ec,  8},
  {   22, 0x0000002a,  6},  {   23, 0x0000006c,  7},
  {   25, 0x0000002c,  6},  {   26, 0x0000000a,  5},
  {   27, 0x00000027,  6},  {   29, 0x00000067,  7},
  {   30, 0x0000001a,  6},  {   31, 0x000000f5,  8},
  {   37, 0x00000024,  6},  {   38, 0x00000008,  5},
  {   39, 0x0000001f,  6},  {   41, 0x00000009,  5},
  {   42, 0x00000000,  3},  {   43, 0x00000007,  5},
  {   45, 0x0000001d,  6},  {   46, 0x0000000b,  5},
  {   47, 0x00000030,  6},  {   53, 0x000000ef,  8},
  {   54, 0x0000001c,  6},  {   55, 0x00000064,  7},
  {   57, 0x0000001e,  6},  {   58, 0x0000000c,  5},
  {   59, 0x00000029,  6},  {   61, 0x000000f3,  8},
  {   62, 0x0000002f,  6},  {   63, 0x000000f0,  8},
  {   85, 0x000001fc,  9},  {   86, 0x00000071,  7},
  {   87, 0x000001f2,  9},  {   89, 0x000000f4,  8},
  {   90, 0x00000021,  6},  {   91, 0x000000e6,  8},
  {   93, 0x000000f7,  8},  {   94, 0x00000068,  7},
  {   95, 0x000001f8,  9},  {  101, 0x000000ee,  8},
  {  102, 0x00000022,  6},  {  103, 0x00000065,  7},
  {  105, 0x00000031,  6},  {  106, 0x00000002,  4},
  {  107, 0x00000026,  6},  {  109, 0x000000ed,  8},
  {  110, 0x00000025,  6},  {  111, 0x0000006a,  7},
  {  117, 0x000001fb,  9},  {  118, 0x00000072,  7},
  {  119, 0x000001fe,  9},  {  121, 0x00000069,  7},
  {  122, 0x0000002e,  6},  {  123, 0x000000f6,  8},
  {  125, 0x000001ff,  9},  {  126, 0x0000006d,  7},
  {  127, 0x000001f6,  9}
};
static IppsVLCTable_32s aacidec_spec_book3[] = {
  {    0, 0x00000000,  1}, {    1, 0x00000009,  4},
  {    2, 0x000000ef,  8}, {    8, 0x0000000b,  4},
  {    9, 0x00000019,  5}, {   10, 0x000000f0,  8},
  {   16, 0x000001eb,  9}, {   17, 0x000001e6,  9},
  {   18, 0x000003f2, 10}, {   64, 0x0000000a,  4},
  {   65, 0x00000035,  6}, {   66, 0x000001ef,  9},
  {   72, 0x00000034,  6}, {   73, 0x00000037,  6},
  {   74, 0x000001e9,  9}, {   80, 0x000001ed,  9},
  {   81, 0x000001e7,  9}, {   82, 0x000003f3, 10},
  {  128, 0x000001ee,  9}, {  129, 0x000003ed, 10},
  {  130, 0x00001ffa, 13}, {  136, 0x000001ec,  9},
  {  137, 0x000001f2,  9}, {  138, 0x000007f9, 11},
  {  144, 0x000007f8, 11}, {  145, 0x000003f8, 10},
  {  146, 0x00000ff8, 12}, {  512, 0x00000008,  4},
  {  513, 0x00000038,  6}, {  514, 0x000003f6, 10},
  {  520, 0x00000036,  6}, {  521, 0x00000075,  7},
  {  522, 0x000003f1, 10}, {  528, 0x000003eb, 10},
  {  529, 0x000003ec, 10}, {  530, 0x00000ff4, 12},
  {  576, 0x00000018,  5}, {  577, 0x00000076,  7},
  {  578, 0x000007f4, 11}, {  584, 0x00000039,  6},
  {  585, 0x00000074,  7}, {  586, 0x000003ef, 10},
  {  592, 0x000001f3,  9}, {  593, 0x000001f4,  9},
  {  594, 0x000007f6, 11}, {  640, 0x000001e8,  9},
  {  641, 0x000003ea, 10}, {  642, 0x00001ffc, 13},
  {  648, 0x000000f2,  8}, {  649, 0x000001f1,  9},
  {  650, 0x00000ffb, 12}, {  656, 0x000003f5, 10},
  {  657, 0x000007f3, 11}, {  658, 0x00000ffc, 12},
  { 1024, 0x000000ee,  8}, { 1025, 0x000003f7, 10},
  { 1026, 0x00007ffe, 15}, { 1032, 0x000001f0,  9},
  { 1033, 0x000007f5, 11}, { 1034, 0x00007ffd, 15},
  { 1040, 0x00001ffb, 13}, { 1041, 0x00003ffa, 14},
  { 1042, 0x0000ffff, 16}, { 1088, 0x000000f1,  8},
  { 1089, 0x000003f0, 10}, { 1090, 0x00003ffc, 14},
  { 1096, 0x000001ea,  9}, { 1097, 0x000003ee, 10},
  { 1098, 0x00003ffb, 14}, { 1104, 0x00000ff6, 12},
  { 1105, 0x00000ffa, 12}, { 1106, 0x00007ffc, 15},
  { 1152, 0x000007f2, 11}, { 1153, 0x00000ff5, 12},
  { 1154, 0x0000fffe, 16}, { 1160, 0x000003f4, 10},
  { 1161, 0x000007f7, 11}, { 1162, 0x00007ffb, 15},
  { 1168, 0x00000ff7, 12}, { 1169, 0x00000ff9, 12},
  { 1170, 0x00007ffa, 15}
};
static IppsVLCTable_32s aacidec_spec_book4[] = {

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -