Page 2 of 7

Re: Oscillators

PostPosted: Sat Oct 18, 2014 9:58 pm
by tester
martinvicanek wrote:@tester: I deliberately left out sync inputs because naive hard syncing causes terrible aliasing. I thought it is useless and only increases CPU load. Do you have a particular use for it? And yes, it is possible to create a multiple oscillator (straightforward code replication) however there is not much to gain to be expected in terms of efficiency compared to individual modules, no overhead that could be shared.


When rendering audio in DAWs like reaper, often crucial to my projects is whether I can hard sync phase offsets or not. When playing with relatively slow modulations and relatively slow differential beats, syncing the and phases bands does matter and is very audible (i.e. not only "subtle effect"). I don't use "clear audio" for that because while I'm not sure if it does hard resync - it affects all stuff, and using just hard resync - I can manipulate individual selected units.

Re: Oscillators

PostPosted: Sat Oct 18, 2014 11:47 pm
by MyCo
@Martin, that's brilliant. Never seen such a simple implementation. You also adjust the initial offset, which I've never seen in any FS/SM Osc, haven't bothered to do that in my own Oscs.
The possibility to get a band-limited saw and a non-limited saw at the same time is great. Sometimes you might want to mix those to get some more "energy" (eg. for JP8000 kind of saws).

I'm wondering if it's possible to implement hard-sync in a naive way, by just hard syncing the non-limited wave.

Re: Oscillators

PostPosted: Sun Oct 19, 2014 12:09 am
by KG_is_back
MyCo wrote:I'm wondering if it's possible to implement hard-sync in a naive way, by just hard syncing the non-limited wave.


from what I can see in the code it should be. The BLEB seems to calculated from the saw itself, so it should work. there is one way to find out...

Re: Oscillators

PostPosted: Sun Oct 19, 2014 2:20 am
by MyCo
I've updated the code versions, so it behaves like the ASM versions. Changed some tiny bits in the ASM as well, so all Oscs output a non band limited version of their waveforms as well.
Now that I've the right code version, I'll try to add the hard sync stuff.

Re: Oscillators

PostPosted: Sun Oct 19, 2014 3:59 am
by MyCo
Hard sync doesn't work that way... A solution would be to mix in a minBLEP, when there is a hard sync. It's not that easy though...

Re: Oscillators

PostPosted: Sun Oct 19, 2014 10:56 am
by martinvicanek
Thanks for the clean-up, MyCo, much appreciated!
Of course you could easily add a naive hard sync, resulting in some 50% CPU overhead and terrible aliasing :| . I think MyCo refers to an alias-suppressed hard sync, which is a bit tricky to implement because you need subsample resolution for the sync event. I have a prototype here, never bothered to dig deeper.

Re: Oscillators

PostPosted: Sun Oct 19, 2014 12:30 pm
by tester
Basically, when I play with my designs - when I find something interesting, I must be sure that when rendering audio or storing the presets, the "interesting" part remains and is replicable. In these situations I use manual hard resync button for groups of oscillators. As for the hard resync itself - it does not matter that it produces a glitch (sometimes it's even a helpful audible reference; or we talking about heavy long loud crackle?). An audio part can be deleted after render. What matters is - that audio layers are not out of sync in relation to each other.

Noise Generators

PostPosted: Tue Oct 21, 2014 9:04 pm
by martinvicanek
(MV's Oscillators Part III)

Noise is a useful ingredient in modelling wind or percussion instruments. The term “white noise” describes a hissing sound with a flat frequency spectrum, which is perceived as a sound with strong high-frequency content. One can also create noise with a power spectral density inversely proportional to the frequency. The result is called pink noise, and is used for instance by sound engineers to calibrate PA loudspeaker systems. Brown noise has a power density inversely proportional to the frequency squared, so it has more low frequency content in proportion.

Technically, white noise can be generated from a sequence of uncorrelated (pseudo)-random numbers. For musical applications, one needs random number generators with sufficiently long cycles, because the human ear will recognize a periodic pattern if the random sequence repeats itself after a few seconds or less. It is also important to have a seed input to be able to generate different sequences if needed.

A simple and fast way to generate random numbers is via the linear congruential method. The resulting white noise can be processed by a specially designed pinking filter to yield pink noise. The schematic has a fast white noise generator and pinking and "Browning" filters.

Wanna make some noise? ;)

Re: Oscillators

PostPosted: Tue Oct 21, 2014 9:09 pm
by Exo
Great stuff loving these. Thanks for sharing!

Re: Oscillators

PostPosted: Wed Oct 22, 2014 12:11 am
by nix
Thanks Martin!
Will play them soon.
FM can create noise to some degree,
and is the stock method in FS.
ty also for the background on the established science.
Can I get a quick reference on brown noise too?
I'll Google now actually, but would like to hear your breakdown.
Cheers

edit- here is the wiki->
http://en.wikipedia.org/wiki/Colors_of_noise
looks like the freq response defines it,
but within a broadly defined response, we can have all kinds of looking waves prolly,
on a 1024(say) sample window