我嘗試這樣做是爲了增加噪聲:我怎樣才能提高一個聲音從unhearable後(0分貝)音量大聲(60分貝)
public void maakgeluid() {
WaveOut waveOut = new WaveOut();
SineWaveOscillator osc = new SineWaveOscillator(44100);
for (short amplitude = 1; amplitude <500; amplitude+=1) {
Console.WriteLine("amplitude:" + amplitude);
for (int i = 1; i < 10; i++) {
Console.WriteLine(i);
osc.Frequency = 500;
osc.Amplitude = amplitude;
try {
waveOut.Init(osc);
} catch (Exception) { Console.WriteLine("error"); }
waveOut.Play();
}
}
}
目的是生成一種聲音,就像當你去聽耳專科醫生並進行聽力測試。所以它應該默默地開始,然後慢慢地裝上裝載機。
但我有不同的問題:
- 我聽到聲音立即
- 聲音增加快
- 我用的是循環與我櫃檯,延長聲音的持續時間,但我不認爲這是正確的做法。
- 循環增加聲音水平停止快速但我不明白爲什麼?
基於以下代碼 msdn.microsoft.com/en-us/magazine/ee309883.asp
嘗試在你的'waveOut.Play()'之後放置'Thread.Sleep(N)',其中'N'是等待的毫秒數。 – CodeCaster
@herman:請你提供一個有效的鏈接,鏈接被打破。 –
我更換了鏈接。 – herman