|
@@ -602,10 +602,9 @@ static void env_cap_on_frame(void *user_data, video_frame *frame)
|
|
|
InterlockedDecrement(cap->config.ref_env_capture_count);
|
|
|
#else
|
|
|
//__sync_fetch_and_sub(cap->config.ref_env_capture_count, 1);
|
|
|
- pthread_mutex_t sub_clock = PTHREAD_MUTEX_INITIALIZER;
|
|
|
- pthread_mutex_lock(&sub_clock);
|
|
|
+ pthread_mutex_lock(&cap->config.env_mutex);
|
|
|
*(cap->config.ref_env_capture_count) -= 1;
|
|
|
- pthread_mutex_unlock(&sub_clock);
|
|
|
+ pthread_mutex_unlock(&cap->config.env_mutex);
|
|
|
#endif
|
|
|
LogEvent(Severity_Middle, MOD_EVENT_MEDIACONTROLLER_FINISHED_CAPTURE_ENV, "agent capture env ok, and capture env finished!");
|
|
|
}
|
|
@@ -616,11 +615,10 @@ static void env_cap_on_frame(void *user_data, video_frame *frame)
|
|
|
_InterlockedAnd(cap->config.ref_envopt_capture_count, 0xfffffffD);
|
|
|
#else
|
|
|
//__sync_fetch_and_add(cap->config.ref_env_capture_count, 0xfffffffD);
|
|
|
- pthread_mutex_t add_clock = PTHREAD_MUTEX_INITIALIZER;
|
|
|
- pthread_mutex_lock(&add_clock);
|
|
|
+ pthread_mutex_lock(&cap->config.envopt_mutex);
|
|
|
LONG lcount = *(cap->config.ref_envopt_capture_count);
|
|
|
*(cap->config.ref_envopt_capture_count) = (lcount & 0xfffffffD);
|
|
|
- pthread_mutex_unlock(&add_clock);
|
|
|
+ pthread_mutex_unlock(&cap->config.envopt_mutex);
|
|
|
#endif // RVC_OS_WIN
|
|
|
|
|
|
if (*cap->config.ref_envopt_capture_count == 0)
|
|
@@ -781,10 +779,9 @@ static void opt_cap_on_frame(void *user_data, video_frame *frame)
|
|
|
InterlockedDecrement(cap->config.ref_opt_capture_count);
|
|
|
#else
|
|
|
//__sync_fetch_and_sub(cap->config.ref_opt_capture_count, 1);
|
|
|
- pthread_mutex_t add_clock = PTHREAD_MUTEX_INITIALIZER;
|
|
|
- pthread_mutex_lock(&add_clock);;
|
|
|
+ pthread_mutex_lock(&cap->config.opt_mutex);
|
|
|
*(cap->config.ref_opt_capture_count) -= 1;
|
|
|
- pthread_mutex_unlock(&add_clock);
|
|
|
+ pthread_mutex_unlock(&cap->config.opt_mutex);
|
|
|
#endif
|
|
|
LogEvent(Severity_Middle, MOD_EVENT_MEDIACONTROLLER_FINISHED_CAPTURE_OPT, "agent capture opt ok, and capture opt finished!");
|
|
|
}
|
|
@@ -795,10 +792,9 @@ static void opt_cap_on_frame(void *user_data, video_frame *frame)
|
|
|
if (InterlockedDecrement(cap->config.ref_envopt_capture_count) == 0)
|
|
|
#else
|
|
|
//__sync_fetch_and_sub(cap->config.ref_envopt_capture_count,1);
|
|
|
- pthread_mutex_t sub_clock = PTHREAD_MUTEX_INITIALIZER;
|
|
|
- pthread_mutex_lock(&sub_clock);
|
|
|
+ pthread_mutex_lock(&cap->config.envopt_mutex);
|
|
|
*(cap->config.ref_envopt_capture_count) -= 1;
|
|
|
- pthread_mutex_unlock(&sub_clock);
|
|
|
+ pthread_mutex_unlock(&cap->config.envopt_mutex);
|
|
|
if (0 == cap->config.ref_envopt_capture_count)
|
|
|
#endif
|
|
|
{
|