Просмотр исходного кода

change: 启用tjpgd优化级别2,使用更多内存,获取更高解码速度,lcd和lvgl均修改

Wendal Chen 3 лет назад
Родитель
Сommit
9ca4e8331e

+ 4 - 0
components/lcd/luat_lib_lcd.c

@@ -1232,7 +1232,11 @@ static int lcd_draw_jpeg(const char* path, int xpos, int ypos) {
   JRESULT res;      /* Result code of TJpgDec API */
   JDEC jdec;        /* Decompression object */
   void *work;       /* Pointer to the decompressor work area */
+#if JD_FASTDECODE == 2
+  size_t sz_work = 3500 * 3; /* Size of work area */
+#else
   size_t sz_work = 3500; /* Size of work area */
+#endif
   IODEV devid;      /* User defined device identifier */
 
   FILE* fd = luat_fs_fopen(path, "r");

+ 4 - 0
components/lvgl/exts/lv_sjpg/lv_sjpg.c

@@ -61,7 +61,11 @@
 /*********************
  *      DEFINES
  *********************/
+#if JD_FASTDECODE == 2
+#define TJPGD_WORKBUFF_SIZE             (3500*3)    //Recommended by TJPGD libray
+else
 #define TJPGD_WORKBUFF_SIZE             4096    //Recommended by TJPGD libray
+#endif
 
 //NEVER EDIT THESE OFFSET VALUES
 #define SJPEG_VERSION_OFFSET            8

+ 1 - 1
components/tjpgd/tjpgdcnf.h

@@ -38,7 +38,7 @@
 /  1: Enable
 */
 
-#define JD_FASTDECODE	0
+#define JD_FASTDECODE	2
 /* Optimization level
 /  0: Basic optimization. Suitable for 8/16-bit MCUs.
 /  1: + 32-bit barrel shifter. Suitable for 32-bit MCUs.