• Software
  • DSP/Real-time VST synths [no wavetable/ROMplers] (p.2)
2013/05/30 00:40:38
mjc9109
bitflipper


I'm not a synth programmer, but I'd be very surprised if there are any soft synths that actually create their waveforms sample-by-sample in real time. (Although I suppose that could account for the horrible CPU consumption of Diva! J/K.)

That's exactly what I'm after, heh. If CPU is not being taxed, well then it's not working very hard, is it?
CPUs are getting faster and with multi-core and multi-thread abilities...wouldn't it make sense to model analog instead of having wavetables/samples? Inefficient it may seem, but I personally hear a difference.


u-he's Diva and ACE [I own ACE, which recently got an update for multi-core support recently] are very CPU-hungry. I find the harmonics that are calculated to be more rich and alive than some other VST synths.


See this taken from the ACE manual:

Most digital synths handle audio signals and modulation signals separately. Audio is
usually evaluated at a rate between 44100 and 96000 Hertz, while modulation signals
update at 1000 Hz or slower (often called the "control rate" of the synthesizer).
ACE is very different in this respect. While the oscillators have more than 500 times
oversampling, all signals (including modulation) run at least twice as fast as the host
application's sample rate... and this is just the lowest of ACE's quality settings!



So yes, I believe 1's and 0's and a lot of math are involved to analogue-model these synths as opposed to cut-copy-repeat waves at their cycle. If fixed/static/pure sound is what the goal is, then by all means wavetable method would be preferred.


Another part I like about DSP synths over wavetable...the fast LFOs. DCAM and Sylenth's LFO rate goes pretty fast and buzzy, whereas Z3ta+2 is really slow. When I tried to do it in Zebra2, it broke volume meter. Glad I had a limiter on my master bus, very loud. Makes me wonder if that's why Z3ta only lets you go so fast.
2013/05/30 01:27:52
synkrotron
I've just been reading about some of the Arturia products because I am interesting in investing in some of their VTSi synths. This is from their site and is about their TAE system:-


Better reproduction of analog oscillators

TAE® oscillators are very similar to their analog counterparts for several important reasons.

One of the main reasons is that they are "free", i.e. they are not sampled or wavetable based - or generated from a 0-point when a note is played. Each waveform generated dynamically, allowing the waveform to be in constant adaptation regarding sampling "cutting" and quantization, avoiding one of the major "tell-tale" signs of digital waveform generation and provides a certain level of "liveness" found in the classic analog synthesizers of the past.

Standard digital synthesizers produce aliasing in high frequencies, and also when using Pulse Width Modulation or Frequency Modulation. TAE® allows the production of oscillators that are totally aliasing-free in all contexts (PWM, FM,…), at no extra CPU cost.

Also, all of our oscillators are highly optimized for the particular working frequency. That means that you can play with an instrument exactly as if you played a real analog synthesizer. Again, the waveforms are not presampled and or regenerated with digital perfection, allowing each note to have a life of its own.

In addition, original analog oscillators were unstable. Actually, their wave shape was always slightly different from one period to another. It is also true that due to analog hardware sensitivity, new period trigger times varied with the temperature and other environmental conditions.

TAE® allows the simulation of the oscillator's instability, helping to create warmer and fatter sound.

Original analog oscillators used condensers' unloading to produce common wave shapes (saw tooth, triangle, square). This means that wave forms were slightly curved or distorted in other ways that are considered highly desirable in a musical context. TAE® allows the reproduction of condenser's unload in order to give you the original analog sound.

Because TAE® oscillators are "free" and "alive", when you play a simple chords with raw oscillators, you don't have a digital impression of "fog" or a "blocked" sound, but you have a pleasant feeling of transparency and clarity.


PWM

With TAE®, you can even produce complex PWM sounds with unprecedented quality and, of course, free of any aliasing. It is true for all the our TAE® waveforms (square, triangle, saw…). This produces sounds which are unique on the market, because PWM is very difficult to achieve on certain waveforms like triangle or saw/ramp. We bring you new levels of reality in a virtual analog synthesizer, so that you can achieve new levels of creativity in your music.[/quote
2013/05/30 12:20:26
drewfx1
In defense of Dave's (Bitflipper's) argument, if it's more efficient programmatically there's no reason not to start with a waveform in memory which you then manipulate vs. starting with nothing. You can start with all zeros (nothing) and generate the waveform or you can start with a waveform stored in memory and manipulate it and get to the exact same place; it's just a somewhat different mathematical process. You don't have to just play back a stored waveform unadulterated.

But it's complicated and there are difficulties in each approach. For instance I mentioned Reaktor generating its waves earlier, but if you've played with Reaktor you might know that you can end up with generated waves that alias horribly (you can turn on Reaktor's oversampling to mitigate this somewhat).

So I would go by the resulting sound rather than some preconception about what approach is better.
2013/05/30 13:01:21
synkrotron
drewfx1

So I would go by the resulting sound rather than some preconception about what approach is better.
Agreed, and point taken.
 
However, I reserve the right to be a mathematically computed waveform snob
2013/05/30 13:59:56
The Maillard Reaction


I don't get it.

If you simply want a synth based on an oscilator how can a new one be anything different than an ancient one?

Oversampled modulation??? WTF. It seems like useful range for "modulation" is so small that oversampling solves a problem that doesn't exist.

What's next? 

7 string guitars? :-)


all the best,
mike 
2013/05/30 15:02:54
drewfx1
mike_mccue


I don't get it.

If you simply want a synth based on an oscilator how can a new one be anything different than an ancient one?

Oversampled modulation??? WTF. It seems like useful range for "modulation" is so small that oversampling solves a problem that doesn't exist.

What's next? 

7 string guitars? :-)


all the best,
mike 
Any discontinuous waveform, such as one containing a pulse width of less than 100%, will alias. Potentially a lot.
2013/05/30 16:39:24
The Maillard Reaction


Isn't that the fun part?
2013/05/30 18:39:37
dmbaer
bitflipper


There is no limit to the potential complexity of a wavetable. The idea is that you calculate the waveform once and then repeat it 100,000 times. You don't recalculate it for every cycle.

At least with Zebra, which is what part of this discussion is about, it may be that it's somewhere in between "every cycle" and "just once".  Urs himself talking about Zebra on KVR:
 
The synthesis basically swaps back and forth between wavetable, additive and whatever the osc fx do. The end result always is a single, bandlimited wavetable that will be crossfaded with its predecessor. This happens on the fly, depending on demand (modulations) and the Resolution parameter (up to 100 times each second or so).
 
Hence, to be precise, it's a form of granular synthesis where each grain is obtained from a spectrum or a wavetable of different sources (spline curves, waves) which get furtherly mangled by various modifiers.
 
So, I guess we all fully understand now what's going on under the covers. 
 
In any case ... some of the wave transforms (or spectral effects in Zebra-ese) make it clear that some kind of additive action is happening.  The following for example (from the Zebra user manual):
 
Odd for Even - Even-numbered harmonics are cross-faded into odd harmonics. This
results in a more ‘squarish’ waveform (square waves contain only odd
harmonics). With negative values, the opposite applies – odd harmonics
become even harmonics.
 
Brilliance - Boosts (positive) or attenuates (negative) higher harmonics, resulting in
brighter or darker waveforms.
 
Filter - A combination of lowpass (negative values) and highpass (positive values)
filters. Because in reality the ‘filter’ code only manipulates amplitudes,
its slope is more than 100dB/octave.
2013/05/30 23:42:32
bitflipper
Whatever magic makes it happen, Zebra is one helluva synth. It sounds great, is quite versatile, and relatively easy on the CPU. The idea that Zebra is somehow limited by its oscillator implementation is just mistaken.

The only gripe I have about Zebra is that it's not real user-friendly for programming. Complex patches get obtuse quickly, as you try to keep track of what's routed where and what's modulating what.


2013/05/31 01:04:42
synkrotron
I've been using Zebralette myself and that, on its own, is a great little synth, despite not having "conventional" oscillators. The only thing I might have missed is a bit of noise but, hell, that don't matter because I've got plenty of other synths that can do that.

I've had one eye on Zebra too, and Diva, and ACE, but have not taken the plunge yet. But I am using Podolski, another excellent free synth from U-He.

At one point, as I was aquiring more and more VSTi's, I was starting to think that I needed to stop getting new instruments and learn how to use the ones I have got, to their fullest. I have since changed my mind and I have decided that I find having a wider range of instruments I am more "inspired" and each one has different characteristics and sets of presets.


I'm rambling again, and somewhat off topic... sorry.
© 2026 APG vNext Commercial Version 5.1

Use My Existing Forum Account

Use My Social Media Account