Smol or mid-sized snippets of SuperCollider code that start in SuperCollider's Workspace Emacs buffer from scratch.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

44 lines
1.2 KiB

  1. Ndef(\lcmnoise).play
  2. Ndef(\lcmnoise).fadeTime = 10;
  3. (
  4. Ndef(\lcmnoise, {
  5. var snd, revchain;
  6. snd = [
  7. tanh(lcm(SinOsc.ar(
  8. LFNoise0.kr(LFNoise0.kr(1/10).exprange(0.1,1)).exprange(1,15000)
  9. ).range(-100,100).round(1),SinOsc.ar(
  10. LFNoise0.kr(LFNoise0.kr(1/10).exprange(0.1,1)).exprange(1,15000)
  11. ).range(-100,100).round(1))*0.0001),
  12. tanh(lcm(Saw.ar(
  13. LFNoise0.kr(LFNoise0.kr(1/10).exprange(0.1,1)).exprange(1,15000)
  14. ).range(-100,100).round(1),LFCub.ar(
  15. LFNoise0.kr(LFNoise0.kr(1/10).exprange(0.1,1)).exprange(1,15000)
  16. ).range(-100,100).round(1))*0.0001)
  17. ] ;
  18. snd = BHiPass.ar(snd, 180);
  19. snd = snd.softclip * 0.8;
  20. snd = Splay.ar(snd, spread:1);
  21. revchain = snd * Lag.ar(
  22. in: LFPulse.ar(
  23. freq: LFNoise0.ar(1).exprange(0.01,2),
  24. width: 0.001),
  25. lagTime: 0.1)
  26. * LFNoise1.ar(1).range(10,10000);
  27. revchain = Greyhole.ar(
  28. in: revchain,
  29. delayTime: LFNoise1.ar(1).range(0.0001,0.2),
  30. damp: 0.5,
  31. size: LFNoise1.ar(0.1).exprange(0.0001,5),
  32. feedback: 0.95);
  33. revchain = LeakDC.ar(revchain);
  34. revchain = Limiter.ar(revchain) * LFNoise1.ar([1,1]).range(0,0.9);
  35. snd = snd * LFNoise0.ar([0.9,0.8]).range(0,2);
  36. snd = snd + revchain;
  37. snd = LPF.ar(snd.softclip, LFNoise1.ar(0.1).exprange(100,20000)) * 1;
  38. })
  39. )
  40. Ndef(\lcmnoise).release