修改回放界面切换emmc和sd卡

This commit is contained in:
xiehongyan 2024-01-03 18:50:17 +08:00
parent c3c53247e9
commit ace86859f8
2 changed files with 23 additions and 16 deletions

View File

@ -34,6 +34,7 @@ IMAGEAPP_PLAY_CFG_DISP_INFO gPlay_Disp_Info;
static HD_COMMON_MEM_INIT_CONFIG g_play_mem_cfg = {0}; static HD_COMMON_MEM_INIT_CONFIG g_play_mem_cfg = {0};
static UINT32 g_PlayExifBufPa = 0, g_PlayExifBufVa = 0; static UINT32 g_PlayExifBufPa = 0, g_PlayExifBufVa = 0;
DCF_HANDLE ChangeHandle = -1;
static ER PlayExe_InitExif(void) static ER PlayExe_InitExif(void)
{ {
@ -258,10 +259,11 @@ INT32 PlayExe_OnOpen(VControl *pCtrl, UINT32 paramNum, UINT32 *paramArray)
UI_SetData(FL_IsUseFileDB, 0); UI_SetData(FL_IsUseFileDB, 0);
#endif #endif
useFileDB = UI_GetData(FL_IsUseFileDB); useFileDB = UI_GetData(FL_IsUseFileDB);
printf("[PlayExe_OnOpen]mode open\n");
if (useFileDB) { if (useFileDB) {
CHAR *rootPath = "A:\\"; CHAR *rootPath = "A:\\";
//CHAR* defaultfolder="A:\\CarDV\\"; //CHAR* defaultfolder="A:\\CarDV\\";
printf("[PlayExe_OnOpen]if file db\n");
PPBX_FLIST_OBJ pFlist = PBXFList_FDB_getObject(); PPBX_FLIST_OBJ pFlist = PBXFList_FDB_getObject();
pFlist->Config(PBX_FLIST_CONFIG_MEM, uiPoolAddr, POOL_SIZE_FILEDB); pFlist->Config(PBX_FLIST_CONFIG_MEM, uiPoolAddr, POOL_SIZE_FILEDB);
pFlist->Config(PBX_FLIST_CONFIG_MAX_FILENUM, 5000, 0); pFlist->Config(PBX_FLIST_CONFIG_MAX_FILENUM, 5000, 0);
@ -276,12 +278,16 @@ INT32 PlayExe_OnOpen(VControl *pCtrl, UINT32 paramNum, UINT32 *paramArray)
pFlist->Config(PBX_FLIST_CONFIG_SUPPORT_LONGNAME, 1, 0); pFlist->Config(PBX_FLIST_CONFIG_SUPPORT_LONGNAME, 1, 0);
PB_SetParam(PBPRMID_FILELIST_OBJ, (UINT32)pFlist); PB_SetParam(PBPRMID_FILELIST_OBJ, (UINT32)pFlist);
} else { } else {
printf("[PlayExe_OnOpen]else file %d\n", ChangeHandle);
extern DCF_HANDLE System_Get_DCF_Handle(void); extern DCF_HANDLE System_Get_DCF_Handle(void);
PPBX_FLIST_OBJ pFlist = PBXFList_DCF_getObject(); PPBX_FLIST_OBJ pFlist = PBXFList_DCF_getObject();
DCF_HANDLE handle = System_Get_DCF_Handle(); if (ChangeHandle == -1)
{
ChangeHandle = System_Get_DCF_Handle();
}
pFlist->Config(PBX_FLIST_CONFIG_DCF_HANDLE, (UINT32)handle, 0); pFlist->Config(PBX_FLIST_CONFIG_DCF_HANDLE, (UINT32)ChangeHandle, 0);
PB_SetParam(PBPRMID_FILELIST_OBJ, (UINT32)pFlist); PB_SetParam(PBPRMID_FILELIST_OBJ, (UINT32)pFlist);
} }
PB_SetParam(PBPRMID_DEC_VIDEO_CALLBACK, (UINT32)PBDecVideoCB); PB_SetParam(PBPRMID_DEC_VIDEO_CALLBACK, (UINT32)PBDecVideoCB);
@ -362,7 +368,7 @@ INT32 PlayExe_OnClose(VControl *pCtrl, UINT32 paramNum, UINT32 *paramArray)
#if _TODO //refer to NA51055-840 JIRA and using new method #if _TODO //refer to NA51055-840 JIRA and using new method
PBView_KeepLastView(); PBView_KeepLastView();
#endif #endif
printf("[PlayExe_OnClose] on close\n");
PlayExe_UninitExif(); PlayExe_UninitExif();
ImageApp_Play_Close(); ImageApp_Play_Close();

View File

@ -62,6 +62,8 @@ static void stop_play(void);
#define HANDLE_SD 1 #define HANDLE_SD 1
#define HANDLE_EMMC 0 #define HANDLE_EMMC 0
DCF_HANDLE FirstHandle = -1;
extern DCF_HANDLE ChangeHandle;
static BOOL g_PlayBgInitFileSys = FALSE; static BOOL g_PlayBgInitFileSys = FALSE;
@ -338,6 +340,7 @@ void Option_play_Selection_Key(lv_obj_t* obj, uint32_t key)
{ {
printf(" ================================== switch sd card.\n"); printf(" ================================== switch sd card.\n");
ProfileSelected = 1; ProfileSelected = 1;
ChangeHandle = ProfileSelected;
Ux_SendEvent(0, NVTEVT_SYSTEM_MODE, 1, PRIMARY_MODE_PLAYBACK); Ux_SendEvent(0, NVTEVT_SYSTEM_MODE, 1, PRIMARY_MODE_PLAYBACK);
} }
@ -345,6 +348,7 @@ void Option_play_Selection_Key(lv_obj_t* obj, uint32_t key)
{ {
printf(" ================================== switch emmc.\n"); printf(" ================================== switch emmc.\n");
ProfileSelected = 0; ProfileSelected = 0;
ChangeHandle = ProfileSelected;
Ux_SendEvent(0, NVTEVT_SYSTEM_MODE, 1, PRIMARY_MODE_PLAYBACK); Ux_SendEvent(0, NVTEVT_SYSTEM_MODE, 1, PRIMARY_MODE_PLAYBACK);
} }
@ -1284,18 +1288,15 @@ static void set_indev_keypad_group(lv_obj_t* obj)
static void UIFlowPlay_ScrOpen(lv_obj_t* obj) static void UIFlowPlay_ScrOpen(lv_obj_t* obj)
{ {
if (FirstHandle == -1)
{
FirstHandle = System_Get_DCF_Handle();
printf("[UIFlowPlay_ScrOpen][*x] select handle: %d.\n", FirstHandle);
ProfileSelected = FirstHandle;
}
DBG_IND("UIFlowPlay_ScrOpen\r\n"); DBG_IND("UIFlowPlay_ScrOpen\r\n");
int SelectedHandle = System_Get_DCF_Handle();
printf("[UIFlowPlay_ScrOpen][*x] select handle: %d.\n", SelectedHandle);
if (SelectedHandle == HANDLE_SD)
{
ProfileSelected = 1;
}
else if (SelectedHandle == HANDLE_EMMC)
{
ProfileSelected = 0;
}
set_indev_keypad_group(obj); set_indev_keypad_group(obj);
if (UIStorageCheck(STORAGE_CHECK_ERROR, NULL) == TRUE) { if (UIStorageCheck(STORAGE_CHECK_ERROR, NULL) == TRUE) {