Episode 9

Published on:

18th Dec 2022

Script MIDI in Apple's Logic Pro using JavaScript and the MIDI FX Scripter Plugin

Kerri and Ash are deep diving into Logic Pro MIDI scripting this time.


But first! WiFi routers! 🥱😴😪 Because Ash is done with Eero yet has Mesh Needs™️. He's opted for the Asus ZenWiFi AX 6600 2-pack and things are good so far.

Aaand while we're in WiFi router corner, can we just pour one out for Apple AirPort Express? Ash's finally died a few years ago, but Kerri still has one doing its thing reliably.


For our main topic, Kerri introduces Ash to the world of MIDI scripting in Apple Logic Pro.

But not in the language you thi-iiiink: it's a JavaScript API!

Some links discussed:

Gists of Kerri's plugins (these are conversions from other scripts for other DAWs; see each one's header for the original inspiration):

Kerri's general tips and tricks for getting started with Logic Pro scripting:

  1. Use the script sample source code to learn the API—there are a lot of them, and you'll find valuable snippets of information in each one!
  2. Find tutorials; the official docs are... sparse and unsearchable—the links above are a great start.
  3. Find 3rd-party docs class-and-method references
  4. Set magic globals with *var*, not "const" or "let" (e.g.: var NeedsTimingInfo = true;)
  5. Click "Run script" to push your script changes to the app; saving alone will not push the changes

The takeaway? If you want to script MIDI in Logic Pro, this is your option. The API speaks the languages of MIDI and musical timing natively, which is a beautiful thing. But be prepared for a friction-heavy developer experience, especially if you're familiar with modern development environments such as Visual Studio Code.


Lastly, Kerri and Ash talk about developer experience as a general subject, in response to a nice Mastodon post by our mutual friend Pablo Klaschka.

Our co-hosts talk about the critical role documentation plays in DevEx, and particularly how important docs search is, despite the short shrift it is often given.

The DevOps.com article that Ash was recently interviewed for by Bill Doerrfeld is "Looking to the Future of Developer Experience".

Listen for free

Show artwork for I'd Rather Be Scripting

About the Podcast

I'd Rather Be Scripting
Adventures in Technology Tangents
Ash and Kerri go on mostly random tangents about technology, music, photography, and just about anything else. You never know what you'll hear!

About your hosts

Ash Ryan Arnwine

Profile picture for Ash Ryan Arnwine
Here! #DevRel human. #JavaScript hacker. #vinyl newb. Life tourist.
 Wouldn't you rather be scripting?

Mastodon-don-don: https://indieweb.social/@ashryan

Kerri Shotts

Profile picture for Kerri Shotts
Principal Product Manager for UXP @Adobe, #JavaScript fangirl, Technical writer, Photographer, #Trans (she/her), #Atheist. All opinions are my own.

On Mastodon (@kerrishotts@mastodon.cloud): https://mastodon.cloud/@kerrishotts