1.修改p+v pwm分离
This commit is contained in:
parent
b556a492c5
commit
3be486b258
|
@ -1929,8 +1929,6 @@ THREAD_RETTYPE MovieFast_InitMovieModeThread(void *arg)
|
||||||
vos_task_resume(g_moviefast_raw_tsk_id);
|
vos_task_resume(g_moviefast_raw_tsk_id);
|
||||||
}
|
}
|
||||||
|
|
||||||
vos_flag_set(MOVIEFAST_FLG_ID, FLGMOVIEFAST_RECSTART);
|
|
||||||
|
|
||||||
vos_perf_mark(&t1);
|
vos_perf_mark(&t1);
|
||||||
|
|
||||||
#if 1
|
#if 1
|
||||||
|
@ -1942,7 +1940,15 @@ THREAD_RETTYPE MovieFast_InitMovieModeThread(void *arg)
|
||||||
UINT32 yuv_size = 0;
|
UINT32 yuv_size = 0;
|
||||||
HD_PATH_ID alg_path = ImageApp_MovieMulti_GetAlgDataPort(_CFG_REC_ID_1, _CFG_ALG_PATH3);
|
HD_PATH_ID alg_path = ImageApp_MovieMulti_GetAlgDataPort(_CFG_REC_ID_1, _CFG_ALG_PATH3);
|
||||||
UINT32 max_cnt , duration;
|
UINT32 max_cnt , duration;
|
||||||
|
vos_perf_mark(&t2);
|
||||||
|
#if HUNTING_CAMERA_MCU == ENABLE
|
||||||
|
UIMenuStoreInfo *puiPara = sf_ui_para_get();
|
||||||
|
UINT32 led_delay = 170;
|
||||||
|
BOOL led_flag = FALSE;
|
||||||
|
BOOL ViewPullFlag = TRUE;
|
||||||
|
UINT32 period = 0;
|
||||||
|
VOS_TICK t3, t4;
|
||||||
|
#endif
|
||||||
MovieFast_fdt_get_info(&fdt_info);
|
MovieFast_fdt_get_info(&fdt_info);
|
||||||
|
|
||||||
if(MovieFast_fdt_get_tmp_buf(&fdt_info, &tmp_buf, &tmp_buf_size) != E_OK){
|
if(MovieFast_fdt_get_tmp_buf(&fdt_info, &tmp_buf, &tmp_buf_size) != E_OK){
|
||||||
|
@ -1958,6 +1964,8 @@ THREAD_RETTYPE MovieFast_InitMovieModeThread(void *arg)
|
||||||
yuv_size = VDO_YUV_BUFSIZE(sensor_info->sSize.w, sensor_info->sSize.h , HD_VIDEO_PXLFMT_YUV420);
|
yuv_size = VDO_YUV_BUFSIZE(sensor_info->sSize.w, sensor_info->sSize.h , HD_VIDEO_PXLFMT_YUV420);
|
||||||
|
|
||||||
do {
|
do {
|
||||||
|
vos_perf_mark(&t3);
|
||||||
|
|
||||||
if((tmp_buf + yuv_size) > (tmp_buf + tmp_buf_size)){
|
if((tmp_buf + yuv_size) > (tmp_buf + tmp_buf_size)){
|
||||||
DBG_ERR("tmp buffer overflow!!\n");
|
DBG_ERR("tmp buffer overflow!!\n");
|
||||||
goto EXIT;
|
goto EXIT;
|
||||||
|
@ -1980,7 +1988,15 @@ THREAD_RETTYPE MovieFast_InitMovieModeThread(void *arg)
|
||||||
tmp_buf += yuv_size;
|
tmp_buf += yuv_size;
|
||||||
|
|
||||||
hd_videoproc_release_out_buf(alg_path, &frame_capture);
|
hd_videoproc_release_out_buf(alg_path, &frame_capture);
|
||||||
|
#if HUNTING_CAMERA_MCU == ENABLE
|
||||||
sf_set_date_time_make_ymdhms();
|
sf_set_date_time_make_ymdhms();
|
||||||
|
|
||||||
|
led_flag = FALSE;
|
||||||
|
ViewPullFlag = TRUE;
|
||||||
|
if((SF_MULTISHOT_INTEVEL_0S != puiPara->MultiShotIntevel) && (sf_is_night_mode(0) ==TRUE)){
|
||||||
|
sf_ir_led_set(0, 0, 0, 0);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
if(++cnt >= max_cnt)
|
if(++cnt >= max_cnt)
|
||||||
break;
|
break;
|
||||||
vos_perf_mark(&t2);
|
vos_perf_mark(&t2);
|
||||||
|
@ -1990,20 +2006,68 @@ THREAD_RETTYPE MovieFast_InitMovieModeThread(void *arg)
|
||||||
DBG_ERR("failed timeout\n");
|
DBG_ERR("failed timeout\n");
|
||||||
goto EXIT;
|
goto EXIT;
|
||||||
}
|
}
|
||||||
vos_util_delay_ms(duration);
|
|
||||||
|
|
||||||
} while(1);
|
#if HUNTING_CAMERA_MCU == ENABLE
|
||||||
|
while(ViewPullFlag) {
|
||||||
|
|
||||||
|
if(TRUE == flow_preview_get_stop_flag()){
|
||||||
|
DBG_WRN("detected stop signal, power off ...\n");
|
||||||
|
goto EXIT;
|
||||||
|
}
|
||||||
|
vos_perf_mark(&t4);
|
||||||
|
|
||||||
|
period = vos_perf_duration(t3, t4) / 1000;
|
||||||
|
|
||||||
|
/**************************************************
|
||||||
|
* IR LED , 60 fps, 16.66 = 17
|
||||||
|
**************************************************/
|
||||||
|
|
||||||
|
if((period >= duration) ||((duration - period) <= (led_delay + 17))
|
||||||
|
){
|
||||||
|
if((SF_MULTISHOT_INTEVEL_0S != puiPara->MultiShotIntevel) && (FALSE == led_flag) && (sf_is_night_mode(0) ==TRUE)){
|
||||||
|
led_flag = TRUE;
|
||||||
|
sf_ir_led_set(((2 == puiPara->NightMode) ? 2 : 1),puiPara->FlashLed, puiPara->NightMode,0);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
if(period >= (duration - 17))
|
||||||
|
{
|
||||||
|
ViewPullFlag = FALSE;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
vos_util_delay_ms(5);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
} while(TRUE != flow_preview_get_stop_flag());
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
vos_perf_mark(&t2);
|
vos_perf_mark(&t2);
|
||||||
|
#if HUNTING_CAMERA_MCU == ENABLE
|
||||||
|
if(sf_is_night_mode(0) ==TRUE)
|
||||||
|
{
|
||||||
|
if((SF_MULTISHOT_INTEVEL_0S == puiPara->MultiShotIntevel)){
|
||||||
|
sf_ir_led_set(0, 0, 0, 0);
|
||||||
|
}
|
||||||
|
sf_ir_led_set(((2 == puiPara->NightMode) ? 2 : 1),puiPara->FlashLed, puiPara->NightMode, 1);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
vos_flag_set(MOVIEFAST_FLG_ID, FLGMOVIEFAST_RECSTART);
|
||||||
|
|
||||||
#if FIX_RECORD_NOISE == ENABLE
|
#if FIX_RECORD_NOISE == ENABLE
|
||||||
|
|
||||||
UINT32 elapse_time_ms = ((t2 - t1) / 1000);
|
// UINT32 elapse_time_ms = ((t2 - t1) / 1000);
|
||||||
|
|
||||||
CHKPNT;
|
CHKPNT;
|
||||||
if(elapse_time_ms < 300)
|
vos_util_delay_ms(300);
|
||||||
vos_util_delay_ms(300 - elapse_time_ms);
|
// if(elapse_time_ms < 300)
|
||||||
|
// vos_util_delay_ms(300 - elapse_time_ms);
|
||||||
|
|
||||||
ImageApp_MovieMulti_SetParam(0, MOVIEMULTI_PARAM_AUD_MUTE_ENC, FALSE);
|
ImageApp_MovieMulti_SetParam(0, MOVIEMULTI_PARAM_AUD_MUTE_ENC, FALSE);
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in New Issue
Block a user