Browse Source

libobs: Extend levels_updated signal with muted flag

Palana 10 years ago
parent
commit
0f2310a8bc
1 changed files with 6 additions and 3 deletions
  1. 6 3
      libobs/obs-audio-controls.c

+ 6 - 3
libobs/obs-audio-controls.c

@@ -78,7 +78,7 @@ static const char *fader_signals[] = {
 
 static const char *volmeter_signals[] = {
 	"void levels_updated(ptr volmeter, float level, "
-			"float magnitude, float peak)",
+			"float magnitude, float peak, bool muted)",
 	NULL
 };
 
@@ -217,7 +217,8 @@ static void signal_volume_changed(signal_handler_t *sh,
 
 static void signal_levels_updated(signal_handler_t *sh,
 		struct obs_volmeter *volmeter,
-		const float level, const float magnitude, const float peak)
+		const float level, const float magnitude, const float peak,
+		bool muted)
 {
 	struct calldata data;
 
@@ -227,6 +228,7 @@ static void signal_levels_updated(signal_handler_t *sh,
 	calldata_set_float(&data, "level",     level);
 	calldata_set_float(&data, "magnitude", magnitude);
 	calldata_set_float(&data, "peak",      peak);
+	calldata_set_bool (&data, "muted",     muted);
 
 	signal_handler_signal(sh, "levels_updated", &data);
 
@@ -406,7 +408,8 @@ static void volmeter_source_data_received(void *vptr, calldata_t *calldata)
 	pthread_mutex_unlock(&volmeter->mutex);
 
 	if (updated)
-		signal_levels_updated(sh, volmeter, level, mag, peak);
+		signal_levels_updated(sh, volmeter, level, mag, peak,
+				calldata_bool(calldata, "muted"));
 }
 
 static void volmeter_update_audio_settings(obs_volmeter_t *volmeter)