Tuesday, February 25, 2025

Control OBS with a Blackmagic switcher

Yes, this makes an ATEM switcher act like a kind of Streamdeck style interface.

I sometimes want my physical Blackmagic HD switcher as the controlling interface for OBS.  No video needs to pass through the ATEM.  Just using the physical buttons to control the scenes in OBS. 

My method discussed here can directly cut between cameras using the Program bus buttons and can cut between the preview bus.



In a nutshell the code looks at the ATEM software controller and matches the buttons that are lit up on it and compares it to a list of screenshots of the different state of buttons it should look for, then sends a keyboard hotkey to OBS to match its inputs.


The above image shows "CAM3" as being active.  If that image matches one of the pictures that comes with the script, the code then executes the appropriate sequence to make OBS match.

I'm using dual monitor setup, (not required but easier), ATEM software in my primary and OBS in my OBS secondary monitor, both at 1920x1080 resolution

We use a series of HOTKEYS programmed in OBS to allow the BM_OBS program to send commands to OBS.  It uses function keys F13-F24 so stays out of the way of most other shortcut systems that could be in play.




Here are the functions I have working:
  • Program Bus 1-8
  • Preview Bus 1-8
  • Color Bars
  • Black / Fade to black
  • CUT and  FADE

OK Here is how to make it work!

Here is a google drive link to the files

Download the files and place everything, including the images all in the same subfolder.  
Don't put the images in a subfolder at this time.
  • IMAGES.ZIP - this contains all the images that the script will use to detect button presses.

  • BM-OBS.AHK source file.  If you want, you can install AutoHotkey and run this from there.

  • BM-OBS.EXE   this is an executable of the AutoHotkey code, if you don't want to bother installing AutoHotkey application.  You can run it with this as stand alone

  • BM_OBS_Template.json  import into OBS.  It contains a scene with all the appropriate hotkeys setup and with 8 basic scenes to match the mixer.  Use this as your template for productions
    You will need to point some image references to whatever subdirectory you have placed everything.
Launce the ATEM controller, make it full screen and make sure the screen resolution is set to 1920x1080


Launch OBS and have the "BM_OBS_Template" scene collection loaded 

Launch the AutoHotkey script.  A green box with an "H" will appear.

With the ATEM software control set to full screen, start pressing some of the program buttons.  You should see the corresponding scenes in OBS change.

No comments:

Post a Comment

Feel free to leave a comment! If you have any information that you think should be included, please do so here and I'll get it added in.