使用Swift和AVAudioEngine计算音乐应用中的歌曲位置
从根本上讲,音乐只是按时组织的声音。 因此,在制作音乐工具时,指出您所在的时间会很有帮助。 熟悉的界面(例如Logic中的位置指示器)可以在传输栏中解决此问题: 而且,如果您碰巧使用了像AVAudioSequencer这样的MIDI音序AVAudioSequencer ,则可以使用方便的属性(例如currentPositionInBeats: TimeInterval和currentPositionInSeconds: TimeInterval访问该值。 但是,如何使用基于香草AVAudioEngine的应用程序执行此操作? 也许您有一个只想监视录制时间或利用拍子信息增强实时演奏的应用程序? 捕获参考时间 如果您有某种参考时间,则只能确定当前位置。 捕获此值可能会与其他事件相关联,例如开始播放或首次触发乐器。 从AVAudioEngine的默认输出节点获取参考时间很方便。 var engine = AVAudioEngine() var…