gpt4 book ai didi

ios - 如何发送由外部 MIDI 时钟触发的 MIDI 音符?

转载 作者:行者123 更新时间:2023-11-29 05:08:27 27 4
gpt4 key购买 nike

我正在开发一个适用于 iOS 的琶音器应用程序,它能够将无限的音符序列发送到外部 MIDI 兼容的硬件合成器。我使用 AudioKit 来接收和发送 MIDI 信息。

我的工作室设置包括 E-RM 多时钟设备,它为几个合成器和鼓机发送主 MIDI 时钟,因此每个设备都可以与其他设备同步播放。

我希望我的 iOS 应用程序生成 MIDI 音符并将其发送到外部合成器,与其他也从 Multiclock 设备接收 MIDI 时钟的设备同步。我使用的是 iOS 兼容的音频/MIDI 接口(interface),因此我的应用程序可以接收时钟并向硬件合成器发送音符。

问题是,在工作几秒钟或几分钟后,注意到我的应用程序发送的时间开始漂移。延迟可能是恒定的(100 - 200 毫秒)或随机的,使琶音合成器与其他机器不同步。

这个流程可以使用AudioKit框架正确实现吗?

我当前的实现使用 AKMIDIBeatObserver 的 receivedQuantum(time:quarterNote:beat:quantum:) 函数在每次应该发送另一个八个音符时触发琶音器。

笔记通过 AudioKit.midi.sendNoteOnMessage(noteNumber:velocity:channel:) 调用发送。

最佳答案

您是第一个涉足此领域的人。我可以说 AKMIDIBeatObserver 和 AudioKit.midi.sendNoteOnMessage 正是我会使用的。我也会尝试不在那里使用任何日志记录,因为它可能会导致您遇到的延迟。听起来你正在做我会做的一切。如果您可以分享您的示例项目,我会与您一起研究。我不知道有什么会导致延迟。

关于ios - 如何发送由外部 MIDI 时钟触发的 MIDI 音符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59929077/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com