2011-03-19 97 views
-1

我使用directsound在C#中开发了声音生成器程序。当给出任何频率和强度(dbLevel)时,它播放完美。我的问题是,例如,如果我想要生成Fan或Ship的声音,但该声音看起来与我们通常听到的实际模拟声音非常不同。我怎样才能将数字声音转换成真正的模拟音频。或任何其他此类实用程序可用???????如何将生成的数字声音转换为模拟

+2

大多数人使用扬声器... – 2011-03-19 20:29:33

+1

从你所描述的,它是非常值得怀疑,你会通过将你的合成声音从数字转换为模拟来实现你正在寻找的东西;如果正确完成,两个听起来都完全一样 – 2011-03-19 20:37:02

回答

0

你是,我想,写一个音源,创建一个正弦波/其他波形。

当您生成声音时,您的声音是数字声音,并且声卡会在您的扬声器播放它之前将其转换为模拟声音。所有的声音都是这样的,MP3音乐,船只声音,甚至是你制造的哔哔声。它以数字方式存储在您的计算机上,并在您每次播放时转换为模拟。

所以你的问题是,'自然的噪音'或'天然乐器'有什么不同?

好吧,这只是他们有更复杂的光谱。自然声音由数千个混合在一起的频率组成。要生成自然声音,需要分析所需的特定声音。为此,您可以使用频谱分析仪应用程序或傅立叶分析。那么你将不得不生成它。

或者简单得多,只需要读取一个录制的wav文件,然后播放它!