📄 mp3_main.c
字号:
/******************
* mp3_main.c
*****************/
#include <string.h>
#include "api.h"
#include "lcd.h"
#include "common.h"
#include "ap_common.h"
#include "display.h"
#include "mp3_utile.h"
#include "mp3_display.h"
#include "mp3_sub_menu.h"
#include "prefer.h"
#include "ui_main.h"
#include "ui_message.h"
#include "res.h"
#include "res_show.h"
//UINT8 long_release=0;
//extern BOOLEAN bFwdRwd_init();
BOOLEAN fm_lock,lyric_on, scroll_on;
void screen_mp3_init(void)
{
/* Music is playing */
close_volume();
init_volume();
if(eSysState != STATE_IDLE)
{
if((curr_finfo.etype != ENTRY_TYPE_FILE) || !playdir_valid())
{
if(play_dir.u32startclus)
change_dir(&play_dir);
else
change_dir(0);
}
scan_dir_file(SEARCH_MODE_CURRDIR, search_extstr, 0);
if(!api_bSelectFile(curr_music.u16Order, SELECT_SET))
return;
screen_level = SCREEN_LEVEL_MUSIC_PLAY;
ui_draw();
bResShowPic(PLAY_PIC, 0 , 2);
return;
}
if(screen_level == SCREEN_LEVEL_FILE_BROWSER) {
if(!find_good_media(0, SELECT_CUR))
return;
ui_draw();
if(music_play())
{
screen_level = SCREEN_LEVEL_MUSIC_PLAY;
api_vSetDSPclk(2);
bResShowPic(PLAY_PIC, 0 , 2);
}
return;
}
/* Change to ROOT dir */
change_dir(0);
scan_dir_file(SEARCH_MODE_CURRDIR, "MP3WMA", 0);
if(totfile && find_good_media(1, SELECT_SET)) {
ui_draw();
screen_level = SCREEN_LEVEL_MUSIC_STOP;
}
else {
ui_show_message(MFILEOUT);
#ifdef dynamic_load
api_vLoad(Code_USER1,1);
#else
Print("Load Function\n");
#endif
}
}
void screen_mp3(UINT8 key)
{
INT8 dir = 0;
switch(key)
{
case KEY_MENU:
mp3_sub_menu();
return;
case KEY_PLAY:
if(screen_level == SCREEN_LEVEL_MUSIC_PLAY)
{
if(music_pause())
screen_level = SCREEN_LEVEL_MUSIC_STOP;
bResShowPic(STOP_PIC, 0 , 2);
}
else if(screen_level == SCREEN_LEVEL_MUSIC_STOP)
{
if(music_play())
{
api_bSetVolume(0);
screen_level = SCREEN_LEVEL_MUSIC_PLAY;
api_vSetDSPclk(2);
bResShowPic(PLAY_PIC, 0 , 2);
}
}
return;
case KEY_NEXT:
dir=1;
break;
case KEY_PREV:
dir=-1;
break;
case KEY_AB_REPEAT:
vol_flag = !vol_flag;
ui_show_vol();
return;
case KEY_FORWARD:
case KEY_REWIND:
if(!vol_flag)
{
if(curr_music.eMusicType != MUSIC_TYPE_WMA && api_bFwRwdProlog()/*&&(!long_release)*/){
if(key == KEY_FORWARD)
api_bFwRwdForward();
else
api_bFwRwdRewind();
play_time_update(1);
screen_level = SCREEN_LEVEL_MUSIC_FWRW;
}
}
else
{
if(key == KEY_FORWARD)
{
if(tUserPreference.u8Volume<31)
{
tUserPreference.u8Volume++;
api_bSetVolume(1);
}
}
else
{
if(tUserPreference.u8Volume>0)
{
tUserPreference.u8Volume--;
api_bSetVolume(-1);
}
}
ui_show_vol();
}
return;
case KEY_RELEASE:
api_bFwRwdEpilog();
api_vSetDSPclk(2);
screen_level = SCREEN_LEVEL_MUSIC_PLAY;
return;
case KEY_EOS:
ui_draw();
if(screen_level == SCREEN_LEVEL_MUSIC_PLAY)
bResShowPic(PLAY_PIC, 0 , 2);
return;
default:
return;
break;
}
if(!vol_flag)
{
music_stop();
find_good_media(dir, SELECT_CUR);
if(screen_level == SCREEN_LEVEL_MUSIC_PLAY)
{
if(music_play())
{
screen_level = SCREEN_LEVEL_MUSIC_PLAY;
api_vSetDSPclk(2);
}
}
ui_draw();
if(screen_level == SCREEN_LEVEL_MUSIC_PLAY)
bResShowPic(PLAY_PIC, 0 , 2);
}
else
{
if(dir == -1)
{
if(tUserPreference.u8Volume>0)
{
tUserPreference.u8Volume--;
}
}
else
{
if(tUserPreference.u8Volume<31)
{
tUserPreference.u8Volume++;
}
}
api_bSetVolume(dir);
ui_show_vol();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -