1.增加Linux下无卡发送功能
This commit is contained in:
parent
8904ab034e
commit
e8397d37b6
|
@ -218,6 +218,48 @@ INT32 sys_usrmem_init(SYS_USRMEM* usrmem)
|
||||||
return E_SYS;
|
return E_SYS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
INT32 sys_usrmem_write_photo(SYS_USRMEM* usrmem, UINT32 buf, UINT32 size)
|
||||||
|
{
|
||||||
|
if(usrmem == NULL){
|
||||||
|
DBG_ERR("usrmem can't be null!\n");
|
||||||
|
return E_SYS;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(usrmem->addr_photo == 0){
|
||||||
|
DBG_ERR("address photo can't be null!\n");
|
||||||
|
return E_SYS;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(buf == 0){
|
||||||
|
DBG_ERR("buf can't be null!\n");
|
||||||
|
return E_SYS;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(size == 0){
|
||||||
|
DBG_ERR("size can't be zero!\n");
|
||||||
|
return E_SYS;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(usrmem->is_init == FALSE){
|
||||||
|
DBG_ERR("usrmem is not init yet!\n");
|
||||||
|
return E_SYS;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
memcpy((void*)usrmem->addr_photo, (void*)buf, size);
|
||||||
|
usrmem->hdr->photo_ofs = usrmem->used_size;
|
||||||
|
usrmem->hdr->photo_size = size;
|
||||||
|
usrmem->hdr->photo_sum = MemCheck_CalcCheckSum16Bit(usrmem->addr_photo, size);
|
||||||
|
usrmem->used_size += size;
|
||||||
|
|
||||||
|
hd_common_mem_flush_cache((void*)usrmem->addr, usrmem->used_size);
|
||||||
|
|
||||||
|
DBG_DUMP("photo addr:%lx, size:%lx, sum:%lx\n", usrmem->addr_photo, usrmem->hdr->photo_size, usrmem->hdr->photo_sum);
|
||||||
|
|
||||||
|
return E_OK;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
INT32 sys_usrmem_read_photo(SYS_USRMEM* usrmem, UINT32* addr, UINT32* size)
|
INT32 sys_usrmem_read_photo(SYS_USRMEM* usrmem, UINT32* addr, UINT32* size)
|
||||||
{
|
{
|
||||||
if(usrmem == NULL){
|
if(usrmem == NULL){
|
||||||
|
|
|
@ -35,6 +35,7 @@ INT32 sys_usrmem_write_photo(SYS_USRMEM* usrmem, UINT32 buf, UINT32 size);
|
||||||
#else
|
#else
|
||||||
|
|
||||||
INT32 sys_usrmem_read_photo(SYS_USRMEM* usrmem, UINT32* addr, UINT32* size);
|
INT32 sys_usrmem_read_photo(SYS_USRMEM* usrmem, UINT32* addr, UINT32* size);
|
||||||
|
INT32 sys_usrmem_write_photo(SYS_USRMEM* usrmem, UINT32 buf, UINT32 size);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
@ -38,7 +38,7 @@
|
||||||
#include "vendor_videoout.h"
|
#include "vendor_videoout.h"
|
||||||
#include "IOCfg.h"
|
#include "IOCfg.h"
|
||||||
|
|
||||||
#define THIS_DBGLVL 2 // 0=FATAL, 1=ERR, 2=WRN, 3=UNIT, 4=FUNC, 5=IND, 6=MSG, 7=VALUE, 8=USER
|
#define THIS_DBGLVL 6 // 0=FATAL, 1=ERR, 2=WRN, 3=UNIT, 4=FUNC, 5=IND, 6=MSG, 7=VALUE, 8=USER
|
||||||
///////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////
|
||||||
#define __MODULE__ UiAppMovie
|
#define __MODULE__ UiAppMovie
|
||||||
#define __DBGLVL__ ((THIS_DBGLVL>=PRJ_DBG_LVL)?THIS_DBGLVL:PRJ_DBG_LVL)
|
#define __DBGLVL__ ((THIS_DBGLVL>=PRJ_DBG_LVL)?THIS_DBGLVL:PRJ_DBG_LVL)
|
||||||
|
@ -1273,7 +1273,7 @@ static void MovieExe_FileNamingCB(MOVIE_CFG_REC_ID id, char *pFileName)
|
||||||
else if(id == _CFG_CLONE_ID_1){
|
else if(id == _CFG_CLONE_ID_1){
|
||||||
snprintf(thumb_current_path_clone, sizeof(thumb_current_path_clone), "%s", tmp);
|
snprintf(thumb_current_path_clone, sizeof(thumb_current_path_clone), "%s", tmp);
|
||||||
}
|
}
|
||||||
DBG_DUMP("last send file:%s\r\n", tmp);
|
DBG_DUMP("id:%d last send file:%s\r\n", id, tmp);
|
||||||
#else
|
#else
|
||||||
if(id == _CFG_REC_ID_1){
|
if(id == _CFG_REC_ID_1){
|
||||||
snprintf(thumb_current_path_main, sizeof(thumb_current_path_main), "%s", pFileName);
|
snprintf(thumb_current_path_main, sizeof(thumb_current_path_main), "%s", pFileName);
|
||||||
|
|
|
@ -40,7 +40,7 @@
|
||||||
#include "DCF.h"
|
#include "DCF.h"
|
||||||
#endif
|
#endif
|
||||||
#include "SF_SysStrgMng.h"
|
#include "SF_SysStrgMng.h"
|
||||||
|
#include "sys_usrmem.h"
|
||||||
|
|
||||||
#define THIS_DBGLVL 2 // 0=FATAL, 1=ERR, 2=WRN, 3=UNIT, 4=FUNC, 5=IND, 6=MSG, 7=VALUE, 8=USER
|
#define THIS_DBGLVL 2 // 0=FATAL, 1=ERR, 2=WRN, 3=UNIT, 4=FUNC, 5=IND, 6=MSG, 7=VALUE, 8=USER
|
||||||
|
|
||||||
|
@ -6879,14 +6879,15 @@ INT32 PhotoExe_Preview_SliceEncode_CB3(void* user_data)
|
||||||
extern INT32 ImageApp_Photo_WriteCB(UINT32 Addr, UINT32 Size, UINT32 Fmt, UINT32 uiPathId);
|
extern INT32 ImageApp_Photo_WriteCB(UINT32 Addr, UINT32 Size, UINT32 Fmt, UINT32 uiPathId);
|
||||||
IMG_CAP_FST_INFO FstStatus = {FST_STA_OK};
|
IMG_CAP_FST_INFO FstStatus = {FST_STA_OK};
|
||||||
|
|
||||||
UINT32 dcf_handle = (UINT32)System_Get_DCF_Handle(); /* 0:emmc 1:sd */
|
INT32 dcf_handle = (INT32)System_Get_DCF_Handle(); /* 0:emmc 1:sd */
|
||||||
|
|
||||||
FstStatus.Status = ImageApp_Photo_WriteCB(
|
if(dcf_handle >= 0)
|
||||||
|
{
|
||||||
|
FstStatus.Status = ImageApp_Photo_WriteCB(
|
||||||
(UINT32)queue_ele_in->jpg_combined_addr,
|
(UINT32)queue_ele_in->jpg_combined_addr,
|
||||||
queue_ele_in->jpg_combined_size,
|
queue_ele_in->jpg_combined_size,
|
||||||
HD_CODEC_TYPE_JPEG, dcf_handle);
|
HD_CODEC_TYPE_JPEG, dcf_handle);
|
||||||
|
|
||||||
{
|
|
||||||
char* file_path = ImageApp_Photo_GetLastWriteFilePath();
|
char* file_path = ImageApp_Photo_GetLastWriteFilePath();
|
||||||
char tmp[256] = {'\0'};
|
char tmp[256] = {'\0'};
|
||||||
UINT32 length = strlen(file_path);
|
UINT32 length = strlen(file_path);
|
||||||
|
@ -6940,6 +6941,19 @@ INT32 PhotoExe_Preview_SliceEncode_CB3(void* user_data)
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
DBG_WRN("filesys not ready, store data into mem\n");
|
||||||
|
SYS_USRMEM usrmem = {0};
|
||||||
|
|
||||||
|
if(sys_usrmem_init(&usrmem) == E_OK){
|
||||||
|
sys_usrmem_write_photo(
|
||||||
|
&usrmem,
|
||||||
|
(UINT32) queue_ele_in->jpg_thumb_addr,
|
||||||
|
queue_ele_in->jpg_thumb_size
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if(PhotoCapMsgCb){
|
if(PhotoCapMsgCb){
|
||||||
PhotoCapMsgCb(IMG_CAP_CBMSG_FSTOK, &FstStatus);
|
PhotoCapMsgCb(IMG_CAP_CBMSG_FSTOK, &FstStatus);
|
||||||
|
|
|
@ -84,6 +84,7 @@ static lv_obj_t *g_preview_info_msgbox = NULL;
|
||||||
static lv_obj_t *g_preview_info_label = NULL;
|
static lv_obj_t *g_preview_info_label = NULL;
|
||||||
static int g_preview_info_ishidden = true;
|
static int g_preview_info_ishidden = true;
|
||||||
static lv_task_t* preview_info_task = NULL;
|
static lv_task_t* preview_info_task = NULL;
|
||||||
|
extern DCF_HANDLE System_Get_DCF_Handle(void);
|
||||||
static void preview_info_task_cb(lv_task_t* task)
|
static void preview_info_task_cb(lv_task_t* task)
|
||||||
{
|
{
|
||||||
static int count = 0;
|
static int count = 0;
|
||||||
|
@ -1892,6 +1893,7 @@ void UIFlowPhoto_UpdateInfo(lv_obj_t* obj, const LV_USER_EVENT_NVTMSG_DATA* msg)
|
||||||
{
|
{
|
||||||
#if HUNTING_CAMERA_MCU == ENABLE
|
#if HUNTING_CAMERA_MCU == ENABLE
|
||||||
UIMenuStoreInfo *puiPara = sf_ui_para_get();
|
UIMenuStoreInfo *puiPara = sf_ui_para_get();
|
||||||
|
INT32 dcf_handle = -1;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
if(msg == NULL){
|
if(msg == NULL){
|
||||||
|
@ -1911,7 +1913,15 @@ void UIFlowPhoto_UpdateInfo(lv_obj_t* obj, const LV_USER_EVENT_NVTMSG_DATA* msg)
|
||||||
case UIAPPPHOTO_CB_CAPSTART:
|
case UIAPPPHOTO_CB_CAPSTART:
|
||||||
#if HUNTING_CAMERA_MCU == ENABLE
|
#if HUNTING_CAMERA_MCU == ENABLE
|
||||||
sf_set_cap_statu(TRUE);
|
sf_set_cap_statu(TRUE);
|
||||||
sf_set_cammode_statu(puiPara->CamMode);
|
dcf_handle = (INT32)System_Get_DCF_Handle(); /* 0:emmc 1:sd */
|
||||||
|
if(dcf_handle >= 0)
|
||||||
|
{
|
||||||
|
sf_set_cammode_statu(puiPara->CamMode);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
DBG_WRN("filesys not ready, CamMode SF_CAM_MODE_PHOTO\n");
|
||||||
|
sf_set_cammode_statu(SF_CAM_MODE_PHOTO);
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
if(obj == UIFlowPhoto)
|
if(obj == UIFlowPhoto)
|
||||||
|
|
|
@ -35,6 +35,7 @@ INT32 sys_usrmem_write_photo(SYS_USRMEM* usrmem, UINT32 buf, UINT32 size);
|
||||||
#else
|
#else
|
||||||
|
|
||||||
INT32 sys_usrmem_read_photo(SYS_USRMEM* usrmem, UINT32* addr, UINT32* size);
|
INT32 sys_usrmem_read_photo(SYS_USRMEM* usrmem, UINT32* addr, UINT32* size);
|
||||||
|
INT32 sys_usrmem_write_photo(SYS_USRMEM* usrmem, UINT32 buf, UINT32 size);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
@ -1275,9 +1275,20 @@ static SINT32 app_file_transfer(SF_FN_PARAM_S *pfnParam) {
|
||||||
SINT32 sf_cardv_file_to_app_send_thread(void) {
|
SINT32 sf_cardv_file_to_app_send_thread(void) {
|
||||||
SINT32 s32ret = 0;
|
SINT32 s32ret = 0;
|
||||||
SF_FN_PARAM_S stpfncallback = {0};
|
SF_FN_PARAM_S stpfncallback = {0};
|
||||||
|
UIMenuStoreInfo *puiPara = sf_app_ui_para_get();
|
||||||
|
|
||||||
if(SF_FAILURE == sf_check_sd())
|
if(SF_FAILURE == sf_check_sd())
|
||||||
{
|
{
|
||||||
MLOGE("ERROR sf_check_sd\n");
|
MLOGE("ERROR sf_check_sd\n");
|
||||||
|
|
||||||
|
#if SF_NO_SD_SEND == ENABLE
|
||||||
|
if((0 == puiPara->SendType) && (0 == sf_usr_mem_photo_ch()))
|
||||||
|
{
|
||||||
|
s32ret = sf_mem_send_file_to_ftp();
|
||||||
|
return s32ret;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
return SF_FAILURE;
|
return SF_FAILURE;
|
||||||
}
|
}
|
||||||
stpfncallback.pstParam = sf_customer_param_get();
|
stpfncallback.pstParam = sf_customer_param_get();
|
||||||
|
|
Loading…
Reference in New Issue
Block a user