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

📄 vlc.h

📁 avs decoder sources, added a command line sample
💻 H
📖 第 1 页 / 共 5 页
字号:
	{-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1},  }};/* [ intra/inter/chroma ][ tablenum][ grad/maxlevel ] */static const AVS_I8 VLC_Golomb_Order[3][7][2] = {	{		{2, 9}, {2, 9}, {2, 9}, {2, 9}, {2, 9}, {2, 9}, {2, 9},	},	{		{3, 9}, {2, 9}, {2, 9}, {2, 9}, {2, 9}, {2, 9}, {2, 9},	},	{		{2, 9}, {0, 9}, {1, 9}, {1, 9}, {0, 9}, {-1, -1}, {-1, -1},	},};static const AVS_I8 MaxRun[3][7] = {	{22, 14,  9,  6,  4,  2,  1},	{25, 18, 13,  9,  6,  4,  3},	{24, 19, 10,  7,  4, -1, -1}};static const AVS_I8 RefAbsLevel[19][26] = {	{ 4, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,-1,-1,-1},	{ 7, 4, 4, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},	{10, 6, 4, 4, 3, 3, 3, 2, 2, 2,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},	{13, 7, 5, 4, 3, 2, 2,-1,-1,-1 -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},	{18, 8, 4, 2, 2,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},	{22, 7, 3,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},	{27, 4,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},	{ 4, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2},	{ 5, 4, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,-1,-1,-1,-1,-1,-1,-1},	{ 7, 5, 4, 4, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},	{10, 6, 5, 4, 3, 3, 2, 2, 2, 2,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},	{13, 7, 5, 4, 3, 2, 2,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},	{17, 8, 4, 3, 2,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},	{22, 6, 3, 2,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},	{ 5, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,-1},	{ 6, 4, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,-1,-1,-1,-1,-1,-1},	{10, 6, 4, 4, 3, 3, 2, 2, 2, 2, 2,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},	{14, 7, 4, 3, 3, 2, 2, 2,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},	{20, 7, 3, 2, 2,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1}};/* [scan_pos][x/y] * ATTENTION: the ScanPositions are (pix,lin) */static const AVS_INT SCAN[2][64][2] = {	{		{0,0},{0,1},{0,2},{1,0},{0,3},{0,4},{1,1},{1,2},		{0,5},{0,6},{1,3},{2,0},{2,1},{0,7},{1,4},{2,2},		{3,0},{1,5},{1,6},{2,3},{3,1},{3,2},{4,0},{1,7},		{2,4},{4,1},{2,5},{3,3},{4,2},{2,6},{3,4},{4,3},		{5,0},{5,1},{2,7},{3,5},{4,4},{5,2},{6,0},{5,3},		{3,6},{4,5},{6,1},{6,2},{5,4},{3,7},{4,6},{6,3},		{5,5},{4,7},{6,4},{5,6},{6,5},{5,7},{6,6},{7,0},		{6,7},{7,1},{7,2},{7,3},{7,4},{7,5},{7,6},{7,7}	},	{		{ 0, 0}, { 1, 0}, { 0, 1}, { 0, 2}, { 1, 1}, { 2, 0}, { 3, 0}, { 2, 1},		{ 1, 2}, { 0, 3}, { 0, 4}, { 1, 3}, { 2, 2}, { 3, 1}, { 4, 0}, { 5, 0},		{ 4, 1}, { 3, 2}, { 2, 3}, { 1, 4}, { 0, 5}, { 0, 6}, { 1, 5}, { 2, 4},		{ 3, 3}, { 4, 2}, { 5, 1}, { 6, 0}, { 7, 0}, { 6, 1}, { 5, 2}, { 4, 3},		{ 3, 4}, { 2, 5}, { 1, 6}, { 0, 7}, { 1, 7}, { 2, 6}, { 3, 5}, { 4, 4},		{ 5, 3}, { 6, 2}, { 7, 1}, { 7, 2}, { 6, 3}, { 5, 4}, { 4, 5}, { 3, 6},		{ 2, 7}, { 3, 7}, { 4, 6}, { 5, 5}, { 6, 4}, { 7, 3}, { 7, 4}, { 6, 5},		{ 5, 6}, { 4, 7}, { 5, 7}, { 6, 6}, { 7, 5}, { 7, 6}, { 6, 7}, { 7, 7}	}};static const AVS_BYTE ZigZagTab[2][64] = {  {    0,  1,  8,  16,  9,  2, 3,  10,    17, 24, 32, 25, 18, 11,  4,  5,    12, 19, 26, 33, 40, 48, 41, 34,    27, 20, 13, 16,  7, 14, 21, 28,    35, 42, 49, 56, 57, 50, 43, 36,    29, 22, 15, 23, 30, 37, 44, 51,    58, 59, 52, 45, 38, 31, 39, 46,    53, 60, 61, 54, 47, 55, 62, 63  },  {      0,  8, 16,  3, 24, 32,  9, 17,     40, 48, 25,  2, 10, 56, 33, 18,      3, 41, 49, 26, 11, 19,  4, 57,     34, 12, 42, 27, 20, 50, 35, 28,      5, 13, 58, 43, 36, 21,  6, 29,     51, 44, 14, 22, 37, 59, 52, 30,      45, 60, 38, 53, 46, 61, 54,  7,     62, 15, 23, 31, 39, 47, 55, 63  }};static const AVS_SHORT IQ_SHIFT[64] = {	15, 15, 15, 15, 15, 15, 15, 15,	14, 14, 14, 14, 14, 14, 14, 14,	14, 13, 13, 13, 13, 13, 13, 13,	12, 12, 12, 12, 12, 12, 12, 12,	12, 11, 11, 11, 11, 11, 11, 11,	11, 10, 10, 10, 10, 10, 10, 10,	10,  9,  9,  9,  9,  9,  9,  9,	 8,  8,  8,  8,  8,  8,  8,  8};static const AVS_USHORT IQ_TAB[64] = {	32768, 36061, 38968, 42495, 46341, 50535, 55437, 60424,	32932, 35734, 38968, 42495, 46177, 50535, 55109, 59933,	65535, 35734, 38968, 42577, 46341, 50617, 55027, 60097,	32809, 35734, 38968, 42454, 46382, 50576, 55109, 60056,	65535, 35734, 38968, 42495, 46320, 50515, 55109, 60076,	65535, 35744, 38968, 42495, 46341, 50535, 55099, 60087,	65535, 35734, 38973, 42500, 46341, 50535, 55109, 60097,	32771, 35734, 38965, 42497, 46341, 50535, 55109, 60099};static const AVS_BYTE QP_SCALE_CR[64]={	 0,  1,  2,  3,  4,  5,  6,  7,  8,  9,	10, 11, 12, 13, 14, 15, 16, 17, 18, 19,	20, 21, 22, 23, 24, 25, 26, 27, 28, 29,	30, 31, 32, 33, 34, 35, 36, 37, 38, 39,	40, 41, 42, 42, 43, 43, 44, 44, 45, 45,	46, 46, 47, 47, 48, 48, 48, 49, 49, 49,	50, 50, 50, 51,};static const AVS_INT MASKBITARRAY[32]={  0x1,       0x2,       0x4,       0x8,       0x10,       0x20,       0x40,       0x80,      0x100,     0x200,     0x400,     0x800,     0x1000,     0x2000,     0x4000,     0x8000,     0x10000,   0x20000,   0x40000,   0x80000,   0x100000,   0x200000,   0x400000,   0x800000,   0x1000000, 0x2000000, 0x4000000, 0x8000000, 0x10000000, 0x20000000, 0x40000000, 0x80000000};AVS_INT ue(const AVS_BYTE * buffer,            AVS_DWORD * totbitoffset, 	   AVS_INT bytecount);AVS_INT se(const AVS_BYTE * buffer,            AVS_DWORD * totbitoffset, 	   AVS_INT bytecount);AVS_INT me(const AVS_BYTE * buffer,            AVS_DWORD * totbitoffset, 	   AVS_INT bytecount, 	   AVS_DWORD dwMbType);AVS_INT me_chroma422(const AVS_BYTE * buffer,                     AVS_DWORD * totbitoffset, 		     AVS_INT bytecount, 		     AVS_DWORD dwMbType);void MakeVlcTable();void ReadLumaCoeff(		const AVS_BYTE * pbCurrent, 		AVS_DWORD dwDataLen, 		AVS_DWORD * dwBitOffset, 		MBINFO * pCurrMb, 		AVS_DWORD dwPictureStructure, 		AVS_SHORT * pResidual);void ReadChromaCoeff(		const AVS_BYTE * pbCurrent,		AVS_DWORD dwDataLen, 		AVS_DWORD * pdwBitOffset, 		MBINFO * pCurrMb, 		AVS_DWORD dwPictureStructure, 		AVS_SHORT * pResidual);AVS_INT read_bits(const AVS_BYTE * buffer, AVS_DWORD * totbitoffset, AVS_INT numbits);#endif

⌨️ 快捷键说明

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