«Creaking door or roulette wheel?» by 38nonprivate

on 12 Aug'11 11:30 in sound effects

I aimed for the sound of a creaky door but fell a little short - you be the judge.

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
(

{

var output, basePitch = 387, macroPitch, macroPitchAmt = 400;
var modOsc, modAmt = 1.3, amp = 0.8;
var creakRate, creakTrig, creakEnvGen, noise, combs, oscFreq;

noise = LFNoise1.ar(LFNoise0.kr(4.8).lag(0.4).range(3646, 7777), 0.6);

creakRate = EnvGen.kr(
 Env(
  [40, 25, 15, 2],
  [0.9, 0.6, 1.0],
  -4
 ),
 doneAction: 2

);
creakTrig = Impulse.kr(creakRate);

creakEnvGen = EnvGen.kr(
 Env(
  [0.0, 1.0, 0.0],
  [0.02, 0.1],
  [5, -8]
 ),
 creakTrig,
 timeScale: SinOsc.kr(1.5).range(0.12, 0.26) * Line.kr(0.5, 2.3, 2)

);

macroPitch = EnvGen.kr(
 Env(
  [0.0, 4, 0.1, 0.3, 0.4, 0.7, 0.9],
  [0.2, 0.2, 0.4, 0.3, 0.48, 0.59],
  [2, 2, -4, -3, -2, -4]
 )

);
modOsc = SinOsc.ar( (basePitch + (macroPitch * macroPitchAmt)) * 0.17);
modOsc = SinOsc.ar( (basePitch + (macroPitch * macroPitchAmt)) * 0.232, modOsc * 0.3);

oscFreq = basePitch + (macroPitch * macroPitchAmt);
oscFreq = oscFreq * (1 + (creakEnvGen * 2));
output = SinOsc.ar(oscFreq, modOsc * modAmt, 1);
output = output * SinOsc.ar(SinOsc.kr(1.6).range(1220, 1355));
output = output + noise;
output = output.clip(-0.5, 0.5) * creakEnvGen * amp * TRand.kr(0.8, 1.0, creakTrig);

combs = Mix([CombC.ar(output, 0.2, 0.0084, 0.12), CombC.ar(output, 0.2, 0.00181, 0.03)]);
output = output + (combs * 0.2);
output ! 2
}.play


)
descendants
«Nodin» by anonymous (private)
«lcggsx» by anonymous (private)
«kvesqk» by anonymous (private)
full graph
raw 1350 chars (focus & ctrl+a+c to copy)
reception
comments