PluginsAppsAbout

The Technology

Digital-First

A lot of the audio plugin ecosystem revolves around emulating 30-60 year old analog hardware.

We don’t. We start from looking at the possibilities of digital audio - wildly broader than the capabilities of the most fabulous analog hardware of yesteryear - and take it from there.

Our user interfaces are clean, simple and aim to tell you with as much precision as we can put on the screen, exactly what the plugin is doing, and give you full control over it - with no learning-curve or deciphering cryptic controls and emulated knobs.

Call it the no-fake-walnut-grain pledge.

Platforms

Our audio plugins are currently Audio Unit v3 plugins for Mac OS os and iOS. VST and Clap plugin variants are under development.

One of the reasons for choosing a platform-independent language for all the code that does the heavy lifting is so we can port it easily.

User Interface Philosophy

Our user interfaces aim for simplicity, precision and clarity - these are tools for professionals getting work done efficiently.

As you may have gleaned from the blurb on our plugins page, we take a dim view of Star Trek user interfaces - interfaces that try to look like analog hardware, or are simply weird for the sake of weird.

For our apps, as much as possible we aim to utilize the idioms and conventions of that users of the operating system we’re targeting expect. Where we can do something better than the stock set of system components, we do.

Precision and accessibility are core-values - unlike a lot of plugins, our user interfaces are usable entirely from the keyboard. And fine controls should allow fine settings to precisely set them exactly the way you want.

How Our Plugins Are Written

Mastfrog’s DSP plugins have their DSP code written in Rust, a high-performance, memory-safe systems-programming language that is ideal for digital signal processing code. DSP code is both hard to write, and hard real-time. Rust’s memory and type-safety turn many kinds of easy-to-make mistake into compile-time errors that can’t possibly make it into production code. And, thanks to monomorphization and constant generics, its performance can sometimes surpass that of C, the traditional language for DSP programming.

In order to integrate with Mac OS and plugin frameworks, other portions are written in C, C++, Objective-C and Swift - in particular, most of our user interfaces use a mix of Apple’s SwiftUI and Cocoa frameworks.

No Vibe-Coding

While AI is interesting as a tool for coding, our plugins and apps are hand-written. DSP code is particularly fussy and easy to make mistakes with, and not a good target for tools that code by predicting the most likely next keyword. DSP requires getting things right, not just developing something that seems like it works as fast as possible.

In particular, one of our strengths is our user interfaces, with their consistent components and look and feel and precision, across all of our products. While AI can give you something as a user-interface, and it may even work, every instance is a one-off, and the consistency that creates a good, predictable user-experience would require round after round of prompting - or you could just write it the way it should be in half the time.

We’re not luddites, but if you’ve been producing solid code in many languages for decades, and you know what you want and how to get it, it just doesn’t pay the same kind of dividends it does for developers with less experience.