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 above
How 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
here
FAQ
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