【问题标题】:How to visualize current AKSequencer position with Audiokit?如何使用 Audiokit 可视化当前的 AKSequencer 位置?
【发布时间】:2018-03-02 21:11:41
【问题描述】:

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

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

【问题讨论】:

  • 我感觉我可以使用音序器中的 AKCallbackInstrument 来触发自定义函数,从而达到我的目标。

标签: ios swift audio audiokit aksequencer


【解决方案1】:

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

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

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

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

编辑:我怀疑您已经看到 this sample code 说明了非常相似的内容,但此链接可能对遇到此问题的其他人有用。

【讨论】:

  • 是的,看到这个代码sn-p。我就是这么想出来的。谢谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多