繁体   English   中英

C#中的声和弦?

[英]Sound chords in C#?

我已经尝试以低毫秒速率使用Console.Beep()两个“同时”播放两个频率,但是蜂鸣声之间的暂停会使它失效。 我已经尝试过研究但是我什么也没找到,除了我正在寻找的DirectSound之外,我不知道从哪里开始。 我所需要的只是制作一个程序,用一个扬声器同时播放两个或多个频率,在C#中。

谢谢。

我建议你看看DirectSound,它有很好的.NET绑定。 您可以使用两个(或更多) Buffer对象并调用其Play方法来同时播放它们。

本教程介绍如何通过动态合成声音在C#中实现简单的鼓机。 希望能帮助到你。

尝试使用MIDI。 这个例子可以帮助你入门。 它使用了一些人们高度推荐的MIDI库。

Console.Beep()是同步的,直到声音结束才返回。

试试Simple DirectMedia Layer( SDL.net )。

这里有一些非常简单的示例代码,可以让您播放WAV或MIDI文件。 这样,您可以编写代码一次,然后只需要维护wav或mid文件,如果您想更改声音效果。

播放任何声音文件 - C# (使用DirectX 9.0作为托管代码)

如果您事先知道频率,可以将它们合成为波形文件(大胆或其他类似程序),然后使用SoundPlayer类播放波形文件。

string path = /*path goes here*/;
player = new SoundPlayer(path);
player.Play();

如果需要在运行时合成它们,则必须手动编写文件。 这是一个可以参考构建wave文件的SO问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM