Description
What MCU/Processor/Board and compiler are you using?
ESP32-S3
What LVGL version are you using?
v8.3.11
What do you want to achieve?
Draw a zoomed image loaded form a .png file in external spi-ram. It draws the image correctly but slower compared to the case of a non-zoomed image. This happens independently of the draw buffer configuration (single or double partial buffer). Checking with an oscilloscope i can see that the new flush_cb is not called immediately after lv_disp_flush_ready function is called but after up to 500 msec. Changing the parent of the image i noticed two different behaviours:
- if the parent is lv_scr_act() there is a constant delay between each flush_cb function call;
- if the parent is another object with the same size of the zoomed image, there is a first flush_cb call followed by a long delay and then all others flush_cb calls are close to each other.
I would like the would image to be draw fast.
PS: if i first draw an image (keeping it hidden) and after a delay i un-hide it, the result is the same.
What have you tried so far?
Creating a simple img object and assign a source to it after zooming.
Code to reproduce
Add a code snippet which can run in the simulator. It should contain only the relevant code that compiles without errors when separated from your main code base.
lv_obj_t *ssaver_img = lv_img_create(new_scr);
lv_obj_align(ssaver_img, LV_ALIGN_CENTER, 0, 0);
lv_img_set_zoom(ssaver_img, 134);
lv_img_set_src(ssaver_img, "L:img.png");