Could you show your setup?
I just noticed that sometimes my macro doesn't work because OBS Application Audio Capture doesn't pick up Sound when its hidden. -.-
This is a solution for my specific situation. The audio is captured from a microphone and there is some background noise. Therefore, values of about -30-40 dB are almost always present in the incoming signal. Because of this, I set the response threshold to approximately -24 dB. When I speak into the microphone, the signal level from it is guaranteed to be higher (to the right side, towards 0dB). When I am silent, the signal level from the microphone is below -24dB (to the left, towards -60dB).
Moreover, in my case, it is important that the source does not turn off instantly as soon as I pause. To do this, a pause of 5 seconds is set before the macro works. Therefore, pauses in my speech of up to 5 seconds do not affect the showing of the source.
Also in my case it was important that the source appeared immediately as soon as I started speaking. Therefore, the timer for the second macro is not activated— this macro will work immediately as soon as a signal is received from the microphone. That is why I have two separate macros, with different conditions for turning the source on and off depending on the microphone volume.
Your situation may have different requirements and logic of action. Just when you set the response threshold, keep in mind that already at -40dB a song with 100% volume will be heard very quietly, at -50dB it will no longer be audible almost at all. So these levels are quite enough for cutting off.