Wavetable Blowout: Massive X vs Avenger vs Serum vs Icarus vs Pigments...

VST, AU, AAX, etc. plug-in Virtual Instruments discussion
User avatar
Tj Shredder
KVRAF
2773 posts since 6 Jan, 2017 from Outer Space

Post Thu Jul 04, 2019 12:59 am

cytospur wrote:
Thu Jul 04, 2019 12:35 am
My disposable razor has 4+1 blades, and has a vibrating head, which makes it a much nicer, and better, shave. This goes to prove that wavetable synths with audio rate modulation are better :hihi:
Especially if you can modulate the number of blades - ouch...

FathomSynth
KVRian
1188 posts since 25 Mar, 2017 from Philadelphia, PA, USA

Re: Wavetable Blowout: Massive X vs Avenger vs Serum vs Icarus vs Pigments...

Post Thu Jul 04, 2019 5:03 pm

One of my users alerted me to this thread, and since its relevant to our current development I'll chip in.

In Fathom’s next release we will be supporting both import and export of Serum format wave tables.

Fathom’s wave table oscillator consists of two independent wave tables, left and right, each composed of 16 waves, plus an additional composite waveform in the center which is formed in real-time by morphing between the two wave tables using either a linear morph or various mathematical functions such as add, subtract or pulse width modulation.

Fathom does this by using linear interpolation between wave buffers in each table, linear interpolation between the two tables and cubic spline interpolation between sample points within each wave buffer.

In other words if your current note frequency requires a buffer fetch of sample 1022.97 there is a cubic spline interpolation between buffer samples 1022 and 1023. Meanwhile if the table index is 15.333 there is a linear interpolation between wave tables 15 and 16. All this takes place in real-time.

Real time performance is maintained by pre-calculating all the spline coefficients between all the sample points in the buffer when the wave buffer is loaded so that at run-time only a single c++ instruction performs the actual spline.

Because of this smooth interpolation I personally never saw any need for more than 16 waves per table, however purely for marketing purposes we plan on making the number settable up to 1024 waves.

Because of the cubic spline interpolation Fathom is known for a very clean upper register. The attached diagram shows Fathom’s saw at 128 partials in the frequency domain. This shows a high frequency noise floor well below -130 dB in relation to the amplitude of the first partial, which is less than one part in one million.

However, there is more to sound quality than a clean spectrum and my own honest opinion is that Omnisphere, Sylenth and Diva all have higher quality sound than Fathom judging from an analog perspective.

Diva is in a class by itself because they are doing real time circuit emulation and morphing the waveform. That is beyond the scope of this discussion and my own DSP capabilities. However Omnisphere and Sylenth are very interesting to me since their basic waveforms are static unless modulated and yet the sound is much more analog than Fathom’s cubic spline interpolation.

My own suspicion is that the highest quality synths such as Sylenth and Omnisphere are using a more advanced interpolation formula of some kind since both of these synths sound more like hardware than software. People often surmise that this is simply because of the quality of their filters, yet in the case of Omnisphere the quality difference is audible even without any filters on the oscillator, and without using their sampled analog synths.

Since interpolation is such a critical issue to the basic sound of a synth I began graphing the cubic spline interpolation using Fathom’s envelope graphs and discovered that spline interpolation does not in fact produce a smooth curve. From a linear perspective the graph is smooth at each sample point thus the clean spectrum. However there is a second order discontinuity at each point as the function switches from one spline to the next, meaning that the radius of curvature suddenly changes.

This would explain why the spline simply does not sound like an analog synth, since the function does not resemble anything occurring in nature, analog circuits included.

Because of this I have decided after the next release to focus my efforts on a completely new interpolation algorithm which will gradually morph between higher order spline functions as the signal passes from one pair of sample points to the next. In this way there will be no discontinuity and my hope is that the effect of the function will be a more natural waveform.

If there are any math or DSP gurus reading this I would welcome your thoughts since they will help with our new implementation, and I'll be happy to share the results here if it is successful.
You do not have the required permissions to view the files attached to this post.

otristan
KVRAF
1943 posts since 28 Mar, 2005

Re: Wavetable Blowout: Massive X vs Avenger vs Serum vs Icarus vs Pigments...

Post Thu Jul 04, 2019 11:34 pm

Pretty sure that Sylenth and Omnisphere just use regular mipmaped sample based wavetable with cubic interpolation between octaves and those WT has been recorded from actual hardware synth.
Nothing more fancy.
Olivier Tristan
Developer - UVI Team
http://www.uvi.net

Trancit
KVRAF
2207 posts since 27 Jul, 2004

Re: Wavetable Blowout: Massive X vs Avenger vs Serum vs Icarus vs Pigments...

Post Fri Jul 05, 2019 2:56 am

FathomSynth wrote:
Thu Jul 04, 2019 5:03 pm
One of my users alerted me to this thread, and since its relevant to our current development I'll chip in.
...
Very honest post from a developer... :tu:

User avatar
Pictus
KVRist
242 posts since 21 Aug, 2017 from Brasil

Re: Wavetable Blowout: Massive X vs Avenger vs Serum vs Icarus vs Pigments...

Post Fri Jul 05, 2019 5:03 am

FathomSynth wrote:
Thu Jul 04, 2019 5:03 pm

Since interpolation is such a critical issue to the basic sound of a synth I began graphing the cubic spline interpolation using Fathom’s envelope graphs and discovered that spline interpolation does not in fact produce a smooth curve. From a linear perspective the graph is smooth at each sample point thus the clean spectrum. However there is a second order discontinuity at each point as the function switches from one spline to the next, meaning that the radius of curvature suddenly changes.

This would explain why the spline simply does not sound like an analog synth, since the function does not resemble anything occurring in nature, analog circuits included.

Because of this I have decided after the next release to focus my efforts on a completely new interpolation algorithm which will gradually morph between higher order spline functions as the signal passes from one pair of sample points to the next. In this way there will be no discontinuity and my hope is that the effect of the function will be a more natural waveform.

If there are any math or DSP gurus reading this I would welcome your thoughts since they will help with our new implementation, and I'll be happy to share the results here if it is successful.
No math or DSP guru here, just an IT guy...
Anyway, at some time was searching for a better way to downsample
my images with the best algorithm as possible to avoid noiré/ringing/etc...
By using EWA(Elliptically Weighted Average) the results were better...
http://www.imagemagick.org/Usage/filter/nicolas/

chk071
KVRAF
20836 posts since 11 Apr, 2010 from Germany

Re: Wavetable Blowout: Massive X vs Avenger vs Serum vs Icarus vs Pigments...

Post Fri Jul 05, 2019 5:23 am

nevermind

FathomSynth
KVRian
1188 posts since 25 Mar, 2017 from Philadelphia, PA, USA

Re: Wavetable Blowout: Massive X vs Avenger vs Serum vs Icarus vs Pigments...

Post Fri Jul 05, 2019 8:13 am

Otristan, Thanks, that is helpful.

Pictus, likewise thanks, that looks like a great site so I’ll read it.

I’m trying to stay away from filters or moving averages (which are really just filters) since currently I have no filters in the audio path unless the user adds one. Also, since all filters are really just delays I can always hear the slight muddiness caused by the phase delay.

I’m trying to stick to a closed form expression on x. My requirement is that pulling from buffer sample N, where N is a floating point index, does not require first pulling from 0 to N -1.

The best curve I’ve been able to generate so far is actually the Bezier. The problem is that the very simple Bezier expression is based on time “t” which is actually the distance along the curve itself not the x axis. Refactoring the Bezier to use only the x axis as input is extremely complex at least by the standards of my own math abilities, and I have not been able to find a closed form anywhere online. The Bezier in the form y = B(x) if it existed would be ideal, I don’t think anyone could beat that for audio.

I’ll continue to explore this and report back here if I can come up with anything better than the cubic spline which can also be implemented with a reasonably brief set of instructions for real-time use.

User avatar
4damind
KVRAF
4852 posts since 17 Aug, 2004 from Berlin, Germany

Re: Wavetable Blowout: Massive X vs Avenger vs Serum vs Icarus vs Pigments...

Post Fri Jul 05, 2019 10:46 am

otristan wrote:
Thu Jul 04, 2019 11:34 pm
Pretty sure that Sylenth and Omnisphere just use regular mipmaped sample based wavetable with cubic interpolation between octaves and those WT has been recorded from actual hardware synth.
Nothing more fancy.
That's interesting, of course. I don't know that Sylenth uses a wavetable (yes, there are rumors about something like this but is was never officially confirmed by Lennard?)

Coda4
KVRer
15 posts since 13 Jun, 2019

Re: Wavetable Blowout: Massive X vs Avenger vs Serum vs Icarus vs Pigments...

Post Fri Jul 05, 2019 12:22 pm

Rapid is tempting to get, with the 30% sale going on right now. I currently use DUNE 3 as my main synth, I love the thick, warm, lush sound, though I haven't explored the WT side of it too much yet.

Would Rapid give me something that DUNE lacks?

I tried the demo and I like the look and workflow of Rapid (it has drag and drop modulation, DUNE sadly does not). But other than a workflow difference, I don't know what it could offer me that DUNE can't. And I would never use even half of the 8 layers/24 oscillators for making patches, that's a crazy amount of osc lmao. Considering Rapid, but I would only get it if it's really worth it and can offer me something different/new.

User avatar
jeffb01
KVRian
876 posts since 18 Apr, 2006

Re: Wavetable Blowout: Massive X vs Avenger vs Serum vs Icarus vs Pigments...

Post Fri Jul 05, 2019 12:41 pm

Coda4 wrote:
Fri Jul 05, 2019 12:22 pm

Would Rapid give me something that DUNE lacks?
Here's a few things that rapid does that dune lacks:

1. Wavetable modulation (Phase Modulation, Ring Modulation, Sync, Formant shift, Phase Bend (side, mid, double), Mirror, Chaos phase). I don't think Dune can do much with the wavetables, but I hear there are some workarounds. This is the most important one as it's a full wavetable synth.

2. A more versatile 3 operator FM synth per layer. In dune, only operator 3 of the FM osc actually outputs. In Rapid you can anything affect anything in those 3 operators - and be any shape.

3. The LFOs have slots for two shapes and can morph or crossfade between them as well as bend the wave so you can really have morphing LFOs.

4. In Rapid, you have more envelopes and they have controllable curves and you can modulate them. It seems that besides for rate, the modulators are pretty static in general in Dune 3.

5. Rapid has a different kind of MSEG (sequences) that's almost a more powerful version of the performer from o.g. massive. I'm not saying they're better than dune's msegs, I'm just saying it's different.

Obviously, Dune does a lot of things Rapid can't, but you didn't ask that. BTW, I just have the demo of Dune so let me know if I got something wrong. These were just off the top of my head. And I agree that I'll never use 8 layers on one patch, but you can do cool things with two or three.

AnX
KVRAF
4903 posts since 17 Nov, 2015

Re: Wavetable Blowout: Massive X vs Avenger vs Serum vs Icarus vs Pigments...

Post Fri Jul 05, 2019 12:46 pm

who won this pointless exercise then?

User avatar
jeffb01
KVRian
876 posts since 18 Apr, 2006

Re: Wavetable Blowout: Massive X vs Avenger vs Serum vs Icarus vs Pigments...

Post Fri Jul 05, 2019 1:01 pm

AnX wrote:
Fri Jul 05, 2019 12:46 pm
who won this pointless exercise then?
Well to quote the fist sentence of the op:
jeffb01 wrote:
Fri Jun 28, 2019 1:41 pm
This is designed to compare features of these wavetable synths. Not a best synth…
Who won? well, depends on your workflow and what you want in a wavetable synth.
Do you want a full feature wavetable editor? then Serum and Icarus won.
Do you want a Sequencer?
Do you often use distortions before the Oscs?
Do you want three filters?
Do you like to morph modulators?
Do you like to apply multiple morphs on a wavetable?

This was not designed to be a substitute for demo-ing the synths.

It is short sighted to think of synths as winners and losers. Each synth has unique features, unique sounds, etc. The president of my country always talks in winners and losers - and it turns out he is the biggest loser of them all.

Thank you for calling it pointless. I spent several hours working on it.
Last edited by jeffb01 on Fri Jul 05, 2019 1:21 pm, edited 1 time in total.

User avatar
4damind
KVRAF
4852 posts since 17 Aug, 2004 from Berlin, Germany

Re: Wavetable Blowout: Massive X vs Avenger vs Serum vs Icarus vs Pigments...

Post Fri Jul 05, 2019 1:09 pm

Rapid has no WT editor, Dune3 has it. So it depends of the own needs.
For a Wavetable synth its IMO important which features you have for this kind of synthesis. How can you blend/mix/morph between samples, how can you manipulate a wavetable, how can you load own samples/build a own wavetable or load other wavetables/samples.

User avatar
jeffb01
KVRian
876 posts since 18 Apr, 2006

Re: Wavetable Blowout: Massive X vs Avenger vs Serum vs Icarus vs Pigments...

Post Fri Jul 05, 2019 1:20 pm

accidental post. never mind.

Coda4
KVRer
15 posts since 13 Jun, 2019

Re: Wavetable Blowout: Massive X vs Avenger vs Serum vs Icarus vs Pigments...

Post Fri Jul 05, 2019 1:31 pm

jeffb01 wrote:
Fri Jul 05, 2019 12:41 pm
Coda4 wrote:
Fri Jul 05, 2019 12:22 pm

Would Rapid give me something that DUNE lacks?
Here's a few things that rapid does that dune lacks:

1. Wavetable modulation (Phase Modulation, Ring Modulation, Sync, Formant shift, Phase Bend (side, mid, double), Mirror, Chaos phase). I don't think Dune can do much with the wavetables, but I hear there are some workarounds. This is the most important one as it's a full wavetable synth.

2. A more versatile 3 operator FM synth per layer. In dune, only operator 3 of the FM osc actually outputs. In Rapid you can anything affect anything in those 3 operators - and be any shape.

3. The LFOs have slots for two shapes and can morph or crossfade between them as well as bend the wave so you can really have morphing LFOs.

4. In Rapid, you have more envelopes and they have controllable curves and you can modulate them. It seems that besides for rate, the modulators are pretty static in general in Dune 3.

5. Rapid has a different kind of MSEG (sequences) that's almost a more powerful version of the performer from o.g. massive. I'm not saying they're better than dune's msegs, I'm just saying it's different.

Obviously, Dune does a lot of things Rapid can't, but you didn't ask that. BTW, I just have the demo of Dune so let me know if I got something wrong. These were just off the top of my head. And I agree that I'll never use 8 layers on one patch, but you can do cool things with two or three.
I see, thanks. Good points.
Also, for Rapid I understand that you can load and import a sample and use it as a sound source? Like could I import a .wav to use as a sound source?

I was thinking these 2 could work well together: DUNE for the more VA, subtractive stuff, and Rapid for evolving wavetable sounds

Return to “Instruments”