gengxin
authorCCC <2393524978@qq.com>
Fri, 10 Nov 2023 09:14:04 +0000 (17:14 +0800)
committerCCC <2393524978@qq.com>
Fri, 10 Nov 2023 09:14:04 +0000 (17:14 +0800)
2.sdk/sdk/gui/lv_watch/lv_apps/factory_mode/factory_mode_test.c
2.sdk/sdk/gui/lv_watch/lv_apps/mmi_video_call/mmi_jrtc_client_tongxin.c
2.sdk/sdk/gui/lv_watch/lv_apps/mmi_video_call/mmi_video_call_tongxin.c

index e5280a8..fb20aab 100644 (file)
@@ -1961,7 +1961,7 @@ static lv_obj_t * mmi_factorymode_hanging_cali_create(lv_obj_t * activity_obj)
     }
     lv_obj_t * content = lv_cont_create(obj, NULL);
     //lv_obj_set_size(content, lv_obj_get_width(obj), lv_obj_get_height(obj));
-    lv_obj_set_size(content, 240, 280);
+    lv_obj_set_size(content, LV_HOR_RES, LV_VER_RES);
     lv_obj_add_style(content,LV_OBJ_PART_MAIN, &lv_watch_style_transp);
     lv_obj_align(content, NULL, LV_ALIGN_CENTER, 0, 0);
     lv_obj_set_click(content, false);
@@ -1971,38 +1971,33 @@ static lv_obj_t * mmi_factorymode_hanging_cali_create(lv_obj_t * activity_obj)
        // mmi_hsensor_spo2_measure_start();
     
     lv_obj_t * SAR_btn = lv_btn_create(content, NULL);
-    lv_obj_set_pos(SAR_btn, 0, 280-50);
-    lv_obj_set_size(SAR_btn, 120, 40);
+    lv_obj_set_pos(SAR_btn, 0, LV_VER_RES-50);
+    lv_obj_set_size(SAR_btn, LV_HOR_RES / 2, 40);
     //lv_watch_set_free_num(start_btn, num);
     lv_obj_t * SAR_label = lv_label_create(SAR_btn, NULL);
     //lv_label_set_text_id(SAR_label, WATCH_TEXT_ID_START_TEST);
     lv_label_set_text(SAR_label, "活体校准");
-    lv_obj_add_style(SAR_label, LV_LABEL_PART_MAIN, &lv_watch_font30);
+    lv_obj_add_style(SAR_label, LV_LABEL_PART_MAIN, &lv_watch_font26); // &lv_watch_font30);
     //lv_obj_align(SAR_btn, NULL, LV_ALIGN_IN_TOP_MID, 0, 80);
     lv_obj_set_event_cb(SAR_btn, factorymode_hanging_cali_btn_event_cb);
 
     lv_obj_t * reslts_btn = lv_btn_create(content, NULL);
-    lv_obj_set_pos(reslts_btn, 120, 280-50);
-    lv_obj_set_size(reslts_btn, 120, 40);
+    lv_obj_set_pos(reslts_btn, LV_HOR_RES / 2, LV_VER_RES-50);
+    lv_obj_set_size(reslts_btn, LV_HOR_RES / 2, 40);
     //lv_watch_set_free_num(start_btn, num);
     lv_obj_t * reslts_label = lv_label_create(reslts_btn, NULL);
     //lv_label_set_text_id(reslts_label, WATCH_TEXT_ID_START_TEST ;
     lv_label_set_text(reslts_label, "漏光测试" );
-    lv_obj_add_style(reslts_label, LV_LABEL_PART_MAIN, &lv_watch_font30 );
+    lv_obj_add_style(reslts_label, LV_LABEL_PART_MAIN, &lv_watch_font26); // &lv_watch_font30 );
     //lv_obj_align(reslts_btn, NULL, LV_ALIGN_IN_TOP_MID, 0, 80);
     lv_obj_set_event_cb(reslts_btn, factorymode_reslts_label_btn_event_cb);
 
     lv_obj_t * label = lv_label_create(content, NULL);
-#if USE_LV_WATCH_UI_360_360
-    lv_obj_add_style(label,LV_OBJ_PART_MAIN, &lv_watch_font30);
-    lv_obj_set_width(label,LV_HOR_RES-60);
-    lv_obj_set_pos(label, 30, 105);
-#else
-    lv_obj_add_style(label,LV_OBJ_PART_MAIN, &lv_watch_font26);
+    lv_obj_add_style(label,LV_OBJ_PART_MAIN, &lv_watch_font20); // &lv_watch_font26);
     //lv_obj_set_width(label,240 - 10);
-    lv_obj_set_size(label, 240, 240);
-    lv_obj_set_pos(label, 0, 10);
-#endif
+    lv_obj_set_size(label, LV_HOR_RES - 10, 240);
+    lv_obj_set_pos(label, 5, 10);
+
      //lv_label_set_long_mode(label, LV_LABEL_LONG_BREAK);
     char str[320]= {0};
     uint16_t spo2_value = 0;
index eb2b53e..d2adb7b 100644 (file)
@@ -112,7 +112,7 @@ static void mmi_video_call_jrtc_on_state(lv_task_t * task)
 
                if(MMI_VIDEO_CALL_STATE_NONE != mmi_video_call_params_state_get()) 
                        {
-                   mmi_vc_ring_off_no_carrier(1);
+                               mmi_vc_ring_off_screen();
                }
                break;
 
@@ -155,13 +155,16 @@ static int8_t mmi_video_call_jrtc_open(const char* roomid, MODEM_VIDEO_CALL_TYPE
        char ticket[MMI_WATCH_VC_TICKET_LEN] = {0};
        memcpy(ticket, t_ticket, MMI_WATCH_VC_TICKET_LEN - 1);
 
-       //char imei[16] = {0};
-       //app_adp_get_imei_req(imei);
-       //strncpy(ticket, imei, 16);
-
        VIDEO_CALL_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: %s,%d\n", __FUNCTION__, __LINE__, roomid, calltype);
        VIDEO_CALL_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: %s\n", __FUNCTION__, __LINE__, ticket);
 
+    if (NULL == roomid || NULL == ticket) 
+       {
+               VIDEO_CALL_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: params error\n", __FUNCTION__, __LINE__);
+        mmi_video_call_jrtc_clean_up();
+        return -1;
+    }
+
     Hal_Mem_Set(&s_video_call_jrtc, 0, sizeof(MMI_VIDEO_CALL_JRTC_T));
        
     if (MODEM_VIDEO_CALL_TYPE_VIDEO == calltype) 
@@ -224,7 +227,7 @@ void mmi_video_call_hangup_req(BOOL bye)
     } 
        else
        {
-        mmi_vc_ring_off_no_carrier(0);
+               mmi_vc_ring_off_screen();
     }
 }
 
@@ -260,7 +263,7 @@ void mmi_video_call_reject_req(BOOL bye)
     } 
        else 
        {
-        mmi_vc_ring_off_no_carrier(0);
+               mmi_vc_ring_off_screen();
     }
 }
 
index 16a493e..08eb868 100644 (file)
@@ -103,6 +103,11 @@ lv_vc_call_obj_ext_t * mmi_vc_call_get_ext(void)
     return(ext);
 }
 
+static void mmi_vc_call_params_clean(void)
+{
+       _lv_memset_00(&s_video_call_params, sizeof(MMI_VIDEO_CALL_PARAMS_T));
+}
+
 static void mmi_vc_call_screen_clean(void)
 {
        VIDEO_CALL_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: \n", __FUNCTION__, __LINE__);
@@ -168,14 +173,6 @@ static void voip_volume_btn_action(lv_obj_t * obj, lv_event_t e)
     slider_create(NULL, SETTING_VOIP_SPEAKER, 40, voip_slider_action);
 }
 
-static void voip_phone_obj_hide_anim_end(lv_anim_t * anim)
-{
-    (void)anim;
-    printf("%s %d\n", __FUNCTION__, __LINE__);
-
-    mmi_vc_call_screen_clean();
-}
-
 static void mmi_vc_get_time_elaps(uint32_t last_time, char * str, int8_t size)
 {
     hal_rtc_t rtc_curr;            // current rtc time
@@ -224,12 +221,6 @@ static lv_obj_t * mmi_vc_ring_off_content_create(lv_obj_t * par)
     }
 
     lv_obj_add_style(content, LV_OBJ_PART_MAIN, &lv_watch_cont_opa1);
-    //lv_obj_set_size(content, 204, 44);
-    //if(ext->vc_ui == MMI_VC_UI_INCOMING || ext->vc_ui == MMI_VC_UI_DIALING) {
-    //    lv_obj_align(content, obj, LV_ALIGN_IN_TOP_MID, 0, 10);
-    //} else {
-    //    lv_obj_align(content, obj, LV_ALIGN_CENTER, 0, -12);
-    //}
     lv_obj_set_size(content, LV_HOR_RES - 40, 50);
        lv_obj_align(content, obj, LV_ALIGN_CENTER, 0, -10);
     lv_cont_set_layout(content, LV_LAYOUT_CENTER);
@@ -433,34 +424,58 @@ static void mmi_vc_connected_animation(lv_obj_t * obj)
     lv_anim_start(&a);
 }
 
-void mmi_vc_ring_off_no_carrier(uint8_t isNoCarrier)
+static void mmi_vc_ring_off_obj_hide_anim_end(lv_anim_t * anim)
 {
-/*
-    if((false == s_video_call_params.ring_off_timeout)
-            && (1 == isNoCarrier)
-            && (MMI_VIDEO_CALL_STATE_NONE == s_video_call_params.state)) 
-    {
-               VIDEO_CALL_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: \n", __FUNCTION__, __LINE__);
-        return;
-    }
-*/
+    (void)anim;
+    printf("%s %d\n", __FUNCTION__, __LINE__);
+
+    mmi_vc_call_screen_clean();
+}
 
+void mmi_vc_ring_off_screen(void)
+{
        VIDEO_CALL_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: \n", __FUNCTION__, __LINE__);
 
     // stop playing tone
     Hal_Tone_Play_End();
+    Hal_Audio_Manage_End_Ind(AUDIO_CTRL_PRIORITY_2);
 
     // stop timer
-    mmi_vc_ring_off_timer_stop();
-       mmi_vc_dialing_timer_stop();
-       mmi_vc_connecting_timer_stop();
+    mmi_vc_all_timer_stop();
 
+       //
+    voip_signal_check_stop();
+    voip_rat_check_stop();
+       
     // create ring off UI
-    lv_obj_t * activity_obj = lv_watch_get_activity_obj(ACT_ID_VOIPPHONE);
-    if(activity_obj) 
+    lv_vc_call_obj_ext_t * ext = mmi_vc_call_get_ext();
+    if(NULL != ext) 
        {
-        mmi_video_call_phone_ring_off_create();
-    }
+           if(ext->vc_ui == MMI_VC_UI_INCOMING || ext->vc_ui == MMI_VC_UI_DIALING) 
+               {
+               if(ext->phone_status_label) {
+                   lv_label_set_text(ext->phone_status_label, "");
+               }
+           }
+        mmi_vc_ring_off_content_create(mmi_vc_call_get_obj());
+
+           if(ext->phone_animation_obj)
+               {
+               lv_obj_del(ext->phone_animation_obj);
+               ext->phone_animation_obj = NULL;
+           }
+
+           /* set speaker volume to nv when leaving activiry's slider */
+           voip_set_volume_when_slider_act();
+
+           /* phone cleanup when anim end*/
+           lv_anim_t a;
+           lv_anim_init(&a);
+           lv_anim_set_var(&a, mmi_vc_call_get_obj());
+           lv_anim_set_ready_cb(&a, (lv_anim_ready_cb_t)mmi_vc_ring_off_obj_hide_anim_end);
+           lv_anim_set_time(&a, VOIP_PHONE_RING_OFF_CONTINUE_TIME);
+           lv_anim_start(&a);
+       }
 
     if(MMI_MODEM_CALL_STATE_NULL != phone_get_call_state()) 
        {
@@ -468,10 +483,9 @@ void mmi_vc_ring_off_no_carrier(uint8_t isNoCarrier)
         Hal_Set_Voice_Call_Status(VOICE_CALL_END);
         Hal_Disconnect_BT_Audio_Path();
     }
-    Hal_Audio_Manage_End_Ind(AUDIO_CTRL_PRIORITY_2);
     watch_wakeup_time_reset();
 
-    Hal_Mem_Set(&s_video_call_params, 0x0, sizeof(MMI_VIDEO_CALL_PARAMS_T));
+       mmi_vc_call_params_clean();
 }
 
 static bool mmi_vc_check_mo_permission(void)
@@ -782,29 +796,21 @@ void mmi_vc_connecting_timer_stop(void)
        }
 }
 
+void mmi_vc_all_timer_stop(void)
+{
+       mmi_vc_dialing_timer_stop();
+       mmi_vc_connecting_timer_stop();
+       mmi_vc_ring_off_timer_stop();
+}
+
 static void mmi_vc_ui_prepare_destory(lv_obj_t * activity_obj)
 {
        VIDEO_CALL_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: \n", __FUNCTION__, __LINE__);
 
     lv_watch_png_cache_all_free();
 
-    // stop playing tone
-    Hal_Tone_Play_End();
-
     // ring off
     mmi_vc_ring_off_action(NULL, LV_EVENT_CLICKED);
-
-    // stop ring off timer
-    mmi_vc_ring_off_timer_stop();
-
-    // stop callreq timer
-    mmi_vc_dialing_timer_stop();
-
-       //stop
-       mmi_vc_connecting_timer_stop();
-
-    Hal_Mem_Set(&s_video_call_params, 0x0, sizeof(MMI_VIDEO_CALL_PARAMS_T));
-    s_video_call_params.state = MMI_VIDEO_CALL_STATE_NONE;
 }
 
 static void mmi_vc_hook_action(lv_obj_t * btn, lv_event_t e)
@@ -816,11 +822,12 @@ static void mmi_vc_hook_action(lv_obj_t * btn, lv_event_t e)
 
        VIDEO_CALL_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: \n", __FUNCTION__, __LINE__);
 
-    //if(btn) {
-    //    lv_obj_set_click(btn, false);
-    //}
-
+       //
     Hal_Tone_Play_End();
+    Hal_Audio_Manage_End_Ind(AUDIO_CTRL_PRIORITY_2);
+
+    // stop timer
+    mmi_vc_all_timer_stop();
 
        mmi_vc_call_action_connecting();
        
@@ -828,66 +835,8 @@ static void mmi_vc_hook_action(lv_obj_t * btn, lv_event_t e)
     int8_t ret = mmi_video_call_answer_req(s_vc_ticket);
     if(ret < 0) 
        {
-        mmi_vc_ring_off_no_carrier(0);
-    }
-}
-
-
-lv_res_t mmi_video_call_phone_ring_off_create()
-{
-       VIDEO_CALL_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: \n", __FUNCTION__, __LINE__);
-
-    lv_vc_call_obj_ext_t * ext = mmi_vc_call_get_ext();
-    if(ext == NULL) 
-       {
-        return(LV_RES_INV);
-    }
-
-    // stop callreq timer
-    mmi_vc_dialing_timer_stop();
-
-    if(ext->vc_ui == MMI_VC_UI_INCOMING || ext->vc_ui == MMI_VC_UI_DIALING) 
-       {
-        if(ext->phone_status_label) {
-            lv_label_set_text(ext->phone_status_label, "");
-        }
-
-        mmi_vc_ring_off_content_create(mmi_vc_call_get_obj());
-    } 
-       else if(ext->vc_ui == MMI_VC_UI_CONNECTED) 
-       {
-        mmi_vc_ring_off_content_create(mmi_vc_call_get_obj());
+               mmi_vc_ring_off_screen();
     }
-
-    if(ext->phone_animation_obj) {
-        lv_obj_del(ext->phone_animation_obj);
-        ext->phone_animation_obj = NULL;
-    }
-
-    /* set speaker volume to nv when leaving activiry's slider */
-    voip_set_volume_when_slider_act();
-
-    /* phone cleanup when anim end*/
-    lv_anim_t a;
-    lv_anim_init(&a);
-    lv_anim_set_var(&a, mmi_vc_call_get_obj());
-    lv_anim_set_ready_cb(&a, (lv_anim_ready_cb_t)voip_phone_obj_hide_anim_end);
-    lv_anim_set_time(&a, VOIP_PHONE_RING_OFF_CONTINUE_TIME);
-    lv_anim_start(&a);
-
-    voip_signal_check_stop();
-    voip_rat_check_stop();
-
-    return(LV_RES_OK);
-}
-
-static void mmi_vc_ring_off_timeout_cb(void * para)
-{
-       VIDEO_CALL_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: \n", __FUNCTION__, __LINE__);
-       
-    s_video_call_params.ring_off_timer_id = NULL;
-    s_video_call_params.ring_off_timeout  = true;
-    mmi_vc_ring_off_no_carrier(0);
 }
 
 void mmi_vc_ring_off_action(lv_obj_t * btn, lv_event_t e)
@@ -899,20 +848,16 @@ void mmi_vc_ring_off_action(lv_obj_t * btn, lv_event_t e)
 
        VIDEO_CALL_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: %d\n", __FUNCTION__, __LINE__, s_video_call_params.state);
 
-       mmi_vc_dialing_timer_stop();
-    mmi_vc_connecting_timer_stop();
+    // stop playing tone
+    Hal_Tone_Play_End();
+    Hal_Audio_Manage_End_Ind(AUDIO_CTRL_PRIORITY_2);
        
-/*
-    if(false == s_video_call_params.ring_off) 
-       {
-        s_video_call_params.ring_off = true;
-
-        if(NULL == s_video_call_params.ring_off_timer_id) 
-               {
-            s_video_call_params.ring_off_timer_id = Hal_Timer_Start(VOIP_RING_OFF_TIMER_LEN, mmi_vc_ring_off_timeout_cb, NULL, 0);
-        }
-    }
-*/
+       //
+    voip_signal_check_stop();
+    voip_rat_check_stop();
+       
+    // stop timer
+    mmi_vc_all_timer_stop();
 
     switch(s_video_call_params.state) 
        {
@@ -922,7 +867,6 @@ void mmi_vc_ring_off_action(lv_obj_t * btn, lv_event_t e)
             break;
 
         case MMI_VIDEO_CALL_STATE_INCOMING:
-            Hal_Tone_Play_End();
             mmi_video_call_reject_req(TRUE);
             break;
 
@@ -930,9 +874,6 @@ void mmi_vc_ring_off_action(lv_obj_t * btn, lv_event_t e)
             mmi_video_call_hangup_req(TRUE);
             break;
        }
-
-    voip_signal_check_stop();
-    voip_rat_check_stop();
 }
 
 void mmi_ui_msg_update_vc_call_stop(void)
@@ -1458,27 +1399,13 @@ void mmi_vc_call_action_incoming(char * number, MODEM_VIDEO_CALL_TYPE type,
                                                                                                        char * t_ticket, char * t_appkey, char * t_secret, 
                                                                                                        char * t_tokens, char * t_uid)
 {
-/*
-       if(true == mmi_active_screen_is_prohibit_interrupted()
-               || true == is_rat_gsm()
-               #ifdef __MMI_ZHSX_SUPPORT_DO_NOT_DISTURB__
-               || true == mmi_watch_is_in_do_not_disturb_time()
-               #endif
-               //|| true == mmi_video_call_is_in_call()
-               )
-       {
-               VIDEO_CALL_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: \n", __FUNCTION__, __LINE__);
-               
-        mmi_video_call_reject_req(TRUE);
-        return;
-    }
-*/
+       VIDEO_CALL_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: \n", __FUNCTION__, __LINE__);
 
     if(AUDIO_CTRL_PRIORITY_2 == Hal_Audio_Manage_Start_Req(AUDIO_CTRL_PRIORITY_2, mmi_vc_audio_ctrl_callback))
     {
                VIDEO_CALL_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: \n", __FUNCTION__, __LINE__);
                
-               Hal_Mem_Set(&s_video_call_params, 0x0, sizeof(MMI_VIDEO_CALL_PARAMS_T));
+               mmi_vc_call_params_clean();
                s_video_call_params.call_type = type;
                s_video_call_params.state = MMI_VIDEO_CALL_STATE_INCOMING;
                strncpy(s_video_call_params.number, number, NV_WATCH_VC_CONTACT_NUMBER_LEN - 1);
@@ -1525,27 +1452,6 @@ void mmi_vc_call_action_incoming(char * number, MODEM_VIDEO_CALL_TYPE type,
                // ui
                mmi_ui_msg_action_vc_call_incoming();
     }
-    else
-    { 
-               VIDEO_CALL_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: %s,%d\n", __FUNCTION__, __LINE__);
-               
-        // auto reject
-        mmi_video_call_reject_req(FALSE);
-        voip_signal_check_stop();
-        voip_rat_check_stop();
-
-        // stop ring off timer
-        mmi_vc_ring_off_timer_stop();
-
-        // stop callreq timer
-        mmi_vc_dialing_timer_stop();
-
-        Hal_Mem_Set(&s_video_call_params, 0x0, sizeof(MMI_VIDEO_CALL_PARAMS_T));
-        voip_set_volume_when_slider_act();
-        mmi_vc_call_screen_clean();
-        lv_watch_png_cache_all_free();
-        Hal_Audio_Manage_End_Ind(AUDIO_CTRL_PRIORITY_2);
-    }
 }
 
 bool mmi_vc_call_action_incoming_no_permission(void)
@@ -1570,9 +1476,7 @@ static void mmi_vc_call_connecting_timeout_cb(void * para)
 {
        VIDEO_CALL_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: \n", __FUNCTION__, __LINE__);
 
-    mmi_vc_connecting_timer_stop();
-    mmi_video_call_hangup_req(TRUE);
-       //mmi_vc_ring_off_action(NULL, LV_EVENT_CLICKED);
+       mmi_vc_ring_off_action(NULL, LV_EVENT_CLICKED);
 }
 
 void mmi_vc_call_action_connecting(void)
@@ -1589,13 +1493,11 @@ void mmi_vc_call_action_connecting(void)
        s_video_call_params.state = MMI_VIDEO_CALL_STATE_CONNECTING;
 
        // stop timer
-       mmi_vc_dialing_timer_stop();
-    mmi_vc_connecting_timer_stop();
+    mmi_vc_all_timer_stop();
 
        // stop playing tone
        Hal_Tone_Play_End();
-
-       //Hal_Set_Voice_Call_Status(VOICE_CALL_START);
+    Hal_Audio_Manage_End_Ind(AUDIO_CTRL_PRIORITY_2);
 
        if(NULL == s_video_call_params.connecting_timer_id) 
        {
@@ -1618,11 +1520,11 @@ void mmi_vc_call_action_connected(void)
     s_video_call_params.state = MMI_VIDEO_CALL_STATE_CALLING;
 
     // stop timer
-    mmi_vc_dialing_timer_stop();
-       mmi_vc_connecting_timer_stop();
+    mmi_vc_all_timer_stop();
 
     // stop playing tone
     Hal_Tone_Play_End();
+    Hal_Audio_Manage_End_Ind(AUDIO_CTRL_PRIORITY_2);
 
     Hal_Set_Voice_Call_Status(VOICE_CALL_START);
 
@@ -1634,8 +1536,7 @@ static void mmi_vc_call_dialing_timeout_cb(void * para)
 {
        VIDEO_CALL_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: \n", __FUNCTION__, __LINE__);
 
-    mmi_vc_dialing_timer_stop();
-    mmi_video_call_hangup_req(TRUE);
+       mmi_vc_ring_off_action(NULL, LV_EVENT_CLICKED);
 }
 
 void mmi_vc_call_action_dialing_ext(char * t_ticket, char * t_appkey, char * t_secret, char * t_tokens, char * t_uid)
@@ -1681,10 +1582,9 @@ void mmi_vc_call_action_dialing(char * number, MODEM_VIDEO_CALL_TYPE type)
        VIDEO_CALL_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: %s,%d\n", __FUNCTION__, __LINE__, number, type);
 
     // stop timer
-    mmi_vc_ring_off_timer_stop();
-    mmi_vc_dialing_timer_stop();
+    mmi_vc_all_timer_stop();
 
-    Hal_Mem_Set(&s_video_call_params, 0x0, sizeof(MMI_VIDEO_CALL_PARAMS_T));
+       mmi_vc_call_params_clean();
     s_video_call_params.state = MMI_VIDEO_CALL_STATE_DIALING;
     s_video_call_params.call_type = type;
     strcpy(s_video_call_params.number, number);
@@ -2127,6 +2027,17 @@ void mmi_vc_activity_destroy_req(void)
         return;
     }
 
+    // stop playing tone
+    Hal_Tone_Play_End();
+    Hal_Audio_Manage_End_Ind(AUDIO_CTRL_PRIORITY_2);
+
+    // stop timer
+    mmi_vc_all_timer_stop();
+       
+       //
+    voip_signal_check_stop();
+    voip_rat_check_stop();
+
     switch(s_video_call_params.state) 
        {
         case MMI_VIDEO_CALL_STATE_NONE:
@@ -2135,7 +2046,6 @@ void mmi_vc_activity_destroy_req(void)
             break;
 
         case MMI_VIDEO_CALL_STATE_INCOMING:
-            Hal_Tone_Play_End();
             mmi_video_call_reject_req(FALSE);
             break;
 
@@ -2144,15 +2054,7 @@ void mmi_vc_activity_destroy_req(void)
             break;
     }
 
-    voip_signal_check_stop();
-    voip_rat_check_stop();
-
-    // stop timer
-    mmi_vc_ring_off_timer_stop();
-    mmi_vc_dialing_timer_stop();
-    mmi_vc_connecting_timer_stop();
-
-    Hal_Mem_Set(&s_video_call_params, 0x0, sizeof(MMI_VIDEO_CALL_PARAMS_T));
+       mmi_vc_call_params_clean();
     voip_set_volume_when_slider_act();
     mmi_vc_call_screen_clean();
     lv_watch_png_cache_all_free();