TuttiDAW 代码编曲TuttiDAW Code 指南

采样操作

播放采样的一部分、改变速度、切片、对齐速度以及互斥(choke)。

鼓声和你自己的采样都是录音,所以可以只播放其中一段,加快或放慢,正放或倒放。在 TuttiDAW 里, 每一种变化都会成为 Drum Rack 里一个独立的打击垫,所以结果在工作室里打开时和听到的完全一样。

窗口:begin 和 end

.begin(...) 和 .end(...) 以采样长度的比例(0 到 1)设定采样从哪里开始、在哪里停止。

s("oh*4").end("<0.1 0.3 0.6 1>")
在 /code 中打开

速度

.speed(n) 以 n 倍速播放采样:2 是高一个八度,0.5 是低一个八度,负数表示倒放。

s("cp*4").speed("1 2 0.5 -1")
在 /code 中打开

门限与互斥组:clip 和 cut

采样通常会一直播放到结尾。.clip(1) 让它在这一步结束时停止(.clip(0.5) 在一半处)。 .cut(n) 把声音放进一个互斥组:新的击打会停掉还在响的那一个,就像闭镲掐断开镲。

s("[oh hh]*4").cut(1)
在 /code 中打开
s("oh*8").clip("<1 0.25>")
在 /code 中打开

切成小段:chop 和 striate

.chop(n) 把每个事件和它的采样切成 n 段,依次播放。.striate(n) 把整个模式播放 n 次, 每次播放每个采样中更靠后的一段。

s("cr").chop(8).speed("<1 -1>")
在 /code 中打开
s("bd sd").striate(4)
在 /code 中打开

切片:slice 和 splice

.slice(n, 序号) 把采样等分成 n 片,按序号模式播放对应的切片,这是重新排列鼓段(break) 的经典做法。.splice 做同样的事,并调整每一片的速度,使它正好填满自己那一步。

s("cr").slice(8, "0 7 2 5 4 3 6 1")
在 /code 中打开
s("oh").splice(4, "0 2 1 [3 3]")
在 /code 中打开

对齐速度:loopAt 和 fit

.loopAt(n) 改变采样的速度,使它正好持续 n 个周期,非常适合循环和鼓段。.fit() 让每个采样填满它自己的那一步。两者都跟随速度,所以改 setcpm 时循环依然对拍。

s("cr").loopAt(1).chop(4)
在 /code 中打开

搓碟式播放(scrub)

.scrub("位置:速度") 从某个位置开始播放采样,就像移动磁带的磁头。

s("cr*4").scrub("0 0.5:2 0.25 0.75:0.5")
在 /code 中打开

用在你自己的循环上

这些操作最适合用在你自己的录音上。用 samples(...) 声明它们 (见声音),然后尽情切片:

samples({ break: "https://example.com/loops/break-120.wav" })
s("break").loopAt(2).slice(8, "0 1 <2 6> 3 [4 4] 5 6 <7 1>")
在 /code 中打开

有音高的乐器(合成器或 General MIDI 名字)会按写下的音符演奏:这些操作只改变采样鼓和采样。