- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我是 Audiokit 的新手。我想可视化正在运行的 AKSequencer 的当前位置。是否有任何我可以连接的回调(如 AKMetronome)或监听器或运行的根时钟/主循环?或者我应该使用以任何方式“触发”GUI 的 AKCallbackInstrument 吗?
有没有人做过这件事谁愿意分享?谢谢!
最佳答案
我使用 AKCallbackInstrument
执行此操作。对于我写入 MIDI 事件的每个音序轨道,我有一个姐妹音序器轨道发送到 AKCallbackInstrument
。当我为音轨编写一个 MIDI 事件时,我也将一个 GUI 事件写入姐妹回调轨道。
因为您只能将 MIDIStatus、MIDINote 和 MIDIVelocity 数据发送到回调乐器,所以您必须将信息任意编码为这些格式。例如,0 的 MIDINote 可能表示一种类型的 GUI 事件,MIDINote 1 表示其他类型。创建一些枚举可以让这变得简单。
当然,回调函数是在后台线程上调用的,所以不要忘记指定您的 GUI 更新应该发生在主线程上。
这种方法对我来说效果很好。
编辑:我怀疑你已经看到了this sample code这说明了一些非常相似的事情,但这个链接可能对遇到这个问题的其他人有用。
关于ios - 如何使用 Audiokit 可视化当前的 AKSequencer 位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49077493/
在当前序列开始播放之前需要播放 1 或 2 个小节进行倒数。只需点击一下即可计入。 能够做类似的事情会很酷 player.sequencer.setTime(MusicTimeStamp(-4))
我正在使用 AKSequencer 创建一系列由 AKMidiSampler 播放的音符。我的问题是,无论我做什么,在更高的速度下,第一个音符总是有一点延迟。 我试过预滚动序列,但无济于事。用 AKS
我正在使用 AudioKit AKSequencer 制作一个可以播放、暂停和停止的 midi 音符轨道。我遇到的问题是,当您停止音序器播放并重新启动它而不倒带时,它会准确地从它停止的地方开始,即使那
我有一个相当复杂的应用程序,到目前为止一直在使用 AKAppleSequencer,但由于该音序器不时弹出一些奇怪的行为和错误,我一直希望转移到更新的 AKSequencer。不幸的是,新的音序器似乎
有时我需要一些长音符才能在音序器停止后继续播放。 akSequencer.stop() // Need to put some code to ask the question 当 AKSequenc
我需要从 AKSequencer 实例中删除所有节奏事件,但我找不到方法。 我尝试使用如下所示的clearRange()方法,但我不确定这是正确的方法,因为它不起作用: var sequencer =
我正在使用 Audiokit API 创建一个函数,用户将音符按到屏幕上,然后根据他们选择的 SoundFont 发出声音。然后我让他们收集大量笔记,让他们按照他们选择的顺序播放。问题是我正在使用 A
我正在尝试使用 AKSequencer() 从 .mid 文件发送 midi 数据,在虚拟输出上以在应用程序外部使用它(下面有更多详细信息)。 我的问题是我的 AKSequencer 没有将 midi
此主题已涵盖 Numerous Times ,并且我在以前的应用程序中成功地将 AKMIDICallbackInstrument 与旧的 AKAppleSequencer 结合使用。 我开始使用新的
这是我目前正在处理的一个多音频文件播放项目,其中多个 AKPlayer 通过 AKSequencer 以随机顺序播放。 首先,我有一个文件名数组: Let filenames = [“1.mp3”,
我正在尝试使用 AudioKit 在小节的每个节拍上播放声音。尽管我已经实现了 this 中的代码关于通过 AudioKit 回调的类似问题,我似乎无法让音序器正确更新更改和播放。它会准确地播放一次,
我想读取一个 midi 文件并在触发音符事件时显示内容。我发现了这个 stackoverflow 问题,第二个答案建议使用 AudioKit: How Do I Get Reliable Timing
我有一个支持循环的 aksequencer,我想在播放期间更改长度。我已经用 setLength() 和 setLoopInfo() 尝试过这一点,但似乎都无法正常工作。 预期行为:如果我有一个 16
我目前有一个应用程序使用 AKKeyboard 通过振荡器创建声音。每当弹奏键盘时,我也会得到 MIDI 数据。我想做的是根据我收到的 MIDI 数据创建一个 AKSequence。 任何建议或指示将
我是 Audiokit 的新手。我想可视化正在运行的 AKSequencer 的当前位置。是否有任何我可以连接的回调(如 AKMetronome)或监听器或运行的根时钟/主循环?或者我应该使用以任何方
我使用的是 AudioKit 4.9.1 并且无法使用新的 AKSequencer 播放 MIDI 文件(替换 AKAppleSequencer )。没有声音播放。假设 MIDI 文件和样本已正确加载
以下代码在 iOS 11 中循环播放多个音频文件,但在 iOS 10 中没有。好像 AKSequencer 不能在 iOS 10 中循环播放? let mixer = AKMixer() var se
我想使用 AudioKit 播放 MIDI,但所有文档都指向从路径/URL 加载 MIDI 文件。有没有办法为此使用字符串? 我目前正在使用 AKAppleSequencer ( https://au
我正在使用 AKSequencer 的 genData 函数接收文件格式的 MIDI。接下来我想使用我生成的 MIDI 文件将其加载到 AKSequencer 中。这可能吗? 最佳答案 是的。 Aud
我一直在努力解开一个谜 sinewave issue收效甚微。我想在这里开始一个新问题,因为我已经深入研究了这个问题的细节。 在设置 AKSequencer 并为其提供 MIDI 文件时,我看到了一些
我是一名优秀的程序员,十分优秀!