【发布时间】:2013-06-02 14:05:48
【问题描述】:
我需要读取 MIDI 文件以便对音符进行进一步处理。
我尝试像这样使用 NAudio 这样做
MidiFile midi = new MidiFile("Test.mid");
foreach (MidiEvent note in midi.Events[1])
{
Console.Write(note.AbsoluteTime.ToString().PadRight(10));
Console.WriteLine(note.DeltaTime);
}
我希望得到音符的开头和持续时间,但我得到了奇怪的值,从 34654 开始(为什么?):
问题:
我需要每个 MIDI 音符和
- 开始时间
- 长度
- 频道索引
如何使用 NAudio 获得正确的值?如果您对其他库有任何建议,请随时提出建议。
【问题讨论】:
-
查看 NAudio 源代码附带的音频文件浏览器演示应用程序。这正是您对 MIDI 文件所追求的
-
^ naudio.codeplex.com/SourceControl/latest#AudioFileInspector/… 对于任何找不到它的人。 opensebj.blogspot.co.uk/2009/09/… 也是一个很好的资源。