我一直在研究一个带有单词或短语的PHP脚本,并使用莫尔斯代码规则和我自己的一套规则将其转换为ASCII表格。
此时,程序已接近完成......所有缺少的是将ASCII谱表转换为MIDI文件的代码。
可以在此处找到最新版本的脚本:
我找到了很多用于多种语言的资源,但仍无法找到XML或MF2T / T2MF格式的MIDI文件的任何数据定义。我可以理解ASCII格式并相应地调整我的脚本输出,但是我能找到的将ASCII转换为MIDI的最接近的工具是this Perl module。它似乎是我迄今为止发现的最有前途的工具/资源,但我正在寻找一个PHP解决方案。
有没有人有任何关于如何找出XML和/或MF2T / T2MF文本格式的“语法”用于表格的建议?这看起来很容易,但我只是找到工具和脚本,几乎没有关于用于从ASCII格式的谱表创建MIDI文件的文件格式的文档。
ASCII Tablature符合these standards,我想以编程方式将ASCII标签直接转换为通过PHP(或Perl,如果必须的话)的MIDI文件
发现另一个SO问题链接到一堆描述MIDI文件格式技术细节的网站。
这是链接: What is the structure of a MIDI file?
MIDI文件格式的另一个好资源:
答案 0 :(得分:0)
我最终改变了解决问题的方法。我使用RTTTL格式,因为它符合我的所有要求。格式仅限于一次只播放一个音符。这意味着和弦(两个或多个音符& |同时播放)是不可能的。我只是在短时间内测试了RTTTL转换方法,所以我可能错了,但我找不到任何方法来完成这个协议的和弦。
由于我的程序不需要同时播放多个音符,因此我不会因使用RTTTL格式而牺牲任何内容。
我还想找出一种方法,以编程方式将任何类型的结构化文本形式的tablature转换为任何类型的声音文件(MIDI,WAV,MP3,OGG,WMA等......)
目前,我正在结束这个问题,因为我已经解决了我的问题,尽管不是我最初打算这样做的方式。