sorry for the incomplete repeat post.
You can combine multiple ugens in a variety of ways. In particular you can multiply the output of two ugens. I'm typing without running so forgive typos please.On Wed, Dec 4, 2013 at 8:12 PM, Moisés Gabriel Cachay Tello <xpktro@gmail.com> wrote:
You can always try to modulate the Oscilator:SinOsc vibrato => SinOsc sine => dac;// This will tell sine to take the vibrato input as a modulator of// it's frequency.2 => sine.sync;5 => vibrato.freq;10 => vibrato.gain;
5::second => now;2013/12/4 Manuel Bärenz <manuel@enigmage.de>
Hi guys,
I'm giving a presentation on ChucK tomorrow and I wanted to show off
some of the basic features in a live coding session. I found that
creating a vibrato (modulating the frequency) is far too hard. The
example I'm looking at is
http://chuck.cs.princeton.edu/doc/examples/basic/whirl.ck. In an
infinite loop, you have this code:
30 + ( Math.sin(t) + 1.0 ) * 10000.0 => s.sfreq;
t + .004 => t;
Here, t is a float and s is a SinOsc. Now, what I would have expected is
the following, more intuitive setup outside the loop:
30 + SinOsc freq_mod => s.freq;
1 => freq_mod.freq;
I know that the first line with the "30 + SinOsc" is probably nonsense
in itself, but I could work around that (by using a step UGen for
example). My actual problem is that you can't chuck a SinOsc into s.freq.
Consider this line:
SinOsc freq_mod => s.freq;
I get an error like this:
arguments type(s) do not match:
... for function 'SinOsc.freq(...)' ...
...(please check the argument types)
Is this something that the language is simply not capable of or am I
doing something wrong?
Best, Manuel
_______________________________________________
chuck-users mailing list
chuck-users@lists.cs.princeton.edu
https://lists.cs.princeton.edu/mailman/listinfo/chuck-users
--
-Moisés
_______________________________________________
chuck-users mailing list
chuck-users@lists.cs.princeton.edu
https://lists.cs.princeton.edu/mailman/listinfo/chuck-users