2012-06-03 54 views
0

我正在C#中构建一个相当简单的采样器。我已经得到了基本的声音结构(声音倾斜,停止声音播放,等等)。但是当我尝试录制和播放用户输入的声音时,我的问题就出现了。 录制时,我将声音保存到字典中,开始时间为键(Class'time'从0开始),以及声音的长度。 播放录制的声音时,我正在使用计时器来模拟系统中的时间。每次播放声音时,我都将计时器间隔设置为当前声音和下一个声音之间的时间差。 它大多开始很好,但声音通常完全不同步,声音被缩短或启动得太晚等等,我认为问题出在我使用计时器,但我不知道另一种方式正在做。 我为声音使用了Bass.Net。'录制'声音的播放

回答

0

你使用什么定时器? .NET中的大多数定时器对于此任务来说太不准确了,您应该查看P/Invoking Multimedia Timers(例如参见this)或使用Stopwatch构建您自己的定时器。