Преглед изворни кода

Z991239-6192 #comment: 免提麦克风采集不到音频故障阈值优化

80274480 пре 4 месеци
родитељ
комит
338360c634

+ 3 - 3
Module/mod_mediacontroller/capture.h

@@ -54,9 +54,9 @@ extern "C"{
 #define RVC_CAM_INTERVAL_TIME 3000
 #endif // !RVC_CAM_INTERVAL_TIME
 
-#ifndef AUDIO_BUG_THRESHOLD
-#define AUDIO_BUG_THRESHOLD 6
-#endif // !AUDIO_BUG_THRESHOLD
+#ifndef AUDIO_BUG_THRESHOLD_TIME
+#define AUDIO_BUG_THRESHOLD_TIME 60
+#endif // !AUDIO_BUG_THRESHOLD_TIME
 
 
 

+ 9 - 2
Module/mod_mediacontroller/mod_mediacontroller.cpp

@@ -135,6 +135,7 @@ CMediaControllerEntity::CMediaControllerEntity(): m_capture(NULL), m_salesaudio_
 	m_iCamTimeout = CAMERA_TIMEOUT;
 	m_iDelayTime = RVC_MAX_DELAY_TIME;
 	m_interValTime = RVC_CAM_INTERVAL_TIME;
+	m_iAudioTimeout = AUDIO_BUG_THRESHOLD_TIME;
 	m_bOnBusiness = false;
 	m_bJsOccupyCamera = false;
 	m_bCameraOffTimerOn = false;
@@ -465,12 +466,14 @@ ErrorCodeEnum CMediaControllerEntity::GetMediaConfig()
 	int itimeout = CAMERA_TIMEOUT;
 	int iDelayTime = RVC_MAX_DELAY_TIME;
 	unsigned int intervaltime = RVC_CAM_INTERVAL_TIME;
+	int iaudiotimeout = AUDIO_BUG_THRESHOLD_TIME;
 
 	Error = GetFunction()->OpenConfig(Config_CenterSetting, spConfig);
 	if (Error == Error_Succeed){
 		table.AddEntryInt("MediaController", "CamTimeOut", itimeout, CAMERA_TIMEOUT);
 		table.AddEntryInt("MediaController", "MaxDelayTime", iDelayTime, RVC_MAX_DELAY_TIME);
 		table.AddEntryUInt("MediaController", "InterValTime", intervaltime, RVC_CAM_INTERVAL_TIME);
+		table.AddEntryInt("MediaController", "AudioTimeOut", iaudiotimeout, AUDIO_BUG_THRESHOLD_TIME);
 		Error= table.Load(spConfig);
 	}
 	 
@@ -489,6 +492,10 @@ ErrorCodeEnum CMediaControllerEntity::GetMediaConfig()
 		if (intervaltime <= RVC_CAM_INTERVAL_TIME && intervaltime >= RVC_CAM_INTERVAL_TIME / 3) {
 			m_interValTime = intervaltime;
 		}
+
+		if (iaudiotimeout > 0) {
+			m_iAudioTimeout = iaudiotimeout;
+		}
 	}
 
 	return Error;
@@ -627,12 +634,12 @@ void CMediaControllerEntity::OnTimeHandfreeMicroStatusCheck()
 
 	if (nHandfreeinAudioTime > 0)
 	{
-		if (((y2k_time_now() - nHandfreeinAudioTime) > 60) && !bTimeout)
+		if (((y2k_time_now() - nHandfreeinAudioTime) > m_iAudioTimeout) && !bTimeout)
 		{
 			bTimeout = true;
 			DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM)("bTimeout.");
 		}
-		else if (((y2k_time_now() - nHandfreeinAudioTime) < 60) && bTimeout)
+		else if (((y2k_time_now() - nHandfreeinAudioTime) < m_iAudioTimeout) && bTimeout)
 		{
 			bTimeout = false;
 			DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM)("change handfree audio in from bTimeout to ok.");

+ 1 - 0
Module/mod_mediacontroller/mod_mediacontroller.h

@@ -180,6 +180,7 @@ private:
 	int m_iDelayTime;
 	int m_interValTime;
 	bool m_bCameraOffTimerOn;
+	int m_iAudioTimeout;
 
 	CSimpleStringA m_strHttpServerAddr;
 	CSimpleStringA m_strHttpServerAPI;