电子音乐技术 239


分类:相关阅读 / 「电子音乐技术」

电子音乐技术 239
前一篇:电子音乐技术 238 下一篇:电子音乐技术 240
文本阅读:
  9.7示例233
  在本例中,波表"$0-hann"存储的是一个长度为512的汉宁窗函数,这个长度与指定的块尺寸一致。待分析信号通过inlet~对象(从父音色)传过来。各个频道幅度(rft~对象的输出)被简化为实值的模:实部和虚部被分别平方,然后把两个平方相加,所得结果再送入sqrt~对象。最后通过tabwrite~把这个模写入另外一个波表"$0-magnitude"(写入过程由一个在图中未示出的连接控制),用于绘图。
  示例103.resynthesis.pd(图9.15)展示了如何遵照图9.7所示策略对一个音频信号进行分析和重合成。与先前一样,这里有一个子窗口用来完成工作,它采用了适合该任务的一个块尺寸;图中所示仅为这个子窗口。我们需要一个新的对象来进行傅里叶反变换:
  |b1ock-5124|512样点块,4倍交叠(跃距尺寸为128)iniet-1为了实现交叠的加窗,inlet~现在负责缓冲和平移
  -Ntabreceive-$0-hann与先前一样的汉宁窗rEft-】先前一样的实傅里叶变换
  tabreceive-$o-gain从父音色中的一个波表读取"gain(增益)"
  -升为四次方(一个更方便的尺度)
  .768】重归一化:除以块尺寸512以及一个额外的因子3/2,以此矫正下方outlet~中进行的两次汉宁加窗的交叠相加。
  rittt-实傅里叶反变换(未归一化)
  产-Ntabreceive-$0-hann】在输出上再次加汉宁窗outiet-|由于上面block~的设置,outlet~进行了交叠相加的操作。
  图9.15傅里叶分析与重合成,使用block-指定交叠倍数为4,在经过调整修改后使用if什-重建信号rift~:实傅里叶反变换。使用输入(是一个实部/虚部对)的前N/2+1个样点,并根据对称性为其他频道取适当的值,从而重建出一个实值输出。这里没有进行归一化,因此一对rft~/rift~配对在一起将产生一个增益N。ifft~对象也可以使用,它计算出fft~对象的一个未归一化的反变换,重建出一个复值输出。
  子窗口中的block~对象被调用时使用了2个参数,其中第2个参数指明了交叠倍数为4。这将令子窗口每N=512个样点运行4次,每次之间固定间隔128个样点。inlet~对象对各个样点完成所需的缓冲和重新整理,使得其输出总是按顺序给出输入中最新的512个样点。
  在另外一个方向上,outlet~对象把它之前4个输入对应的段加起来,执行如图9.7所示的