[Tool] f4obscontroller - Automatically Record BMS Sessions With OBS
-
Description
I myself often forgets to start or stop OBS recordings when I enter or exit 3D, and this meant either missing out on parts or all of the flight. So I made this tool to use BMS shared memory flags to identify when the player is in 3D and manage OBS recordings.Eventually I expanded the tool to manage OBS Push-to-Talk (since OBS doesn’t take DX bindings as PTT keys). This helps to filter out background noises when the player isn’t talking over the radio.
What it does
While the program is running, it connects to OBS through obs-websocket (included with OBS) and starts the scene recording when the player enters 3D. It will keep the audio capture input in the current scene muted unless the player is talking over VHF, UHF or Guard. Normal game sounds are not affected by the program.What you need
OBS Studio Version 28.0.0 or aboveHow to use
OBS- Download the zip and place the executable and settings.xml in the same directory somewhere on disk
- Launch OBS
- Navigate to tools -> obs-websocket Settings
- Check Enable Websocket server to enable obs-websocket
- Uncheck Enable Authentication (Unless you are running obs-websocket on an unprotected port exposed to the internet, there’s no need for a password)
- Click OK
Settings.txt
- Configure server.port and set that to the same port # in the obs-websocket settings
- Configure server.password If you had set a password in step 5 from above, otherwise either delete the line or leave it commented out (preceded by “;”)
- Configure scene.name This should be the Scene that you are using to record BMS.
- Configure audio.capture.feed if you want f4obscontroller to handle Push-To-Talk microphone capture in OBS, set this to the name of the audio input source that you configured in OBS to record microphone input. Otherwise, you can delete this line
Run f4obscontroller.exe to start the program. You can leave it running in the background and it will pickup when BMS has entered 3D.
If you need to exit and re-enter 3D, f4obscontroller will simply stop the current recording and start with a new one.
Download
hereFAQ
My IVC Capture is not working, why?
Two things, make sure the audio.capture.feed setting matches the name of the microphone input source in OBS. And make sure that IVC is running and connected to a server, since the shared memory flags are not set by BMS when IVC is not running.Questions, bug reports, and suggestions are welcome
-
So I tried your tool and it does start OBS automatically but I couldn’t get it to unmute the Audio Input Capture I have set in my OBS scene when I push UHF/VHF buttons on my HOTAS.
I think you are on to a creating a good useful tool though. Keep up the good work.
-
@Todd1215
2 things, make sure the setting.txt matches the name of the source:
audio.capture.feed=Audio Input Capture
And secondly this will only work in multiplayer with IVC running and connected to a server. Since BMS do not set the shared memory flags when IVC is not running.
-
Ok I test in SP so that is why. Thanks for the reply and keep up the good work.
-
@riceygringo Love this little app! Thank you for creating it. One thing though & maybe I’ve missed a step…I still hear my breathing into the mic. Is this expected? Or did I miss something in the setup??
Disregard the mic issue. I somehow had 2 mic inputs. The Audio Input capture plus Mic/Aux. Muting the Mic/Aux solved my problems.