MIDIControl - Control OBS, Soundboard, Twitch chat with MIDI Devices

Free MIDIControl - Control OBS, Soundboard, Twitch chat with MIDI Devices

MIDIControl is an external software (Windows Only), to remote control OBS, act as Soundboard, send message in Twitch Chat, with any MIDI controller, like APC (from AKAI), Launchpad (from Novation).

It support profiles/mapping, so you can switch from one to another, to use your MIDI Controller differently if you want to.

Switch scene, show/hide source, mute/unmute any scene/source, show/hide filter, adjust volume ... by pressing a MIDI Key or using MIDI knobs/slider.


Also, you can play any local audio file (like a soundboard) and send messages in your Twitch chat !


Install & enable obs-websocket.

0. Open OBS (with obs-websocket enabled)
1. Start MIDIControl after plugging your MIDI device. Open it from SysTray
2. In "Options", configure the OBS section options. (the MIDI section should be OK by default for a minimal usage).
3. "Add" a new MIDI Key.
4. Press the MIDI key, it should recognise it, and display it on the "Add MIDI Keybind" window.
5. Select the action(s) you wanna assign to this midi Key. Validate.
6. Repeat steps 3->5 for every MIDI key.
7. Save your preset.
8. Reduce the window if you want to.

0. Open OBS.
1. Start MIDIControl after plugging your MIDI device.
2. Press on your MIDI Keys !

If you have an Android device, you can setup it as a MIDI device, for example with DJ PADS or MIDI Controller (if your device supports MIDI)

MIDIControl forwards MIDI events to another virtual MIDI device, in order other apps have access to this events.
First release
Last update
4.53 star(s) 19 ratings

More resources from Etuldan

Latest updates

  1. GoXLR Feedback & Launchkey Mini MKI/MKII

    LED Feedback is enabled for GoXLR actions Support of Launchkey Mini MKI/MKII (thanks to @OSBooter )
  2. GoXLR routing table

    You can now bind your MIDI key to modify (Mute, Unmute, Toggle) the routing table of your GoXLR.
  3. Trigger Hotkeys

    You can now trigger an hotkey in OBS (your don't even need to register a regular key on OBS...

Latest reviews

It woeks as expected but I have a question. How do the drop-down and save/delete buttons work? Where is this list saved? Ive made several key bindings and they are automatically saved and will be recalled when I restart the program but I cant figure out how to save a 2nd set of bindings and save those as an individual unique list.

I recommended this to a friend and they said that they lost all of their bindings after restart. I dont know how they did this. They said they didnt hit any of the "(-)" buttons which would remove a binding. I couldnt find a place where these entries were stored.

Excellent job on getting this to work but some documentation might be helpful.
You need to save (to the current set) after each keybind modification.
If you wanna add a new set, just type the name (in the dropdown), add binds, and save !
This program has a ton of bells and whistles, overall I have used it for a few months and it nails all the functions I used,
-Doesn't handle handshaking when other programs use the midi, (default midi ports plug and play only allows one program per input/output.
-Has twitch chat integration
-Hooks in to all basic obs triggerables, mute toggle, transitions, volume sliders, audio and video filters
-twitch integration requires fiddling the username case. sometimes requires capitalization, sometimes doesn't (not sure if it's just the way the api handles it)
-uses websocket and is simple to setup
Best midi control for OBS i've tested so far!

But still several issues though:
-Very easy to accidentally delete bindings, or even the whole configuration (With just one wrong click!)
-Unclear when Configuration is saved (I regularly lost all changes after closing).
-Led feedback does not follow websocket updates when controls are changed from OBS!
-Led feedback does not update on startup or config change.
-Strange behaviour when i.e. mutes are controlled from multiple bindings.
-No virtual camera controls.
-MIDIcontrol window does not hide/minimize/restore as expected (strange behaviour).
-Fader controls do not synchronize, (they realy should not change current value until nearly the same current OBS value)

And it would be nice to be able to configure the led feedback colors.
Fantastic utility! Could use some tutorial videos but great anyways.
Great utility, we use it with great succes. One feature I would really appreciate is to add a delay to the transition. Now the midi signal is faster than my video signal so you see a the last slide for a few 100ms.
Great tool, can we inclued on the future update an option to trigger hotkey? I use it for a lower thirds plugin here at obs. Thanks a lot men
Thanks for the review ! Trigger Hotkey is the next feature I wanna add (besides bugfixes). I need some investigation on how it work, and it will be probably no dynamic, but I'll try to add at least vanilla (not already covered by classic usage of MIDIControl) and LowerThirds ones.
Excellent tool, thank you so much! However I can't get the MIDI forward to work with LoopMIDI.
I ignored the loopMIDI port but it won't receive any data that I could forward to other apps.
Any help would be greatly appreciated
The setup should autoconfigure LoopMIDI with 2 virtual devices "MIDIControl Forward IN" and "MIDIControl Forward OUT". If not, you can create them manually on loopMIDI then restart MIDIControl.
awesome job ma man is there any way to make the original launchpad leds to work? would be amazing this is by far one of the best tools
Wow! In my honest opinion this is THE ULTIMATE plugin! It adds so much value to OBS so that it can be operated like a professional Studio. The Dev Etuldan is fast and consistent with updates. A must have for anyone who wants to elevate to the next Level!
Really great plugin, especially since the dev keeps updating it! Maybe a good feature will be to add color's when a button is pressed, so when i for example switch to a scene the buttons gets red or green, i think it could be a simple "On button press" option!
LED is bounded to actions in OBS/Soundboard, and not to keypress (for example, keypress on a button linked to a scene change will enable this LED, and disable all other change scene buttons)