6

我是 Audiokit 的新手。我想可视化正在运行的 AKSequencer 的当前位置。是否有任何回调(如在 AKMetronome 中)或监听器或运行的根时钟/主循环,我可以连接?或者我应该使用以任何方式“触发”GUI 的 AKCallbackInstrument 吗?

有谁做过这个想分享的吗?谢谢!

4

1 回答 1

4

我用AKCallbackInstrument. 对于我写入 MIDI 事件的每个音序轨道,我都有一个姊妹音序器轨道发送到AKCallbackInstrument. 当我为音轨编写一个 MIDI 事件时,我也会将一个 GUI 事件写入姊妹回调轨道。

因为您只能将 MIDIStatus、MIDINote 和 MIDIVelocity 数据发送到回调乐器,所以您必须将信息任意编码为这些格式。例如,MIDINote 0 可能表示一种类型的 GUI 事件,MIDINote 1 可能表示其他类型。创建一些枚举使这很容易。

当然,回调函数是在后台线程上调用的,所以不要忘记指定您的 GUI 更新应该在主线程上进行。

这种方法对我来说效果很好。

编辑:我怀疑你已经看过这个示例代码,它说明了一些非常相似的东西,但是这个链接可能对遇到这个问题的其他人有用。

于 2018-03-03T00:26:23.283 回答