【发布时间】:2011-09-17 18:46:16
【问题描述】:
我正在尝试开发一个类似于 C# 中的tonematrix 的应用程序。我首先尝试使用 .net 和 NAudio 库,现在我尝试使用 XNA,但似乎我能得到的只是杂音。
使用 NAudio,我生成了 8 个具有不同频率的简单正弦波,从 (440hz * 1) 到 (440hz * 8) 不等。
使用 XNA,我使用了同一个音频文件的多个 SoundEffectInstance(如钢琴的 D4 音符),每个都有不同的 Pitch 值;音高值最多可以上升或下降一个八度。
在这两种情况下,当声音重叠时,我听到的是噪音而不是音乐。也许我完全弄错了,这不是混合不同音高/频率的声音的问题。
我很难相信tonematrix只使用了一个“简单的正弦波合成器”,因为声音非常丰富,当它们混合在一起时,它们总是会产生和谐的音调,而简单的正弦波总是听起来很难看对我来说是人造的。
我在创造和声方面有什么不好的方法吗?您知道tonematrix 使用的正弦波到底发生了什么吗?
【问题讨论】:
-
您是否将音高设置为 12 个半音以外的任何值?
-
在NAudio中,频率都是440hz的倍数。在XNA中,音高间隔(-1 1)分为17个音,所以应该有正常音,8个上半音和8个下半音,填满上下八度。跨度>
标签: c# xna audio frequency synthesizer