Review – MPowerSynth from Melda Productions, Part 1
MeldaProduction is releasing its first synth. If you are familiar with Melda products and their often unique ways of solving problems, you’ll know why there’s a reason to be very, very interested in this new instrument.
by David Baer, Nov. 2014
In this, the first of two parts of a review, we will take a look at Melda’s new synth instrument MPowerSynth. Those familiar with Melda ( http://www.meldaproduction.com/ ) products will have grown accustomed to seeing innovative thinking that solves familiar problems in ways not seen previously. They will also not be surprised to see a profusion of parameters at every turn. In these regards, MPowerSynth will not disappoint. So buckle up, this is going to be a wild ride.
In part one, we are going to look exclusively at the sound generation complex in MPowerSynth (my term, not Melda’s) which consists of three oscillators, two filters and a master volume envelope. Trust me, that alone is more than enough to digest in one sitting. Part two, which will appear in the next issue of SoundBytes, will examine everything else.
At the time I’m writing this, MPowerSynth has yet to be officially released and this review is based on the latest beta version. The retail release is expected shortly and we’ll be able to provide part two of the review using the real thing. Should any features I cover here change between now and the final product, we’ll note those in part two.
The Oscillators Story, Part 1
Sound is generated using a chain of three successive oscillators (any of which may be disabled), a noise generator and two filters (in series only). We’ll start with a discussion of the oscillators, about which there is oh-so-much to explain.
The three oscillators are nearly identical, but oscillator one, seen in the image just above, has a few significant differences from two and three. We’ll point those differences out as we go along. The oscillators produce their tone using a single, mono wave cycle, the shape of which can be changed via modulation. Any knob you see in the UI can be modulated by an envelope, LFO, etc. Just take this as a given in the forthcoming discussion.
The oscillator tone is mono, but it can be panned. We’ll have more to say on the implications of panning later. Oscillator one, but not two or three, can have multiple voices using a conventional detuned-unison setup and the multiple voices can be spread in the panorama.
You’ll note the pitch setting options of octaves, semitones and cents. The semitones setting is actually continuous (incorporating cent fractional parts). For continuous pitch sweep modulation, this is what you’d probably want to use. Cents modulation would probably be more appropriate a modulation target for vibrato. To the right of pitch controls we see the Pulse Width control. This is not reserved for pulse waveforms but can be used on anything. It duplicates the Halves control we’ll see at a lower level, but this is the one you need to use for PWM, as will be explained later.
So far, we’ve been on familiar ground, but now it’s time to dive into the complexity of MPowerSynth’s oscillators: the mechanisms with which we define the single cycle waveforms that the oscillators act upon. There are two oscillator modes: Normal and Harmonics. In Normal, we work with a single cycle waveform, the image of which can be seen in the edit window. You cannot see it in a static image, but the waveform image changes as various editing options are applied. What you see will be what you hear (apart from run-time modulations).
Harmonics mode employs an additive descriptor in which partial level and phase information allows MPowerSynth to construct the sound using basic sine waves. In other words, in Harmonics mode, we’re dealing with an additive engine. We’ll come back to Harmonics mode later. For now, suffice it to say that we can ask MPowerSynth to take any waveform generated in Normal mode and create a Harmonics mode equivalent. The Harmonics mode version will sound close to, but often not identical to, the originating Normal mode waveform.
There are a number of ways to define the Normal mode waveform. First, we have the Main Shape control, which morphs through a series of standard waveform shapes, including square, saw, and sine. The Smoothness control allows for softening abrupt line direction changes. We can also add a custom shape into the picture (or replace the main shape entirely). The shape can be arbitrarily complex – whatever you can manage to draw in the shape editor (pictured right).
And then we have the step sequencer. Before we explain this, it’s necessary to point out that the wave editor in Normal mode is the same used for defining LFO waves, and it’s very powerful in that regard. I suspect that the Step Sequencer is thrown into the mix in defining oscillator waveforms because it’s available. In practice, it may not be nearly as useful as in defining LFO wave patterns. As you can see in the image to the right, some rather elaborate patterns can be established as a step sequence. These can then be added into the oscillator waveform under construction.
Let’s pause for a moment for a general observation, an important one about MPowerSynth in general. Note the two randomization buttons in the Step editor. These are ubiquitous in MPowerSynth and can be found anywhere a randomization feature makes sense. The randomization is often intelligent, making only sensible, usable and/or practical random value assignments. Also, anywhere it makes sense, there’s the ability to create presets in which the scope is practical from a granularity perspective. Any sound designer who decides to specialize in MPowerSynth presets is going to greatly appreciate this thoughtfully-provided ability.
Back to wave design in the oscillators. The Custom Shape and Step Sequencer edit windows are activated by the appropriate Edit button on the main Normal edit window. Next to those buttons is a larger one labelled Advanced. That activates the window below.
The four shape controls, Phase, Full Skew, Skew and Halve, can further distort the waveform under construction. Skew and Full Skew elongate and compress parts of the waveform along the X axis in ways that are not easy to describe but obvious when manipulated (remember, the waveform image reacts accordingly, so you can immediately see the effect). Halve is the exact same manipulation Pulse Width. So why do we need it when we have the PW control above?
The answer – and this is important – is that the Shape controls in this editor can be modulation targets, but you will never want to make them so. Changing Shape parameters is computationally intensive. To modify them, either by hand or with automated modulation, will cause the sound to break up because the processor often cannot keep pace. The higher-level PW manipulation control uses a different, more efficient and less refined means of calculation that can keep pace with any reasonable rate of modulation.
Harmonics allows for tweaking the levels and phases of the first eight harmonics. Again, the waveform image will change in response to changes here, and you can see what effect you’re having upon it.
Still not enough waveform definition options for your taste? Then there are the two Transformations grids that can be activated to manipulate Shape and Amplitude. Shape manipulates Y-axis-to-X-axis placement. Amplitude manipulates just that, amplitude. The waveform image is adjusted accordingly.
Still not enough waveform definition options for your taste? Then you can use the Load Custom Sample capability. This assumes you are providing a single wave cycle. If you supply a one-second audio clip, it will be loaded and crammed into the sample, squeezed to fit, so be aware that it’s up to you to supply the correct length of audio.
So that’s the story of Normal mode, and we’re not anywhere close to finishing our oscillator discussion.
The Oscillators Story, Part 2
Once we have a waveform defined in Normal mode, we can just leave things as they are and go on to other aspects of our sound design. Alternatively, we can take that waveform and transform it into Harmonics mode. This simply results in an additive level/phase mapping to be done (note – a reverse mapping from Harmonics to Normal is not an option). The oscillator now operates using its additive engine. In Harmonics mode, we’re not always necessarily starting with a waveform designed in Normal mode, although that will without doubt be a common practice.
There are several other ways to generate a harmonics descriptor (i.e., the list of values denoting amplitude and phase of the partials). One is to simply draw them in right in the editor. And then there’s the randomize button. This will sometimes produce a Normal sound rather than a Harmonics solution – no big deal, just click the button again a time or two and you’ll get your random map generated. Lastly, you can load an audio file, pick a slice (a single cycle) and MPowerSynth will analyze the content to create a harmonics map – we’ll get to where this happens in a moment.
Harmonics sounds can have any number of partials from one to 256, although there’s really a diminishing return on anything above around 100, and probably somewhat less. There’s no free lunch here. Yes, you can be greedy and ask for 256 partials, but every extra partial consumes a bit more CPU, so you’re well advised to not specify more than you need in practical audio terms. The easiest way to ensure you’re not wasting resources is to start reducing the partial count until you can hear a difference. Add a few more back, and you should be in good shape.
The Generator button on the main edit panel gets you to the window shown above. We have four controls under Generator and five under Post-Processor, all of which alter amplitude or phase values of partials in some predictable fashion. Significantly, they are all fair game for modulation. This gets us to a scenario that’s close to wave-table synthesis, except that you cannot explicitly choose the actual waveforms to morph between. It seems to me that MPowerSynth already very close to having the necessary infrastructure in place to support morphing between multiple harmonics descriptors. So, perhaps we can hope to see full wave table support in a Version 2 of this instrument.
Next, we have the Sample Analyzer in this window. This is not to be confused with the single cycle sample load capability in Normal mode. Here we can load an extended audio clip. MPowerSynth can sweep through the file, isolating single cycles, so here again is yet another way to get a sound into MPowerSynth.
Finally, note the Random Seed button in the Generator sub-window. If you want random Harmonic mode attempts without the intrusion of Normal mode, this is the place to have that happen.
The Oscillators Story, Part 3
Are we there yet? Not quite. There’s still more ground to cover in telling the full MPowerSynth oscillator story. First we must examine the nature of the second and third oscillators. Apart from the Unison capability, they have everything we’ve talked about so far. In place of the Unison control sub-window, they have something labeled Mode. Mode governs how the oscillator interacts with the previous one in the chain of three.
The simplest mode is Mix. The sounds are combined just as you’d expect. But we have the following other choices:
Frequency Modulation and Frequency Modulation (abs) – two varieties of FM
Ring Modulation and Frequency Shifting – two varieties of ring modulation
Maximization – takes the maximum of both signals
Convolution – enhances common harmonics and de-emphasizes those present in just one signal.
Sync – good old-fashioned master/slave oscillator sync
As a side note, it has been exciting to watch the dialog in the KVR forum between Melda and early beta users. The initial release did not have the Sync option. Several forum participants lobbied for Sync, and – presto – there it was in the next beta. It’s always encouraging to see a developer listen to what the users want and take their input to heart, which clearly was happening in the case of MPowerSynth.
One nuance here is important. The oscillators do have individual Pan settings. However, for those modes that require interaction, the source has to connect with the target. You cannot effectively pan the earlier oscillator fully to one side and the second to the other side and expect modes like FM to work. It will probably be safest to avoid Pan when the earlier oscillator modulates the later one.
One final aspect and we’re done! That would be oscillator envelopes. The sound production chain has a master envelope that is always present. The individual oscillators may also have their own enabled. In many cases, these won’t be needed but are available to tailor individual oscillator envelopes. The master envelope (shown below) will trump the individual ones in all cases. If the master has a fast release defined and an oscillator its individual envelope enabled with a slow release, you’re going to get the fast release in the final sound.
Envelopes appear in several places in MPowerSynth, but this is a great place to discuss them. In each, we have the standard ADSR settings, plus a delay preceding Attack, a Hold segment between Attack and Decay. Then there’s an inspired feature I’ve never seen anywhere else. You may define an LFO modulation to happen during the sustain segment of the envelope, you can define a timespan in which it ramps up to full effect, and you can even dictate whether the LFO action activates in the earlier decay stage. This is exactly the kind of outside-the-box thinking we’ve come to expect from Melda.
The ADSR LFO capability is called Tremolo, and when applied to the envelope governing signal loudness, tremolo is exactly what you’ll get. However, it’s present in all the envelopes like the ones governing filter cutoff. Clearly, the result will not be a tremolo response, but I think sound designers will be able to sort this out.
The Filter Story
At last, we can talk about something other than the oscillators. Fortunately, filters will take a little less time to cover – but not because there’s any shortage of features. In fact, if I counted correctly, there are 118 filter types on tap. The image below shows the filter selection window (sliced into two sections to fit on the page).
Many of the filter types will be familiar (e.g., LP 48 is a low-pass model with a 48 dB/octave slope). Then there are the ones with names that aren’t all the clear. Well, I’m going to have to dodge an explanation here because the beta documentation is pretty light on explanation. Suffice it to say that a sound designer is going to want to spend a lot of quality time taking the various types for a test drive.
Let’s look at the higher-level filter panel itself.
On it, we have a number of controls, many of them familiar, such as Frequency – or are they? Note that in Frequency, the value in the screen shot says “+3.07 octaves”. Huh? Well, once again, Melda innovation strikes. Rather than employ the usual Frequency specification in Hz, MPowerSynth wants the specification relative to the note – remember, the filter is polyphonic here and there’s one dedicated to each active note.
If you do want a fixed frequency, you can have it by clicking the Constant Frequency button near the top right. In this case, you still specify the cutoff in octaves, but they will be relative to a constant 440 Hz. Some people will no doubt find this a bit weird, but I applaud the design choice made here. I almost always want a constant key-follow cutoff in synth filter settings. For my tastes, this solution is just perfect.
In addition to Frequency and Resonance, we have some additional controls. Gain, Drive, Saturation, etc. are probably just what you’d expect. The controls ending with “Range” define the extent to which the filter’s ADSR envelope will have effect. The Character control is available for only certain filter types. This is a “set by ear” control if ever there was.
Many of the filter controls can be very effectively modulated. But with some, you will not only want to avoid modulation, you might want to turn down your monitors when playing with the settings. The Character control for the Polymorph filters in particular creates some audible chaos when being adjusted. The simple guideline I would suggest is that if you get sound breakup or other unwanted distortion when adjusting manually, then you will want to avoid automated modulation, so try it by hand first before assigning a modulator.
Both filters have an optional ADSR which has all the capabilities of the ADSR we looked at earlier. Not shown on the screen shot is an expanded window section in which filter behavior can be further influenced by velocity and key position.
The two filters are serial. Some people will no doubt wish for a parallel configuration option, but that’s not available. It seems to me, with so very many filter types in place, sound designers already have an embarrassment of riches and probably should not complain. Some of the filters, the Polymorph filters in particular, seem to offer quite complex behavior and do the work of several more conventional filter types in the first place.
Noise – Then Out
I’m going to make short work of the final main component of the sound generation complex. It’s nicely documented and easy to understand and we need not dwell upon it here. The Noise module sits between oscillator three and filter one. It’s got dedicated LP and HP resonant filters and a dedicated ADSR envelope. All in all, it’s highly capable, but vastly less complicated than anything else we’ve discussed thus far, so I’ll leave it for the reader to explore on his own.
And with that, we’ll end things here and pick up again in our next issue. By then the retail version of MPowerSynth should be available. In part two, we’ll look at everything we didn’t cover here, notably the effects (of which there is an enormous selection), modulation capabilities and a few other bells and whistles. Hope to see you then.
More information here: