{
   "is_private" : null,
   "id" : "1-50s",
   "code" : "// base concept\r\n\r\n{ arg freq = 74; SinOsc.ar(freq * [1,1.000001] * ( 1 + ( SinOsc.ar(freq  * LFPulse.kr(2,0, 1/8).range(0,1) * 1.20 )))) * 0.2; }.play\r\n\r\n{ arg freq = 90; SinOsc.ar(freq * [1,1.000001] * ( 1 + ( SinOsc.ar(freq  * LFPulse.kr(4,0, 0.5).range(0,1) * 1.50 )))) * 0.2; }.play\r\n\r\n{ arg freq = 74; SinOsc.ar(freq * [1,1.000001] * ( 1 + ( SinOsc.ar(freq  * LFPulse.kr(2,0, 1/8).range(0,1) * 1.50 )))) * 0.2; }.play\r\n\r\n{ arg freq = 77; SinOsc.ar(freq * [1,1.000001] * ( 1 + ( SinOsc.ar(freq  * LFPulse.kr(4,0, 1/3).range(0,1) * 1.60 )))) * 0.2; }.play\r\n\r\n// play with it\r\n\r\n(\r\nNdef(\\eyes, { arg freq=483, pan=0, amp=0.1;\r\n    var sig;\r\n    var env1, env2, env3, env4, env5, env6, env7, env8;\r\n    var fmfreq;\r\n    env1 = Duty.kr(1/8, 0, Dseq([\r\n        1,0,1,0,\r\n        1,0,0,0,\r\n        1,0,0,0,\r\n        1,0,0,0,\r\n    ],inf)).lag(0.01);\r\n    fmfreq = freq * ( 1 + ( SinOsc.ar(freq * 4 * env1) * 1 ));\r\n    sig = LFSaw.ar(fmfreq * [1,1.0001]);\r\n    sig = RLPF.ar(sig, freq*2 * [1,2 * SinOsc.kr(1/8).range(2,1),1], 0.2 * SinOsc.kr(1/4).range(2,1));\r\n    sig = Pan2.ar(sig, 0, amp).flop;\r\n}).play\r\n);\r\n\r\n(\r\nNdef(\\eyes, { arg freq=70, pan=0, amp=0.1;\r\n    var sig;\r\n    var env1, env2, env3, env4, env5, env6, env7, env8;\r\n    var fmfreq;\r\n    env1 = Duty.kr(1/8, 0, Dseq([\r\n        1,0,0,0,\r\n        1,0,1,1,\r\n        1,0,0,1,\r\n        1,0,0,0,\r\n    ],inf)).lag(0.01);\r\n    fmfreq = freq * ( 1 + ( SinOsc.ar(freq * 1 * env1) * 2.2 ));\r\n    sig = LFSaw.ar(fmfreq * [1,1.0001]);\r\n    sig = RLPF.ar(sig, freq*2 * [1,2 * SinOsc.kr(1/8).range(2,1),1], 0.2 * SinOsc.kr(1/4).range(2,1));\r\n    sig = Pan2.ar(sig, 0, amp).flop;\r\n}).play\r\n);\r\n\r\n\r\n(\r\nNdef(\\eyes, { arg freq=80, pan=0, amp=0.1;\r\n    var sig;\r\n    var env1, env2, env3, env4, env5, env6, env7, env8;\r\n    env1 = Duty.kr(1/8, 0, Dseq([\r\n        1,0,0,0,\r\n        1,0,0,0,\r\n        0,0,0,0,\r\n        0,0,0,0,\r\n    ],inf)).lag(0.31);\r\n    sig = LFSaw.ar(freq * [1,1.001]);\r\n    sig = 0;\r\n    sig = sig + LFSaw.ar(freq * ( 1 + ( SinOsc.ar(freq*2 * 1.0 * env1) * 1.91 )));\r\n    //sig = sig + SinOsc.ar(freq * ( 1 + ( SinOsc.ar(freq*2 * 1.0 * LFPulse.kr(2)) * 0.91 )));\r\n    sig = RLPF.ar(sig, ( [4000, 4001, 8000 ] * ( [1.07,1,1.0001 * SinOsc.kr(1/8).range(0.1,4)] * 1.1 * Amplitude.kr(sig)**1.8 ) ).clip(5,18000));\r\n    sig = (sig * 40).tanh / 2;\r\n    sig = Pan2.ar(sig, SinOsc.kr([1,2,3]/10).range(-1,1) * 0.3, amp).flop;\r\n}).play\r\n);",
   "labels" : [],
   "ancestor_list" : [],
   "description" : "I'm sure it's a well known technique, but I found this by accident and I'm amazed by the cool jazzy basslines generated from nowhere",
   "author" : "grirgz",
   "name" : "fm generated melody"
}
