This is a patch that i want to use it as an lfo. It is doubled because i want to save the array to a 256 block size array [pd lfo] (right up), in order to send it to processing.
I also want the oscillators to produce prices between -1 ~ 1 (in max amplitube (lofAmount == 1). I also pictured them one by one at the down right pic.
So far so good. My problem is that iventually , and although it looks fine to me, it doesn't produces prices between -1~1 but depending on the lfo amount, it produces whatever. Ex. the lfo if lfoAmount == 0, is the line y=0 (straigth line) (expected) but if lfoAmount == 0.5 it shows prices 0.5 ~ 1 and if lfoAmount == 1 then it produces prices >1.
What do i do wrong?
Also, whatever i write, must be written with pd vanilla and only with pd patches - based library (not c - based abstractions).
-
Lfo output
-
you have a problem because, for example, when you send a signal of 0 into your square wave generator, it outputs a signal of -1.
You need to make sure the square~ (and other signal) outputs are zero when input is zero. -
see my post here : http://puredata.hurleur.com/sujet-8292-lfo-controlling-frequency
-
When i send a signal of 0, this doesn't mean that frequency is 0Hz? Why does this affect the amplitude of the oscillator? I mean pasor~ produces a saw wave with prices 0~ 1 and osc~ produces cosine wave with prices -1~1. The only thing we change is the frequency. And also when frequency is 0Hz means that there is no circle between those two prices (-1~1 or 0~1) is happening so the outcome will be no signal. That is my thought.
So, what am i missing here?
Also, dwan thanx gor your post, it was an answer to a mine previous question.
This produces the right lfo for amplitude modulation but for frequency modulation it sounds better when just adding frequencies around the main frequency below and above so i need my oscillators to make prices at {-1~1}. -
Found my mistake! it was the operator [*~ ] at the end before the tabsend~. Still i don't understand why it didn't work since that the oscillators that don't participate sould have price 0Hz for input and so, 0 at the output. Anyway, this is my solution... (attached) and has nothing to do with signal maths..
Thanx anyway but please explain me my mistake..