Files
TAIXIN/sdk/lib/video/dvp/jpeg/jpg_table.c

550 lines
22 KiB
C

#include "sys_config.h"
#include "typesdef.h"
#if JPG_EN
#ifndef DQT_NUM
#define DQT_NUM 12
#endif
const uint16 htable[] __attribute__ ((aligned(4))) ={
#if 1
0x100,0x101,0x204,0x30b,0x41a,0x678,0x7f8,0x9f6,
0xf82,0xf83,0x30c,0x41b,0x679,0x8f6,0xaf6,0xf84,
0xf85,0xf86,0xf87,0xf88,0x41c,0x7f9,0x9f7,0xbf4,
0xf89,0xf8a,0xf8b,0xf8c,0xf8d,0xf8e,0x53a,0x8f7,
0xbf5,0xf8f,0xf90,0xf91,0xf92,0xf93,0xf94,0xf95,
0x53b,0x9f8,0xf96,0xf97,0xf98,0xf99,0xf9a,0xf9b,
0xf9c,0xf9d,0x67a,0xaf7,0xf9e,0xf9f,0xfa0,0xfa1,
0xfa2,0xfa3,0xfa4,0xfa5,0x67b,0xbf6,0xfa6,0xfa7,
0xfa8,0xfa9,0xfaa,0xfab,0xfac,0xfad,0x7fa,0xbf7,
0xfae,0xfaf,0xfb0,0xfb1,0xfb2,0xfb3,0xfb4,0xfb5,
0x8f8,0xec0,0xfb6,0xfb7,0xfb8,0xfb9,0xfba,0xfbb,
0xfbc,0xfbd,0x8f9,0xfbe,0xfbf,0xfc0,0xfc1,0xfc2,
0xfc3,0xfc4,0xfc5,0xfc6,0x8fa,0xfc7,0xfc8,0xfc9,
0xfca,0xfcb,0xfcc,0xfcd,0xfce,0xfcf,0x9f9,0xfd0,
0xfd1,0xfd2,0xfd3,0xfd4,0xfd5,0xfd6,0xfd7,0xfd8,
0x9fa,0xfd9,0xfda,0xfdb,0xfdc,0xfdd,0xfde,0xfdf,
0xfe0,0xfe1,0xaf8,0xfe2,0xfe3,0xfe4,0xfe5,0xfe6,
0xfe7,0xfe8,0xfe9,0xfea,0xfeb,0xfec,0xfed,0xfee,
0xfef,0xff0,0xff1,0xff2,0xff3,0xff4,0xff5,0xff6,
0xff7,0xff8,0xff9,0xffa,0xffb,0xffc,0xffd,0xffe,
0x30a,0xaf9,0xfff,0xfff,0xfff,0xfff,0xfff,0xfff,
0xfd0,0xfd1,0xfd2,0xfd3,0xfd4,0xfd5,0xfd6,0xfd7,
0x101,0x204,0x30a,0x418,0x419,0x538,0x678,0x8f4,
0x9f6,0xbf4,0x30b,0x539,0x7f6,0x8f5,0xaf6,0xbf5,
0xf88,0xf89,0xf8a,0xf8b,0x41a,0x7f7,0x9f7,0xbf6,
0xec2,0xf8c,0xf8d,0xf8e,0xf8f,0xf90,0x41b,0x7f8,
0x9f8,0xbf7,0xf91,0xf92,0xf93,0xf94,0xf95,0xf96,
0x53a,0x8f6,0xf97,0xf98,0xf99,0xf9a,0xf9b,0xf9c,
0xf9d,0xf9e,0x53b,0x9f9,0xf9f,0xfa0,0xfa1,0xfa2,
0xfa3,0xfa4,0xfa5,0xfa6,0x679,0xaf7,0xfa7,0xfa8,
0xfa9,0xfaa,0xfab,0xfac,0xfad,0xfae,0x67a,0xaf8,
0xfaf,0xfb0,0xfb1,0xfb2,0xfb3,0xfb4,0xfb5,0xfb6,
0x7f9,0xfb7,0xfb8,0xfb9,0xfba,0xfbb,0xfbc,0xfbd,
0xfbe,0xfbf,0x8f7,0xfc0,0xfc1,0xfc2,0xfc3,0xfc4,
0xfc5,0xfc6,0xfc7,0xfc8,0x8f8,0xfc9,0xfca,0xfcb,
0xfcc,0xfcd,0xfce,0xfcf,0xfd0,0xfd1,0x8f9,0xfd2,
0xfd3,0xfd4,0xfd5,0xfd6,0xfd7,0xfd8,0xfd9,0xfda,
0x8fa,0xfdb,0xfdc,0xfdd,0xfde,0xfdf,0xfe0,0xfe1,
0xfe2,0xfe3,0xaf9,0xfe4,0xfe5,0xfe6,0xfe7,0xfe8,
0xfe9,0xfea,0xfeb,0xfec,0xde0,0xfed,0xfee,0xfef,
0xff0,0xff1,0xff2,0xff3,0xff4,0xff5,0xec3,0xff6,
0xff7,0xff8,0xff9,0xffa,0xffb,0xffc,0xffd,0xffe,
0x100,0x9fa,0xfff,0xfff,0xfff,0xfff,0xfff,0xfff,
0xfd0,0xfd1,0xfd2,0xfd3,0xfd4,0xfd5,0xfd6,0xfd7,
0x100,0x202,0x203,0x204,0x205,0x206,0x30e,0x41e,
0x53e,0x67e,0x7fe,0x8fe,0xfff,0xfff,0xfff,0xfff,
0x100,0x101,0x102,0x206,0x30e,0x41e,0x53e,0x67e,
0x7fe,0x8fe,0x9fe,0xafe,0xfff,0xfff,0xfff,0xfff,
#else
0x0001,0x0101,0x0402,0x0b03,0x1a04,0x7806,0xf807,0xf609,
0x820f,0x830f,0x0c03,0x1b04,0x7906,0xf608,0xf60a,0x840f,
0x850f,0x860f,0x870f,0x880f,0x1c04,0xf907,0xf709,0xf40b,
0x890f,0x8a0f,0x8b0f,0x8c0f,0x8d0f,0x8e0f,0x3a05,0xf708,
0xf50b,0x8f0f,0x900f,0x910f,0x920f,0x930f,0x940f,0x950f,
0x3b05,0xf809,0x960f,0x970f,0x980f,0x990f,0x9a0f,0x9b0f,
0x9c0f,0x9d0f,0x7a06,0xf70a,0x9e0f,0x9f0f,0xa00f,0xa10f,
0xa20f,0xa30f,0xa40f,0xa50f,0x7b06,0xf60b,0xa60f,0xa70f,
0xa80f,0xa90f,0xaa0f,0xab0f,0xac0f,0xad0f,0xfa07,0xf70b,
0xae0f,0xaf0f,0xb00f,0xb10f,0xb20f,0xb30f,0xb40f,0xb50f,
0xf808,0xc00e,0xb60f,0xb70f,0xb80f,0xb90f,0xba0f,0xbb0f,
0xbc0f,0xbd0f,0xf908,0xbe0f,0xbf0f,0xc00f,0xc10f,0xc20f,
0xc30f,0xc40f,0xc50f,0xc60f,0xfa08,0xc70f,0xc80f,0xc90f,
0xca0f,0xcb0f,0xcc0f,0xcd0f,0xce0f,0xcf0f,0xf909,0xd00f,
0xd10f,0xd20f,0xd30f,0xd40f,0xd50f,0xd60f,0xd70f,0xd80f,
0xfa09,0xd90f,0xda0f,0xdb0f,0xdc0f,0xdd0f,0xde0f,0xdf0f,
0xe00f,0xe10f,0xf80a,0xe20f,0xe30f,0xe40f,0xe50f,0xe60f,
0xe70f,0xe80f,0xe90f,0xea0f,0xeb0f,0xec0f,0xed0f,0xee0f,
0xef0f,0xf00f,0xf10f,0xf20f,0xf30f,0xf40f,0xf50f,0xf60f,
0xf70f,0xf80f,0xf90f,0xfa0f,0xfb0f,0xfc0f,0xfd0f,0xfe0f,
0x0a03,0xf90a,0xff0f,0xff0f,0xff0f,0xff0f,0xff0f,0xff0f,
0xd00f,0xd10f,0xd20f,0xd30f,0xd40f,0xd50f,0xd60f,0xd70f,
0x0101,0x0402,0x0a03,0x1804,0x1904,0x3805,0x7806,0xf408,
0xf609,0xf40b,0x0b03,0x3905,0xf607,0xf508,0xf60a,0xf50b,
0x880f,0x890f,0x8a0f,0x8b0f,0x1a04,0xf707,0xf709,0xf60b,
0xc20e,0x8c0f,0x8d0f,0x8e0f,0x8f0f,0x900f,0x1b04,0xf807,
0xf809,0xf70b,0x910f,0x920f,0x930f,0x940f,0x950f,0x960f,
0x3a05,0xf608,0x970f,0x980f,0x990f,0x9a0f,0x9b0f,0x9c0f,
0x9d0f,0x9e0f,0x3b05,0xf909,0x9f0f,0xa00f,0xa10f,0xa20f,
0xa30f,0xa40f,0xa50f,0xa60f,0x7906,0xf70a,0xa70f,0xa80f,
0xa90f,0xaa0f,0xab0f,0xac0f,0xad0f,0xae0f,0x7a06,0xf80a,
0xaf0f,0xb00f,0xb10f,0xb20f,0xb30f,0xb40f,0xb50f,0xb60f,
0xf907,0xb70f,0xb80f,0xb90f,0xba0f,0xbb0f,0xbc0f,0xbd0f,
0xbe0f,0xbf0f,0xf708,0xc00f,0xc10f,0xc20f,0xc30f,0xc40f,
0xc50f,0xc60f,0xc70f,0xc80f,0xf808,0xc90f,0xca0f,0xcb0f,
0xcc0f,0xcd0f,0xce0f,0xcf0f,0xd00f,0xd10f,0xf908,0xd20f,
0xd30f,0xd40f,0xd50f,0xd60f,0xd70f,0xd80f,0xd90f,0xda0f,
0xfa08,0xdb0f,0xdc0f,0xdd0f,0xde0f,0xdf0f,0xe00f,0xe10f,
0xe20f,0xe30f,0xf90a,0xe40f,0xe50f,0xe60f,0xe70f,0xe80f,
0xe90f,0xea0f,0xeb0f,0xec0f,0xe00d,0xed0f,0xee0f,0xef0f,
0xf00f,0xf10f,0xf20f,0xf30f,0xf40f,0xf50f,0xc30e,0xf60f,
0xf70f,0xf80f,0xf90f,0xfa0f,0xfb0f,0xfc0f,0xfd0f,0xfe0f,
0x0001,0xfa09,0xff0f,0xff0f,0xff0f,0xff0f,0xff0f,0xff0f,
0xd00f,0xd10f,0xd20f,0xd30f,0xd40f,0xd50f,0xd60f,0xd70f,
0x0001,0x0202,0x0302,0x0402,0x0502,0x0602,0x0e03,0x1e04,
0x3e05,0x7e06,0xfe07,0xfe08,0xff0f,0xff0f,0xff0f,0xff0f,
0x0001,0x0101,0x0201,0x0602,0x0e03,0x1e04,0x3e05,0x7e06,
0xfe07,0xfe08,0xfe09,0xfe0a,0xff0f,0xff0f,0xff0f,0xff0f,
#endif
};
uint8 dhtable[] __attribute__ ((aligned(4)))={
0x00, 0x01, 0x05, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
0x08, 0x09, 0x0a, 0x0b, 0x00, 0x02, 0x01, 0x03,
0x03, 0x02, 0x04, 0x03, 0x05, 0x05, 0x04, 0x04,
0x00, 0x00, 0x01, 0x7d, 0x01, 0x02, 0x03, 0x00,
0x04, 0x11, 0x05, 0x12, 0x21, 0x31, 0x41, 0x06,
0x13, 0x51, 0x61, 0x07, 0x22, 0x71, 0x14, 0x32,
0x81, 0x91, 0xa1, 0x08, 0x23, 0x42, 0xb1, 0xc1,
0x15, 0x52, 0xd1, 0xf0, 0x24, 0x33, 0x62, 0x72,
0x82, 0x09, 0x0a, 0x16, 0x17, 0x18, 0x19, 0x1a,
0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x34, 0x35,
0x36, 0x37, 0x38, 0x39, 0x3a, 0x43, 0x44, 0x45,
0x46, 0x47, 0x48, 0x49, 0x4a, 0x53, 0x54, 0x55,
0x56, 0x57, 0x58, 0x59, 0x5a, 0x63, 0x64, 0x65,
0x66, 0x67, 0x68, 0x69, 0x6a, 0x73, 0x74, 0x75,
0x76, 0x77, 0x78, 0x79, 0x7a, 0x83, 0x84, 0x85,
0x86, 0x87, 0x88, 0x89, 0x8a, 0x92, 0x93, 0x94,
0x95, 0x96, 0x97, 0x98, 0x99, 0x9a, 0xa2, 0xa3,
0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xb2,
0xb3, 0xb4, 0xb5, 0xb6, 0xb7, 0xb8, 0xb9, 0xba,
0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9,
0xca, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, 0xd8,
0xd9, 0xda, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6,
0xe7, 0xe8, 0xe9, 0xea, 0xf1, 0xf2, 0xf3, 0xf4,
0xf5, 0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0x00, 0x03,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09,
0x0a, 0x0b, 0x00, 0x02, 0x01, 0x02, 0x04, 0x04,
0x03, 0x04, 0x07, 0x05, 0x04, 0x04, 0x00, 0x01,
0x02, 0x77, 0x00, 0x01, 0x02, 0x03, 0x11, 0x04,
0x05, 0x21, 0x31, 0x06, 0x12, 0x41, 0x51, 0x07,
0x61, 0x71, 0x13, 0x22, 0x32, 0x81, 0x08, 0x14,
0x42, 0x91, 0xa1, 0xb1, 0xc1, 0x09, 0x23, 0x33,
0x52, 0xf0, 0x15, 0x62, 0x72, 0xd1, 0x0a, 0x16,
0x24, 0x34, 0xe1, 0x25, 0xf1, 0x17, 0x18, 0x19,
0x1a, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x35, 0x36,
0x37, 0x38, 0x39, 0x3a, 0x43, 0x44, 0x45, 0x46,
0x47, 0x48, 0x49, 0x4a, 0x53, 0x54, 0x55, 0x56,
0x57, 0x58, 0x59, 0x5a, 0x63, 0x64, 0x65, 0x66,
0x67, 0x68, 0x69, 0x6a, 0x73, 0x74, 0x75, 0x76,
0x77, 0x78, 0x79, 0x7a, 0x82, 0x83, 0x84, 0x85,
0x86, 0x87, 0x88, 0x89, 0x8a, 0x92, 0x93, 0x94,
0x95, 0x96, 0x97, 0x98, 0x99, 0x9a, 0xa2, 0xa3,
0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xb2,
0xb3, 0xb4, 0xb5, 0xb6, 0xb7, 0xb8, 0xb9, 0xba,
0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9,
0xca, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, 0xd8,
0xd9, 0xda, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7,
0xe8, 0xe9, 0xea, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6,
0xf7, 0xf8, 0xf9, 0xfa,
};
const char quality_tab[DQT_NUM][128] __attribute__ ((aligned(4))) = {
// {
// 0x08, 0x06, 0x06, 0x07, 0x06, 0x05, 0x08, 0x07,
// 0x07, 0x07, 0x09, 0x09, 0x08, 0x0A, 0x0C, 0x14,
// 0x0D, 0x0C, 0x0B, 0x0B, 0x0C, 0x19, 0x12, 0x13,
// 0x0F, 0x14, 0x1D, 0x1A, 0x1F, 0x1E, 0x1D, 0x1A,
// 0x1C, 0x1C, 0x20, 0x24, 0x2E, 0x27, 0x20, 0x22,
// 0x2C, 0x23, 0x1C, 0x1C, 0x28, 0x37, 0x29, 0x2C,
// 0x30, 0x31, 0x34, 0x34, 0x34, 0x1F, 0x27, 0x39,
// 0x3D, 0x38, 0x32, 0x3C, 0x2E, 0x33, 0x34, 0x32,
// 0x09, 0x09, 0x09, 0x0C, 0x0B, 0x0C, 0x18, 0x0D,
// 0x0D, 0x18, 0x32, 0x21, 0x1C, 0x21, 0x32, 0x32,
// 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32,
// 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32,
// 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32,
// 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32,
// 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32,
// 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32
// },
{
16, 10, 9, 16, 24, 38, 50, 60,
11, 11, 14, 18, 25, 55, 59, 53,
14, 12, 16, 24, 38, 55, 68, 54,
14, 17, 20, 28, 50, 85, 78, 60,
17, 20, 36, 54, 65, 106, 99, 74,
24, 34, 53, 62, 79, 100, 109, 89,
47, 62, 76, 85, 99, 117, 116, 98,
70, 89, 91, 95, 108, 97, 99, 96,
17, 17, 24, 45, 96, 96, 96, 96,
17, 20, 25, 63, 96, 96, 96, 96,
24, 25, 54, 96, 96, 96, 96, 96,
45, 63, 96, 96, 96, 96, 96, 96,
96, 96, 96, 96, 96, 96, 96, 96,
96, 96, 96, 96, 96, 96, 96, 96,
96, 96, 96, 96, 96, 96, 96, 96,
96, 96, 96, 96, 96, 96, 96, 96
},
{
//Quantizaton table 0(luminance table) addr=0x20000 len=64 default:QT45
18, 12, 11, 18, 27, 44, 57, 68,
13, 13, 16, 21, 29, 64, 67, 61,
16, 14, 18, 27, 44, 63, 77, 62,
16, 19, 24, 32, 57, 97, 89, 69,
20, 24, 41, 62, 75, 121, 114, 85,
27, 39, 61, 71, 90, 115, 125, 102,
54, 71, 87, 97, 114, 134, 133, 112,
80, 102, 105, 109, 124, 111, 114, 110,
//Quantizaton table 1 (chrominance table) addr=0x20040 len = 64 default:QT45
19, 20, 27, 52, 110, 110, 110, 110,
20, 23, 29, 73, 110, 110, 110, 110,
27, 29, 62, 110, 110, 110, 110, 110,
52, 73, 110, 110, 110, 110, 110, 110,
110, 110, 110, 110, 110, 110, 110, 110,
110, 110, 110, 110, 110, 110, 110, 110,
110, 110, 110, 110, 110, 110, 110, 110,
110, 110, 110, 110, 110, 110, 110, 110
},
{
20, 14, 13, 20, 30, 50, 64, 76,
15, 15, 18, 24, 33, 73, 75, 69,
18, 16, 20, 30, 50, 71, 86, 70,
18, 21, 28, 36, 64, 109, 100, 78,
23, 28, 46, 70, 85, 136, 129, 96,
30, 44, 69, 80, 101, 130, 141, 115,
61, 80, 98, 109, 129, 151, 150, 126,
90, 115, 119, 123, 140, 125, 129, 124,
21, 23, 30, 59, 124, 124, 124, 124,
23, 26, 33, 83, 124, 124, 124, 124,
30, 33, 70, 124, 124, 124, 124, 124,
59, 83, 124, 124, 124, 124, 124, 124,
124, 124, 124, 124, 124, 124, 124, 124,
124, 124, 124, 124, 124, 124, 124, 124,
124, 124, 124, 124, 124, 124, 124, 124,
124, 124, 124, 124, 124, 124, 124, 124
},
{
23, 16, 14, 23, 34, 57, 72, 87,
17, 17, 20, 27, 37, 82, 85, 78,
20, 18, 23, 34, 57, 81, 98, 80,
20, 24, 31, 41, 72, 124, 114, 88,
26, 31, 53, 80, 97, 155, 146, 109,
34, 50, 78, 91, 115, 148, 160, 131,
70, 91, 111, 124, 146, 172, 170, 143,
102, 131, 135, 139, 159, 142, 146, 141,
24, 26, 34, 67, 141, 141, 141, 141,
26, 30, 37, 94, 141, 141, 141, 141,
34, 37, 80, 141, 141, 141, 141, 141,
67, 94, 141, 141, 141, 141, 141, 141,
141, 141, 141, 141, 141, 141, 141, 141,
141, 141, 141, 141, 141, 141, 141, 141,
141, 141, 141, 141, 141, 141, 141, 141,
141, 141, 141, 141, 141, 141, 141, 141
},
{
27, 18, 17, 27, 40, 66, 85, 101,
20, 20, 23, 32, 43, 96, 100, 91,
23, 22, 27, 40, 66, 95, 115, 93,
23, 28, 37, 48, 85, 144, 133, 103,
30, 37, 61, 93, 113, 181, 171, 128,
40, 58, 91, 106, 134, 173, 188, 153,
81, 106, 129, 144, 171, 201, 199, 168,
120, 153, 158, 163, 186, 166, 171, 164,
28, 30, 40, 78, 164, 164, 164, 164,
30, 35, 43, 110, 164, 164, 164, 164,
40, 43, 93, 164, 164, 164, 164, 164,
78, 110, 164, 164, 164, 164, 164, 164,
164, 164, 164, 164, 164, 164, 164, 164,
164, 164, 164, 164, 164, 164, 164, 164,
164, 164, 164, 164, 164, 164, 164, 164,
164, 164, 164, 164, 164, 164, 164, 164
},
{
32, 22, 20, 32, 48, 80, 102, 122,
24, 24, 28, 38, 52, 116, 120, 110,
28, 26, 32, 48, 80, 114, 138, 112,
28, 34, 44, 58, 102, 174, 160, 124,
36, 44, 74, 112, 136, 218, 206, 154,
48, 70, 110, 128, 162, 208, 226, 184,
98, 128, 156, 174, 206, 242, 240, 202,
144, 184, 190, 196, 224, 200, 206, 198,
34, 36, 48, 94, 198, 198, 198, 198,
36, 42, 52, 132, 198, 198, 198, 198,
48, 52, 112, 198, 198, 198, 198, 198,
94, 132, 198, 198, 198, 198, 198, 198,
198, 198, 198, 198, 198, 198, 198, 198,
198, 198, 198, 198, 198, 198, 198, 198,
198, 198, 198, 198, 198, 198, 198, 198,
198, 198, 198, 198, 198, 198, 198, 198
},
{
39, 26, 24, 39, 58, 97, 124, 148,
29, 29, 34, 46, 63, 141, 146, 134,
34, 31, 39, 58, 97, 138, 168, 136,
34, 41, 53, 70, 124, 212, 195, 151,
43, 53, 90, 136, 165, 255, 251, 187,
58, 85, 134, 156, 197, 253, 255, 224,
119, 156, 190, 212, 251, 255, 255, 246,
175, 224, 231, 238, 225, 243, 251, 241,
41, 43, 58, 114, 241, 241, 241, 241,
43, 51, 63, 160, 241, 241, 241, 241,
58, 63, 136, 241, 241, 241, 241, 241,
114, 160, 241, 241, 241, 241, 241, 241,
241, 241, 241, 241, 241, 241, 241, 241,
241, 241, 241, 241, 241, 241, 241, 241,
241, 241, 241, 241, 241, 241, 241, 241,
241, 241, 241, 241, 241, 241, 241, 241
},
{
47, 31, 29, 47, 70, 118, 151, 180,
35, 35, 41, 56, 76, 171, 177, 163,
41, 37, 47, 70, 118, 168, 204, 165,
41, 49, 64, 85, 151, 255, 237, 184,
52, 64, 109, 165, 201, 255, 255, 227,
70, 103, 163, 190, 240, 255, 255, 255,
145, 190, 231, 255, 255, 255, 255, 255,
213, 255, 255, 255, 255, 255, 255, 255,
49, 52, 70, 138, 255, 255, 255, 255,
52, 62, 76, 195, 255, 255, 255, 255,
70, 76, 165, 255, 255, 255, 255, 255,
138, 195, 255, 255, 255, 255, 255, 255,
255, 255, 255, 255, 255, 255, 255, 255,
255, 255, 255, 255, 255, 255, 255, 255,
255, 255, 255, 255, 255, 255, 255, 255,
255, 255, 255, 255, 255, 255, 255, 255
},
{
57, 37, 35, 57, 85, 143, 184, 219,
42, 42, 49, 68, 92, 208, 215, 198,
49, 45, 57, 85, 143, 204, 248, 201,
49, 59, 78, 103, 184, 255, 255, 224,
63, 78, 132, 201, 244, 255, 255, 255,
85, 125, 198, 231, 255, 255, 255, 255,
176, 231, 255, 255, 255, 255, 255, 255,
255, 255, 255, 255, 255, 255, 255, 255,
59, 63, 85, 168, 255, 255, 255, 255,
63, 75, 92, 237, 255, 255, 255, 255,
85, 92, 201, 255, 255, 255, 255, 255,
168, 237, 255, 255, 255, 255, 255, 255,
255, 255, 255, 255, 255, 255, 255, 255,
255, 255, 255, 255, 255, 255, 255, 255,
255, 255, 255, 255, 255, 255, 255, 255,
255, 255, 255, 255, 255, 255, 255, 255
},
{
69, 45, 42, 69, 103, 174, 224, 255,
51, 51, 59, 82, 112, 253, 255, 241,
59, 54, 69, 103, 174, 248, 255, 244,
59, 71, 95, 125, 224, 255, 255, 255,
76, 95, 160, 244, 255, 255, 255, 255,
103, 152, 241, 255, 255, 255, 255, 255,
214, 255, 255, 255, 255, 255, 255, 255,
255, 255, 255, 255, 255, 255, 255, 255,
71, 76, 103, 204, 255, 255, 255, 255,
76, 91, 112, 255, 255, 255, 255, 255,
103, 112, 244, 255, 255, 255, 255, 255,
204, 255, 255, 255, 255, 255, 255, 255,
255, 255, 255, 255, 255, 255, 255, 255,
255, 255, 255, 255, 255, 255, 255, 255,
255, 255, 255, 255, 255, 255, 255, 255,
255, 255, 255, 255, 255, 255, 255, 255
},
{
84, 54, 51, 84, 125, 212, 255, 255,
62, 62, 71, 99, 136, 255, 255, 255,
71, 65, 84, 125, 212, 255, 255, 255,
71, 86, 115, 152, 255, 255, 255, 255,
92, 115, 195, 255, 255, 255, 255, 255,
125, 185, 255, 255, 255, 255, 255, 255,
255, 255, 255, 255, 255, 255, 255, 255,
255, 255, 255, 255, 255, 255, 255, 255,
86, 92, 125, 248, 255, 255, 255, 255,
92, 110, 136, 255, 255, 255, 255, 255,
125, 136, 255, 255, 255, 255, 255, 255,
248, 255, 255, 255, 255, 255, 255, 255,
255, 255, 255, 255, 255, 255, 255, 255,
255, 255, 255, 255, 255, 255, 255, 255,
255, 255, 255, 255, 255, 255, 255, 255,
255, 255, 255, 255, 255, 255, 255, 255
},
{
102, 65, 62, 102, 152, 255, 255, 255,
75, 75, 86, 120, 165, 255, 255, 255,
86, 79, 102, 152, 255, 255, 255, 255,
86, 104, 140, 185, 255, 255, 255, 255,
112, 140, 237, 255, 255, 255, 255, 255,
152, 225, 255, 255, 255, 255, 255, 255,
255, 255, 255, 255, 255, 255, 255, 255,
255, 255, 255, 255, 255, 255, 255, 255,
104, 112, 152, 255, 255, 255, 255, 255,
112, 134, 165, 255, 255, 255, 255, 255,
152, 165, 255, 255, 255, 255, 255, 255,
255, 255, 255, 255, 255, 255, 255, 255,
255, 255, 255, 255, 255, 255, 255, 255,
255, 255, 255, 255, 255, 255, 255, 255,
255, 255, 255, 255, 255, 255, 255, 255,
255, 255, 255, 255, 255, 255, 255, 255
}
};
#if 0
char quality0[128] __attribute__ ((aligned(4)))= {
0x08, 0x06, 0x06, 0x07, 0x06, 0x05, 0x08, 0x07,
0x07, 0x07, 0x09, 0x09, 0x08, 0x0A, 0x0C, 0x14,
0x0D, 0x0C, 0x0B, 0x0B, 0x0C, 0x19, 0x12, 0x13,
0x0F, 0x14, 0x1D, 0x1A, 0x1F, 0x1E, 0x1D, 0x1A,
0x1C, 0x1C, 0x20, 0x24, 0x2E, 0x27, 0x20, 0x22,
0x2C, 0x23, 0x1C, 0x1C, 0x28, 0x37, 0x29, 0x2C,
0x30, 0x31, 0x34, 0x34, 0x34, 0x1F, 0x27, 0x39,
0x3D, 0x38, 0x32, 0x3C, 0x2E, 0x33, 0x34, 0x32,
0x09, 0x09, 0x09, 0x0C, 0x0B, 0x0C, 0x18, 0x0D,
0x0D, 0x18, 0x32, 0x21, 0x1C, 0x21, 0x32, 0x32,
0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32,
0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32,
0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32,
0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32,
0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32,
0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32,
};
/*QT45*/
char quality1[128] __attribute__ ((aligned(4)))= {
//Quantizaton table 0(luminance table) addr=0x20000 len=64 default:QT45
18, 12, 11, 18, 27, 44, 57, 68,
13, 13, 16, 21, 29, 64, 67, 61,
16, 14, 18, 27, 44, 63, 77, 62,
16, 19, 24, 32, 57, 97, 89, 69,
20, 24, 41, 62, 75, 121, 114, 85,
27, 39, 61, 71, 90, 115, 125, 102,
54, 71, 87, 97, 114, 134, 133, 112,
80, 102, 105, 109, 124, 111, 114, 110,
//Quantizaton table 1 (chrominance table) addr=0x20040 len = 64 default:QT45
19, 20, 27, 52, 110, 110, 110, 110,
20, 23, 29, 73, 110, 110, 110, 110,
27, 29, 62, 110, 110, 110, 110, 110,
52, 73, 110, 110, 110, 110, 110, 110,
110, 110, 110, 110, 110, 110, 110, 110,
110, 110, 110, 110, 110, 110, 110, 110,
110, 110, 110, 110, 110, 110, 110, 110,
110, 110, 110, 110, 110, 110, 110, 110,
};
/*QT40*/
char quality2[128] __attribute__ ((aligned(4)))= {
20, 14, 13, 20, 30, 50, 64, 76,
15, 15, 18, 24, 33, 73, 75, 69,
18, 16, 20, 30, 50, 71, 86, 70,
18, 21, 28, 36, 64, 109, 100, 78,
23, 28, 46, 70, 85, 136, 129, 96,
30, 44, 69, 80, 101, 130, 141, 115,
61, 80, 98, 109, 129, 151, 150, 126,
90, 115, 119, 123, 140, 125, 129, 124,
21, 23, 30, 59, 124, 124, 124, 124,
23, 26, 33, 83, 124, 124, 124, 124,
30, 33, 70, 124, 124, 124, 124, 124,
59, 83, 124, 124, 124, 124, 124, 124,
124, 124, 124, 124, 124, 124, 124, 124,
124, 124, 124, 124, 124, 124, 124, 124,
124, 124, 124, 124, 124, 124, 124, 124,
124, 124, 124, 124, 124, 124, 124, 124,
};
/*QT35*/
char quality3[128] __attribute__ ((aligned(4)))= {
23, 16, 14, 23, 34, 57, 72, 87,
17, 17, 20, 27, 37, 82, 85, 78,
20, 18, 23, 34, 57, 81, 98, 80,
20, 24, 31, 41, 72, 124, 114, 88,
26, 31, 53, 80, 97, 155, 146, 109,
34, 50, 78, 91, 115, 148, 160, 131,
70, 91, 111, 124, 146, 172, 170, 143,
102, 131, 135, 139, 159, 142, 146, 141,
24, 26, 34, 67, 141, 141, 141, 141,
26, 30, 37, 94, 141, 141, 141, 141,
34, 37, 80, 141, 141, 141, 141, 141,
67, 94, 141, 141, 141, 141, 141, 141,
141, 141, 141, 141, 141, 141, 141, 141,
141, 141, 141, 141, 141, 141, 141, 141,
141, 141, 141, 141, 141, 141, 141, 141,
141, 141, 141, 141, 141, 141, 141, 141,
};
/*QT30*/
char quality4[128] __attribute__ ((aligned(4)))= {
27, 18, 17, 27, 40, 66, 85, 101,
20, 20, 23, 32, 43, 96, 100, 91,
23, 22, 27, 40, 66, 95, 115, 93,
23, 28, 37, 48, 85, 144, 133, 103,
30, 37, 61, 93, 113, 181, 171, 128,
40, 58, 91, 106, 134, 173, 188, 153,
81, 106, 129, 144, 171, 201, 199, 168,
120, 153, 158, 163, 186, 166, 171, 164,
28, 30, 40, 78, 164, 164, 164, 164,
30, 35, 43, 110, 164, 164, 164, 164,
40, 43, 93, 164, 164, 164, 164, 164,
78, 110, 164, 164, 164, 164, 164, 164,
164, 164, 164, 164, 164, 164, 164, 164,
164, 164, 164, 164, 164, 164, 164, 164,
164, 164, 164, 164, 164, 164, 164, 164,
164, 164, 164, 164, 164, 164, 164, 164,
};
/*QT25*/
char quality5[128] __attribute__ ((aligned(4)))= {
32, 22, 20, 32, 48, 80, 102, 122,
24, 24, 28, 38, 52, 116, 120, 110,
28, 26, 32, 48, 80, 114, 138, 112,
28, 34, 44, 58, 102, 174, 160, 124,
36, 44, 74, 112, 136, 218, 206, 154,
48, 70, 110, 128, 162, 208, 226, 184,
98, 128, 156, 174, 206, 242, 240, 202,
144, 184, 190, 196, 224, 200, 206, 198,
34, 36, 48, 94, 198, 198, 198, 198,
36, 42, 52, 132, 198, 198, 198, 198,
48, 52, 112, 198, 198, 198, 198, 198,
94, 132, 198, 198, 198, 198, 198, 198,
198, 198, 198, 198, 198, 198, 198, 198,
198, 198, 198, 198, 198, 198, 198, 198,
198, 198, 198, 198, 198, 198, 198, 198,
198, 198, 198, 198, 198, 198, 198, 198,
};
#endif
#endif