文本阅读:
7.10示例167
延时。输入信号是一段被循环的录音。被延时与未被延时的信号加在一起,构成了一个非循环的梳状滤波器。当延时时间低于10ms时,滤波效应处于最主导的地位;当延时高于10ms时,就可以听到一声分离的回声。这里没有在延时输出上进行静音保护,因此当延时时间改变时可能会出现"咔哒"声。
7.10.2循环的梳状滤波器
示例G0Z.delay.loop.pd(图7.24)所示为如何构建一个循环的延时网络。这次,延时还是由一对delwrite~/delread~实现。delread~对象的输出乘以反馈增益0.7,然后馈送给delwrite~对象。一个输入(由phasor~及其相关对象提供)被加到delwrite~的输入上,该和就是网络的输出。这就是7.4小节所述的循环梳状滤波器。
o<--音高
mtofli(
phasor-lader 1 100 1000 0 1000输入
信号|0<--延时时间
deiread-Go2-del 160从延时线读取
*~0.7反馈增益
F-把原始信号与延时后的信号加起来
(输出)|delwrite-G02-de1 2000|写入到延时线
【图7.24循环延时(仍旧是非内插的)
在对象直接或间接地(通过与其他对象的连接)给自己馈送信号这种意义上,所有代字号对象构成的网络中并没有任何循环。网络中的反馈隐式地发生在delwrite~和delread~对象之间。
7.10.3可变延时线
接下来的示例G03.dealyvariable.pd(图7.25)是另外一个循环的梳状滤波器,这一次使用了一个长度可变的延时线。这里引入了一个新对象:
【vd-】:从一个延时线中读取,其延时时间是随时间变化的。与delread一对象一样,它