如何将生成的数字声音转换为模拟声音

时间:2011-03-19 20:24:40

标签: .net

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

2 个答案:

答案 0 :(得分:0)

使用一个应用程序播放您的声音,并使用录制应用程序录制输出(我使用过Free Sound Recorder http://www.sound-recorder.biz/freesoundrecorder.html)。

你不能简单地转换它,你必须播放它来渲染模拟信号。

答案 1 :(得分:0)

我认为,你正在编写一个产生正弦波/其他波形的音调发生器。

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

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

嗯,只是他们的频谱要复杂得多。自然声音由混合在一起的数千个频率组成。要产生自然声音,需要分析您想要的特定声音。为此,您可以使用频谱分析仪应用程序或傅立叶分析。然后你必须生成它。

或者更简单,只需阅读录制的wav文件,然后播放它!