在.NET的winform里面,没有托管的音乐播放器,API只能播放WAV格式,对于MP3等形式的音频文件,就要依赖于 MediaPlayer里,嘿嘿
使用的方法:
- 在toolbox上点右键,选择“选择项目(Choose Items)”(vs2010中文版为选择项),切到COM页,找到 Windows Media Player, 勾选,确定
- 在toolbox上,把刚才加入的MediaPlayer控件,拖放到Winform上
代码:
axWindowsMediaPlayer1.URL = @"文件路径,支持网络路径";axWindowsMediaPlayer1.Ctlcontrols.play();
呵呵,基本就OK了, 至于其他的操作,大家直接看 axWindowsMediaPlayer1.Ctlcontrols. 下面的内容吧
右击工具箱->选择项(I)... -> 显示"选择工具箱项" -> COM组件 -> Windows Media Player wmp.dll 添加
axWindowsMediaPlayer1.windowlessVideo = false; //设为false后双击屏幕可以全屏
axWindowsMediaPlayer1.fullScreen = true; //设播放器全屏播放
axWindowsMediaPlayer1.URL = @"mms://192.168.0.102/vod/jingwei.wma";
axWindowsMediaPlayer1.Ctlcontrols.play(); //播放
axWindowsMediaPlayer1.Ctlcontrols.stop(); //停止
axWindowsMediaPlayer1.Ctlcontrols.pause(); //暂停
axWindowsMediaPlayer1.settings.autoStart = true; //自动播放
axWindowsMediaPlayer1.settings.mute = false; //静音
axWindowsMediaPlayer1.settings.volume = 100; // 音量 int 0 ~ 100 100 是最大音量
axWindowsMediaPlayer1.currentMedia.duration.ToString();//影片长度
axWindowsMediaPlayer1.Ctlcontrols.currentPosition = 30; //当前的播放位置 double
axWindowsMediaPlayer1.currentMedia.getItemInfo("Title");//标题
axWindowsMediaPlayer1.currentMedia.getItemInfo("Author");//作者
//*****************************************************************************//
//*****************************************************************************//
MediaPlay 以前版本
右击工具箱->选择项(I)... -> 显示"选择工具箱项" -> COM组件 -> 浏览(B)... -> C:WINDOWS\system32\msdxm.ocx -> 打开
Windows Media Player msdxm.dll 添加
label4.Text = axMediaPlayer1.Volume.ToString(); //音量
axMediaPlayer1.FileName = @"mms://218.98.101.164/vod/jingwei.wma";//文件路径
axMediaPlayer1.Play(); //开始播放
//******************************************************************************//
//****************************************************************************//
右击工具箱->选择项(I)... -> 显示"选择工具箱项" -> COM组件 -> RealPlayer G2 Control rmoc3260.dll 添加
axRealAudio1.Source = @"F:\mp3\hh.mp3"; //播放路径
axRealAudio1.CanPlayPause(); //Bool 型是否能暂停
axRealAudio1.CanPause(); //暂停
axRealAudio1.DoPlayPause(); //正在播放的影片暂停播放
axRealAudio1.CanPlay(); //Bool是否能播放
axRealAudio1.DoPlay(); //播放
axRealAudio1.CanStop() //播放是否可以停止
axRealAudio1.DoStop(); //播放停止
axRealAudio1.SetCenter(true); //按影片原大小播放
axRealAudio1.SetFullScreen();//播放器全屏播放影片
int place = axRealAudioP.GetPosition();
axRealAudio1.DoStop();
axRealAudio1.SetCente*(**lse); //拉伸播放 axRealAudio1.SetCenter(true); 按影片原始大小播放
axRealAudio1.DoPlay();
axRealAudio1.SetPosition(place);
nResL = axRealAudio1.GetPosition(); //获得当前影片 的播放进度
label1.Text = axRealAudio1.GetTitle(); //获得影片的标题
label2.Text = "当前的带宽: " + axRealAudio1.GetBandwidthCurrent() / 1024 + "KB";//当前影片的当前的带宽
label3.Text = "连接的带宽: " + axRealAudio1.GetConnectionBandwidth() / 1024 + "KB"; //当前的连接的带宽
找这些资源用了我半天,干脆放到一个程序里.对没写过的人还是有一定的参考价值的.
扩展阅读:http://eagletff.blog.163.com/blog/static/1163509282010422140951/