diff --git a/bin/e_player b/bin/e_player new file mode 100755 index 0000000..97dac63 Binary files /dev/null and b/bin/e_player differ diff --git a/include/e_conf.h b/include/e_conf.h index eb79a88..e1bc7d1 100644 --- a/include/e_conf.h +++ b/include/e_conf.h @@ -28,6 +28,10 @@ // 自定义事件保存路径 #define EVENT_NOFIFY "/data/task/event.cfg" +// 日志目录和大小限制 +#define LOG_DIR "/data/log" +#define MAX_LOG_SIZE (512 * 1024) // 512KB + // 下载文件目录 #define DIR_FILES "/data/downloads" // 存储分区路径 diff --git a/release/e_player-single-00-70-1.0.84.tar b/release/e_player-single-00-70-1.0.84.tar new file mode 100644 index 0000000..dfdded9 Binary files /dev/null and b/release/e_player-single-00-70-1.0.84.tar differ diff --git a/release/e_player-single-00-70-1.0.84.tar.md5 b/release/e_player-single-00-70-1.0.84.tar.md5 new file mode 100644 index 0000000..f6efe99 --- /dev/null +++ b/release/e_player-single-00-70-1.0.84.tar.md5 @@ -0,0 +1 @@ +c6b3e50d9d1f9b68daf2ef777fbdcdb9 /home/hyx/work/0212/demo/release/e_player-single-00-70-1.0.84.tar diff --git a/src/display/fbdev.c b/src/display/fbdev.c index 5e4492d..13f0cd7 100644 --- a/src/display/fbdev.c +++ b/src/display/fbdev.c @@ -148,8 +148,8 @@ void fbdev_flush(lv_display_t *drv, const lv_area_t *area, uint8_t *color_p) return; } - /* use qua_gl_transform to copy LVGL buffer to FB (compress mode compatible) */ - lv_area_t buf_area = drv->layer_head->buf_area; + /* lvgl_surface == fb_surface (same mmap buffer), LVGL writes directly to it. + * qua_gl_transform with same src/dst triggers hardware compress pipeline. */ int32_t act_x1 = LV_MAX(area->x1, 0); int32_t act_y1 = LV_MAX(area->y1, 0); int32_t act_x2 = LV_MIN(area->x2, (int32_t)lvgl_surface.width - 1); @@ -158,31 +158,23 @@ void fbdev_flush(lv_display_t *drv, const lv_area_t *area, uint8_t *color_p) int32_t w = act_x2 - act_x1 + 1; int32_t h = act_y2 - act_y1 + 1; - qua_gl_surface_t src_surface = {}; - qua_gl_transform_t trans = {}; - - src_surface.phy_addr = lvgl_surface.phy_addr; - src_surface.format = QUA_PIXEL_FMT_RGB_8888; - src_surface.width = buf_area.x2 - buf_area.x1 + 1; - src_surface.height = buf_area.y2 - buf_area.y1 + 1; - src_surface.stride = src_surface.width; - src_surface.crop_x = act_x1 - buf_area.x1; - src_surface.crop_y = act_y1 - buf_area.y1; - src_surface.crop_w = w; - src_surface.crop_h = h; - + lvgl_surface.crop_x = act_x1; + lvgl_surface.crop_y = act_y1; + lvgl_surface.crop_w = w; + lvgl_surface.crop_h = h; fb_surface.crop_x = act_x1; fb_surface.crop_y = act_y1; fb_surface.crop_w = w; fb_surface.crop_h = h; + qua_gl_transform_t trans = {}; trans.conversion = 1; - QUA_BOOL ret = qua_gl_transform(&trans, &src_surface, &fb_surface); - if (ret == QUA_FALSE) - printf("%s, transform failed area=[%d,%d,%d,%d] buf=[%d,%d,%d,%d]\n", __func__, - area->x1, area->y1, area->x2, area->y2, - buf_area.x1, buf_area.y1, buf_area.x2, buf_area.y2); + qua_gl_transform(&trans, &lvgl_surface, &fb_surface); + lvgl_surface.crop_x = 0; + lvgl_surface.crop_y = 0; + lvgl_surface.crop_w = lvgl_surface.width; + lvgl_surface.crop_h = lvgl_surface.height; fb_surface.crop_x = 0; fb_surface.crop_y = 0; fb_surface.crop_w = fb_surface.width;