Advertisement
Guest User

MIDI Sans Frontieres - Deerful

a guest
Jul 5th, 2016
56
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.92 KB | None | 0 0
  1. //MIDI SANS FRONTIERES
  2. //DEERFUL / EMMA WINSTON
  3. //5 JULY 2016
  4.  
  5. //turn reverb on
  6. r = {Out.ar([0,1], FreeVerb.ar(In.ar(1, 2), mix: 1, room: 2, mul: 0.2))}.play;
  7.  
  8.  
  9. //add all these synthdefs before you begin
  10. (
  11. SynthDef.new("sinesynth", { arg freq, amp=0.07, filter=2000, pan=1, out=1;
  12. //env = Env.linen(0, 0.9, 0).kr(doneAction: 2);
  13. var sig1 = SinOsc.ar(freq*[0.999,1.01], 0.05);
  14. var sig2 = SinOsc.ar(freq*3,0.05);
  15. Out.ar(out, Pan2.ar(LPF.ar((sig1)+(sig2), filter,0.5, 0.05), pan))
  16. }, [0.1, 0.4]
  17. ).add;
  18. )
  19.  
  20. (
  21.  
  22. SynthDef.new("sawsynth", { arg freq, amp=0.2, filter=2000, pan=1, out=1;
  23. //env = Env.linen(0, 0.9, 0).kr(doneAction: 2);
  24. var sig1 = LFSaw.ar(freq*[0.999,1.01], amp/2);
  25. var sig2 = LFSaw.ar(freq*3,amp/2) + Saw.ar(freq*9,amp/4);
  26. Out.ar(out, Pan2.ar(RLPF.ar((sig1)+(sig2), filter,0.5, 0.2), pan))
  27. }, [0.1, 0.4]
  28. ).add;
  29. )
  30.  
  31. (
  32. SynthDef("trisynth", { arg freq, amp=0.2, filter=5000, pan=0, out=1;
  33. var sig1 = LFTri.ar(freq*[0.999,1.01],0.5,amp);
  34. var sig2 = LFTri.ar(freq*4,amp/2) + LFTri.ar(freq*2,amp/4);
  35. Out.ar(out, Pan2.ar(LPF.ar((sig1)+(sig2), filter,0.5, 0.2), pan))
  36. }, [0.1, 0.4]
  37. ).add;
  38. )
  39.  
  40. (
  41. SynthDef("squaresynth", { arg freq, amp=0.2, filter=2000, pan=0, out=1;
  42. var sig1 = LFPulse.ar(freq*[0.999,1.01],0.5,amp);
  43. var sig2 = LFPulse.ar(freq*4,amp/2) + Pulse.ar(freq*2,amp/4);
  44. Out.ar(out, Pan2.ar(LPF.ar((sig1)+(sig2), filter,0.5, 0.2), pan))
  45. }, [0.1, 0.4]
  46. ).add;
  47. )
  48.  
  49.  
  50. // below here is the stuff you need to do live
  51.  
  52. ~picksynth = ["sinesynth", "squaresynth", "trisynth", "sawsynth"];
  53.  
  54.  
  55. //background ring - start first one at beginning, then start the other two when it feels right
  56. { Ringz.ar([WhiteNoise.ar(0.005),WhiteNoise.ar(0.005)], 440, 4) }.play();
  57. { Ringz.ar([WhiteNoise.ar(0.005),WhiteNoise.ar(0.005)], 298, 4) }.play();
  58. { Ringz.ar([WhiteNoise.ar(0.005),WhiteNoise.ar(0.005)], 590, 4) }.play();
  59.  
  60. (
  61. ~mel1 = Pmono(
  62. "sinesynth",
  63. \degree, Pseq([-1, 1, 4, 3.1, -2, -5, 1, -3, 1, 2], 8),
  64. \octave, Pseq([4, 5, 5, 5, 5, 4, 5, 4, 4, 4], 8),
  65. \dur, Pseq([1.5, 1.5, 1, 1.5, 2.5, 1.5, 2.5, 1.5, 2.5, 0], 8),
  66. \tempo, 100/60
  67. ).play(quant: 4);
  68. )
  69.  
  70. (
  71. ~mel1a = Pmono(
  72. ~picksynth.choose,
  73. \degree, Pseq([-1, 1, 4, 3.1, -2, -5, 1, -3, 1, 2], 4),
  74. \octave, Pseq([4, 5, 5, 5, 5, 4, 5, 4, 4, 4], 4),
  75. \dur, Pseq([1.5, 1.5, 1, 1.5, 2.5, 1.5, 2.5, 1.5, 2.5, 0], 4),
  76. \tempo, 100/60
  77. ).play(quant: 1);
  78. )
  79.  
  80. (
  81. ~mel2 = Pmono(
  82. ~picksynth.choose,
  83. \degree, Pseq([1, -2, 4, 3.1, 0.1, 1, -1, 1, -2, 1], 4),
  84. \octave, Pseq([4, 5, 6, 6, 6, 6, 5, 6, 5, 6], 4),
  85. \dur, Pseq([1.5, 1.5, 1, 1.5, 1.5, 1, 1.5, 2.5, 1.5, 2.5], 4),
  86. \tempo, 100/60
  87. ).play(quant: 1);
  88. )
  89.  
  90. (
  91. ~mel3 = Pmono(
  92. ~picksynth.choose,
  93. \degree, Pseq([-5, -2, 4, 3.1, 0.1, 1, -1, 1, -3, 1], 4),
  94. \octave, Pseq([4, 5, 6, 6, 6, 6, 5, 6, 5, 5], 4),
  95. \dur, Pseq([1.5, 1.5, 1, 1.5, 1.5, 1, 1.5, 2.5, 1.5, 2.5], 4),
  96. \tempo, 100/60
  97. ).play(quant: 1);
  98. )
  99.  
  100.  
  101. // melody goes up
  102.  
  103. (
  104. ~mel4 = Pmono(
  105. ~picksynth.choose,
  106. \degree, Pseq([1, -2, 4, 3.1, 7.1, 8, -3, 1, -2, 1], 4),
  107. \octave, Pseq([4, 5, 6, 6, 6, 6, 5, 6, 5, 6], 4),
  108. \dur, Pseq([1.5, 1.5, 1, 1.5, 1.5, 1, 1.5, 2.5, 1.5, 2.5], 4),
  109. \tempo, 100/60
  110. ).play(quant: 4);
  111. )
  112.  
  113. // highest melody
  114.  
  115. (
  116. ~mel5 = Pmono(
  117. ~picksynth.choose,
  118. \degree, Pseq([2, 2, 3.1, 5, 4, 1, 2, -2, -1, -3], 4),
  119. \octave, Pseq([4, 6, 5, 5, 6, 6, 5, 6, 5, 6], 4),
  120. \dur, 1.5,
  121. \tempo, 100/60
  122. ).play(quant: 4); //live-change quant number to smaller number to build piece
  123. )
  124.  
  125.  
  126. //second part
  127. (
  128. ~mel6 = Pmono(
  129. ~picksynth.choose,
  130. \degree, Pseq([3.1, 5, 2, 3.1, 5, 4, 3.1, 2, 6, 5, 3.1], 2),
  131. \octave, Pseq([5, 4, 5, 4, 3, 4, 4, 5, 4, 4, 4], 2),
  132. \dur, 4,
  133. \tempo, 100/60
  134. ).play(quant: 4); //live-change quant number to smaller number to build piece
  135. )
  136.  
  137. //bass
  138. (
  139. ~mel7 = Pmono(
  140. ~picksynth.choose,
  141. \degree, Pseq([4, 1, \rest, 4, 3.1, 6, \rest, 2, 4, 1, \rest, 6, 5, 2, \rest], 1),
  142. \octave, 2,
  143. \dur, 4,
  144. \tempo, 100/60
  145. ).play(quant: 4); //live-change quant number to smaller number to build piece
  146. )
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement