场景
上位机软件中需要实现一个报警功能,即在某条件下循环播放能发出“嘟嘟”声的音频文件。
注:
博客主页:
https://blog.csdn.net/badao_liumang_qizhi
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。
实现
首先新建播放器对象
System.Media.SoundPlayer _warnPlayer = new System.Media.SoundPlayer(System.Windows.Forms.Application.StartupPath+@"DataMCProjectSoundwarn.wav ");
括号里面是音频文件的路径。
然后调用播放器对象的播放方法,可以看到有三个播放方法,为了实现能循环播放,所以调用PlayLooping方法。
为了能实现点击确认按钮后能停止播放,所以将System.Media.SoundPlayer设置为全局的。
然后停止时调用
WarnPlayer.Stop();
为了实现在播放音频中不影响显示弹窗等其他的操作,可以将播放音频的操作写在新线程中
System.Threading.Thread t = new System.Threading.Thread(PlayWarnSound);//创建了线程 t.Start();//开启线程
然后在线程对应的方法中
private static void PlayWarnSound(object obj) { Global.PublicVar.Instance.WarnPlayer.PlayLooping();//循环播放 }