diff --git a/CMakeLists.txt b/CMakeLists.txt index 7d9638c..7cbaf10 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -83,6 +83,7 @@ set(WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}) # Add LVGL subdirectory add_subdirectory(lvgl) target_include_directories(lvgl PUBLIC ${PROJECT_SOURCE_DIR} ) #${SDL2_INCLUDE_DIRS} +target_compile_definitions(lvgl PUBLIC LV_CONF_INCLUDE_SIMPLE) add_executable(e_player ${PROJECT_SOURCE_DIR}/src/main.c ${PROJECT_SOURCE_DIR}/src/e_port_disp.c diff --git a/bin/e_player b/bin/e_player index 3eb2d1a..03436f6 100755 Binary files a/bin/e_player and b/bin/e_player differ diff --git a/include/e_conf.h b/include/e_conf.h index e1bc7d1..d3a9a00 100644 --- a/include/e_conf.h +++ b/include/e_conf.h @@ -53,9 +53,8 @@ #define E_LAYER_SUPPORT 1 // 是否支持多图层 -// #define DISP_BUF_SIZE (LV_USE_VER_SIZE * LV_USE_HOR_SIZE * 4) -// #define DISP_BUF_SIZE (LV_USE_VER_SIZE * 40 * 4) -#define DISP_BUF_SIZE (LV_USE_VER_SIZE * LV_USE_HOR_SIZE / 2) +// PARTIAL 模式需要全屏大小的缓冲区以支持 GIF 区域刷新 +#define DISP_BUF_SIZE (LV_USE_VER_SIZE * LV_USE_HOR_SIZE * 4 + 4096) //是否启用多线程下载 //当前Linux10.1磁盘空间为64MB,如果启用多线程下载,每个线程下载10MB,合并文件时会导致磁盘空间不足 diff --git a/lv_conf.h b/lv_conf.h index 952d380..60b5add 100755 --- a/lv_conf.h +++ b/lv_conf.h @@ -91,7 +91,7 @@ #endif #endif /*LV_USE_STDLIB_MALLOC == LV_STDLIB_BUILTIN*/ -#define LV_DEF_REFR_PERIOD 33 /**< [ms] ✅ 改为33ms(30fps),平衡性能和响应 */ +#define LV_DEF_REFR_PERIOD 50 /**< [ms] 50ms (20fps),降低刷新频率避免 VO_BUSY */ #define LV_DPI_DEF 130 /**< [px/inch] */ @@ -564,7 +564,7 @@ #define LV_USE_LIBJPEG_TURBO 1 /** GIF decoder library */ -#define LV_USE_GIF 0 +#define LV_USE_GIF 1 #if LV_USE_GIF /** GIF decoder accelerate */ #define LV_GIF_CACHE_DECODE_DATA 1 diff --git a/release/e_player-single-00-70-1.0.84.tar b/release/e_player-single-00-70-1.0.84.tar index 7634ff2..9d3d474 100644 Binary files a/release/e_player-single-00-70-1.0.84.tar 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 index ad2f61b..f9da350 100644 --- a/release/e_player-single-00-70-1.0.84.tar.md5 +++ b/release/e_player-single-00-70-1.0.84.tar.md5 @@ -1 +1 @@ -680c4482774abb57ea1151a03c81a0fe /home/hyx/work/0212/demo/release/e_player-single-00-70-1.0.84.tar +9fd3959aad86f953b04dc72e7fc126b8 /home/hyx/work/0212/demo/release/e_player-single-00-70-1.0.84.tar diff --git a/src/e_player_list.c b/src/e_player_list.c index acf4f00..b13ee2b 100644 --- a/src/e_player_list.c +++ b/src/e_player_list.c @@ -254,7 +254,7 @@ void video_player_set_size(VideoPlayer *video_player, e_player_area area) } video_player->area = area; - // video_player_set_hole(video_player); + video_player_set_hole(video_player); } // ======================== 播放控制 ======================== diff --git a/src/main.c b/src/main.c index 4b7e256..dbb97eb 100755 --- a/src/main.c +++ b/src/main.c @@ -101,11 +101,13 @@ int main(int argc, char **argv) disp_handle_t disp = get_front_display(); - /* 创建 tag.png 图片 */ - lv_obj_t *tag_img = lv_img_create(disp.root_obj); - lv_img_set_src(tag_img, "A:usrdata/pic/tag.png"); - lv_obj_set_pos(tag_img, 0, 0); - lv_obj_set_size(tag_img, 800, 1280); + /* 创建 GIF 动画 - 右下角 */ + lv_obj_t *gif_img = lv_gif_create(disp.root_obj); + lv_gif_set_src(gif_img, "A:usrdata/pic/02.gif"); + lv_obj_set_pos(gif_img, 800 - 240, 1280 - 240); /* 右下角:(560, 1040) */ + lv_obj_set_size(gif_img, 240, 240); + lv_obj_clear_flag(gif_img, LV_OBJ_FLAG_HIDDEN); + lv_gif_restart(gif_img); //创建视频播放器 VideoPlayer *video_player=video_player_init(0);