How to: create a Microsoft Teams Soundboard using OBS
I’m old, so I have fond memories of chatting in IRC. Like many people I used mIRC and like many people it was heavily customised. mIRC had a superb plugin model and there was/is? a very vibrant community creating all sorts of things. One I particularly remember was a soundboard. This worked because everyone had the same set of wav files on their computer, and the plugin would look for specially crafted messages and invoke the audio on everyone’s client when it happened. Simple but very effective, and brought a new dimension to text-based chat.
Ever since then, I’ve missed having sound effects in conversations, and I’ve always wanted to bring soundboard functionality to Skype for Business and then Microsoft Teams. I played around with a few ways of doing it in Skype for Business, but until now haven’t found a good way to do it with Microsoft Teams.
Now though, I think I have the answer! As I’ve blogged already I’m a growing fan of using OBS for a great presentation experience. I wondered – could I use OBS to create a soundboard in Microsoft Teams meetings? Answer: YES!
Here’s How to setup OBS as a Microsoft Teams Soundboard
The first thing you need to do is make sure you’re using the NDI Virtual Input plugin for OBS. This routes output from OBS to an audio device that Teams can use. It’s this audio device (and not your microphone) that you’ll choose in Microsoft Teams, so that Teams gets mixed audio of both your microphone and any sound effects you want to add. You can get it from GitHub.
I created a new scene in OBS to house my sounds. You don’t have to do this if you have a simple OBS scene setup already, but I found it helps.
Then, I added a new Media Source for each sound in my soundboard:
I set the location of the wav file I wanted to play, and unchecked “Restart playback when source becomes active”. (if you don’t do this, every sound in your soundboard will play every time you choose the scene!). Repeat for as many sounds as you have, until it looks something like this:
What are all those numbers (I hear you ask). They’re actually just in the names that I’ve given to the sources, but they line up with the hotkeys I’ve set for them.
You set up hotkeys in Settings > Hotkeys. If you scroll to the bottom you’ll find entries for all your sources. Place a hotkey against the “Restart” operation for each source. If it’s a really long wav file (like my lift music) then maybe also a hotkey to stop it as well:
Now, when your soundboard scene is selected, those hotkeys will automatically play your audio files on demand. What’s nice is that they are global hotkeys: as long as OBS is open and the soundboard scene is active, they will work: meaning you can be in Microsoft Teams on a call and they will still work OK.
If you want to be able to hear the sounds yourself as well, then you need to Edit > Advanced Audio Properties and set the “Audio Monitoring” for each of your sounds to “Monitor and Output”. (if you still don’t hear anything, check which speakers you have set up for your monitor speakers in the general settings).
Now all you need to do is make sure you join your next call with the Line (NewTek NDI Audio) device as your microphone, make sure your soundboard scene is selected in OBS, and get ready to make your next meeting more interesting!