May 8, 2017
by Chris Randall
Now that the hardware side of the business is chugging along, we've turned our attention back to plugins. After some soul-searching and rending of garments, it became obvious that some serious re-building was in our future to make sure our rather extensive product line stays pertinent and healthy as we start knocking on the door of our 3rd decade in business.
First one on the block was (depending on how you count) either our second- or third-most popular plugin, Eos. We're rebuilding everything in JUCE, so that we can offer and support all the formats from a single codebase that is well-supported and gives us a lot of different options. So these ports aren't really ports as such, but complete ground-up rebuilds. In the case of Eos, the biggest problem was the user interface. It still held up okay on normal-res screens, but on Hi_Res and Retina, it looked cheap and awful. Also, a continuing point of contention with me has been the lack of a common platform-agnostic preset mechanism.
Early last year, we released FuzzPlus3, which was built with JUCE and made with a completely procedural user interface. (That is to say that the UI is all code, no images at all.) It also had an XML-based preset mechanism that Randy from Madrona and Sean from ValhallaDSP came up with. Several tens of thousands of downloads later, nobody seemed to have any problem with either the OpenGL interface or the preset mechanism, so I figured they were safe to roll in to a paid product.
With all that in mind, I set to it. I decided on a darker look for Eos 2, and instead of a static background, I used a GLSL shader to give me a little animated blob that responded to knobbing, which I thought was a clever trick. We also bared some previously hidden controls (high and low crossover points, which are the corner frequencies for the high and low multipliers) and added a fourth algorithm, Plate 3, which is a derivation of Plate 2 with a somewhat different rendering loop that results in a less dense tail with a wider stereo image.
All in all the port only took about 5 days, and then we spent a week with the testers tracking down all the silly bits. The testers were surprised to hear from me, not having got a new AD plug for some time now. But they were all still game, and now Eos 2 is available for purchase in the Audio Damage store and at Splice. The full version is $59.00, and the upgrade from v1.x is the difference between the two, $10.00.
This version is built with the absolute latest JUCE 5, the current VST3 SDK, and current Xcode and Visual Studio, against the current APIs from both Apple and Windows. So it should be solid for a good long while. Aside from the usual 32/64 VST and AudioUnits, a side effect of using JUCE is that we pick up the VST3 version for free. So that's included, and will be included in all our upcoming rebuilds. This version also removes the anti-denormal math, which caused a very small amount of noise to be added to the signal path. We figure not many people are using a Pentium 4 for music any more, and the ones that are probably can't run a bleeding-edge OpenGL-based plugin anyhow, so that's that.
We haven't decided what we're going to do next; I'm about 70% finished with Basic 2, which is a polyphonic version with much more extensive modulation. We've also got a couple new plugs we've been cooking up, and would like to port some of the advances we've made on the hardware side of things back in to plugin land.