In these days I am experimenting with the possibility of creating a technique that emulates with a Yamaha Montage or MODX, the use of wavetables oscillators. Despite some obvious limitations, the first results are ..... more than encouraging 🙂 Find everything on my Blog, including audio demos !! BLOG - Benis.it
I wouldn't call that wavetables since wavetables are literally a table of interpolated waveforms (typically 128 or 256) that can be scanned with an LFO, EG, etc.
Crossfading between 8 waveforms is more like vector synthesis, like in the Yamaha SY-22 and TG-33: https://en.wikipedia.org/wiki/Vector_synthesis
Wavetables with 128-256 "single cycle waves" are only the standard used by most Virtuals with wavetables oscillators. In Hardware, for reasons of complexity, tables with less "Single Cycle Wave" are used: 5 in MODAL Argon8, Novation Peak and Summit, 8 in Ashun Sound Machines Hydrasynth and 9 in Novation Peak. And even with fewer tables, we can safely call them wavetables oscillators.
The fact remains that beyond the name, the attempt I am making is to simulate the reading of a 8-single cycle wavetables: with this technique this "virtual" table can be scanned with an LFO or an EG. The very interesting thing is that, thanks to the montage libraries, it is possible to create a huge library of "single cycle components" occupying practically nothing of the User Flash (5 KByte multisample composed of 3 cycles of 2048, 512 and 128 samples 16@44.1 Khz) which can thus be " assembled "into a huge number of" tables "
Obviously I don't have the presumption to create wavetable montage synthesis: that should be implemented by Yamaha engineers 🙂
The big difference is you're still simply crossfading like vector synthesis and not actually interpolating. It's a nice idea though!
I got curious about the technical difference between "interpolation" and "crossfading", and it seems that crossfading really is essentially another word for interpolation in the context of audio and video. The difference with wavetable synthesizers is not that they don't crossfade, but rather that they can use more advanced forms of crossfading beyond the simplest method (linearly reducing the volume of waveform A across the frequency spectrum, and correspondingly increasing that of waveform B).
The upshot here for the Montage and other Yamaha Synths of its ilk is that there is room to explore more complex interpolation: via the use of filters. By making clever use of the array of filter options which are available and setting cutoff frequencies appropriately for the individual waveforms being used, it is possible to construct a more dynamic fade between two sounds via manipulation of offsets to the cutoff rather than fading the volume of each sound directly.
For those prepared to wade through some heavy math, there is a lot of information in this paper from the University of Wisconsin-Madison. Here are some relevant quotes:
Crossfading between two sounds can be simple: one sound decreases in volume as the second sound increases in volume. More interesting crossfades may attempt to maintain common aspects of the sounds while smoothly changing dissimilar aspects. For example, it may be desirable to gradually transform one sound into another while requiring that nearby partials sweep between nearby partials, or it may be advantageous to require that the sound retains its harmonic integrity over the duration of the crossfade.
The use of a variety of kernels is key, as this specification connects a family of uninteresting transitions (such as simple crossfades) with more interesting transitions (such as spectral crossfades).
Two kinds of crossfades may be distinguished based on the information used and the desired time over which the fade is to be conducted. In interpolation crossfades, two sounds A and B are separated in time by some interval t. The goal of the fade is to smoothly and continuously change from A(the source) to B (the destination) over the time t. The fade “fills in” the time between a single (starting)frame in A and a single (ending) frame in B. Figure 1(a) shows this schematically. In a repetitive crossfade, the goal is to create a series of intermediate sounds Mi,i= 1,2,...n each of which exhibits progressively more aspects of B and fewer aspects of A, as shown in Fig. 1(b).
You can see that while two forms of crossfade are defined, a standard volume crossfade and the more advanced interpolation that may be seen in wavetable synthesizers would both fall under the category of an "interpolation crossfade".
Edit: Apparently "U-n-i-v-e-r-s-i-t-y" is a dirty word! 😀
In audio production, a crossfade is a generally accepted term referring to mixing simply by manipulating volumes according to various curves.
So for the purposes of this discussion, I was differentiating between 1) mixing 2 signals via a traditional volume crossfade found in most synthesizers - as mentioned above - with 2) the interpolation methods used to generate a table of N-values that represent a range of values at a single point between 2 waveforms.
Here's a good layperson explanation:
"Well, the main difference is - when mixing two waveforms, you aren't dynamically changing their timbre. You have two timbres, and their volume levels change to various ratios. That's it.
While, when interpolating, all mid-points from the first wave to the other are interpolated mathematically, producing a dynamical timbral change that is vastly different than simply changing their volume levels. Different harmonics are generated."
I understand, and when you get down to it we're on the same page, but I think it's worthwhile to keep the terms clear and accurate.
A crossfade "simply by manipulating volumes according to various curves" is, mathematically, a simple form of interpolation. So it doesn't make sense to draw a distinction between crossfading and interpolation, even if there's a generally accepted misunderstanding that interpolation is a mathematical process and crossfading is not.
Timbre is a perception that is caused mostly by frequency spectra: the relative amplitude of the harmonics in the waveform. Subtractive synthesis and FM synthesis change timbre by removing and adding harmonics, respectively. If you layer two waveforms at the same volume level and view a spectral analysis of the resulting combined sound, you'll find the harmonics of both waveforms present together creating a new combined timbre. This is how Manny Fernandez constructs his FM Grand Piano, for example: "simply" layering different waveforms to create the full timbre of a piano.
If you then take your layered waveform, and slowly fade one layer out while raising the volume on the other, when watching the spectral analysis you will see the harmonics gradually shift so some are more prominent and others less so.
This is also what you'll see when viewing the spectral analysis of a wavetable synth using advanced interpolation. The difference there is that the fading function can be applied differently to different parts of the spectrum, so that some harmonics fade in or out more quickly than others.
I think that the layperson explanation is good enough as far as it points out "something more interesting is going on with the crossfades on synthesizer A than the basic ones on synthesizer B", but I think it's not generally a good one because it hides the meat behind a handwave of "mathematics" rather than being a little more instructive on exactly how the more interesting interpolation happens.
What's left out is the term "spectral crossfade" or "spectral interpolation", and once you understand that the more interesting interpolation involves paying special attention frequency spectra rather than only the flat amplitude of basic crossfading interpolation, you can then begin to see how you can use building blocks at your disposal to do similarly interesting things. By using complex filters and dynamic EQs, it's possible to construct for yourself interpolations that are dynamic and involve the creation (or accentuation) and removal of harmonics in the process.
It's also possible to obtain the sounds of spectral interpolation via only basic crossfading on the Montage, with the catch that you would need to create your own user sampled Waveform on the Montage with samples from a wavetable synth's spectral interpolations. By leveraging the spectral manipulation of the external synth and recording many samples, the Montage could reconstruct the same dynamically rich table of sounds. It would be rather time consuming to get the programming just right on the Montage side. You would then be using basic crossfading to move between many waves which are themselves previously generated via spectral interpolation.
Of course, I think it would be fantastic if Yamaha brought fuller, more direct native support for this sort of wavetable construction and navigation to their synth lineup. It seems to me to be something that is within the reach of the Motif/Montage DSP, but that's just me being an armchair engineer...
Is Benedetto currently capturing all the character of a "proper" wavetable synth? Setting aside debate over what makes a wavetable synth "proper", I couldn't say. They haven't yet fully described their process.
Is there something interesting to explore here with the Montage, going beyond basic crossfading and onward into dynamic spectral territory? I think yes, absolutely.
As an aside, I'd say that spectral interpolation isn't actually a prerequisite for a wavetable synthesizer. You can take a table of waves and move back and forth across it using only basic crossfading and I would call that a wavetable synth. It wouldn't be a particularly interesting one compared to others, but still potentially useful and interesting in its own right. Vector synthesis also is essentially a form of wavetable synthesis, with the unique character in which its wavetable is small but two-dimensional rather than linear.
I think that in the end it's what goes into a wavetable that makes it really interesting: the prior, or dynamic, generation of a unique table of waves. Once you've got the table, navigation can be done with simple crossfading. Or it can get more interesting yet.
In virtual Synth with wavetables oscillators, interpolation and crossfade are the same because it is a question of mixing two single cycles of the same size (2048 in the Serum standard). In more advanced virtual (U-he Hive 2), Spectral morphing can be used (working with FFTs) by making interpolations of the single harmonics or "windows" techniques to make the transitions more "soft" when the cycles do not start from zero. In the method I am using for Montage I work with the 8 elements of a performance and I can only cross-fade the transition between 8 single cycles multi samples. I am creating some basic bricks that allow you to use the technique more quickly starting from some "templates". Work in progress 🙂
I tried to emulate vector and wavetable synthesis on SY99 25 years ago, it was possible to some degree.
I tried to emulate vector and wavetable synthesis on SY99 25 years ago, it was possible to some degree.
The technique can be used with other synths: I am trying to exploit all the possibilities of Montage, including Motion Seq 🙂 and the User Flash Memory
Continue my "..work in progress .." of the attempt to emulate the Wavetables oscillators and the classic Korg WaveSequences in Montage and MODX. Soon a small monograph (about 50 pages :-)), Waves, Performance and audition.
I prepared a couple of videos, the first with some live sounds and an "audition"; the second with a Serum VS montage test. 🙂 in which I have emulated what is perhaps the best known wavetable: the classic Resonant 1 of the PPG present in Nave, Waldorf Quantum, ... etc, etc. I hope soon to finish and share what has been done !!
https://www.youtube.com/watch?v=1_2ONLaj9k0 https://www.youtube.com/watch?v=1_2ONLaj9k0 ">Serum vs Montage
Excellent!
Well done.
I wish Yamaha would seriously consider this.
More possibilities for Montage.
Awm and Fmx is grate .... but more is better.;)