Pro Tools SDK/API and Keyboard Maestro moving forward

AVID Pro Tools has introduced an open API/SDK for developers. There is very little support or documentation in terms of working examples. I am chatting with some Python and C++ friends about ways to attempt to implement direct scripting to the app.

Is there other interest in this?

I would love to implement an open source online source for shared macros utilizing this new ability to get coding hooks a little deeper into the Pro Tools code vs more basic UI scripting.

Couple of questions.. would it be possible to use KM to work directly with Pro Tools now that they have made the API package available for anyone to use? or will I still need to create a script or wrapper to be triggered by KM?

Sorry if this is a silly question, I just see tons of potential, and am not (yet) able to code the necessary python scripts.

3 Likes

You need to validate the API calls with a certificate, so it's incredibly clunky to work directly with the SDK, the example scripts are really made to just be tests. I've been looking into this a little bit and just haven't had the time to delve into it, but what would be ideal (for me) would be a small wrapper application that you could interface between keyboard maestro and pro tools via python scripts.

Thats what I was thinking. something to facilitate the connection with an easy way to customize for more basic commands. The Avid toolkit package has minimal documentation which makes startup a little too trial and error.

1 Like

yeah, when I looked into it briefly, I could understand the basic flow of the commands, but creating that 'app' or whatever is beyond the scope of my programming knowhow, and the SDK itself really isn't designed to be used in the way I(we) are looking for in this case. But I'd be happy to help someone out if anyone has the knowledge, or pay a fair price for such an app.

I too would pay for an extension to Keyboard Maestro that allowed for better integration with Pro Tools.

I only skimmed the docs, and I'm not a Pro Tools user, but it looks like they're getting you to build a "helper" binary that you route your commands through.

So it shouldn't be too difficult (Ha! Words a developer hates to hear from a newb :wink: ) to eg use KM as a GUI to create a commands, then use an "Execute Shell Script" action to fire those commands via ptslcmd -file /path/to/commands.txt . If the first command of a "session" (and a "session" appears to be from Pro Tools's launch until it is quit) is RegisterConnection then that should take care of registration, although I can't tell from the docs if you need to store that session ID and include it in all subsequent calls or if ptslcmd handles that for you -- ptslcmd -help should answer that question.

Yeah i've gone through the steps and keep getting errors trying to build the example helper application, no errors in the log file but it's clearly not meant for non-developers. I just wish i could get it running so i could poke at it and see what i could figure out!

I would love something like this! But I have no programming experience at all other than some basic Kontakt Scripting.

Just found this on friday, haven't had a chance to dig in too much but I think this is going to really change how I script pro tools. Will hopefully be able to rely on Applescript a lot less and be able to accomplish some stuff that was impossible before:

Quick install with pip, and the example scripts work super snappily even in very large sessions.

1 Like

PT Maestro
This is basically a Pro Tools SDK bridge app, and KM Actions that call each supported Pro Tools command. Nicely done. Not free, but a great alternative to those who don’t want to deal with Python scripting with py-ptsl. For what it’s worth, Py-PTSL is incredible and i’ve been using it constantly, but it’s not as simple as this.

2 Likes

Looking into this, with enthusiasm, but really need to see working examples to try and understand how it works… can see huge potential with this!!

Hey thanks for posting this! I’ve been improving this every day with help from user feedback, so more is appreciated. When i made it I didnt even think of half the uses people have come up with. Its been a fun project

Awesome. I spend a ton of time setting up all my workflows with py-ptsl so I haven’t had a chance to really dig into PT Maestro, but if i do i’ll be sure to share feedback.

py-ptsl is awesome. Jamie is a genius. and i see youre contributing which is great.

I owe people YouTube videos for PTMaestro. I’ll get on it soon.

In the meantime i made a code KMFORUM4444 for a 30% discount. for those that stumble upon this.

I bought this last month, however, I seem to have no idea what I am doing.

I’ve been able to make some basic things, but the penny hasn’t dropped for me as yet….

I promised videos. Soon. Is there anything specific you’d like me to create?

Hi Jamison,

I had this working previously, but I would like to create a pallet of “Create Track Markers” in ProTools, for my Streamdecks.
When using 071A, there’s no Playhead option, so I use 071, however, it doesn’t work, other than throwing the Macro cancelled.

Like I mentioned, I’m complete novice other than the basics.

Ah of course! Adding playhead to 71A. Itll be in tonights update. The cancelled macro is odd. Can you send me logs for that? (In app prefs)

1 Like

Yes cool, will do shortly.

Bug report helped immensely. Patched. Thank you!