I’ve made my first audio plugin and it’s pretty wonderful.
Was it easy. No! Was it fun? Well, generally it was. How did I do it? Well, let me tell you first this, it’s not for the faint-hearted or folks who give up easily.
TLDR;
Well, just go to my website and buy it, I also have a free time-limited demo. You’re still here? Well, here’s my story:
First, a little background
I’ve been making music for almost three decades. Yes, I’m old, over 50, actually. That is practically a dinosaur. When I was a little kid, I thought technical things were not for me, that I didn’t have the head for it. Boy was I wrong. Well, also if things like ChatGPT wouldn’t exist, I would never ever have made an effect’s plugin.
What the hell is an audio plugin?
Well, you know, plenty of people make music with computers. Computers have these cool things called digital audio workstations, but mostly people just call them daw’s. Software like Logic Pro, Ableton Live, Cubase, FL Studio, Pro Tools are bombarded with capable plugins for all kinds of jolly things.
Why an effect’s plugin?
I wanted to start small and very focused, usually a great approach when doing something that you know zero about. For inspiration, I turned to my old trusted hardware sampler, the Roland SP404SX. It’s a great beat making device but one thing that has always set it apart from say Akai MPC’s are the onboard, incredible live effects. My absolute favorite one is the Vinyl Sim effect, and I have used it on far too many tracks in the past.
So I set out to simulate it.
Let’s get some JUCE
I don’t remember how I stumbled upon JUCE, but probably just googling, or maybe I asked ChatGPT? Really can’t remember and it’s totally irrelevant. JUCE is a cross-platform for building audio thingies. Or as they very proudly tell it: ”The World’s Favorite Audio Development Platform”.
The coding language is C++, at first, I was like wuuuuuuuuut?!!. Then I remembered, ChatGPT is mighty, isn’t concerned about my anxiety, so letsa go!
What is happening?
Let’s just say I had a rocky start. I was used to building iOS and Mac apps, something that Xcode is outstanding at. What I’m not used to is cross-platform development with Xcode.
There are way too many lessons learned the hard way, but I really don’t have the time to list them all here, I’m just going to give you my biggest lessons learned.
Biggest lessons learned
- Do not use iCloud. Disconnect iCloud! Build locally. I had so many strange issues in the beginning, and they all went away when I disconnected my Documents and Desktop from iCloud. For cross-platform file sharing I used DropBox, but never ever for coding.
- Use the combination of Projucer and Xcode. Projucer is wonderful.
- To really go cross-platform, you actually need several computers with different OSs. I used a MacBook Pro M1 for development (ARM64) and then I had two more machines, one with Windows11 and then my old trusty MacBook Pro from 2017 (Intel Mac). For the iOS version I tested it on three different devices, one iPad and two iPhones.
- The nice thing about JUCE is that you use the same code base, but you really need to create one Projucer project for each platform. Trust me on this one, it will save you lots of pain.
- Never ever ship things you have not tested on the intended platform.
- Test a million times in as a good deal of different software as possible.
Don’t do research on competitors (yes you read right)
Would I ever have even started building this if I had started by doing research about the competition? Nope. Would I have given up? Yes.
Misunderstand me correctly here. I’m doing this as a hobby, this is supposed to be fun, exciting, hard, challenging etc. I do not give a rats ass about competing with pro’s here. Furthermore, I do this for myself, to grow as a human being. It’s my journey.
So stay naive and dreamy. Just do it.
Build in public
I reached out to a great music forum in Sweden I have been hanging out for numerous years. Their input was invaluable, the plugin is how it is because of them. Be generous, once the plugin is out, give them a massive discount. Listen to the feedback, implement it, but also, please keep in mind your vision for it. Occasionally, it’s easy to get carried away, pleasing other people is not relevant. Never lose focus. Only you will know when it’s good to go for v1.
What I use for distribution
Ironically, it’s way harder to distribute your plugin to the masses than it is to build it. I’m at the very beginning of this ”I have no clue how to sell audio plugins” journey, but before you start sending it away to publications, blogs etc. you will need at least:
- A nice-looking website. Really spend some time on this, since it may be the only selling channel you will ever have. Personally, I’ve used the super un-cool website software RapidWeaver Classic for years because I love it. So why change? Right. If it gets the job done, it’s precisely what you need.
- A payment and delivery provider, I use Paddle Billing, they are wonderful, and I have been using them for other side projects. You can add discount codes to your products and the overall integration experience is super easy. Just create a product in Paddle, copy the link and attach it to a button. That’s it. You can do fancy stuff to enhance the user experience, with overlays and such, but it will take more of your precious side project time.
- Publish your plugin to KVRaudio.com they have great support for indie developers, it’s straightforward to apply for a dev account, but first make sure to have a proper website where you sell it. It’s a great way to say ”hey dudes, I’m actually serious about this”.
Will I do it again?
Hell yes! I just need to come up with a new idea that fits nicely into my Lowfi Dojo mentality. See you on the other side!
You still here? 😺👋
Since you made it all the way down here, here’s a 25% discount code for the macOS + Windows version of my plugin. It’s valid until mid November.
Add this code to the checkout on my website: 99LOWFIDOJO
—
All the best, Juan aka Djablo aka The Lowfi Dojo