Julian Storer, creator of JUCE

NAMM Wrap-up (part 1)


Thanks to the blizzard that hit my East Coast home base while I was at the NAMM show this past weekend, I’m currently cooling my heels in a Starbucks near family in San Diego while figuring out how to get home. I’ve been trying to figure this out since the second morning of the show when I got the first email of several telling me that my flight home was canceled, so I ended up missing a significant amount of time on the show floor speaking with clients and checking out new gear — very frustrating.
One unexpected upside of being stranded in Southern California was that I was able to attend a developer meetup hosted by ROLI, the owners of the JUCE C++ framework that’s widely used in the industry.
IMG_2263 IMG_2264
We’re big fans of JUCE here at Art+Logic, and it was nice to have a chance to talk with other developers with varying degrees of awareness/experience with the framework. JUCE version 4 was just released last November, and it brought with it not only a ton of new functionality (nice and thorough support for OSC and the relatively new MPE extensions to the MIDI standard top the list for me) but also a completely new licensing scheme; I know that many long-time JUCE developers were nervous that ROLI’s recent acquisition of JUCE might bring along oppressive or draconian changes to their previously generous licensing terms.


Jean-Baptiste Thiebaut & Julian Storer of ROLI

If anything, the license terms seem exceptionally reasonable including a $49/month ongoing license (or $999 lump sum) for Indie commercial developers, and GPL licensing for open-source use. I spend more than $49 a month on a gym membership that I literally never use.
Julian also demonstrated the Projucer, which is a fairly brilliant development tool that allows you to instantiate classes in a standalone process, and as you modify the source code, it’s recompiled on the fly and dynamically injected into that running process without any hiccups. Having spent many aggregate hours in my career waiting for recompiles when testing UI tweaks, I can see where having this capability could be a major win for many developers.
One other piece of big news/demo in the ROLI booth was a small demo station manned by Phil Burk from Google, demonstrating the overhauled audio engine in Android M. We and our clients have long been frustrated by the poor latency and performance of Android audio. Google has finally addressed this problem in their OS, and while the performance here is still not as fast as you’ll find in a desktop OS or iOS, it’s certainly usable now based on the booth demo. I’m hoping that all of our clients who’ve been deferring Android versions of their iOS projects until Google fixed the problems are paying attention. I’m looking forward to turning on Android support in some of my side projects.
I’m hoping to write up more notes on what I saw at the show that caught my eye once I’m back safely at home base.
(Also — check out a series of posts that I wrote about using JUCE to create pro audio applications. There have been some changes to the class API, but the fundamentals remain sound, I think… Start here.)

+ more

Accurate Timing

Accurate Timing

In many tasks we need to do something at given intervals of time. The most obvious ways may not give you the best results. Time? Meh. The most basic tasks that don't have what you might call CPU-scale time requirements can be handled with the usual language and...

read more