«The Sh*te Saber» by 38nonprivate

on 12 Aug'11 11:23 in sound effectsstar wars

Another Star Wars inspired sound effect. Room for improvement: this does not really give the sense of two lightsabers engaging in combat, there should be another humming sound and each one should be panned slightly (as well as tuned a little differently.)

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
(

{

var flutter, flutterAmt = 0.02, humPitch = 88, hum, humLevel = 0.3, amp = 1.0, output;
var swing, swingNoise, swingLevel = 1.0, swingSwitch, swingThresh = 0.87;
var clash, clashTrig, clashDecay, clashEnvGen, clashSpring, clashLevel = 0.6;

flutter = 4.collect(
 { 
 |i|
 LFNoise0.kr(rrand(3, 16), flutterAmt, 1).lag(0.48);
 }
);

humPitch = humPitch * StandardL.ar(2, 3.7).range(0.97, 1.03);

hum = Mix(SyncSaw.ar([humPitch, humPitch * 1.001] * flutter.copyRange(0, 1), [humPitch * 1.003, humPitch * 1.0025] * flutter.copyRange(2, 3)));
hum = hum * LFNoise0.kr(8.77224).range(0.2, 1.0).lag(0.4);
hum = RLPF.ar(hum, LFNoise0.kr(21).range(200, 1800).lag(1.2), 0.5) * 0.1 * humLevel;

humPitch = humPitch * StandardL.ar(3.8, 2.9).range(0.93, 1.07);

swingNoise = LFNoise1.kr(16.2).range(0, 1);
swingSwitch = if(swingNoise > swingThresh, 1, 0).lag2(0.9, 1.3);
swingLevel = swingLevel * swingSwitch;

humPitch = humPitch * StandardL.ar(3.8, 2.9).range(0.97, 1.03) * (1 + (swingSwitch * 0.2));

swing = SyncSaw.ar(humPitch * 0.501, humPitch * 1.09);
swing = LPF.ar(swing, 4300);
swing = swing * swingLevel;

clashTrig = Trig.kr(
 Schmidt.kr(1 - swingSwitch, swingThresh, swingThresh + 0.01),
 0.01
);

clashDecay = TRand.kr(0.1, 1.6, clashTrig);
clashEnvGen = Decay.kr(clashTrig, clashDecay) * TRand.kr(0.8, 1.0, clashTrig);
clashSpring = Spring.kr(clashTrig, TRand.kr(5, 20, clashTrig), TRand.kr(0.001, 0.07, clashTrig));
clash = SinOsc.ar(8000 * clashSpring + TRand.kr(600, 2342, clashTrig), SinOsc.ar(TRand.kr(452, 662, clashTrig), 0, 2));
clash = clash + BPF.ar(WhiteNoise.ar(2), SinOsc.kr(2.6).range(3326, 4444), 0.16);
clash = clash * clashEnvGen;
clash = clash + ( clash * SinOsc.ar(39) * SinOsc.ar(3013) * 0.3);
clash = clash * 0.1 * clashLevel;

output = hum + swing + clash; 

(output * amp) ! 2

}.play


)
raw 1871 chars (focus & ctrl+a+c to copy)
reception
comments
vividsnow user 13 Aug'11 12:59

wonderful examples - thank you!