Cumulus - transient/attack

Official support for: loomer.co.uk
RELATED
PRODUCTS

Post

Hi all,

why, when I trigger a sample (a kick) with a fast transient, I lost part of the sound? Seems that the Attack has a smooth shape.

Is it normal? Can I remove this? I love this plugin! Tried to set "Shape" to 0, but nothing change. Can you help me? Or can that section be improved? Can't deal without transient on kicks :)

Post

It's due to the grain engine, which resamples the audio into little nuggets of sound. Because each nugget has its own envelope, transients can be easily become too soft.

Generally, if I want to preserve transients as much as possible, I set the Mode to Sync, Dir to Forward, put Shape and Density to 0, and adjust Size to taste.
Architect, the modular MIDI toolkit, beta now available for macOS, Windows, and Linux.

Post

colin@loomer wrote:It's due to the grain engine, which resamples the audio into little nuggets of sound. Because each nugget has its own envelope, transients can be easily become too soft.
But this happens only for the first hit. If I load a kick, and I trigger it, I hear the soft transient. But when it loops, I can hear it perfectly, without any problem.

So the problem is "only" at the first hit, i.e. when I trigger for the first time a marker.
If it's a grain problem, how is possible that at the second loop it plays correctly? Bug?

I hope you see what I mean. Otherwise I'll post an example, so you see. Let me know, and thanks for the support.

Post

Ah yes, I see what you mean; that'd be because the second loop through, the grain envelope that happens to be playing isn't in the attack stage.

Perhaps I could add an option to preserve transients which will skip the attack shape from the first grains that play?
Architect, the modular MIDI toolkit, beta now available for macOS, Windows, and Linux.

Post

colin@loomer wrote:Ah yes, I see what you mean, That'd be because the second loop through, the grain envelope that happens to be playing isn't in the attack stage.

Perhaps I could add an option to preserve transients which will skip the attack shape from the first grains that play?
Set the Attack value would be perfect. Because in fact, at the moment, the "Attack" is only a built-in, can't deal with it.

But yes, also a "Soft Attack Shape On/Off" would be AWESOME :) (Faster to implement I guess, isn't it?).
Can't wait for this feature :hyper:

Post

You can set the attack on all grains with shape parameter - smaller values are more rectangular, larger values more like bell curves - but yes, I think your suggestion would be a nice addition for the next update. Leave it with me!
Architect, the modular MIDI toolkit, beta now available for macOS, Windows, and Linux.

Post

So there are two kind of Attacks: one for each grain (shape param), and one for the sample in general (which, at the moment, is fixed-soft). And you are about to add a control for the last one.

Right?

Post

Just the one, which is controlled by the shape parameter, but to which I can add some magic to ensure that when the grain engine starts, we (optionally) eliminate the initial fade-in envelope shape of the first grain.
Architect, the modular MIDI toolkit, beta now available for macOS, Windows, and Linux.

Post

Uhm, so it is not clear to me why it does not work now. Shape controls the attack of each gain. Example: if the sample got 200 grains, shape controls 200 attack. Right?

Why when loop the first grain has not that attack? (which must be the same at the time I play the first time).

Confused :O

Post

Sorry, my fault, I don't think I explained it well.

When Cumulus first starts playing a sample, the grain engine will spawn grain #1, which will fade-in according to the shape parameter. In isolation, you will hear this fade. At some point a few milliseconds later, grain #2 will also start playing, again fading in, but the key point is that you won't hear this fade because grain #1 is also playing: they overlap, so the fade-in of these other grains are masked. So, by the time the sample has looped and we again hit the start of the sample, because grain #987 and grain #988 are already playing, you won't hear the fade.
Architect, the modular MIDI toolkit, beta now available for macOS, Windows, and Linux.

Post

They overlap?

Theoretycally, if I play my sample with Default value and Density 100%, I hear it original (without any modification).
If there isn't modification, this means that grains does not overlap, hence I'll hear a sort of "echo" during the playing.

So, having all grains not overlapping, I should hear 988 soft/attack :O Sorry, that's not clear at all :(

Post

The grains always will overlap, it's the nature of granular synthesis.

It's just that the first grain is a special case because when it starts, there are no other grains playing to mask the fade-in. Adding the option to remove the fade-in on grain #1 completely will ensure that transients are kept.

Maybe it'll be easier if you can see this, rather than me explain it. Keep an eye on the grain display on the bottom left of the UI, set the Size and Shape to maximum, and the Density to 0. Now when you play a scene, you should be able to see the grains fade in.
Architect, the modular MIDI toolkit, beta now available for macOS, Windows, and Linux.

Post

Oh I see! My "granulizer habit" is somethings like this:

Image
that's why it wasn't clear.

So Density is the number of grains that are take in consideration (min 2, max 12), and Size is the lenght of each grain.

But for example, if I have a sample 300ms lenght, I set Density 2 and Size 150ms, I have exactly 2 grains that does not overlap. So there I'll hear 2 different attack.

Of course, since it's hard to get this configuration, they almost always overlap, and I can't hear the "fade" effect. Am I correct?

Sorry, I like to learn in deep features of sound and instruments :)

Post

Yes, you got it! I knew that grain display would come in handy.
Architect, the modular MIDI toolkit, beta now available for macOS, Windows, and Linux.

Post

:) Nice! So yes, a simple switch "Disable/enable attack of the first grain" will be enough :D

Thanks for the explanation, support and work! How will I know when the updated version coming out?

Post Reply

Return to “Loomer”