Controlling Aja Ki Pro in Ross Dashboard

I’ve had a few people ask about my custom panel in Ross Dashboard that controls Aja Ki Pro recorders using their built-in RESTful API, so I thought I would write a quick post about how that works.

AJA has done an excellent job of creating an accessible device with their API. The web browser interface is great and you can edit or control nearly every aspect of the device from there. The main reason I created the Dashboard interface was to limit that control and simplify the use for volunteers who may not want to get into the complexity of it all.

Screen Shot 2018-06-11 at 12.30.33 PM

 

Screen Shot 2018-06-11 at 12.30.46 PM
This is a screenshot of the built-in web interface of the Ki Pro.

 

Their RESTful API takes simple parameters as querystrings and returns JSON data that can be easily parsed for the results and manipulated.

For example, if you make this request:

http://kiproIPaddr/config?action=get&paramid=eParamID_TransportState

You will get a response like this, showing the current transport state of the Ki Pro:

{"paramid":"2097217802","name":"eParamID_TransportState","value":"1","value_name":"Idle"}

My panel in Dashboard just takes advantage of this API to make all of the requests to get and set the data. By using a timer function, I am also able to keep the Dashboard panel in sync with the physical state of the actual Ki Pro deck, which is helpful in case someone manually presses a transport button or otherwise makes a change.

 

Screen Shot 2018-06-11 at 12.21.30 PM
The setup tab is fairly basic, you can set the IP address of the Ki Pro and default video/audio input options. The API itself supports many more changes, so if you need to change those options more often, the panel could be modified to support that.
Screen Shot 2018-06-11 at 12.22.26 PM
Full transport control as well as custom clip names, changing slots (drives), etc. This will follow the state of the actual Ki Pro and update itself if the Ki Pro is armed or changed outside of the Dashboard panel.

 

 

Screen Shot 2018-06-11 at 12.34.35 PM
Here is a screenshot of one of the functions that gets the current transport state.

 

If you are interested in everything the Aja Ki Pro API supports, you can get a list of all available parameters by going to:

http://kiproIPaddr/descriptors

I hope this is helpful! If you would like to download my custom panel, it is available on Github: https://github.com/josephdadams/RossDashboardPanels

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s