Matlab 自制电子琴

Matlab 自制电子琴
前两天看到,google 的Guitar觉得很有意思,咱上面弹琴很好玩,决定自己也写一个类似的。
可以输入乐谱,比如哆来咪,出声音的。
一开始想在网上下载 do re me,但是找了半天没找到,(也是,谁会把这个放在网上呢)
自己做一个好了,前两天做过talking Gina , 知道matlab 自带,wave play 函数,很简单。

这个函数的parameter 其实也只是 a sequence of number,如果输入一列数字,用wavplay 播放出来,不就好了。

好吧,问题1,how to generate this kind of sequence
首先想到的是 正弦函数了有固定的频率 比如 cos(2*pi*f*t)
可以假设一个f, 为 base 哆
2f, 为 来,以此类推。
尝试一下,声音不太对。(f=1000, wavplay sample frequency t=-1:0.01:1)

换了几个 base frequency 和 sample frequency,都不行。
发现cos(2*pi*f*t) value 不太对 值都是1, f*t,出问题了。
在网上搜了一下发现 f*t 值设的不合理, 重新设了一下,还是不对。
又搜索了一下,发现我频率设置的不对!

不能设置那么大的差别,不同音调之间差别很小的,只有几十而已(30,40)。
基准音 哆,设置成 250,, 以此往上加。

Ok, 1 2 3 4 5 6 7 8 9 设置成9个不同的音存在一个数组里面。‘
可以弹奏美妙的音乐了
东西还不太完善,有待改进.

来一段我们的队伍像太阳

评论

此博客中的热门博文

Embedded System interview Question

MicroKernel & Exokernel 操作系统未来可能的发展

中国城市房地产分析