📄 jpeg_enc.c
字号:
#ifndef LINUX DMA_COMMAND_cpu[0]=InterCPUcode; //DMA_COMMAND_cpu[1]=CPU_BASE_ADDRESS; DMA_COMMAND_cpu[1]=0; DMA_COMMAND_cpu[2]=0x0; //DMA_COMMAND_cpu[3]=0x0<<26 | 0x8<<20 | 0x6c1; DMA_COMMAND_cpu[3]=0x0<<26 | 0x8<<20 | (sizeof(InterCPUcode) / sizeof(unsigned int)); while((pmdma->Status & 0x1) == 0) //DMA process run {} pmdma->CCA = (((unsigned int) DMA_COMMAND_cpu)&0xfffffff0) | 0x2; pmdma->Control = 0xa<<20 | 0x1<<26; //start DMA #else memcpy (ptParam->pu32BaseAddr, InterCPUcode, sizeof(InterCPUcode)); #endif #endif#ifdef Internal_CPU switch(MCU_comb){ case JCS_yuv420: //Y DMA_COMMAND_local[1] = 8<<28 | (((unsigned int)(-15))&0xff)<<20 | 2<<16 | mDMALmaddr(cur_b0_div2); DMA_COMMAND_local[3] = 1<<28 | 0x1<<26 | (0xa << 20) | (0xd << 16) | 0x40; //U DMA_COMMAND_local[5] = mDMALmaddr(cur_b4_div2) ; DMA_COMMAND_local[7] = 0x1<<26 | (0xa << 20) | (0x1 << 16) | 0x10; //V DMA_COMMAND_local[9] = mDMALmaddr(cur_b5_div2) | 0x0; DMA_COMMAND_local[11] =(0x8 << 20) | (0x1 << 16) | 0x10; //Y1 DMA_COMMAND_local[41] = 8<<28 | (((unsigned int)(-15))&0xff)<<20 | 2<<16 | mDMALmaddr(cur_b0_div2+stride_MCU_div2); DMA_COMMAND_local[43] = 1<<28 | 0x1<<26 | (0xa << 20) | (0xd << 16) | 0x40; //U1 DMA_COMMAND_local[45] = mDMALmaddr(cur_b4_div2+stride_MCU_div2); DMA_COMMAND_local[47] = 0x1<<26 | (0xa << 20) | (0x1 << 16) | 0x10; //V1 DMA_COMMAND_local[49] = mDMALmaddr(cur_b5_div2+stride_MCU_div2) ; DMA_COMMAND_local[51] = (0x8 << 20) | (0x1 << 16) | 0x10; break; case JCS_yuv422: //Y DMA_COMMAND_local[1] = (0x0<<28) | (0xD1<<20) | (0x4<<16) | ((unsigned int) (cur_b0_div2) ) | 0x0; DMA_COMMAND_local[3] = (0x0<<28) | (0xa<<20) | (0x9<<16) | 0x40 | 0x1<<26; //U DMA_COMMAND_local[5] = (0x0<<28) | (0xF1<<20) | (0x2<<16) | ((unsigned int) (cur_b4_div2) ) | 0x0; DMA_COMMAND_local[7] = (0x0<<28) | (0xa<<20) | (0x9<<16) | 0x20 | 0x1<<26; //V DMA_COMMAND_local[9] = (0x0<<28) | (0xF1<<20) | (0x2<<16) | ((unsigned int) (cur_b6_div2) ) | 0x0; DMA_COMMAND_local[11] = (0x0<<28) | (0x8<<20) | (0x9<<16) | 0x20; //Y1 DMA_COMMAND_local[41] = (0x0<<28) | (0xD1<<20) | (0x4<<16) | ((unsigned int) (cur_b0_div2+stride_MCU_div2) ) | 0x0; DMA_COMMAND_local[43] = (0x0<<28) | (0xa<<20) | (0x9<<16) | 0x40 | 0x1<<26; //U1 DMA_COMMAND_local[45] = (0x0<<28) | (0xF1<<20) | (0x2<<16) | ((unsigned int) (cur_b4_div2+stride_MCU_div2) ) | 0x0; DMA_COMMAND_local[47] = (0x0<<28) | (0xa<<20) | (0x9<<16) | 0x20 | 0x1<<26; //V1 DMA_COMMAND_local[49] = (0x0<<28) | (0xF1<<20) | (0x2<<16) | ((unsigned int) (cur_b6_div2+stride_MCU_div2) ) | 0x0; DMA_COMMAND_local[51] = (0x0<<28) | (0x8<<20) | (0x9<<16) | 0x20; break; case JCS_yuv211: //211 //Y DMA_COMMAND_local[1] = (0x0<<28) | (0xF1<<20) | (0x2<<16) | ((unsigned int) (cur_b0_div2) ) | 0x0; DMA_COMMAND_local[3] = (0x0<<28) | (0xa<<20) | (0x9<<16) | 0x20 | 0x1<<26; //U DMA_COMMAND_local[5] = (0x0<<28) | (0x0<<20) | (0x0<<16) | ((unsigned int) (cur_b2_div2) ) | 0x0; DMA_COMMAND_local[7] = (0x0<<28) | (0xa<<20) | (0x1<<16) | 0x10 | 0x1<<26; //V DMA_COMMAND_local[9] = (0x0<<28) | (0x0<<20) | (0x0<<16) | ((unsigned int) (cur_b3_div2) ) | 0x0; DMA_COMMAND_local[11] = (0x0<<28) | (0x8<<20) | (0x1<<16) | 0x10; //Y1 DMA_COMMAND_local[41] = (0x0<<28) | (0xF1<<20) | (0x2<<16) | ((unsigned int) (cur_b0_div2+stride_MCU_div2) ) | 0x0; DMA_COMMAND_local[43] = (0x0<<28) | (0xa<<20) | (0x9<<16) | 0x20 | 0x1<<26; //U1 DMA_COMMAND_local[45] = (0x0<<28) | (0x0<<20) | (0x0<<16) | ((unsigned int) (cur_b2_div2+stride_MCU_div2) ) | 0x0; DMA_COMMAND_local[47] = (0x0<<28) | (0xa<<20) | (0x1<<16) | 0x10 | 0x1<<26; //V1 DMA_COMMAND_local[49] = (0x0<<28) | (0x0<<20) | (0x0<<16) | ((unsigned int) (cur_b3_div2+stride_MCU_div2) ) | 0x0; DMA_COMMAND_local[51] = (0x0<<28) | (0x8<<20) | (0x1<<16) | 0x10; break; case JCS_yuv333: //Y DMA_COMMAND_local[1] = (0x0<<28) | (0xE1<<20) | (0x3<<16) | ((unsigned int) (cur_b0_div2) ) | 0x0; DMA_COMMAND_local[3] = (0x0<<28) | (0xa<<20) | (0x9<<16) | 0x30 | 0x1<<26; //U DMA_COMMAND_local[5] = (0x0<<28) | (0xE1<<20) | (0x3<<16) | ((unsigned int) (cur_b3_div2) ) | 0x0; DMA_COMMAND_local[7] = (0x0<<28) | (0xa<<20) | (0x9<<16) | 0x30 | 0x1<<26; //V DMA_COMMAND_local[9] = (0x0<<28) | (0xE1<<20) | (0x3<<16) | ((unsigned int) (cur_b6_div2) ) | 0x0; DMA_COMMAND_local[11] = (0x0<<28) | (0x8<<20) | (0x9<<16) | 0x30; //Y1 DMA_COMMAND_local[41] = (0x0<<28) | (0xE1<<20) | (0x3<<16) | ((unsigned int) (cur_b0_div2+stride_MCU_div2)) | 0x0; DMA_COMMAND_local[43] = (0x0<<28) | (0xa<<20) | (0x9<<16) | 0x30 | 0x1<<26; //U1 DMA_COMMAND_local[45] = (0x0<<28) | (0xE1<<20) | (0x3<<16) | ((unsigned int) (cur_b3_div2+stride_MCU_div2)) | 0x0; DMA_COMMAND_local[47] = (0x0<<28) | (0xa<<20) | (0x9<<16) | 0x30 | 0x1<<26; //V1 DMA_COMMAND_local[49] = (0x0<<28) | (0xE1<<20) | (0x3<<16) | ((unsigned int) (cur_b6_div2+stride_MCU_div2)) | 0x0; DMA_COMMAND_local[51] = (0x0<<28) | (0x8<<20) | (0x9<<16) | 0x30; break; case JCS_yuv222: //Y DMA_COMMAND_local[1] = (0x0<<28) | (0xF1<<20) | (0x2<<16) | ((unsigned int) (cur_b0_div2) ) | 0x0; DMA_COMMAND_local[3] = (0x0<<28) | (0xa<<20) | (0x9<<16) | 0x20 | 0x1<<26; //U DMA_COMMAND_local[5] = (0x0<<28) | (0xF1<<20) | (0x2<<16) | ((unsigned int) (cur_b2_div2) ) | 0x0; DMA_COMMAND_local[7] = (0x0<<28) | (0xa<<20) | (0x9<<16) | 0x20 | 0x1<<26; //V DMA_COMMAND_local[9] = (0x0<<28) | (0xF1<<20) | (0x2<<16) | ((unsigned int) (cur_b4_div2) ) | 0x0; DMA_COMMAND_local[11] = (0x0<<28) | (0x8<<20) | (0x9<<16) | 0x20; //Y1 DMA_COMMAND_local[41] = (0x0<<28) | (0xF1<<20) | (0x2<<16) | ((unsigned int) (cur_b0_div2+stride_MCU_div2) ) | 0x0; DMA_COMMAND_local[43] = (0x0<<28) | (0xa<<20) | (0x9<<16) | 0x20 | 0x1<<26; //U1 DMA_COMMAND_local[45] = (0x0<<28) | (0xF1<<20) | (0x2<<16) | ((unsigned int) (cur_b2_div2+stride_MCU_div2) ) | 0x0; DMA_COMMAND_local[47] = (0x0<<28) | (0xa<<20) | (0x9<<16) | 0x20 | 0x1<<26; //V1 DMA_COMMAND_local[49] = (0x0<<28) | (0xF1<<20) | (0x2<<16) | ((unsigned int) (cur_b4_div2+stride_MCU_div2) ) | 0x0; DMA_COMMAND_local[51] = (0x0<<28) | (0x8<<20) | (0x9<<16) | 0x20; break; case JCS_yuv111: //Y DMA_COMMAND_local[1] = (0x0<<28) | (0x0<<20) | (0x0<<16) | ((unsigned int) (cur_b0_div2) ) | 0x0; DMA_COMMAND_local[3] = (0x0<<28) | (0xa<<20) | (0x1<<16) | 0x10 | 0x1<<26; //U DMA_COMMAND_local[5] = (0x0<<28) | (0x0<<20) | (0x0<<16) | ((unsigned int) (cur_b1_div2) ) | 0x0; DMA_COMMAND_local[7] = (0x0<<28) | (0xa<<20) | (0x1<<16) | 0x10 | 0x1<<26; //V DMA_COMMAND_local[9] = (0x0<<28) | (0x0<<20) | (0x0<<16) | ((unsigned int) (cur_b2_div2) ) | 0x0; DMA_COMMAND_local[11] = (0x0<<28) | (0x8<<20) | (0x1<<16) | 0x10; //Y1 DMA_COMMAND_local[41] = (0x0<<28) | (0x0<<20) | (0x0<<16) | ((unsigned int) (cur_b0_div2+stride_MCU_div2)) | 0x0; DMA_COMMAND_local[43] = (0x0<<28) | (0xa<<20) | (0x1<<16) | 0x10 | 0x1<<26; //U1 DMA_COMMAND_local[45] = (0x0<<28) | (0x0<<20) | (0x0<<16) | ((unsigned int) (cur_b1_div2+stride_MCU_div2) ) | 0x0; DMA_COMMAND_local[47] = (0x0<<28) | (0xa<<20) | (0x1<<16) | 0x10 | 0x1<<26; //V1 DMA_COMMAND_local[49] = (0x0<<28) | (0x0<<20) | (0x0<<16) | ((unsigned int) (cur_b2_div2+stride_MCU_div2) ) | 0x0; DMA_COMMAND_local[51] = (0x0<<28) | (0x8<<20) | (0x1<<16) | 0x10; break; default: //JCS_yuv420 //Y DMA_COMMAND_local[1] = 8<<28 | (((unsigned int)(-15))&0xff)<<20 | 2<<16 | mDMALmaddr(cur_b0_div2); DMA_COMMAND_local[3] = 1<<28 | 0x1<<26 | (0xa << 20) | (0xd << 16) | 0x40; //U DMA_COMMAND_local[5] = mDMALmaddr(cur_b4_div2) ; DMA_COMMAND_local[7] = 0x1<<26 | (0xa << 20) | (0x1 << 16) | 0x10; //V DMA_COMMAND_local[9] = mDMALmaddr(cur_b5_div2) | 0x0; DMA_COMMAND_local[11] =(0x8 << 20) | (0x1 << 16) | 0x10; //Y1 DMA_COMMAND_local[41] = 8<<28 | (((unsigned int)(-15))&0xff)<<20 | 2<<16 | mDMALmaddr(cur_b0_div2+stride_MCU_div2); DMA_COMMAND_local[43] = 1<<28 | 0x1<<26 | (0xa << 20) | (0xd << 16) | 0x40; //U1 DMA_COMMAND_local[45] = mDMALmaddr(cur_b4_div2+stride_MCU_div2); DMA_COMMAND_local[47] = 0x1<<26 | (0xa << 20) | (0x1 << 16) | 0x10; //V1 DMA_COMMAND_local[49] = mDMALmaddr(cur_b5_div2+stride_MCU_div2) ; DMA_COMMAND_local[51] = (0x8 << 20) | (0x1 << 16) | 0x10; break; } #else //not internal CPU switch(MCU_comb){ case JCS_yuv420: //Y DMA_COMMAND_local[1] = 8<<28 | (((unsigned int)(-15))&0xff)<<20 | 2<<16 | mDMALmaddr(cur_b0); DMA_COMMAND_local[3] = 1<<28 | 0x1<<26 | (0xa << 20) | (0xd << 16) | 0x40; //U DMA_COMMAND_local[5] = mDMALmaddr(cur_b4) ; DMA_COMMAND_local[7] = 0x1<<26 | (0xa << 20) | (0x1 << 16) | 0x10; //V DMA_COMMAND_local[9] = mDMALmaddr(cur_b5) | 0x0; DMA_COMMAND_local[11] =(0x8 << 20) | (0x1 << 16) | 0x10; //Y1 DMA_COMMAND_local[41] = 8<<28 | (((unsigned int)(-15))&0xff)<<20 | 2<<16 | mDMALmaddr(cur_b0+stride_MCU); DMA_COMMAND_local[43] = 1<<28 | 0x1<<26 | (0xa << 20) | (0xd << 16) | 0x40; //U1 DMA_COMMAND_local[45] = mDMALmaddr(cur_b4+stride_MCU); DMA_COMMAND_local[47] = 0x1<<26 | (0xa << 20) | (0x1 << 16) | 0x10; //V1 DMA_COMMAND_local[49] = mDMALmaddr(cur_b5+stride_MCU) ; DMA_COMMAND_local[51] = (0x8 << 20) | (0x1 << 16) | 0x10; break; case JCS_yuv422: //Y DMA_COMMAND_local[1] = (0x0<<28) | (0xD1<<20) | (0x4<<16) | ((unsigned int) (cur_b0) ) | 0x0; DMA_COMMAND_local[3] = (0x0<<28) | (0xa<<20) | (0x9<<16) | 0x40 | 0x1<<26; //U DMA_COMMAND_local[5] = (0x0<<28) | (0xF1<<20) | (0x2<<16) | ((unsigned int) (cur_b4) ) | 0x0; DMA_COMMAND_local[7] = (0x0<<28) | (0xa<<20) | (0x9<<16) | 0x20 | 0x1<<26; //V DMA_COMMAND_local[9] = (0x0<<28) | (0xF1<<20) | (0x2<<16) | ((unsigned int) (cur_b6) ) | 0x0; DMA_COMMAND_local[11] = (0x0<<28) | (0x8<<20) | (0x9<<16) | 0x20; //Y1 DMA_COMMAND_local[41] = (0x0<<28) | (0xD1<<20) | (0x4<<16) | ((unsigned int) (cur_b0+stride_MCU) ) | 0x0; DMA_COMMAND_local[43] = (0x0<<28) | (0xa<<20) | (0x9<<16) | 0x40 | 0x1<<26; //U1 DMA_COMMAND_local[45] = (0x0<<28) | (0xF1<<20) | (0x2<<16) | ((unsigned int) (cur_b4+stride_MCU) ) | 0x0; DMA_COMMAND_local[47] = (0x0<<28) | (0xa<<20) | (0x9<<16) | 0x20 | 0x1<<26; //V1 DMA_COMMAND_local[49] = (0x0<<28) | (0xF1<<20) | (0x2<<16) | ((unsigned int) (cur_b6+stride_MCU) ) | 0x0; DMA_COMMAND_local[51] = (0x0<<28) | (0x8<<20) | (0x9<<16) | 0x20; break; case JCS_yuv211: //211 //Y DMA_COMMAND_local[1] = (0x0<<28) | (0xF1<<20) | (0x2<<16) | ((unsigned int) (cur_b0) ) | 0x0; DMA_COMMAND_local[3] = (0x0<<28) | (0xa<<20) | (0x9<<16) | 0x20 | 0x1<<26; //U DMA_COMMAND_local[5] = (0x0<<28) | (0x0<<20) | (0x0<<16) | ((unsigned int) (cur_b2) ) | 0x0; DMA_COMMAND_local[7] = (0x0<<28) | (0xa<<20) | (0x1<<16) | 0x10 | 0x1<<26; //V DMA_COMMAND_local[9] = (0x0<<28) | (0x0<<20) | (0x0<<16) | ((unsigned int) (cur_b3) ) | 0x0; DMA_COMMAND_local[11] = (0x0<<28) | (0x8<<20) | (0x1<<16) | 0x10; //Y1 DMA_COMMAND_local[41] = (0x0<<28) | (0xF1<<20) | (0x2<<16) | ((unsigned int) (cur_b0+stride_MCU) ) | 0x0; DMA_COMMAND_local[43] = (0x0<<28) | (0xa<<20) | (0x9<<16) | 0x20 | 0x1<<26; //U1 DMA_COMMAND_local[45] = (0x0<<28) | (0x0<<20) | (0x0<<16) | ((unsigned int) (cur_b2+stride_MCU) ) | 0x0; DMA_COMMAND_local[47] = (0x0<<28) | (0xa<<20) | (0x1<<16) | 0x10 | 0x1<<26; //V1 DMA_COMMAND_local[49] = (0x0<<28) | (0x0<<20) | (0x0<<16) | ((unsigned int) (cur_b3+stride_MCU) ) | 0x0; DMA_COMMAND_local[51] = (0x0<<28) | (0x8<<20) | (0x1<<16) | 0x10; break; case JCS_yuv333: //Y DMA_COMMAND_local[1] = (0x0<<28) | (0xE1<<20) | (0x3<<16) | ((unsigned int) (cur_b0) ) | 0x0; DMA_COMMAND_local[3] = (0x0<<28) | (0xa<<20) | (0x9<<16) | 0x30 | 0x1<<26; //U DMA_COMMAND_local[5] = (0x0<<28) | (0xE1<<20) | (0x3<<16) | ((unsigned int) (cur_b3) ) | 0x0; DMA_COMMAND_local[7] = (0x0<<28) | (0xa<<20) | (0x9<<16) | 0x30 | 0x1<<26; //V DMA_COMMAND_local[9] = (0x0<<28) | (0xE1<<20) | (0x3<<16) | ((unsigned int) (cur_b6) ) | 0x0; DMA_COMMAND_local[11] = (0x0<<28) | (0x8<<20) | (0x9<<16) | 0x30; //Y1 DMA_COMMAND_local[41] = (0x0<<28) | (0xE1<<20) | (0x3<<16) | ((unsigned int) (cur_b0+stride_MCU)) | 0x0; DMA_COMMAND_local[43] = (0x0<<28) | (0xa<<20) | (0x9<<16) | 0x30 | 0x1<<26; //U1 DMA_COMMAND_local[45] = (0x0<<28) | (0xE1<<20) | (0x3<<16) | ((unsigned int) (cur_b3+stride_MCU)) | 0x0; DMA_COMMAND_local[47] = (0x0<<28) | (0xa<<20) | (0x9<<16) | 0x30 | 0x1<<26; //V1 DMA_COMMAND_local[49] = (0x0<<28) | (0xE1<<20) | (0x3<<16) | ((unsigned int) (cur_b6+stride_MCU)) | 0x0; DMA_COMMAND_local[51] = (0x0<<28) | (0x8<<20) | (0x9<<16) | 0x30; break; case JCS_yuv222: //Y DMA_COMMAND_local[1] = (0x0<<28) | (0xF1<<20) | (0x2<<16) | ((unsigned int) (cur_b0) ) | 0x0; DMA_COMMAND_local[3] = (0x0<<28) | (0xa<<20) | (0x9<<16) | 0x20 | 0x1<<26; //U DMA_COMMAND_local[5] = (0x0<<28) | (0xF1<<20) | (0x2<<16) | ((unsigned int) (cur_b2) ) | 0x0; DMA_COMMAND_local[7] = (0x0<<28) | (0xa<<20) | (0x9<<16) | 0x20 | 0x1<<26; //V DMA_COMMAND_local[9] = (0x0<<28) | (0xF1<<20) | (0x2<<16) | ((unsigned int) (cur_b4) ) | 0x0; DMA_COMMAND_local[11] = (0x0<<28) | (0x8<<20) | (0x9<<16) | 0x20; //Y1 DMA_COMMAND_local[41] = (0x0<<28) | (0xF1<<20) | (0x2<<16) | ((unsigned int) (cur_b0+stride_MCU) ) | 0x0; DMA_COMMAND_local[43] = (0x0<<28) | (0xa<<20) | (0x9<<16) | 0x20 | 0x1<<26; //U1 DMA_COMMAND_local[45] = (0x0<<28) | (0xF1<<20) | (0x2<<16) | ((unsigned int) (cur_b2+stride_MCU) ) | 0x0; DMA_COMMAND_local[47] = (0x0<<28) | (0xa<<20) | (0x9<<16) | 0x20 | 0x1<<26; //V1 DMA_COMMAND_local[49] = (0x0<<28) | (0xF1<<20) | (0x2<<16) | ((unsigned int) (cur_b4+stride_MCU) ) | 0x0; DMA_COMMAND_local[51] = (0x0<<28) | (0x8<<20) | (0x9<<16) | 0x20; break; case JCS_yuv111: //Y DMA_COMMAND_local[1] = (0x0<<28) | (0x0<<20) | (0x0<<16) | ((unsigned int) (cur_b0) ) | 0x0; DMA_COMMAND_local[3] = (0x0<<28) | (0xa<<20) | (0x1<<16) | 0x10 | 0x1<<26; //U DMA_COMMAND_local[5] = (0x0<<28) | (0x0<<20) | (0x0<<16) | ((unsigned int) (cur_b1) ) | 0x0; DMA_COMMAND_local[7] = (0x0<<28) | (0xa<<20) | (0x1<<16) | 0x10 | 0x1<<26; //V DMA_COMMAND_local[9] = (0x0<<28) | (0x0<<20) | (0x0<<16) | ((unsigned int) (cur_b2) ) | 0x0; DMA_COMMAND_local[11] = (0x0<<28) | (0x8<<20) | (0x1<<16) | 0x10; //Y1 DMA_COMMAND_local[41] = (0x0<<28) | (0x0<<20) | (0x0<<16) | ((unsigned int) (cur_b0+stride_MCU)) | 0x0; DMA_COMMAND_local[43] = (0x0<<28) | (0xa<<20) | (0x1<<16) | 0x10 | 0x1<<26; //U1 DMA_COMMAND_local[45] = (0x0<<28) | (0x0<<20) | (0x0<<16) | ((unsigned int) (cur_b1+stride_MCU) ) | 0x0; DMA_COMMAND_local[47] = (0x0<<28) | (0xa<<20) | (0x1<<16) | 0x10 | 0x1<<26; //V1 DMA_COMMAND_local[49] = (0x0<<28) | (0x0<<20) | (0x0<<16) | ((unsigned int) (cur_b2+stride_MCU) ) | 0x0; DMA_COMMAND_local[51] = (0x0<<28) | (0x8<<20) | (0x1<<16) | 0x10; break; default: //JCS_yuv420 //Y DMA_COMMAND_local[1] = 8<<28 | (((unsigned int)(-15))&0xff)<<20 | 2<<16 | mDMALmaddr(cur_b0); DMA_COMMAND_local[3] = 1<<28 | 0x1<<26 | (0xa << 20) | (0xd << 16) | 0x40; //U DMA_COMMAND_local[5] = mDMALmaddr(cur_b4) ; DMA_COMMAND_local[7] = 0x1<<26 | (0xa << 20) | (0x1 << 16) | 0x10; //V DMA_COMMAND_local[9] = mDMALmaddr(cur_b5) | 0x0; DMA_COMMAND_local[11] =(0x8 << 20) | (0x1 << 16) | 0x10; //Y1 DMA_COMMAND_local[41] = 8<<28 | (((unsigned int)(-15))&0xff)<<20 | 2<<16 | mDMALmaddr(cur_b0+stride_MCU); DMA_COMMAND_local[43] = 1<<28 | 0x1<<26 | (0xa << 20) | (0xd << 16) | 0x40; //U1 DMA_COMMAND_local[45] = mDMALmaddr(cur_b4+stride_MCU); DMA_COMMAND_local[47] = 0x1<<26 | (0xa << 20) | (0x1 << 16) | 0x10; //V1 DMA_COMMAND_local[49] = mDMALmaddr(cur_b5+stride_MCU) ; DMA_COMMAND_local[51] = (0x8 << 20) | (0x1 << 16) | 0x10; break; } #endif outfsize = 0; //pwhsu++:20040127 /* Scan command line to find file names. * It is convenient to use just one switch-parsing routine, but the switch * values read here are ignored; we will rescan the switches after opening * the input file. */ cinfo.image_width = img_width; cinfo.image_height = img_height; cinfo.num_components = comp_num; cinfo.input_components = comp_num; return (void *)&cinfo;}void FJpegEncEncode(void *enc_handle){ volatile MDMA *pmdma = MDMA1; #ifdef VPE_OUTPUT unsigned int *vpe_stop = (unsigned int *) (VPE); #endif #ifdef USE_INTERNAL_CPU int i; unsigned int start_inter_cpu; #endif /* Start compressor */ jpeg_start_compress(&cinfo, TRUE); //cinfo->global_state = CSTATE_SCANNING //cinfo.next_scanline = 0 //huffman table
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -