C# axWindowsMediaPlayer制作播放器

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace VideoGoogle
{
    //选择菜单中的“工具”--“自定义工具箱”,打开“自定义工具箱”窗口,在“COM 组件”中选择“Windows Media Player”播放器和
    //“Shockwave Flash Object”flash播放器
    
    public partial class Form1 : Form
    {
        private static string PathBase = System.AppDomain.CurrentDomain.BaseDirectory;//目录

public Form1()
        {
            InitializeComponent();
        }

private void Form1_Load(object sender, EventArgs e)
        {
            //this.axWindowsMediaPlayer1.uiMode = "none";//右键axWindowsMediaPlayer1--属性--常规--控件布局--选择模式--None
            this.tbarVolume.Minimum = 0;                                               //設定音量調整Bar最小值為最小音量值(0)
            this.tbarVolume.Maximum = 100;                                             //設定音量調整Bar最大值為最大音量值(100)
            this.tbarVolume.Value = this.axWindowsMediaPlayer1.settings.volume;
        }

//打开
        private void button5_Click(object sender, EventArgs e)
        {
            OpenFileDialog openFileDialog = new OpenFileDialog();
            //设置为可以打开多个文件
            openFileDialog.Multiselect = true;
            //设置打开文件格式
            openFileDialog.Filter = "Mp3文件|*.mp3|Wav文件|*.wav|Wma文件|*.wma|Wmv文件|*.wmv|所有格式|*.*";
            //判断是否单击确定按钮
            if (openFileDialog.ShowDialog() == DialogResult.OK)
            {
                //建立播放列表,名字为aa
                axWindowsMediaPlayer1.currentPlaylist = axWindowsMediaPlayer1.newPlaylist("aa", "");
                //遍历打开的集合
                foreach (string fn in openFileDialog.FileNames)
                {
                    //添加播放列表
                    axWindowsMediaPlayer1.currentPlaylist.appendItem(axWindowsMediaPlayer1.newMedia(fn));
                }
            }
            //播放
            axWindowsMediaPlayer1.Ctlcontrols.play();
        }

//播放视频
        private void button1_Click(object sender, EventArgs e)
        {
            string Path = PathBase + "航架2.mpg";
            this.axWindowsMediaPlayer1.URL = Path;
            this.axWindowsMediaPlayer1.Ctlcontrols.play();  
        }

//播放MP3
        private void button4_Click(object sender, EventArgs e)
        {
            OpenFileDialog openFile = new OpenFileDialog();
            openFile.Filter = "mp3文件|*.mp3";
            if (DialogResult.OK == openFile.ShowDialog())
            {
                axWindowsMediaPlayer1.URL = openFile.FileName;
            }
        }

//设置
        private void button6_Click(object sender, EventArgs e)
        {
            string Duration = this.axWindowsMediaPlayer1.currentMedia.getItemInfo("Duration");//持续时间(秒)
            string Title = this.axWindowsMediaPlayer1.currentMedia.getItemInfo("Title");//媒体标题
            string Author = this.axWindowsMediaPlayer1.currentMedia.getItemInfo("Author");//艺术家
            string Copyright = this.axWindowsMediaPlayer1.currentMedia.getItemInfo("Copyright");//版权信息
            string Description = this.axWindowsMediaPlayer1.currentMedia.getItemInfo("Description");//媒体内容描述
            string FileSize = this.axWindowsMediaPlayer1.currentMedia.getItemInfo("FileSize");//文件大小
            string FileType = this.axWindowsMediaPlayer1.currentMedia.getItemInfo("FileType");//文件类型
            string sourceURL = this.axWindowsMediaPlayer1.currentMedia.getItemInfo("sourceURL");//原始地址
            MessageBox.Show("持续时间:"+Duration+"||"+"媒体标题:"+Title+"||"+"艺术家:"+Author+"||"+"版权信息:"+Copyright+"||"+"媒体内容描述:"+Description+"||"+"文件大小:"+FileSize+"||"+"文件类型:"+FileType+"||"+"原始地址:"+sourceURL);

string name = this.axWindowsMediaPlayer1.currentMedia.name;
            string url = this.axWindowsMediaPlayer1.currentMedia.sourceURL;

//设置
            //this.axWindowsMediaPlayer1.currentMedia.setItemInfo("Title", "航架");

this.axWindowsMediaPlayer1.settings.balance = 0;//表示媒体播放的声道设置,0表示均衡,-1和1表示左右声道
            double rate = this.axWindowsMediaPlayer1.settings.rate;//播放速率,一般乘以16后再显示kbps单位.
            //this.axWindowsMediaPlayer1.currentMedia.setItemInfo("rate", "2");
        }

//打开Flash
        private void button2_Click(object sender, EventArgs e)
        {
            OpenFileDialog ofDialog = new OpenFileDialog();
            ofDialog.AddExtension = true;
            ofDialog.CheckFileExists = true;
            ofDialog.CheckPathExists = true;
            ofDialog.Filter = "Flash文件(*.swf)|*.swf|所有文件(*.*)|*.*"; ;// "swf 文件 (*.swf)|*.swf|所有文件 (*.*)|*.*";
            ofDialog.DefaultExt = "mp3";
            if (ofDialog.ShowDialog() == DialogResult.OK)
            {
                this.axShockwaveFlash1.Movie = ofDialog.FileName;
            }

//==========================================
            //openFileDialog1.Filter = "Flash文件(*.swf)|*.swf|所有文件(*.*)|*.*";
            //if (openFileDialog1.ShowDialog() == DialogResult.OK)
            //{
            //    string MyFileName = openFileDialog1.FileName;
            //    this.axShockwaveFlash1.Movie = MyFileName;
            //}
        }

//Flash
        private void button3_Click(object sender, EventArgs e)
        {
            this.axShockwaveFlash1.Stop();//暂停播放
            this.axShockwaveFlash1.Rewind();//播放第一帧
            this.axShockwaveFlash1.Back();//播放上一帧
            this.axShockwaveFlash1.Forward();//开始播放
            this.axShockwaveFlash1.Rewind();//播放下一帧
            this.axShockwaveFlash1.Play();//播放下一帧
        }

//play
        private void playToolStripMenuItem_Click(object sender, EventArgs e)
        {
            axWindowsMediaPlayer1.Ctlcontrols.play();
        }

//pause
        private void pauseToolStripMenuItem_Click(object sender, EventArgs e)
        {
            axWindowsMediaPlayer1.Ctlcontrols.pause();
        }

//stop
        private void stopToolStripMenuItem_Click(object sender, EventArgs e)
        {
            axWindowsMediaPlayer1.Ctlcontrols.stop();
        }

//open
        private void openToolStripMenuItem_Click(object sender, EventArgs e)
        {
            OpenFileDialog openFileDialog = new OpenFileDialog();
            //设置为可以打开多个文件
            openFileDialog.Multiselect = true;
            //设置打开文件格式
            openFileDialog.Filter = "Mp3文件|*.mp3|Wav文件|*.wav|Wma文件|*.wma|Wmv文件|*.wmv|所有格式|*.*";
            //判断是否单击确定按钮
            if (openFileDialog.ShowDialog() == DialogResult.OK)
            {
                //建立播放列表,名字为aa
                axWindowsMediaPlayer1.currentPlaylist = axWindowsMediaPlayer1.newPlaylist("aa", "");
                //遍历打开的集合
                foreach (string fn in openFileDialog.FileNames)
                {
                    //添加播放列表
                    axWindowsMediaPlayer1.currentPlaylist.appendItem(axWindowsMediaPlayer1.newMedia(fn));
                }
            }
            //播放
            axWindowsMediaPlayer1.Ctlcontrols.play();
        }

//exit
        private void exitToolStripMenuItem_Click(object sender, EventArgs e)
        {
            Application.Exit();
        }

//上一个
        private void toolStripButton1_Click(object sender, EventArgs e)
        {
            axWindowsMediaPlayer1.Ctlcontrols.previous();
        }

//播放
        private void toolStripButton2_Click(object sender, EventArgs e)
        {
            axWindowsMediaPlayer1.Ctlcontrols.play();
        }

//下一个
        private void toolStripButton3_Click(object sender, EventArgs e)
        {
            axWindowsMediaPlayer1.Ctlcontrols.next();
        }

//暂停
        private void toolStripButton4_Click(object sender, EventArgs e)
        {
            axWindowsMediaPlayer1.Ctlcontrols.pause();
        }

//停止
        private void toolStripButton5_Click(object sender, EventArgs e)
        {
            axWindowsMediaPlayer1.Ctlcontrols.stop();
        }

//进度
        private void timer1_Tick(object sender, EventArgs e)
        {
            double total=0.0d;
            if (this.axWindowsMediaPlayer1.currentMedia != null)
            {
                total = Math.Ceiling(this.axWindowsMediaPlayer1.currentMedia.duration);

this.tbarPlayLoaction.Maximum = (int)this.axWindowsMediaPlayer1.currentMedia.duration;//設定撥放位置調整Bar最大值                    
            }
            double cur = Math.Floor(this.axWindowsMediaPlayer1.Ctlcontrols.currentPosition);
            if (total != 0)
            {
                this.progressBar1.Value = (int)(cur / total *100);
                this.label1.Text = cur.ToString()+"s" + "/" + total.ToString()+"s";

this.tbarPlayLoaction.Value = (int)(cur / total * total);
            }

//---------------------------------
            ////循环播放
            //if (axWindowsMediaPlayer1.playState == WMPLib.WMPPlayState.wmppsStopped)
            //{
            //    axWindowsMediaPlayer1.Ctlcontrols.play();
            //}
        }

//快进
        private void button7_Click(object sender, EventArgs e)
        {
            this.axWindowsMediaPlayer1.Ctlcontrols.fastForward();
        }

//快退
        private void button8_Click(object sender, EventArgs e)
        {
            this.axWindowsMediaPlayer1.Ctlcontrols.fastReverse();
        }

//自动播放
        private void autoStartToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (this.autoStartToolStripMenuItem.Checked)
            {
                this.axWindowsMediaPlayer1.settings.autoStart = true;
            }
        }

//播放
        private void toolStripButton6_Click(object sender, EventArgs e)
        {
            this.axWindowsMediaPlayer1.Ctlcontrols.play();
        }

//暂停
        private void toolStripButton7_Click(object sender, EventArgs e)
        {
            this.axWindowsMediaPlayer1.Ctlcontrols.pause();
        }

//显示当前音量
        private void toolStripButton8_Click(object sender, EventArgs e)
        {
            int volume=this.axWindowsMediaPlayer1.settings.volume;
            MessageBox.Show("音量:"+volume.ToString());

//this.axWindowsMediaPlayer1.currentMedia.setItemInfo("volume", "60");     
        }

//改变音量大小
        private void tbarVolume_Scroll(object sender, EventArgs e)
        {
            this.axWindowsMediaPlayer1.settings.volume = this.tbarVolume.Value;      //改變音量大小
        }

//音量打下++
        private void button9_Click(object sender, EventArgs e)
        {
            this.axWindowsMediaPlayer1.settings.volume += 1;       //音量大小+1
            int volume = this.axWindowsMediaPlayer1.settings.volume;
            this.tbarVolume.Value = volume;
        }

//音量大小--
        private void button10_Click(object sender, EventArgs e)
        {
            this.axWindowsMediaPlayer1.settings.volume -= 1;       //音量大小-1
            int volume = this.axWindowsMediaPlayer1.settings.volume;
            this.tbarVolume.Value = volume;
        }

//播放位置
        private void tbarPlayLoaction_Scroll(object sender, EventArgs e)
        {
            this.axWindowsMediaPlayer1.Ctlcontrols.currentPosition = tbarPlayLoaction.Value;
        }

//循环播放
        private void loopToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (this.loopToolStripMenuItem.Checked)
            {
                ////第一种:
                //if (axWindowsMediaPlayer1.playState == WMPLib.WMPPlayState.wmppsStopped)
                //{
                //    axWindowsMediaPlayer1.Ctlcontrols.play();
                //}

////第二种:
                axWindowsMediaPlayer1.settings.setMode("loop", true);
            }
        }

}
}

时间: 2024-10-13 04:06:02

C# axWindowsMediaPlayer制作播放器的相关文章

使用Window 自带的控件 axWindowsMediaPlayer 制作播放器

首先,需要把Medio Player 控件添加到工具箱中,具体操作如下: 在VS编程环境的"工具箱"中单击右键,选择"选择项"菜单,打开"选择工具箱项"窗口,选择"COM组件"标签,在列表中找到并勾选"Windows Media Player"组件,单击"确定"按钮.将该组件添加到指定的工具箱选项卡中然后在工具箱里面找 Windows Media Player 控件,拉到form里面,拉

西瓜影视资源逆向+播放器制作(类似天天看)

简介 快播倒下了,西瓜.吉吉等在线播放器又起来,这次它们总结快播的经验设置了底线,从而避免了法律的天网.西瓜.吉吉行为固然可恶,可更可恶的属天天看播放器(申豆),它通过逆向快播.西瓜.优酷.百度获取影视资源,然后盈利上千万.很多同学建议笔者用相同的方法创业,但笔者良心过不去,特此公布天天看等在线播放器制作方法,感兴趣的同学好好研究研究. 本篇讨论开发的方法与技术,不提供代码. 步骤分布如下:1.逆向西瓜影视资源 2.Vlc播放器组件化 3.界面库实现 4.在线播放器实现. 详情 步骤1.逆向西瓜

用OpenCV制作视频控制播放器(无声音)

申明:OpenCV是计算机视觉库,所以用在图片或视频处理上,故播放的视频暂时没有声音 软件:用OpenCV制作视频控制播放器(无声音) 功能说明:新建播放窗口,添加进度条可以拖动视频播放. 流程图: 功能说明: 1. 新建进度条 cvCreatTrackbar("","",&,frames,callback) 2.获取总帧数 cvGetCaptureProperty(&,id) double cvGetCaptureProperty( CvCaptu

简易音乐播放器制作

制作简易音乐播放器: 1.功能:音乐列表,播放,暂停,上一曲,下一曲,进度条(显示进度时间,控制进度),随机播放,单曲循环,顺序播放,歌词显示等 2.使用框架:AVFoundation 3.知识点:AVPlayer 使用,pch 文件使用,封装思想,MVC模式,storyBoard的使用,消息发送机制,观察者,block回调,nstimer,nsrunloop,空间约束,第三方使用等 详细过程: 一.布局 :使用 storyBoard 布局 1.歌曲列表界面:使用 TableViewContro

基于我们3组的网易云APP制作,找的APlayer H5音乐播放器

APlayer是一个非常漂亮的HTML5音频播放器,UI参考自网易云音乐外链播放器.它将audio标签封装,并结合CSS制作出漂亮的播放器UI,它支持设置歌名.歌手和歌词,可以设置是否自动播放,支持缩略图,支持播放进度以及设置播放源. HTML 首先是要加载播放器样式文件,这个播放器的样式酷似网易云音乐播放器.接着载入APlayer.js文件.然后在body中加入播放器div#player1,用于显示播放.<link rel="stylesheet" href="APl

使用LM386制作Arduino音乐播放器

在我们的项目中添加声音或音乐总是会使其看起来更酷一些,听上去更有吸引力.特别是如果您使用的是Arduino开发板,并且有很多空余的引脚,只需要添加一个SD卡模块和一个普通的扬声器即可轻松添加音效.在本文中,我将向您展示使用您的Arduino开发板来播放音乐以及添加音效是多么容易.感谢Arduino社区开发了一些库,可以使用快速而简便的方式实现..我们也在这里使用了LM386芯片进行放大和噪声消除. 需要的硬件: 1.  Arduino UNO开发板 2.  SD卡读卡器模块 3.  SD卡 4.

逗逼音乐播放器制作日志(一)&lt;附源码&gt;

我很喜欢编程,喜欢看到一个项目,从最初的几行代码慢慢变成好几个类,几千行代码.回头看看,这都是一个字母一个词语打出来的.就会觉得很开心... 曾经去报读过专业课程.可惜课程完毕后无缘成为一名码农,心里很是遗憾...现在记着的也不多了,不想就此放弃..于是决定制作一个简单的本地音乐播放器吧...之前已经写了点,网上参考了很多资料.希望各位大牛,多多指点...现在算是完成了3/1吧...我只能算是个半吊子,写不出什么精彩的代码.. 非常可惜的是,我在写的时候没有将Service加入,导致现在只能前台

C#制作视频播放器-player播放器组件

楼主的地址是土豆的地址,本地地址也是可以的. 好了,这时候我们运行,在textbox中添加你要播放视频的地址,音乐地址也是可以的,写好地址后,点击按钮,程序自己就播放了,如图: 现在大家看到,视频大小是跟播放器不对称的,这时我们可以修改视频的分辨率, 具体参考axWindowsMediaPlayer1控件属性介绍:属性/方法名: 说明: [基本属性] URL:String; 指定媒体位置,本机或网络地址 uiMode:String; 播放器界面模式,可为Full, Mini, None, Inv

基于MFC的Media Player的播放器的制作(1---播放器界面的布局)

|   版权声明:本文为博主原创文章,未经博主允许不得转载. 通过上面的一些预备知识,我们现在就可以自己来制作基于MFC的播放器了,接下来我们讲的是使用MFC制作我们播放器 的界面. 首先,我们我们打开VC++ 6.0.找到工具条:  文件 ---> 新建--->在接下的操作根据图片来 上面的操作完成之后,我们可以在我们设置的保存路径处,找到我们的过程文件夹,并且可以看到VC++6.0的面板了. 如下图: 接下来,介绍界面组件的添加:如图操作 如上图将所有的组件添加好,并设置好ID和名称,我的