KT26-0607_AC695n-BTE-SDK312/apps/soundbox/ui/led_lyric/lyric_ui_music.c

96 lines
2.4 KiB
C
Raw Permalink Normal View History

2026-06-07 11:38:16 +00:00
#include "includes.h"
#include "ui/ui_api.h"
#include "led_lyric.h"
#include "audio_dec.h"
#include "audio_dec_file.h"
#include "music/music_player.h"
#include "ui/lyrics.h"
#if TCFG_APP_MUSIC_EN
#if (TCFG_UI_ENABLE && (CONFIG_UI_STYLE == STYLE_JL_LED_LYRICS))
static void lrc_show_music(void)
{
u8 buf[50] = {"MUSIC TASK"};
lyrics_update_font(buf, strlen(buf), NULL);
}
static void lrc_show_puase(void)
{
u8 buf[50] = {"MUSIC PAUSE"};
lyrics_update_font(buf, strlen(buf), NULL);
}
static void lrc_show_file_name(void)
{
u8 music_file_name[256] = {0};
u8 music_file_name_len = 0;
music_file_name_len = fget_name(music_player_get_file_hdl(), music_file_name, sizeof(music_file_name));
if ((music_file_name[0] == '\\') && (music_file_name[1] == 'U')) {
music_file_name_len -= 2;
lyrics_update_unicbuf(music_file_name + 2, music_file_name_len);
} else {
lyrics_update_gbk_to_utf8(music_file_name, music_file_name_len);
}
}
static void lyric_ui_music_open(void)
{
lyric_ui_set_auto_reflash(500);//设置主页500ms自动刷新
}
static void lyric_ui_close_music(void)
{
//lyrics_hide_update();
}
static void lyric_ui_music_main(void) //主界面显示
{
static LYRIC_INFO info;
if (true == file_dec_is_play()) {
u16 dbtime_gap = lyric_btime_gap_get(file_dec_get_cur_time(), 0);
u16 total = file_dec_get_total_time();
u16 curr = file_dec_get_cur_time();
bool ret = user_lyric_info_get(&info, curr, 0);
if (ret && info.update) {
lyrics_update_font(info.buf, info.len, NULL);
} else if (ret == 0) {
lrc_show_file_name();
}
} else if (file_dec_is_pause()) {
lrc_show_puase();
} else {
printf("!!! %s %d\n", __FUNCTION__, __LINE__);
}
}
static int lyric_ui_music_user(u8 menu, u32 arg)//子界面显示 //返回true不继续传递 返回false由common统一处理
{
int ret = true;
switch (menu) {
case MENU_FILENUM:
break;
case MENU_MUSIC_REPEATMODE:
break;
default:
ret = false;
break;
}
return ret;
}
const struct lyric_ui_dis lyric_music_main = {
.lyric_ui = LED_LYRICS_MUSIC_MENU_MAIN,
.lyric_open = lyric_ui_music_open,
.lyric_ui_main = lyric_ui_music_main,
.lyric_ui_user = lyric_ui_music_user,
.lyric_close = lyric_ui_close_music,
};
#endif
#endif