在 Android 上使用 Unity3D 读取 Midi 文件

Read Midi File using Unity3D on Android

我正在开发要部署在 Android 上的 Unity3D 应用程序。 我需要读取 midi 文件(最好是 .midi,但其他结尾也可以)并播放它们(在正确的时间获取解析的音符事件)。 实际声音不是优先事项。

能够改变节奏对我来说也很重要。

你能推荐一个框架/插件/代码吗?

我发现的所有东西都不适用于 Android,关于 C#SynthProject,我不知道如何改变节奏。

获得声音有点问题(正如您所注意到的),因为您需要模拟硬件芯片,该芯片曾经以某种形式进行 GeneralMIDI 合成,不再通常安装在任何地方(甚至 windows 在内部模拟这个),但是 midi 文件格式(也称为 StandardMidiFile 又名 SMF)文件本身是有据可查的标准并且不是非常复杂(尽管有时两个 non-compatible 变体很痛苦)

虽然编写自己的 .MID 文件解析器可能很有趣,但我可以推荐使用这段日期为 2013 年的代码,由我们的 Unity 神 - Keijiro Takahashi 编写

https://github.com/keijiro/smflite