Exactly what do you do with the sine wave? I couldn't quite understand what the purpose of the sine wave was.
Different DAW (Ardour), different OS (Ubuntu Studio), same idea.
The far left channel strip (black at the top) has the sinewave generator on it. (C* Sin) It's technically an effects plugin, just like an EQ, compressor, reverb, or whatever else, but it ignores its input and simply outputs a pure sinewave. Following that on the strip are two aux sends (Ctrl_Mics and Ctrl_Play), and then the Fader. Those aux sends are what the OSC messages control, as a hard-cut on or off. (0dB or -200dB, which Ardour interprets as -oo)
The final output of that channel strip goes nowhere. (big button/label below the fader) So the only output is the aux sends, and they only go to the sidechains of several gates.
The Room Mic Mix bus (rightmost red, and slightly darker) has, after its bus processing, another aux send that goes to a loopback for something else to grab the always-on room sound. (I use it to drive a "convenience meter" in OBS, but OBS doesn't send it anywhere) Then the fader, and then an A/V sync delay. After that is a gate, which takes its sidechain from the Adv. SS controlled aux send that has the sinewave on it.
500ms Attack and 500ms Release, cause the mic mix to fade in and out, respectively, at that rate, when the sidechain signal comes and goes. As shown here, the sinewave is present (SideChain and Envelope meters), and so the gate is open (no gain reduction), but nothing is actually going through it at the moment (In and Out meters are empty).
Following that, is another aux send (post-fade this time, as you can see from its position relative to the fader, which also controls its color in this DAW), to give the option to record the controlled but not ducked signal. And finally, the ducker, which is a compressor that is set to be super aggressive (as you can see from its graph) and takes its sidechain from the "Rm Mics SC" aux send on the Meeting Rtrn channel (rightmost yellow).
Finally, the output of the Room Mic Mix is routed to the Meeting Send bus (hence the ducker/"squasher", to avoid a debilitating echo to the remote people), which is itself supposed to go to a loopback that the meeting picks up, but the loopbacks are not active for these screenshots.
The Meeting Rtrn channel (rightmost yellow) has its remote-control gate also side-chained to the same Ctrl_Mics signal, since I'm trying to consider the local and remote people to be as equal as I practically can.
The Playback channel (green) is fed from a loopback that becomes the OS's default audio device when I run the script that sets all of this up for real. It has a post-fade aux that goes to the Local Spkr bus, and then another gate that is side-chained to the *other* Adv. SS controlled aux send. (Ctrl_Play) Its final output is routed to Meeting Send (yellow) and Record (purple)
The Local Spkr bus has a speaker-correction EQ ready to use, and is supposed to connect to the physical device which is also not present for these screenshots.
The Record bus goes to another loopback, which is the only one that OBS actually does something with. As you can see, there's a lot of complex processing to come up with that signal, and by the time it gets here, it's completely finished. OBS is a dumb straight-wire passthrough.
But OBS has a gate. With the Noise Reduction you get that too. And it is easy to hotkey a MIC button.
Yes, sorta, and yes.
- OBS has a gate, but not like this!
- Noise Reduction is NOT a gate. I have one as a plugin on each of the raw mic inputs individually (called "Noise repellent" here, as one of several different options), as well as the Meeting Rtrn.
- Noise Reduction tries to figure out what speech is, specifically, and remove everything else. No threshold of input level. Lots of people have just slapped them on without understanding that, and wondered what happened to their music or the more repetitive sound effects.
- A gate compares its side-chain input (which is normally connected to its signal input unless specified otherwise) to some threshold. No more logic than that. If loud, open the gate (allow the entire signal through), according to the Attack time. If quiet, close the gate (stop everything), according to the Release time. It's not actually as useful as people tend to think it is, because an open gate allows noise through too. It can't "unmix".
- For low-level noise that is easily drowned out, it can be useful as a subtle clean-up, but louder noise is often more distracting when it comes and goes than if it simply stays there.
- It can also work for drums, to help a trailing "ring" to fade out and to make the hit more "punchy", in which case it's used to create a sound rather than fix a problem.
- Once you understand Adv. SS, and your DAW, it's not all that much harder to reassign that same hotkey to trigger a macro that sends a message to the DAW. Yes, there are more steps involved, but the amount of control and flexibility that you get from that is lightyears beyond what OBS could even dream of!
...and do it all even if you have only one computer...
My rig is all on one computer:
- Two simultaneous instances of OBS, producing different content at the same time, with Adv. SS on both, and using WebSockets to coordinate them.
- Adv. SS also sends OSC messages to the DAW on the same machine, to coordinate that.
- The VCam from one OBS gets picked up by the meeting app. (actually an external instance of the Chrome web browser) Its local audio, like a video soundtrack, goes through the Monitor to the DAW, and nowhere else. As detailed above, the Meeting Send gets its audio from the DAW.
- The other OBS window-captures the meeting and gets the Record signal from the DAW.
Mine is all free too, *including the operating system*!
Ubuntu Studio even comes with (almost) all of the parts pre-installed and already working. You just have to install Adv. SS, which is not hard at all, and put everything together.
ubuntustudio.org
Don't leave anything pretty important up to the advanced scene switcher which acts pretty expiremental at best listening for messages and missing quite a lot of scene switching.
Works for me. (quick composite of two screenshots, as the content is taller than my screen)
This matches any scene that starts with "Feat - ", following my naming convention, and tells my DAW to turn off the Mics and turn on the Playback. (channel strip 1, aux sends 1 and 2, -200dB and 0dB)
Another part of my naming convention is that a macro that ends in (*) also has a docked button in OBS's main window:
A different rig has maybe 30 macros at a guess, about half of which are actually looking for something and the other half are a library of frequently used subroutines. All of that works too. I've attached the all-at-a-glance documentation that I keep for it.
Advanced Scene Switcher is a programming language, full stop. It has to be, to allow as much flexibility as it does. So you need to think like that to understand what's going on. Once you do, and get its instructions right, it's rock-solid.