{
   "id" : "1-57l",
   "is_private" : null,
   "code" : "(\r\n//s.options.memSize_(64000);\r\nTempoClock.tempo_(1.0);\r\n\r\ns.waitForBoot({\r\n\tSynthDef(\\breathe_in, {\r\n\t\t| out = 0, gate = 1, in1=0.11, in2=0.63, in3=0.18, amdb= -10 |\r\n\t\tvar menv = EnvGen.kr(Env.new([0,1,1,0],[in1, in2, in3], curve:'lin'),\r\n\t\t\t                 gate,\r\n\t\t\t                 doneAction:Done.freeSelf);\r\n\t\tvar noise = WhiteNoise.ar(amdb.dbamp);\r\n\t\tvar f1 = BPF.ar(in:noise, freq:5790, rq:0.1, mul:-29.dbamp);\r\n\t\tvar f2 = BPF.ar(in:noise, freq:3400, rq:0.2, mul:-16.dbamp);\r\n\t\tvar f3 = BPF.ar(in:noise, freq:1990, rq:0.1, mul:-23.dbamp);\r\n\t\tvar f4 = BPF.ar(in:noise, freq:1250, rq:0.1, mul:-26.dbamp);\r\n\t\tOut.ar(out, menv*(f1+f2+f3+f4)!2);\r\n\t}).add;\r\n\r\n\tSynthDef(\\breathe_out, {\r\n\t\t| out = 0, gate=1, out1=0.343, out2=0.387, amdb= -4.33 |\r\n\t\tvar menv = EnvGen.kr(Env.new([0, 1, 0], [out1,out2], curve:'lin'),\r\n\t\t                    gate,\r\n\t\t                    doneAction:Done.freeSelf);\r\n\t\tvar noise = WhiteNoise.ar(amdb.dbamp);\r\n\t\tvar f1 = BPF.ar(in:noise, freq:2290, rq:0.1, mul:-17.dbamp);\r\n\t\tvar f2 = BPF.ar(in:noise, freq:1290, rq:0.1, mul:-19.dbamp);\r\n\t\tvar f3 = BPF.ar(in:noise, freq:490, rq:0.1, mul:-18.dbamp);\r\n\t\tOut.ar(out, menv*(f1+f2+f3)!2);\r\n\t}).add;\r\n\r\n\r\n\ts.sync;\r\n\r\n\tfork {\r\n\t\t50.do({\r\n\t\t\tvar in1 = 0.11.rrand(0.22);\r\n\t\t\tvar in2 = 0.6.rrand(0.8);\r\n\t\t\tvar in3 = 0.16.rrand(0.30);\r\n\t\t\tvar pausein = 0.11.rrand(0.20);\r\n\t\t\tvar out1 = 0.30.rrand(0.50);\r\n\t\t\tvar out2 = 0.36.rrand(0.50);\r\n\t\t\tvar pauseout = 0.11.rrand(0.20);\r\n\t\t\tvar amdb = -10.0.rrand(-14.0);\r\n\t\t\tvar amdb2 = amdb/2.5;\r\n\t\t\t//(\"in1: \" ++ in1 ++ \" in2: \" ++ in2 ++ \" in3: \" ++ in3 ++ \" pausein: \" ++ pausein ++ \" out1: \" ++ out1 ++ \" out2: \" ++ out2 + \" pauseout: \" ++ pauseout).postln;\r\n\t\t\tSynth(\\breathe_in, [\\in1, in1, \\in2, in2, \\in3, in3, \\amdb, amdb]);\r\n\t\t\t(in1+in2+in3+pausein).wait;\r\n\t\t\tSynth(\\breathe_out, [\\out1, out1, \\out2, out2, \\amdb, amdb2]);\r\n\t\t\t(out1+out2+pauseout).wait;\r\n\t\t});\r\n\t};\r\n\r\n});\r\n);",
   "labels" : [
      "synthesis",
      "breathing",
      "body sound",
      "breath"
   ],
   "ancestor_list" : [],
   "description" : "An attempt at emulating a breathing sound. Originally made using sonic-visualizer, based on the spectrogram of the first breath in this recording: http://freesound.org/people/gogo199432/sounds/198025/, and then edited to make it sound longer. Note: needs supercollider 3.9dev.",
   "author" : "56228375",
   "name" : "heavy breathing"
}
