📄 test.c
字号:
#include <stdio.h>
#include <imagelib.h>
#pragma DATA_SECTION(workingTab,"WorkTab");
int workingTab[512]; // hold huffmantable
int input[64];
// Quantized 8x8 DCT coefficients of Luminance or Chrominance block.
int input_zigzag[64]; // Quantized 8x8 DCT coefficients in zigzag order.
int zig_zag[64]={ 0, 1, 5, 6,14,15,27,28, // zig_zag table
2, 4, 7,13,16,26,29,42,
3, 8,12,17,25,30,41,43,
9,11,18,24,31,40,44,53,
10,19,23,32,39,45,52,54,
20,22,33,38,46,51,55,60,
21,34,37,47,50,56,59,61,
35,36,48,49,57,58,62,63};
int output[64]; // JPEG baseline VLC coded bitestream. The legnth of output is
// data-dependent.
int type; // 0: Luminance 1: Chrominace.
void main()
{
int i;
type=0; // luminance
for(i=0;i<64;i++) // input output initialization.
{
input[i]=0;
output[i]=0;
}
input[0]=32; // Input setup
input[1]=1;
input[6]=-2;
input[8]=-1;
input[17]=3;
input[18]=-4;
input[24]=23;
for(i=0;i<64;i++)
input_zigzag[zig_zag[i]]=input[i];
JPEG_vlc_init(workingTab); // JPEG VLC variables initialization.
type=0; // luminance
IMG_jpeg_vlc(input_zigzag,output,type); // JPEG VLC coding for Luminance block.
// output should be
//output : 0xE808 0xFEFE 0xAFFB; 0xBFFE 0xB680
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -