C#播放背景音乐通常有四种方式:
1.播放系统事件声音
2.使用System.Media.SoundPlayer播放wav
3.使用MCI Command String多媒体设备程序接口播放mp3,avi等
4.使用axWindowsMediaPlayer的COM组件来播放
具体的使用方法:
1.播放系统事件声音
System.Media.SystemSounds.Asterisk.Play();
System.Media.SystemSounds.Beep.Play();
System.Media.SystemSounds.Exclamation.Play();
System.Media.SystemSounds.Hand.Play();
System.Media.SystemSounds.Question.Play();
2.使用System.Media.SoundPlayer播放wav,mp3
System.Media.SoundPlayer sp = new SoundPlayer();
sp.SoundLocation = @"恋爱ing.wav";
sp.PlayLooping();
注:使用这种方法,总是提示出 该文件不是波形文件,很郁闷,还是没有找出原因!!
使用VS2008的话,直接添加System.Media命名空间即可!很简单!
3.使用MCI Command String多媒体设备程序接口播放mp3,avi等
using System.Runtime.InteropServices;
public static uint SND_ASYNC = 0x0001;
public static uint SND_FILENAME = 0x00020000;
[DllImport("winmm.dll")]
public static extern uint mciSendString(string lpstrCommand,
string lpstrReturnString, uint uReturnLength, uint hWndCallback);
public void Play()
{
mciSendString(@"close temp_alias", null, 0, 0);
mciSendString(@"open ""恋爱ing.mp3"" alias temp_alias", null, 0, 0);
mciSendString("play temp_alias repeat", null, 0, 0);
}
关于mciSendString的详细参数说明,请参见MSDN,或是http://blog.csdn.net/psongchao/archive/2007/01/19/1487788.aspx
这个方法可以识别一般的文件,比较强大!!
4.使用axWindowsMediaPlayer的COM组件来播放
a.加载COM组件:ToolBox->Choose Items->COM Components->Windows Media Player如下图:
b.把Windows Media Player控件拖放到Winform窗体中,把axWindowsMediaPlayer1中URL属性设置为MP3或是AVI的文件路径,F5运行。
如何使用Windows Media Player循环播放列表中的媒体文件?
假设我们有一个播放列表,下面的代码可以实现自动循环播放
private void axWindowsMediaPlayer1_PlayStateChange(object sender, AxWMPLib._WMPOCXEvents_PlayStateChangeEvent e)
{
if (axWindowsMediaPlayer1.playState == WMPLib.WMPPlayState.wmppsMediaEnded)
{
Thread thread = new Thread(new ThreadStart(PlayThread));
thread.Start();
}
}
private void PlayThread()
{
axWindowsMediaPlayer1.URL = @"E:\Music\SomeOne.avi";
axWindowsMediaPlayer1.Ctlcontrols.play();
}
MCI Command String和Windows Media Player都有非常丰富的功能接口,这里不能一一介绍,可以参考MSDN中的具体描述.
分享到:
相关推荐
如果看完这玩意儿还没播放出声音,那不是你的问题,是我的智商问题。。
c#播放声音例子(键盘钢琴) 用到Microsoft.DirectX.DirectSound.Device
/// 利用Windows Media Player播放声音和视频 /// 这是一种比较好的方式,首先操作简单,其次它所支持的文件格式较多(VCD文件(*.dat)|*.dat|Audio文件(*.avi)|*.avi|WAV文件(*.wav)|*.wav|MP3文件(*.mp3)|*.mp3)...
实现wince下播放声音 public class Sound { private byte[] m_soundBytes; private string m_fileName; private enum Flags { SND_SYNC = 0x0000, /* play synchronously (default) */ SND_ASYNC = 0x0001...
C#播放声音文件 代码清晰明了 一看就懂
c# 线程播放声音 c# 线程播放声音 c# 线程播放声音 c# 线程播放声音 c# 线程播放声音
第一种是利用DirectX 1.安装了DirectX SDK(有9个DLL文件)。这里我们只用到MicroSoft.DirectX.dll 和 Microsoft.Directx.DirectSound.dll 2.引入DirectX 的DLL文件的名字空间: using Microsoft.DirectX;...
里面收录了几个很好用以及很常用的几个类库,自己去琢磨吧 更多源码请登录http://www.nn0826.com下载。
用C#开发WINCE的应用程序,播放声音文件
C#Mp3播放器源码
这是本人在系统开发时总结的关于c#窗体中播放声音的四种代码操作,希望能有所帮助
c# cs程序播放一组音频文件.为了界面不卡死,开了子线程. 子线程是同步的,子线程如果是异步的话就不能顺序播放了吧. 子线程如果异步播放就相当于只能播放最后一个声音文件. 子线程如果同步播放则不能暂停,好像是...
C#调用Win32 播放声音效果, C#音乐播放器实例
通过API函数播放声音
c#蜂鸣报警系列声音函数 C#中可以通过以下四种方式来实现蜂鸣或者报警
c#多线程声音播放.rarc#多线程声音播放.rar
C#音乐播放类(播放、暂停、停止)[亲测可用] 直接将这个类下载后解压 把解压出来的类文件复制到项目中去 通过实例化,调用对象方法即可实现播放音乐文件的功能 这个类提供了播放、暂停、停止等功能 亲测mp3、wav、wma...
只是一个演示性的,使用C#实现声音的录制与播放。大家可一自己根据需求再改
利用C#演示,通过声卡来播放系统声音,随即声音以及指定频率和时间的随即声音