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

📄 ac3dec_crc.cpp

📁 这是在PCA下的基于IPP库示例代码例子,在网上下了IPP的库之后,设置相关参数就可以编译该代码.
💻 CPP
字号:
/*//////////////////////////////////////////////////////////////////////////////////                  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) 2002-2005 Intel Corporation. All Rights Reserved.//*/#include "umc_ac3_decoder.h"static const unsigned short crcLut[] ={     0, 32773, 32783,    10, 32795,    30,    20, 32785,  32819,    54,    60, 32825,    40, 32813, 32807,    34,  32867,   102,   108, 32873,   120, 32893, 32887,   114,     80, 32853, 32863,    90, 32843,    78,    68, 32833,  32963,   198,   204, 32969,   216, 32989, 32983,   210,    240, 33013, 33023,   250, 33003,   238,   228, 32993,    160, 32933, 32943,   170, 32955,   190,   180, 32945,  32915,   150,   156, 32921,   136, 32909, 32903,   130,  33155,   390,   396, 33161,   408, 33181, 33175,   402,    432, 33205, 33215,   442, 33195,   430,   420, 33185,    480, 33253, 33263,   490, 33275,   510,   500, 33265,  33235,   470,   476, 33241,   456, 33229, 33223,   450,    320, 33093, 33103,   330, 33115,   350,   340, 33105,  33139,   374,   380, 33145,   360, 33133, 33127,   354,  33059,   294,   300, 33065,   312, 33085, 33079,   306,    272, 33045, 33055,   282, 33035,   270,   260, 33025,  33539,   774,   780, 33545,   792, 33565, 33559,   786,    816, 33589, 33599,   826, 33579,   814,   804, 33569,    864, 33637, 33647,   874, 33659,   894,   884, 33649,  33619,   854,   860, 33625,   840, 33613, 33607,   834,    960, 33733, 33743,   970, 33755,   990,   980, 33745,  33779,  1014,  1020, 33785,  1000, 33773, 33767,   994,  33699,   934,   940, 33705,   952, 33725, 33719,   946,    912, 33685, 33695,   922, 33675,   910,   900, 33665,    640, 33413, 33423,   650, 33435,   670,   660, 33425,  33459,   694,   700, 33465,   680, 33453, 33447,   674,  33507,   742,   748, 33513,   760, 33533, 33527,   754,    720, 33493, 33503,   730, 33483,   718,   708, 33473,  33347,   582,   588, 33353,   600, 33373, 33367,   594,    624, 33397, 33407,   634, 33387,   622,   612, 33377,    544, 33317, 33327,   554, 33339,   574,   564, 33329,  33299,   534,   540, 33305,   520, 33293, 33287,   514};void UMC::AC3Decoder::crcInit(){  dataBuffer.state = 0;  dataBuffer.ptrCrc = (unsigned char*)(dataBuffer.pBuffer + dataBuffer.iDWDoneNum) +                      ((32 - dataBuffer.iBitOffset) >> 3);}bool UMC::AC3Decoder::crcGetState(){  return (dataBuffer.state == 0);}void UMC::AC3Decoder::crcCheck(int num){  unsigned short tmp = dataBuffer.state;  unsigned char* ptr = dataBuffer.ptrCrc;  int            i;  for (i = 0; i < 2*num; i++) {    tmp = (tmp << 8) ^ ptr[i] ^ crcLut[(tmp >> 8) & 0xff];  }  dataBuffer.state = tmp;  dataBuffer.ptrCrc = ptr + 2*num;}

⌨️ 快捷键说明

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