12.1. JPEG decode
12.1.1. Overview
JPEG decoding example project demonstrates how to decode a JPG file using either JPEG module or software jpeg library
12.1.2. Board Setting
Connect the USB disk to the development board
usb0, or insert the SD memory card into the development boardSD cardConnect LCD screen to development board
12.1.3. Configuration
File
CMakeLists.txt.set (JPEG_USE_SDCARD 1)to read jpeg file (.jpg) from SD card orset (JPEG_USE_UDISK 1)to read jpeg file (.jpg) from u-disk. These options are exclusive.set (JPEG_HW_MODE 1)to decode jpeg file with JPEG module;set (JPEG_HW_MODE 0)to decode with software library
12.1.4. Supported picture formats
Supports standard JPEG images: JPEG picture format components:SOI(File header)+APP0(Image identification information)+ DQT(Define quantification table)+ SOF0(Basic image information)+ DHT(Define Huffman table) + DRI(Define restart interval)+ SOS(Scan line start)+ EOI(End of document),the SOI is composed of two hexadecimal bytes (ffd8)。
The sampling factor supported by the JPEG picture is:YUV420、YUV422H、YUV422V、YUV444、YUV400,Such as a JPG image in 800 * 400 YUV420 format,Through the worm EXIF viewerGraphic insect EXIF viewer official websiteavailable: FileType JPEG FileTypeExtension jpg MIMEType image/jpeg ImageWidth 800 ImageHeight 480 EncodingProcess Baseline DCT, Huffman coding BitsPerSample 8 ColorComponents 3 YCbCrSubSampling YCbCr4:2:0 (2 2)
12.1.5. Image size and resolution supported by this routine
jpeg file size is expected to be less than 500KB, image resolution is expected to be less than 1024 * 768, defined in common/inc/file_op.h
12.1.6. Running the example
Configure storage in CMakeLists.txt
Put jpeg files (with .jpg) into target storage
Connect LCD pannel and storage to board
Power on the board
Download built elf into development board and run the demo
If everything goes well, jpeg files stored in the target storage will be show on LCD pannel one by one.