-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathlive.spi
89 lines (80 loc) · 3.06 KB
/
live.spi
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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
load_support('play'); use_bpm 127.0
#set_volume! 1.1
#Voices[/./].each {|v| load_sample v; sleep 0.5 }
#stop
#END OF THE VOICES
set_volume! 1
#set_volume! 0; stop
no{
set_volume! 1
with_fx :reverb, mix: 0.2, room: 200{
with_fx :level, amp: 1.5{
sample Voices[/./][1399], finish: 0.195, pan: -1, amp: 12.5
sample Voices[/./][800], finish: 0.195, pan: -0.25, amp: 1.6
sample Voices[/./][500], finish: 0.195, pan: 0, amp: 1
sample Voices[/./][-1], finish: 0.195, pan: 1, amp: 0.8*1
sample Voices[/./][829], finish: 0.195, pan: 0.25, amp: 2.0
}
}
stop
}
with_fx :reverb, mix: 0.25, room: 100, wet: 0.5, decay: 0.9{
live_loop :name do
tick
with_fx(:echo, room: 200, mix: 0.2, decay: 0.5, phase: (ring 0.25, 0.125, 0.5).look) {
with_bpm 127 {
#stop
if spread(1,8).look
s = spread(2,3).rot(-1).look
# sample Voices[/./].look, num_slices: 65, slice: rand_i(65), attack: 0.01, amp: 0.4
at{
# sample Voices[/./].look, onset: -1, rate: -1, rpitch: 0
sleep 0.5
#sample Voices[/./].look, onset: 29, rpitch: -3 #29 20
sleep 0.25
if s
#sample Voices[/./].look, onset: 29, rpitch: 0 #29 20
end
}
else
#sample Voices[/./].look, num_slices: 24*2, slice: 10, attack: 0.01, amp: 1,.0
#sample Voices[/./].look, num_slices: 24*2, slice: 2, attack: 0.01, amp: 1.0
#sample Voices[/./].look, num_slices: 20, slice: 0, attack: 0.08, amp: 0.25
#sample Voices[/./].shuffle.look, num_slices: 36, slice: 0, attack: 0.1, amp: 0.3
#sample Voices[/./].shuffle.look, onset: (ing 1 2 3 4 5).look, amp: 0.35, attack: 0.08, decay: 0.1
if spread(1,3).look
#ending
yes{
p = with_fx(:pitch_shift, window_size: 0.01, time_dis: 0.01, mix: 1.0, pitch_dis: (ramp 0.0, 1.0, 512*2).tick(:cacophony)){
sample Voices[/./].shuffle.look, amp: 10.5, pan: (line -1, 1, 256).look
}
}
end
amp_ratio=1.0
yes{
if spread(3,8).look
sample Voices[/manda/].shuffle.look, onset: (ing -1).look, amp: (ing 0.5 0.4 0.45).look*amp_ratio, pan: -1,
attack: 0.1, decay: 0.1, pan: 0.5
end
if spread(7,11).look
sample Voices[/fren/].shuffle.look, onset: (ing -1).look, amp: (ing 0.8 0.7 0.82).look*amp_ratio, pan: 1,
attack: 0.1, decay: 0.1
end
}
end
if spread(1,4).look
#sample Voices[/./].look, num_slices: 25, slice: 24
end
#sample Voices[//].look, onset: (ing 1,2,3,4,5,6,7,8).look, amp: 0.5
#sample Voices[/./].look num_slices: 335, slice: 1
# if spread(7,11).look
# sample Voices[/./].tick, num_slices: 25, slice: 1, attack: 0.1, amp: 1.7
# end
# if spread(3,7).look
# sample Voices[/./].tick, num_slices: 25, slice: 24, attack: 0.01, amp: 1.7
# end
}
sleep 1.0/2
}
end
}