進階話題1
讓我們回頭再看看采樣。下面這個視頻理解一下循環采樣重播的作用。
:loop_amen
采樣的重播由以下代碼表示:
sample :loop_amen
現在我們來做一個一直打拍子的live_loop
。你還記得那個改變采樣音高來適應所需節拍長度的beat_stretch
采樣拉長到四拍並循環:
use_bpm 145
live_loop :drumloop do
sample :loop_amen, beat_stretch: 4
sleep 4
end
接下來我們來看看怎麼讓部分Amen循環按照不同順序演奏。用采樣指令你可以用開始和結束參數來設定不同的起始點和結束點。兩個參數都可以輸入0到1之間的數值來設定采樣重播的開始和結束點。例如:0是采樣的起始,0.5是中點,1是結束點。我們來實際操作看看:
use_bpm 145
live_loop :drumloop do
sample :loop_amen, beat_stretch: 4, start: 0, finish: 0.125
sleep 0.5
sample :loop_amen, beat_stretch: 4, start: 0, finish: 0.125
sleep 0.5
sample :loop_amen, beat_stretch: 4, start: 0.5, finish: 0.75
sleep 1
sample :loop_amen, beat_stretch: 4, start: 0.25, finish: 0.5
sleep 1
sample :loop_amen, beat_stretch: 4, start: 0.75, finish: 0.875
sleep 0.5
sample :loop_amen, beat_stretch: 4, start: 0.25, finish: 0.375
sleep 0.5
end
下面的視頻可以看出loop_amen
采樣在每次live_loop
中播放的部分。
把采樣用完全不同的順序播放是不是特別有意思?試試修改采樣選項,例如添加一個-1的選項速率,讓loop_amen
倒放。
一旦你開始試驗采樣選項(比如速率、聲像、幅度、擊打、釋放、開始和結束),一個采樣能被塑造成任何樣子。下面的例子在兩個采樣裡用了亂數值演奏出了獨特的效果:
use_bpm 180
with_fx :reverb, mix: 0.2, room: 1 do
live_loop :grain1 do
s = rrand(0, 0.7)
t = rrand(0.03, 0.3)
e = s + t
a = rrand(0.5, 1.0)
sample :guit_e_fifths, rate: -1.5, start: s, finish: e, attack: t/6.0, sustain: t/2.0, pan: rrand(-0.5, 0.5)
sleep t
end
live_loop :grain2 do
s = rrand(0, 0.7)
t = rrand(0.03, 0.2)
e = s + t
a = rrand(0.5, 1.0)
sample :guit_em9, rate: 1.5, start: s, finish: e, attack: t/6.0, sustain: t/2.0, pan: rrand(-0.5, 0.5)
sleep t
end
end
這個技術能被廣泛運用在顆粒采樣器和合成器中。.