1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
|
class:: ControlRate
summary:: Server control rate.
related:: Classes/RadiansPerSample, Classes/SampleDur, Classes/SampleRate, Classes/SubsampleOffset
categories:: UGens>Info
Description::
Get the current control rate of the server.
classmethods::
method::ir
returns::
The current control rate of the server.
equivalent to 1 / link::Classes/ControlDur::
Examples::
code::
{ ControlRate.ir.poll }.play;
::
compare ControlRate (.kr) and link::Classes/SampleRate:: (.ar)
code::
(
{
var freq = 400;
// pulses at control rate:
(LFPulse.ar(ControlRate.ir,0,0.01,2,-1) * [1,0,0,0])
// Sinewave at control rate:
+ (SinOsc.kr(freq) * [0,1,0,0])
// pulses at sample rate:
+ (LFPulse.ar(SampleRate.ir/2,0,0.1,2,-1) * [0,0,1,0])
// Sinewave at sample rate:
+ (SinOsc.ar(freq) * [0,0,0,1])
}.plot(0.01);
)
::
listen to difference:
code::
(
{
K2A.ar( SinOsc.kr(400, mul:[1,0]))
+ SinOsc.ar(400, mul:[0,1])
}.scope
)
::
More about difference between .kr (control rate) and .ar (audio rate) can be found in link::Tutorials/Mark_Polishook_tutorial/08_Rates::
play a sine tone at control rate
code::
{ SinOsc.ar(ControlRate.ir) * 0.1 }.play;
::
|