Zebralette 3 Oscillator Effects Discussion

Official support for: u-he.com
Post Reply New Topic
RELATED
PRODUCTS

Post

The oscillator effects are based on single cycle waveforms. Like, a single cycle goes into the effect, and a single cycle comes out of it. One can not somehow create anything inharmonic this way, such as dissonant tones or detuned voices, even if modulating some of the effects may appear to do so.

Any unison or inharmonic effects are based on the playback of these single cycle waveforms, either by detuning the unison voices in the wavetable-based renderer, or by distorting the spectrum within the additive renderer.

Post

Urs wrote: Tue Dec 03, 2024 9:51 am The oscillator effects are based on single cycle waveforms. Like, a single cycle goes into the effect, and a single cycle comes out of it. One can not somehow create anything inharmonic this way, such as dissonant tones or detuned voices, even if modulating some of the effects may appear to do so.

Any unison or inharmonic effects are based on the playback of these single cycle waveforms, either by detuning the unison voices in the wavetable-based renderer, or by distorting the spectrum within the additive renderer.
Right! So if you were able to detune the modulator instead of using perfect ratios, wouldn't it create a beating/unison effect?

Post

JoeLowery215 wrote: Sun Dec 22, 2024 1:29 am
Urs wrote: Tue Dec 03, 2024 9:51 am The oscillator effects are based on single cycle waveforms. Like, a single cycle goes into the effect, and a single cycle comes out of it. One can not somehow create anything inharmonic this way, such as dissonant tones or detuned voices, even if modulating some of the effects may appear to do so.

Any unison or inharmonic effects are based on the playback of these single cycle waveforms, either by detuning the unison voices in the wavetable-based renderer, or by distorting the spectrum within the additive renderer.
Right! So if you were able to detune the modulator instead of using perfect ratios, wouldn't it create a beating/unison effect?
No, it would create waveforms that are "cut off" at one or two sides. The base waveform will always ever render one exact cycle into a wavetable, and then the modulator would render, say, two and a half cycles. Such that the modulator would be cut off on the right, and the resulting waveform would show a sudden change.

Post

Quite happy to report that the worst case scenario, which takes 25% CPU per single oscillator, after some optimisation, takes less than 4% CPU on my computer. Average case should be well under 1% or 2% even with a lot going on.

Likewise, an optimisation in the MSEGs brought MSEGs down from about 4% CPU to 0.15% CPU...

Post

Thats impressive!

I assume the FX don't need optimization as you'll take the existing effects from existing u-he synths / effect plugins? Btw., I really like the FX of Repro (especially distortion / waveshaping / Velvet is nice).
Find my (music) related software projects here: github.com/Fannon

Post

We have only started working on new algorithms for the FX section. I don't necessarily want to take over anything that already exists. We're exploring some more options with some ideas that got developed over the years.

Post

Urs wrote: Mon Dec 30, 2024 6:03 am Quite happy to report that the worst case scenario, which takes 25% CPU per single oscillator, after some optimisation, takes less than 4% CPU on my computer. Average case should be well under 1% or 2% even with a lot going on.

Likewise, an optimisation in the MSEGs brought MSEGs down from about 4% CPU to 0.15% CPU...
Wow :love: :love: :love:

That is a huge huge improvement!

Post

Urs wrote: Tue Dec 03, 2024 9:51 am The oscillator effects are based on single cycle waveforms. Like, a single cycle goes into the effect, and a single cycle comes out of it.
Is it possible to render the output of the oscillator effects back to the wave? It doesn't look like it, but perhaps I am missing something

Post

The waveform is spline based, the OscFX operate on sample based waveforms. So the oscillator first renders the spline-based curve into a wavetable, then OscFX are applied. Afterwards, the oscillator renders the resulting waveform into audio directly, or takes the waveform's spectrum and renders it with separate sine oscillators.

Feeding the resulting waveform back into the wave would mean that it has to be turned from a wavetable into a spline-based curve, i.e. it needs to be vectorised. This is a time consuming process with a lot of options to optimise the outcome since the result will be an approximation rather than an exact representation. The more complex the waveform, the more spline points needed to be exact, and the less useful the waveform for further editing. The most useful results are usually rather abstract, and based on interaction with a human focussing on what they want.

Hence, IMHO it makes no sense to directly render OscFX back into the waveform, unless we add some kind of traditional wavetable support. Which we might, but which we won't be able to do initially.

Post

Ok, thanks

Post

Ronny Pries wrote: Sun Feb 18, 2024 12:35 am It lately dawned on me that playing a chord via physical MIDI delays each note by at least 0.66ms. Which measurably affects how the peaks of waveforms sum. Resulting in less overlapping peaks (Not being summed in a sampling rate bottleneck probably helped, too?).
I don't think a synth plugin is the place for it. A midi effect plugin that forces incoming midi messages to fit within 31250 baud. So incoming messages come into a queue, and are then output with a minimum time gap between them of 37 samples if the sample rate is 48000. I imagine someone with a basic competence with Juce who wants a toy project to play with could knock this out pretty easily. (I can think how I'd do it in Reaper's JSFX, but it's not something I'm going to actually write.) Essentially you have a fifo that incoming midi comes into, and then you take out as many events as you can for a given audio buffer. Something like that.

Post

I've been enjoying Zebralette 3 a lot so far, but I miss the "norm" knob from Zebralette 2, any plans to have a way to normalize the waveform after the OSC FXs have been applied?

That was really good to create some very harsh tones out of the oscillator in Zebralette 2.

Post

The necessity for a Normalise function is something we'd like to discuss. It's one of those things I guess where we need to make up our mind if and how we implement it.

In Zebra2 it's kind of naive in a way, where even a little amount is already doing quite a bit, and 0 kicks in very suddenly. I have no proper concept of making the range more useful.

I'm thinking maybe just a button. Normalise on or off.

Post

Oh yeah, a button may work well, as I usually have it at 0 or at full normalization. :tu:

Post

Slope control for the filter effect would be cool

Post Reply

Return to “u-he”