Macos 用于合成音乐数据的OSX框架是什么?
我想写一些代码,生成一些非常简单的音乐音调(音符),并通过扬声器(任何声音设备)输出 我想我可能需要生成MIDI数据,我可以独立地计算出来,但我对音频编程一般来说是新手,我不确定进入系统框架的最佳切入点是什么Macos 用于合成音乐数据的OSX框架是什么?,macos,cocoa,audio,midi,Macos,Cocoa,Audio,Midi,我想写一些代码,生成一些非常简单的音乐音调(音符),并通过扬声器(任何声音设备)输出 我想我可能需要生成MIDI数据,我可以独立地计算出来,但我对音频编程一般来说是新手,我不确定进入系统框架的最佳切入点是什么AudioToolbox具有这些MusicSequence对象。还有核心MIDI和核心音频。没有一个明显的接口用于“这里有一个用于一堆笔记的数据结构,现在调用这个方法来播放它们”,所以我大概需要将它们组合起来 我相信OSX支持这一点。如果有人了解这类工作的背景,我希望能提供一些基本的提示,说
AudioToolbox
具有这些MusicSequence
对象。还有核心MIDI和核心音频。没有一个明显的接口用于“这里有一个用于一堆笔记的数据结构,现在调用这个方法来播放它们”,所以我大概需要将它们组合起来
我相信OSX支持这一点。如果有人了解这类工作的背景,我希望能提供一些基本的提示,说明在文档(或其他资源)中从何处开始寻找构建任何表示音乐数据的结构,以及在何处掉头并触发播放 OSX确实支持这一点,但它本质上比最初看起来要复杂得多。基本上有三个部分:
- MusicSequence是“一串音符的数据结构”(以及节奏/节拍图形式的计时信息)
- MusicLayer是控制音乐序列播放的对象
- AUGraph是用来创建乐器对象并将其连接到物理输出,从而将音符数据转换为声音的工具
苹果的PraseScript示例代码主要是你所寻找的。它是一个C++项目,但是MusicSequence、MyiSpple和AuGrand是简单的C API,所以它应该是一个不错的起点。
很棒,谢谢你,肖恩。这正是我所要寻找的。干杯。