首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JFugue解析midi文件并输出.csv?

JFugue解析midi文件并输出.csv?
EN

Stack Overflow用户
提问于 2016-06-09 09:19:11
回答 1查看 429关注 0票数 2

我希望将midi文件转换为如下所示的.csv表示:

Notename,startTick,持续时间,速度

还包括整个和弦(从同一勾起的一系列音符)。

现在,JFugue有一个MidiParser类,它看起来可能能够做到这一点。我自己的实现有点粗糙,没有检测到注释、事件、中断或和弦。

那么,JFugue中是否有功能可以帮助我完成这一任务?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-06-09 19:29:26

创建自己的ParserListener (可能是" CsvParserListener "),将其作为侦听器添加到MidiParser中,并让CsvParserListener知道如何创建CSV文件。

ParserListener是JFugue中的一个接口。您还可以扩展ParserListenerAdapater,而不是实现ParserListener。

还有第二条路。您还可以创建一个实现AuxilliaryMidiParser并重写parseHandledEvent(MidiEvent e)的类。您可以直接访问MIDI事件,这可能对您更好,因为当播放音符时,您可以很容易地访问滴答。将您的AuxilliaryMidiParser添加到常规的MidiParser中,然后调用midiParser.parse(文件),最后在辅助解析器上编写一个方法来保存CSV文件。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37721745

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档