Page 1 of 1

Blackmagic ATEM Rest API

PostPosted: Thu Nov 25, 2021 4:57 am
by stanleyt
Hi, I am new to video solution. I am looking for a video switcher which support REST API that allows me to call API via remotely over the network and switching live video from different input.

Example
Camera1 --- SDI ---> ATEM Switcher
Camera2 --- SDI ---> ATEM Switcher
Camera3 --- SDI ---> ATEM Switcher
ATEM Switcher Output ---> Video Encoder

My software will post an API to ATEM switcher to switch camera3, after several seconds post API switch to camera1/2.

With the above requirement, does ATEM has such feature? Or do you have any product to recommend me?

Thank you.

Re: Blackmagic ATEM Rest API

PostPosted: Fri Nov 26, 2021 8:56 pm
by Dave Del Vecchio
Blackmagic does provide an SDK for the ATEM switchers, but it is packaged as a library for integration into custom software. Since the underlying ATEM protocol is network based, it is possible to run software that uses the ATEM SDK from a different computer on the same local network as the ATEM, but the protocol itself is proprietary and not compatible with standard web protocols. So if you wanted to go this route, you'd essentially need to build the REST service yourself on top of the ATEM SDK.

There are, however, a few other options. The ATEM Mini switchers support the TCP-based Videohub telnet protocol as discussed in this thread: viewtopic.php?f=12&t=123422
So that might be an option if you just need to do source changes or other simple switching.

A second option is to use 3rd party control software like Bitfocus Companion (https://bitfocus.io/companion/). Bitfocus Companion was primarily designed for use with the Elgato Stream Deck and as such it allows for configuring the behavior of buttons to control various devices through different support modules including for the Blackmagic ATEM switchers: https://bitfocus.io/support

But you don't actually need a Stream Deck hardware control surface in order to use Bitfocus Companion, you can actually use it in a software-only mode, in which, case you would configure on screen buttons with the behaviors you want. But then Companion itself has HTTP-based remote control features, which allows for sending simple HTTP requests (similar to a REST API) to trigger the action associated with one of the configured buttons: https://github.com/bitfocus/companion/b ... te-control

So you could probably use this combination to setup and trigger various ATEM switcher actions over HTTP.

Re: Blackmagic ATEM Rest API

PostPosted: Sat Nov 27, 2021 9:19 pm
by Peter Bouthoorn
Not a REST API, but you might want to look into JustMacros, developed for ATEMs by John Bengston. It does what you want. In most cases JM is used locally, but it also features a web server, which makes it easy to call it remotely.