我正在尝试制作一个用于学习摩尔斯电码的小应用程序而且因为我不知道如何在Silverlight中播放Beep而陷入困境。 我该怎么做?
Console.Beep(Freq, elementLength)
(我已经制作了一个使用Console.Beep的控制台应用程序并且它不能很好地工作(每分钟20字的点长度为60毫秒,2个标志之间的空间是180毫秒所以对于字母s女巫来说是......(在我的耳机中听到3点)我听到poc!声音不清晰... ...我想解决方法是使用DirectX / XNA) 你能告诉我如何使应用程序发出哔哔声吗?如果xna是解决方案,请指导我一个教程(我没有弄清楚我需要安装什么sdk以及从哪里下载) 谢谢
答案 0 :(得分:3)
我知道银光中没有直接的“嘟嘟”声。但是,你有很多声音功能;其中一个使用MediaElement控件。因此,您可以在页面中添加其中一个:
<MediaElement x:Name="beeper"></MediaElement>
然后在您的代码中,您可以分配并调用声音:
private void AssignBeep()
{
Uri beepUri = new Uri("Project;component/beep.mp3", UriKind.RelativeOrAbsolute);
StreamResourceInfo streamInfo = Application.GetResourceStream(beepUri);
this.beeper.SetSource(streamInfo.Stream);
this.beeper.AutoPlay = false;
}
然后你可以叫它发出哔哔声:
private void PlayBeep()
{
this.beeper.Position = new TimeSpan(0,0,0,0);
this.beeper.Volume = 1;
this.beeper.Play();
}
的信用
答案 1 :(得分:2)
看看这个......我想这就是你需要的...... http://silversynth.codeplex.com/