|
|
@@ -806,7 +806,7 @@ void CMediaControllerEntity::OnTimeCameraStatusCheck()
|
|
|
}
|
|
|
|
|
|
//重新打开摄像头
|
|
|
- if((m_nCameraErrorCode == Error_EnvCamera)&&(iEnvCameraRestartNum<CAMERA_RESTARTNUM))
|
|
|
+ if((m_nCameraErrorCode == Error_EnvCamera)&&(iEnvCameraRestartNum<CAMERA_RESTARTNUM)&&(NULL != m_capture->env_video))
|
|
|
{
|
|
|
if (ReStartCamera(ENVCAMERA) != Error_Succeed){
|
|
|
iEnvCameraRestartNum++;
|
|
|
@@ -821,7 +821,7 @@ void CMediaControllerEntity::OnTimeCameraStatusCheck()
|
|
|
LogWarn(Severity_Low, Error_Debug, LOG_EVT_MEDIACONTROLLER_RESTART_CAME_SUCCESS, "restart env camera success.");
|
|
|
}
|
|
|
}
|
|
|
- else if((m_nCameraErrorCode == Error_OptCamera)&&(iOptCameraRestartNum<CAMERA_RESTARTNUM)&&(eStand2sType == m_eDeviceType))
|
|
|
+ else if((m_nCameraErrorCode == Error_OptCamera)&&(iOptCameraRestartNum<CAMERA_RESTARTNUM)&&(eStand2sType == m_eDeviceType)&&(NULL != m_capture->opt_video))
|
|
|
{
|
|
|
if (ReStartCamera(OPTCAMERA) != Error_Succeed) {
|
|
|
iOptCameraRestartNum++;
|
|
|
@@ -838,7 +838,7 @@ void CMediaControllerEntity::OnTimeCameraStatusCheck()
|
|
|
}
|
|
|
else if (m_nCameraErrorCode == Error_AllCamera)
|
|
|
{
|
|
|
- if (iEnvCameraRestartNum<CAMERA_RESTARTNUM)
|
|
|
+ if ((iEnvCameraRestartNum<CAMERA_RESTARTNUM) && (NULL != m_capture->env_video))
|
|
|
{
|
|
|
if (ReStartCamera(ENVCAMERA) != Error_Succeed) {
|
|
|
iEnvCameraRestartNum++;
|
|
|
@@ -854,7 +854,7 @@ void CMediaControllerEntity::OnTimeCameraStatusCheck()
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- if((iOptCameraRestartNum<CAMERA_RESTARTNUM)&&(eStand2sType == m_eDeviceType))
|
|
|
+ if((iOptCameraRestartNum<CAMERA_RESTARTNUM)&&(eStand2sType == m_eDeviceType)&&(NULL != m_capture->opt_video))
|
|
|
{
|
|
|
if (ReStartCamera(OPTCAMERA) != Error_Succeed) {
|
|
|
iOptCameraRestartNum++;
|
|
|
@@ -2516,6 +2516,7 @@ void MediaServiceSession::Handle_TurnOnCamera(SpReqAnsContext<MediaService_TurnO
|
|
|
DbgToBeidou(ctx->link, __FUNCTION__)();
|
|
|
|
|
|
if (m_pEntity->m_bJsOccupyCamera) {
|
|
|
+ DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM).setResultCode("RTA280C").setAPI(__FUNCTION__)("摄像头正在使用中,请断开连线后再试");
|
|
|
ctx->Answer(Error_DevNotAvailable, LOG_WARN_JSOCCUPYCAMERAING);
|
|
|
return;
|
|
|
}
|
|
|
@@ -2532,20 +2533,22 @@ void MediaServiceSession::Handle_TurnOnCamera(SpReqAnsContext<MediaService_TurnO
|
|
|
#endif
|
|
|
#endif
|
|
|
|
|
|
- if (Error != Error_AllCamera) {
|
|
|
- if (Error_Succeed == Error) {
|
|
|
+ ErrorCodeEnum CameraErrorCode = m_pEntity->m_nCameraErrorCode;
|
|
|
+ if (Error_AllCamera != Error || Error_AllCamera != CameraErrorCode) {
|
|
|
+ if (Error_Succeed == Error || Error_Succeed == CameraErrorCode) {
|
|
|
ctx->Ans.result = 0;
|
|
|
}
|
|
|
- else if (Error_EnvCamera == Error) {
|
|
|
+ else if (Error_EnvCamera == Error || Error_EnvCamera == CameraErrorCode) {
|
|
|
ctx->Ans.result = -1;
|
|
|
}
|
|
|
- else if (Error_EnvCamera == Error) {
|
|
|
+ else if (Error_OptCamera == Error || Error_OptCamera == CameraErrorCode) {
|
|
|
ctx->Ans.result = -2;
|
|
|
}
|
|
|
ctx->Answer(Error_Succeed);
|
|
|
}
|
|
|
else {
|
|
|
ctx->Ans.result = -3;
|
|
|
+ DbgWithLink(LOG_LEVEL_WARN, LOG_TYPE_SYSTEM).setResultCode("RTA2808").setAPI(__FUNCTION__)("上下摄像头都故障,请联系厂商处理");
|
|
|
ctx->Answer(Error_AllCamera, LOG_WARN_ALLCAMERA_ERRORS);
|
|
|
}
|
|
|
}
|