【问题标题】:How can I have a random phase for each note played with an AKOscillatorBank?如何为使用 AKOscillatorBank 演奏的每个音符设置随机相位?
【发布时间】:2019-06-15 17:22:23
【问题描述】:

我正在使用链接到AKOscillatorBankAKMIDINode。我希望AKOscillatorBank 每次播放一个音符时,随机选择波表的相位。 AudioKit 似乎没有提供这样的功能。我快速浏览了 C++ 实现,深入到 AKBankDSPKernel,有点不清楚在单个振荡器上合成不同音符的独立性。

是否有可能在AKOscillatorBank 的快速部分重载以使每个midi 音符在查看AKTable 时使用不同的偏移量?

当使用“温暖”波表和缓慢/不存在的起音时间(尤其是锯齿波)时,此功能可以显着改善和弦起音的声音。它将大大改善我的产品的声音。

【问题讨论】:

    标签: c++ swift audiokit


    【解决方案1】:

    我相信,振荡器库内核包含一个NoteState 结构,它保存每个声音的振荡器状态。我想您可以使用sp_tabread_compute 从波表中读取样本(如AKPhaseDistortionOscillator) 并在 noteOn 函数中随机化其偏移量。

    【讨论】:

      猜你喜欢
      • 2022-08-21
      • 1970-01-01
      • 1970-01-01
      • 2023-03-18
      • 1970-01-01
      • 1970-01-01
      • 2016-06-03
      • 2017-03-13
      • 1970-01-01
      相关资源
      最近更新 更多