使用AudioKit量化序列

时间:2019-06-13 16:13:11

标签: ios swift audiokit

我一直在与AudioKit一起创建一个音序器,我想播放一个完美量化的音序(即所有细分都在度量上是完美的)。但是,当我在音序中添加音符时,我会听到时间的波动/不完美。细分市场并未以度量完美的方式排列。当我在事件音符上将节拍器的当前位置打印在控制台上时,会显示波动:音符仅与小数点后两位一致,然后它们显示位置的变化。在回调中,我可能希望稍作延迟:1.001,2.001,3.001。但是输出似乎在两位小数后显示随机数。

I've created a project to demonstrate the issue here

我在这里做什么错了?

请注意,在项目中我使用了AKCallbackInstrument,但是即使我将直接播放声音的采样器插入音序器中,问题仍然存在。另外,在项目中,我已“手动”向音序器添加了注释,但是即使直接将.mid文件加载到音序器中,问题仍然存在。演示项目中的采样器使用声音字体(.sf2),但是当我加载.wav或.mp3样本时,也存在问题。

1 个答案:

答案 0 :(得分:2)

我认为您没有做错任何事情。 AKSequencer基于Apple自己的MIDI Sequencer,因此我们提供AKSequencer作为该功能的包装。但是,Apple音序器中有一些已知的计时精度,因为它是封闭源,所以我们无法解决。我们正在努力替代AKSequencer(将其称为AKSequencer,将当前的音序器移至AKAppleSequencer)。这应该在七月完成。同时,您可以使用AKTimeline来构建自己的音序器,就像在AudioKit中的MetronomeSampleSync示例中所做的那样。