2013-03-18 70 views
-2

我想发出声音的像整数1到10的整数的音调,然后发送到声卡。 例如一个440赫兹音调1 500Hz至2 600赫兹3等... 频率不是问题。问题是许多整数音调的产生,然后将这些音调保存到.wave文件中,然后播放该波形文件。生成整数声音在C#

+0

这听起来像一个伟大的目标。 [那么,你有什么尝试](http://mattgemmell.com/2008/12/08/what-have-you-tried/)? – 2013-03-18 20:19:00

+0

我只是一个初学者不知道多少关于该 – user2178661 2013-03-18 20:21:03

+2

@ user2178661然后好像这是你一个很好的学习机会。如果你只有其他人为你做了你的工作,那么你将不会学习,并且你将成为你余生的初学者。如果你花时间解决自己的问题,你可以自己成为专家。 – Servy 2013-03-18 20:25:02

回答

0

要做到这一点是设置频率=现有的音乐标准的最简单方法。

var a = Math.Pow(2.0, 1.0/12.0); 
var b = // Your Integer Here; 

var f = 440 * Math.Pow(a, b); 

这会给你半音音阶的频率。如果你想有一个大的规模,你可以使用b = 0, 2, 4, 5, 7, 9, 11, or 12

链接到公式音符:http://www.phy.mtu.edu/~suits/NoteFreqCalcs.html