最开始写这份matlab代码的时候是为了替换掉 logic pro x,因为生成的midi 乐谱文件并不能转成文本文件,对乐曲导入到单片机这个事情,非常不友好。 然而效果不好,目前勉强能听的就只有b.mp3(利兹与青鸟中的双簧管练习曲)。唯一可使用脚本为useFFT.m 面对音域较广的乐器(比如钢琴),也不好用。还需要继续改进 基本思想就是: 1.将乐曲分成若干小段,分别进行频谱分析 2.从音频信号的频谱图中,提取十二平均律里面幅值最大的几个音符 3.再将他们还原成对应的正弦信号,作为该小段的音符 4.将各小段依次拼接起来 除了运行效果炫酷一点,好像还真没啥卵用。