[chuck-users] How to ramp pitch?

Bonnie Eisenman '14 bmeisenm at princeton.edu
Thu May 22 17:58:05 EDT 2014


That's just what I was looking for. Thanks, Stefan!

Sent from my iPhone

> On May 22, 2014, at 5:36 PM, Stefan Blixt <stefan.blixt at gmail.com> wrote:
> 
> You can try to use Step into Envelope. This is dry coding, and I've had a few beers, but:
> 
> Step s => Envelope e => SinOsc s => dac;
> 
> 1 => s.next;
> 0 => s.sync;
> 
> 220 => e.value;
> 440 => e.target;
> 1::second => e.duration;
> 
> 2::second => now;
> 
> 
> 
>> On Thu, May 22, 2014 at 10:55 PM, Moisés Gabriel Cachay Tello <xpktro at gmail.com> wrote:
>> I haven't ChucKed for a while, but this can help
>> 
>> Pseudocode:
>> 
>> actual_pitch = 440
>> new_pitch = 880
>> delta = 1 // -> Increment between steps
>> 
>> while(actual_pitch != new_pitch)
>>     if (actual_pitch > new_pitch)
>>         delta = -1 // if we're decreasing pitch
>>     actual_pitch = actual_pitch + delta //This would be the freq setting
>>     advance 1ms
>> 
>> 
>> 
>> 
>> 2014-05-22 15:39 GMT-05:00 Bonnie Eisenman <bmeisenm at princeton.edu>:
>>> Hi all, sorry if this question has been answered before, but I can't find it in the docs.
>>> 
>>> I'd like to ramp a pitch quickly from one frequency to another. I feel like there should be a better way to do this than what I'm currently using, which is this:
>>> 
>>> // Where length is the # of milliseconds this should take
>>> for (0 => int i; i < length $ int; i++) {
>>>     f1 - ((i/length) * (f1 - f2)) => float newFreq;
>>>     osc.freq(newFreq);
>>>     1::ms => now;
>>> }
>>> 
>>> This works but it produces an unfortunate clicking noise at the end (and yup, I'm using an envelope). Any tips?
>>> 
>>> Thanks!
>>> 
>>> --Bonnie
>>> 
>>> _______________________________________________
>>> chuck-users mailing list
>>> chuck-users at lists.cs.princeton.edu
>>> https://lists.cs.princeton.edu/mailman/listinfo/chuck-users
>> 
>> 
>> 
>> -- 
>> -Moisés
>> 
>> _______________________________________________
>> chuck-users mailing list
>> chuck-users at lists.cs.princeton.edu
>> https://lists.cs.princeton.edu/mailman/listinfo/chuck-users
> 
> 
> 
> -- 
> Release me, insect, or I will destroy the Cosmos!
> _______________________________________________
> chuck-users mailing list
> chuck-users at lists.cs.princeton.edu
> https://lists.cs.princeton.edu/mailman/listinfo/chuck-users
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.cs.princeton.edu/pipermail/chuck-users/attachments/20140522/9380b794/attachment.html>


More information about the chuck-users mailing list