MIDI文件的结构是什么?

时间:2010-06-21 18:18:37

标签: language-agnostic midi

我想手动拥有一个根据用户需求创建MIDI文件的功能,例如。

用户在120速度,速度100,乐器钢琴(01)和补丁49或其他任何内容上写入包含4个四分之四A4(音乐会A - 440hz)和C4(每个作为分离频道)的8个小节的2个音色。

根据以上内容,MIDI文件应如何显示。 我的目标是学习如何创建一个生成MIDI数据的函数,然后将所有内容写入MIDI文件。

首先,我必须了解如何创建此函数或理解'MIDI文件语言',以便我可以编写它。

提前致谢。

3 个答案:

答案 0 :(得分:16)

MIDI文件格式的其他好链接可以在这里找到:

答案 1 :(得分:8)

根据我最近阅读的所有MIDI信息,this似乎是最全面的教程,另一方面,以下链接是开始使用的好地方:

MIDI structure at the official MIDI website

此外,NAudio是一个.NET库,可以使用Mark Heath的MIDI文件 我也发现此链接非常有用,我想为什么不与人here分享。

我认为这是用于搞乱MIDI文件的最佳.NET API。

答案 2 :(得分:2)

只需补充一下,Somascape拥有非常全面且布局合理的MIDI文件结构和MIDI协议资源。 (请查看其网站上的下拉菜单,以获取其他资源页面)。最近,在为Swift编写MIDI框架时对我有很大帮助。