如何在C#,.NET中播放声音
我有一个用C#/。NET编写的Windows应用程序。
单击button时如何播放特定的声音?
你可以使用:
System.Media.SoundPlayer player = new System.Media.SoundPlayer(@"c:\mywavfile.wav"); player.Play();
您可以使用SystemSound ,例如System.Media.SystemSounds.Asterisk.Play();
。
对于Windows窗体,一种方法是使用SoundPlayer
private void Button_Click(object sender, EventArgs e) { using (var soundPlayer = new SoundPlayer(@"c:\Windows\Media\chimes.wav")) { soundPlayer.Play(); // can also use soundPlayer.PlaySync() } }
MSDN页面
这也将与WPF一起工作,但您有其他select,如使用MediaPlayer
MSDN页面
代码波纹pipe允许播放MP3文件和内存中的波形文件
player.FileName = "123.mp3"; player.Play();
从http://alvas.net/alvas.audio,samples.aspx#sample6或;
Player pl = new Player(); byte[] arr = File.ReadAllBytes(@"in.wav"); pl.Play(arr);
附加信息。
对于想要无缝适应Windows环境的应用程序来说,这是一个高级别的答案。 在其他答案中提供了播放特定声音的技术细节。 除此之外,请注意以下两点:
-
在典型场景中使用五种标准系统声音 ,即
-
星号 – 当你想突出显示当前事件时播放
-
问题 – 玩问题(系统消息框窗口播放此问题)
-
惊叹号 – 玩excalamation图标(系统消息框窗口播放这一个)
-
哔声 (默认系统声音)
-
关键停止 (“手”) – 玩错误(系统消息框窗口播放这个)
类
System.Media.SystemSounds
方法将为您播放它们。 -
-
在声音控制面板中实现您的用户可自定义的任何其他声音
- 这样用户可以轻松地更改或删除应用程序中的声音,并且不需要为此编写任何用户界面 – 它已经在那里了
- 每个用户configuration文件可以以自己的方式覆盖这些声音
- 如何:
- 在Windowsregistry中创build应用程序的声音configuration文件 (提示:不需要编程,只需将密钥添加到应用程序的安装程序中。)
- 在您的应用程序中,从您的registry项中读取声音文件path或DLL资源并播放它。 (如何播放声音,你可以看到其他答案。)
使用C#在Windows窗体中播放audio文件让我们来看一下简单的例子,如下所示:
1.进入Visual Studio(VS-2008/2010/2012) – >文件菜单 – >点击新build项目。
2.在新build项目中 – >单击Windows窗体应用程序 – >提供名称,然后单击确定。
一个新的“Windows窗体”项目将打开。
3.从工具箱拖放一个button控件到Windows窗体。
4.双击该button以自动创build默认的Click事件处理程序,并添加以下代码。
此代码显示“文件打开”对话框,并将结果传递给您将在下一步中创build的名为“playSound”的方法。
OpenFileDialog dialog = new OpenFileDialog(); dialog.Filter = "Audio Files (.wav)|*.wav"; if(dialog.ShowDialog() == DialogResult.OK) { string path = dialog.FileName; playSound(path); }
5.在button1_Click event hander下添加以下方法代码。
private void playSound(string path) { System.Media.SoundPlayer player = new System.Media.SoundPlayer(); player.SoundLocation = path; player.Load(); player.Play(); }
现在让我们通过按F5运行代码来运行应用程序。
7.点击button并select一个audio文件。 文件加载后,声音将播放。
我希望这是初学者的有用的例子…