mp3音乐播放器c语言版
mfc编程mp3

Init();
m_Pause.SetWindowText("暂停");
//
CString filter = "媒体文件(所有类型)|*.cda;*.mid;*.rmi;*.midi;*.asf;*.wm;*.wma; *.asx;*.wax;*.m3u;*.wvx;*.mpeg;*.mpg;*.m1v;*.mp3; *.avi;*.wmv;*.wav;*.snd;*.au;*.aif;*.aifc|";
MCIWndSeek(m_hWnd,pos); // 定位文件到pos 处
MCIWndPlay(m_hWnd); // 播放文件
MCIWndPause(m_hWnd); // 暂停
MCIWndResume(m_hWnd); // 从暂停的地方重新启动
MCIWndStop(m_hWnd); // 停止
mciSendCommand (m_wDeviceID, MCI_PLAY,
MCI_FROM, (DWORD)(LPVOID)
&PlayParms));
---- 4. 暂停
MCI_PLAY_PARMS PlayParms;
mciSendCommand (m_wDeviceID, MCI_PAUSE, 0,
{
m_Music.Close();
m_MusicList.SetCurSel(index);
CString sPath = m_MusicAry.GetAt(index);
m_Music.Open(sPath);
m_Status.SetWindowText(sPath + _T(" 正在播放..."));//在状态条中显示提示信息
C语言下的MP3播放器

论文题目基于VC的MP3播放器设计与实现姓名学院学院专业计算机科学与技术指导教师讲师备注年月日基于VC的MP3播放器设计与实现作者姓名:指导教师:讲师单位名称:计算机科学与技术系专业名称:计算机科学与技术学校年月Design and Implementation of Mp3 PlayerBased on VCbySupervisor: Lecturer毕业设计(论文)任务书基于VC的MP3播放器设计与实现摘要本MP3播放器应用程序是一个基于Visual C++ 6.0 开发的一个多媒体软件,是建立在MCI(媒体控制接口)控制之上的软件。
该软件开发研究的目的主要是为了给人们娱乐和消遣用的;该软件实现的方法是通过调用MCI控制接口的相关函数,获取系统的控制信息,利用系统信息对MP3播放器的每一个动作进行控制。
现在为止,该软件到可以实现的功能是:该软件可以添加和播放多种音频文件格式,可以添加单个音频文件,也可以同时添加多个音频文件;对音频文件的操作有:播放音频文件、暂停、停止,可以选择播放下一首歌或前一首歌;可以对已经添加进入播放列表的音频文件进行删除或者添加新的音频文件;可以调节系统的音量的大小;该软件还可以显示当前播放的进度;可以隐藏或展开播放列表;本软件可以进行系统托管,隐藏主界面后,在任务栏创建托管图标;单击托管图标后可以重新弹出控制界面,并取消托管图标。
在系统托管或自动播放的情况下,该软件在播放完一首歌后可以自动跳转到下一首歌,并播放此音频文件。
关键词:媒体控制接口,多媒体,系统托管,控件,音频文件Design and Implementation of Mp3 PlayerBased on VCAbstractThe MP3 Player application programme is software that developed based on Visual C++ 6.0, and also is software that built on the control of MCI. The purpose of developing this software is for the entertainment and recreation of people. The way this software realized is transfer the correlation functions of MCI, and obtain the information of system control, using this information to control each movement of the MP3 Player.So far, the functions that software can realize are: The software can open and play different formats of audio-files,You can add the audio-file one by one or add many audio-files once; play the audio-files; pause; stop; play the following audio-file, and play the preceding audio-file. You can also delete the audio-files that the play list already have or add the new audio-file that the play-list does not exist. You can accommodate the volume of the system. The can show the progress that the current audio-file played. And can hide or outspread the play list. The software can trustee by the system, and will create a icon on the taskbar. When click the icon the interface will show again. While the current audio-file is playing over, it will jump to the next audio-file and play automatically.Key words: MCI,Media,System-Trustee,Controls,Audio-files目录毕业设计(论文)任务书 (I)摘要 (II)ABSTRACT......................................................................................... I II 第1章绪论 .. (1)1.1课题来源 (1)1.2课题描述 (1)1.3课题设计的思想 (1)1.4国内外的发展概况 (2)1.4.1 Winamp (2)1.4.2千千静听 (2)第2章用户需求分析 .................................... 错误!未定义书签。
单片机_音乐播放的c代码

单片机音乐播放的c代码#include "reg52.h"unsigned char Count;sbit _Speak =P2^3 ; //讯响器控制脚unsigned char code SONG[] ={ //祝你平安0x26,0x20,0x20,0x20,0x20,0x20,0x26,0x10,0x20,0x10,0x20,0x80,0x26,0x20,0x30,0x20, 0x30,0x20,0x39,0x10,0x30,0x10,0x30,0x80,0x26,0x20,0x20,0x20,0x20,0x20,0x1c,0x20, 0x20,0x80,0x2b,0x20,0x26,0x20,0x20,0x20,0x2b,0x10,0x26,0x10,0x2b,0x80,0x26,0x20, 0x30,0x20,0x30,0x20,0x39,0x10,0x26,0x10,0x26,0x60,0x40,0x10,0x39,0x10,0x26,0x20, 0x30,0x20,0x30,0x20,0x39,0x10,0x26,0x10,0x26,0x80,0x26,0x20,0x2b,0x10,0x2b,0x10, 0x2b,0x20,0x30,0x10,0x39,0x10,0x26,0x10,0x2b,0x10,0x2b,0x20,0x2b,0x40,0x40,0x20, 0x20,0x10,0x20,0x10,0x2b,0x10,0x26,0x30,0x30,0x80,0x18,0x20,0x18,0x20,0x26,0x20, 0x20,0x20,0x20,0x40,0x26,0x20,0x2b,0x20,0x30,0x20,0x30,0x20,0x1c,0x20,0x20,0x20, 0x20,0x80,0x1c,0x20,0x1c,0x20,0x1c,0x20,0x30,0x20,0x30,0x60,0x39,0x10,0x30,0x10, 0x20,0x20,0x2b,0x10,0x26,0x10,0x2b,0x10,0x26,0x10,0x26,0x10,0x2b,0x10,0x2b,0x80, 0x18,0x20,0x18,0x20,0x26,0x20,0x20,0x20,0x20,0x60,0x26,0x10,0x2b,0x20,0x30,0x20, 0x30,0x20,0x1c,0x20,0x20,0x20,0x20,0x80,0x26,0x20,0x30,0x10,0x30,0x10,0x30,0x20, 0x39,0x20,0x26,0x10,0x2b,0x10,0x2b,0x20,0x2b,0x40,0x40,0x10,0x40,0x10,0x20,0x10, 0x20,0x10,0x2b,0x10,0x26,0x30,0x30,0x80,0x00,//路边的野华不要采0x30,0x1C,0x10,0x20,0x40,0x1C,0x10,0x18,0x10,0x20,0x10,0x1C,0x10,0x18,0x40,0x1C ,0x20,0x20,0x20,0x1C,0x20,0x18,0x20,0x20,0x80,0xFF,0x20,0x30,0x1C,0x10,0x18,0x20 ,0x15,0x20,0x1C,0x20,0x20,0x20,0x26,0x40,0x20,0x20,0x2B,0x20,0x26,0x20,0x20,0x20, 0x30,0x80,0xFF,0x20,0x20,0x1C,0x10,0x18,0x10,0x20,0x20,0x26,0x20,0x2B,0x20,0x30, 0x20,0x2B,0x40,0x20,0x20,0x1C,0x10,0x18,0x10,0x20,0x20,0x26,0x20,0x2B,0x20,0x30, 0x20,0x2B,0x40,0x20,0x30,0x1C,0x10,0x18,0x20,0x15,0x20,0x1C,0x20,0x20,0x20,0x26 ,0x40,0x20,0x20,0x2B,0x20,0x26,0x20,0x20,0x20,0x30,0x80,0x20,0x30,0x1C,0x10,0x20, 0x10,0x1C,0x10,0x20,0x20,0x26,0x20,0x2B,0x20,0x30,0x20,0x2B,0x40,0x20,0x15,0x1F ,0x05,0x20,0x10,0x1C,0x10,0x20,0x20,0x26,0x20,0x2B,0x20,0x30,0x20,0x2B,0x40,0x20, 0x30,0x1C,0x10,0x18,0x20,0x15,0x20,0x1C,0x20,0x20,0x20,0x26,0x40,0x20,0x20,0x2B ,0x20,0x26,0x20,0x20,0x20,0x30,0x30,0x20,0x30,0x1C,0x10,0x18,0x40,0x1C,0x20,0x20, 0x20,0x26,0x40,0x13,0x60,0x18,0x20,0x15,0x40,0x13,0x40,0x18,0x80,0x00,};void Time0_Init(){TMOD = 0x01;IE = 0x82;TH0 = 0xD8;TL0 = 0xEF; //12MZ晶振,10ms}void Time0_Int() interrupt 1{TH0 = 0xD8;TL0 = 0xEF;Count++; //长度加1}/*-------------------------------------------------功能:1MS延时子程序-------------------------------------------------*/void Delay_xMs(unsigned int x){unsigned int i,j;for( i =0;i < x;i++ ){for( j =0;j<3;j++ );}}/*-------------------------------------------------功能:歌曲播放子程序i为播放哪一段曲目-------------------------------------------------*/void Play_Song(unsigned char i){unsigned char Temp1,Temp2;unsigned int Addr;Count = 0; //中断计数器清0Addr = i * 217;while(1){Temp1 = SONG[Addr++];if ( Temp1 == 0xFF ) //休止符{TR0 = 0;Delay_xMs(100);}else if ( Temp1 == 0x00 ) //歌曲结束符{return;}else{Temp2 = SONG[Addr++];TR0 = 1;while(1){_Speak = ~_Speak;Delay_xMs(Temp1);if ( Temp2 == Count ){Count = 0;break;}}}}}/*-------------------------------------------------功能:主程序-------------------------------------------------*/void main(){Time0_Init(); //定时器0中断初始化while(1){Play_Song(0); //播放}}6回答者:小崔凡凡- 二级2009-10-16 21:47我来评论>>提问者对于答案的评价:谢谢!相关内容• 单片机播放音乐里的音乐代码是怎么得到的?有什么软件能将歌曲直接转换成16进制代码 4 2008-11-14• 给个单片机C语言编的音乐程序,能够播放音乐 6 2009-7-22• 求用c语言编写的播放背景音乐的代码 5 2009-6-12• 单片机音乐代码问题 2009-9-28• 单片机音乐代码 5 2009-5-18更多相关问题>>查看同主题问题:单片机音乐音乐播放播放代码等待您来回答∙nokia 3100c音乐播放器如何跟新∙为什么用酷我音乐盒听歌后那歌会在C:\ProgramData\mcache里面呢∙深圳龙华天龙大道珍藏版狂嗨现场dj明仔vs女mc小黎茂名细飞11分钟半时候的那音乐谁知道叫什么名字!∙夏普9020c合上盖子怎么听音乐?∙C:Documents and SettingsAdministrator「开始」菜单酷我音乐盒2010.lnk∙nokia 2600c手机可以用什么音乐播放器?∙『windows』在网页制作中,下列不是背景音乐格式的是那一个?A.tem B mp3 C wav D∙3110c播放音乐时会卡,之后会自动到下一首,怎么办?其他回答共3 条我的博客上有三首连放的,你只要加两首就行了。
基于凌阳单片机,用C语言设计的mp3播放器程序!!

基于凌阳单片机,用C语言设计的mp3播放器程序!!浏览次数:1160次悬赏分:50 |提问时间:2008-9-5 22:01 |提问者:573109893|问题为何被关闭必须用C语言设计的程序,而且还必须基于凌阳单片机之上。
请各位大虾帮帮忙!跪求!!悬赏50分!!!事成之后再送50分!!其他回答共1条Public Class Form1Inherits System.Windows.Forms.Form#Region " Windows 窗体设计器生成的代码"Public Sub New()MyBase.New()'该调用是Windows 窗体设计器所必需的。
InitializeComponent()'在InitializeComponent() 调用之后添加任何初始化End Sub'窗体重写dispose 以清理组件列表。
Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)If disposing ThenIf Not (components Is Nothing) Thencomponents.Dispose()End IfEnd IfMyBase.Dispose(disposing)End Sub'Windows 窗体设计器所必需的Private components As ponentModel.IContainer'注意: 以下过程是Windows 窗体设计器所必需的'可以使用Windows 窗体设计器修改此过程。
'不要使用代码编辑器修改它。
Friend WithEvents MainMenu1 As System.Windows.Forms.MainMenu Friend WithEvents MenuItem1 As System.Windows.Forms.MenuItem Friend WithEvents MenuItem2 As System.Windows.Forms.MenuItem Friend WithEvents MenuItem3 As System.Windows.Forms.MenuItem Friend WithEvents MenuItem6 As System.Windows.Forms.MenuItemFriend WithEvents MenuItem7 As System.Windows.Forms.MenuItem Friend WithEvents MenuItem8 As System.Windows.Forms.MenuItem Friend WithEvents MenuItem9 As System.Windows.Forms.MenuItem Friend WithEvents MenuItem10 As System.Windows.Forms.MenuItem Friend WithEvents MenuItem11 As System.Windows.Forms.MenuItem Friend WithEvents MenuItem12 As System.Windows.Forms.MenuItem Friend WithEvents MenuItem13 As System.Windows.Forms.MenuItem Friend WithEvents MenuItem14 As System.Windows.Forms.MenuItem Friend WithEvents MenuItem15 As System.Windows.Forms.MenuItem Friend WithEvents MenuItem16 As System.Windows.Forms.MenuItem Friend WithEvents MenuItem17 As System.Windows.Forms.MenuItem Friend WithEvents MenuItem18 As System.Windows.Forms.MenuItem Friend WithEvents MenuItem19 As System.Windows.Forms.MenuItem Friend WithEvents MenuItem20 As System.Windows.Forms.MenuItem Friend WithEvents MenuItem21 As System.Windows.Forms.MenuItem Friend WithEvents MenuItem22 As System.Windows.Forms.MenuItem Friend WithEvents MenuItem23 As System.Windows.Forms.MenuItem Friend WithEvents MenuItem24 As System.Windows.Forms.MenuItem Friend WithEvents MenuItem25 As System.Windows.Forms.MenuItem Friend WithEvents MenuItem26 As System.Windows.Forms.MenuItem Friend WithEvents MenuItem27 As System.Windows.Forms.MenuItem Friend WithEvents MenuItem28 As System.Windows.Forms.MenuItem Friend WithEvents MenuItem29 As System.Windows.Forms.MenuItem Friend WithEvents MenuItem30 As System.Windows.Forms.MenuItem Friend WithEvents MenuItem31 As System.Windows.Forms.MenuItem Friend WithEvents MenuItem32 As System.Windows.Forms.MenuItem Friend WithEvents MenuItem33 As System.Windows.Forms.MenuItem Friend WithEvents MenuItem34 As System.Windows.Forms.MenuItem Friend WithEvents MenuItem35 As System.Windows.Forms.MenuItem Friend WithEvents MenuItem36 As System.Windows.Forms.MenuItem Friend WithEvents MenuItem37 As System.Windows.Forms.MenuItem Friend WithEvents MenuItem38 As System.Windows.Forms.MenuItem Friend WithEvents MenuItem39 As System.Windows.Forms.MenuItem Friend WithEvents MenuItem40 As System.Windows.Forms.MenuItem Friend WithEvents AxMediaPlayer1 As AxMediaPlayer.AxMediaPlayer Friend WithEvents OpenFileDialog1 AsSystem.Windows.Forms.OpenFileDialog<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()Me.MainMenu1 = New System.Windows.Forms.MainMenuMe.MenuItem1 = New System.Windows.Forms.MenuItemMe.MenuItem2 = New System.Windows.Forms.MenuItemMe.MenuItem3 = New System.Windows.Forms.MenuItemMe.MenuItem6 = New System.Windows.Forms.MenuItemMe.MenuItem7 = New System.Windows.Forms.MenuItemMe.MenuItem8 = New System.Windows.Forms.MenuItemMe.MenuItem9 = New System.Windows.Forms.MenuItemMe.MenuItem10 = New System.Windows.Forms.MenuItemMe.MenuItem11 = New System.Windows.Forms.MenuItemMe.MenuItem12 = New System.Windows.Forms.MenuItemMe.MenuItem13 = New System.Windows.Forms.MenuItemMe.MenuItem14 = New System.Windows.Forms.MenuItemMe.MenuItem15 = New System.Windows.Forms.MenuItemMe.MenuItem16 = New System.Windows.Forms.MenuItemMe.MenuItem17 = New System.Windows.Forms.MenuItemMe.MenuItem18 = New System.Windows.Forms.MenuItemMe.MenuItem19 = New System.Windows.Forms.MenuItemMe.MenuItem20 = New System.Windows.Forms.MenuItemMe.MenuItem21 = New System.Windows.Forms.MenuItemMe.MenuItem22 = New System.Windows.Forms.MenuItemMe.MenuItem23 = New System.Windows.Forms.MenuItemMe.MenuItem24 = New System.Windows.Forms.MenuItemMe.MenuItem25 = New System.Windows.Forms.MenuItemMe.MenuItem26 = New System.Windows.Forms.MenuItemMe.MenuItem27 = New System.Windows.Forms.MenuItemMe.MenuItem28 = New System.Windows.Forms.MenuItemMe.MenuItem29 = New System.Windows.Forms.MenuItemMe.MenuItem30 = New System.Windows.Forms.MenuItemMe.MenuItem31 = New System.Windows.Forms.MenuItemMe.MenuItem32 = New System.Windows.Forms.MenuItemMe.MenuItem33 = New System.Windows.Forms.MenuItemMe.MenuItem34 = New System.Windows.Forms.MenuItemMe.MenuItem35 = New System.Windows.Forms.MenuItemMe.MenuItem36 = New System.Windows.Forms.MenuItemMe.MenuItem37 = New System.Windows.Forms.MenuItemMe.MenuItem38 = New System.Windows.Forms.MenuItemMe.MenuItem39 = New System.Windows.Forms.MenuItemMe.MenuItem40 = New System.Windows.Forms.MenuItemMe.OpenFileDialog1 = New System.Windows.Forms.OpenFileDialog ''MainMenu1'Me.MainMenu1.MenuItems.AddRange(NewSystem.Windows.Forms.MenuItem() {Me.MenuItem1, Me.MenuItem7, Me.MenuItem13, Me.MenuItem29, Me.MenuItem37})''MenuItem1'Me.MenuItem1.Index = 0Me.MenuItem1.MenuItems.AddRange(NewSystem.Windows.Forms.MenuItem() {Me.MenuItem2, Me.MenuItem3, Me.MenuItem6})Me.MenuItem1.Text = "文件(&F)"''MenuItem2'Me.MenuItem2.Index = 0Me.MenuItem2.Text = "打开(&O)"''MenuItem3'Me.MenuItem3.Index = 1Me.MenuItem3.Text = "-"''MenuItem6'Me.MenuItem6.Index = 2Me.MenuItem6.Text = "退出(&E)"''MenuItem7'Me.MenuItem7.Index = 1Me.MenuItem7.MenuItems.AddRange(NewSystem.Windows.Forms.MenuItem() {Me.MenuItem8, Me.MenuItem9, Me.MenuItem10, Me.MenuItem11, Me.MenuItem12})Me.MenuItem7.Text = "播放(&P)"''MenuItem8'Me.MenuItem8.Index = 0Me.MenuItem8.Text = "播放(&P)"''MenuItem9'Me.MenuItem9.Index = 1Me.MenuItem9.Text = "-"''MenuItem10'Me.MenuItem10.Index = 2Me.MenuItem10.Text = "暂停(&A)"''MenuItem11'Me.MenuItem11.Index = 3Me.MenuItem11.Text = "-"''MenuItem12'Me.MenuItem12.Index = 4Me.MenuItem12.Text = "停止(&S)"''MenuItem13'Me.MenuItem13.Index = 2Me.MenuItem13.MenuItems.AddRange(NewSystem.Windows.Forms.MenuItem() {Me.MenuItem14, Me.MenuItem15, Me.MenuItem16, Me.MenuItem17, Me.MenuItem18, Me.MenuItem19, Me.MenuItem20, Me.MenuItem21, Me.MenuItem22, Me.MenuItem23, Me.MenuItem24, Me.MenuItem25, Me.MenuItem26, Me.MenuItem27, Me.MenuItem28})Me.MenuItem13.Text = "视图(&V)"''MenuItem14'Me.MenuItem14.Index = 0Me.MenuItem14.Text = "标准模式(&S)"''MenuItem15'Me.MenuItem15.Index = 1Me.MenuItem15.Text = "-"''MenuItem16'Me.MenuItem16.Index = 2Me.MenuItem16.Text = "精简模式(&M)"''MenuItem17'Me.MenuItem17.Index = 3Me.MenuItem17.Text = "-"''MenuItem18'Me.MenuItem18.Index = 4Me.MenuItem18.Text = "最小模式(&I)" ''MenuItem19'Me.MenuItem19.Index = 5Me.MenuItem19.Text = "-"''MenuItem20'Me.MenuItem20.Index = 6Me.MenuItem20.Text = "全屏模式(&F)" ''MenuItem21'Me.MenuItem21.Index = 7Me.MenuItem21.Text = "-"''MenuItem22'Me.MenuItem22.Index = 8Me.MenuItem22.Text = "双倍模式(&D)" ''MenuItem23'Me.MenuItem23.Index = 9Me.MenuItem23.Text = "-"''MenuItem24'Me.MenuItem24.Index = 10Me.MenuItem24.Text = "详细信息(&X)" ''MenuItem25'Me.MenuItem25.Index = 11Me.MenuItem25.Text = "-"''MenuItem26'Me.MenuItem26.Index = 12Me.MenuItem26.Text = "统计信息(&J)" ''MenuItem27'Me.MenuItem27.Text = "-"''MenuItem28'Me.MenuItem28.Index = 14Me.MenuItem28.Text = "快捷菜单(&C)"''MenuItem29'Me.MenuItem29.Index = 3Me.MenuItem29.MenuItems.AddRange(NewSystem.Windows.Forms.MenuItem() {Me.MenuItem30, Me.MenuItem31, Me.MenuItem32, Me.MenuItem33, Me.MenuItem34, Me.MenuItem35, Me.MenuItem36})Me.MenuItem29.Text = "设置(&S)"''MenuItem30'Me.MenuItem30.Index = 0Me.MenuItem30.Text = "属性设置(&P)"''MenuItem31'Me.MenuItem31.Index = 1Me.MenuItem31.Text = "-"''MenuItem32'Me.MenuItem32.Index = 2Me.MenuItem32.Text = "静音设置(&S)"''MenuItem33'Me.MenuItem33.Index = 3Me.MenuItem33.Text = "-"''MenuItem34'Me.MenuItem34.Index = 4Me.MenuItem34.Text = "增大音量(&I)"''MenuItem35'Me.MenuItem35.Text = "-"''MenuItem36'Me.MenuItem36.Index = 6Me.MenuItem36.Text = "减小音量(&D)"''MenuItem37'Me.MenuItem37.Index = 4Me.MenuItem37.MenuItems.AddRange(NewSystem.Windows.Forms.MenuItem() {Me.MenuItem38, Me.MenuItem39, Me.MenuItem40})Me.MenuItem37.Text = "帮助(&H)"''MenuItem38'Me.MenuItem38.Index = 0Me.MenuItem38.Text = "帮助(&H)"''MenuItem39'Me.MenuItem39.Index = 1Me.MenuItem39.Text = "-"''MenuItem40'Me.MenuItem40.Index = 2Me.MenuItem40.Text = "关于(&A)"''OpenFileDialog1'Me.OpenFileDialog1.Filter = "所有影音文件(*.avi,*.mpg,*.dat)|*.avi;*.mpg;*.dat|所有文件(*.*)|*.*"''Form1'Me.AutoScaleBaseSize = New System.Drawing.Size(6, 14)Me.ClientSize = New System.Drawing.Size(360, 190)Me.Menu = Me.MainMenu1 = "Form1"Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen Me.Text = "演示播放VCD电影"End Sub#End Region'打开Private Sub MenuItem2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem2.ClickIf Me.OpenFileDialog1.ShowDialog() = DialogResult.OK ThenMe.AxMediaPlayer1.FileName = Me.OpenFileDialog1.FileNameEnd IfEnd Sub'退出Private Sub MenuItem6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem6.ClickMe.Close()End Sub'播放Private Sub MenuItem8_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem8.ClickTryMe.AxMediaPlayer1.Play()Catch ex As ExceptionMessageBox.Show("可能没有打开媒体文件!", "信息提示", MessageBoxButtons.OK, rmation)End TryEnd Sub'暂停Private Sub MenuItem10_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem10.ClickTryMe.AxMediaPlayer1.Pause()Catch ex As ExceptionMessageBox.Show("可能没有打开媒体文件!", "信息提示", MessageBoxButtons.OK, rmation)End TryEnd Sub'停止Private Sub MenuItem12_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem12.ClickTryMe.AxMediaPlayer1.Stop()Catch ex As ExceptionMessageBox.Show("可能没有打开媒体文件!", "信息提示", MessageBoxButtons.OK, rmation)End TryEnd Sub'标准模式Private Sub MenuItem14_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem14.ClickTryMe.AxMediaPlayer1.DisplaySize =MediaPlayer.MPDisplaySizeConstants.mpDefaultSizeCatch ex As ExceptionMessageBox.Show("可能没有打开媒体文件!", "信息提示", MessageBoxButtons.OK, rmation)End TryEnd Sub'精简模式Private Sub MenuItem16_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem16.ClickTryMe.AxMediaPlayer1.DisplaySize =MediaPlayer.MPDisplaySizeConstants.mpFitToSizeCatch ex As ExceptionMessageBox.Show("可能没有打开媒体文件!", "信息提示", MessageBoxButtons.OK, rmation)End TryEnd Sub'最小模式Private Sub MenuItem18_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem18.ClickTryMe.AxMediaPlayer1.DisplaySize =MediaPlayer.MPDisplaySizeConstants.mpOneSixteenthScreenCatch ex As ExceptionMessageBox.Show("可能没有打开媒体文件!", "信息提示", MessageBoxButtons.OK, rmation)End TryEnd Sub'全屏模式Private Sub MenuItem20_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem20.ClickTryMe.AxMediaPlayer1.DisplaySize =MediaPlayer.MPDisplaySizeConstants.mpFullScreenCatch ex As ExceptionMessageBox.Show("可能没有打开媒体文件!", "信息提示", MessageBoxButtons.OK, rmation)End TryEnd Sub'双倍模式Private Sub MenuItem22_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem22.ClickTryMe.AxMediaPlayer1.DisplaySize =MediaPlayer.MPDisplaySizeConstants.mpDoubleSizeCatch ex As ExceptionMessageBox.Show("可能没有打开媒体文件!", "信息提示", MessageBoxButtons.OK, rmation)End TryEnd Sub'详细信息Private Sub MenuItem24_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem24.Click'使用NOT操作符简化代码Me.AxMediaPlayer1.ShowDisplay = Not Me.AxMediaPlayer1.ShowDisplay '判断并设置菜单的复选标记If Me.AxMediaPlayer1.ShowDisplay = True ThenMe.MenuItem24.Checked = TrueElseMe.MenuItem24.Checked = FalseEnd IfEnd Sub'统计信息Private Sub MenuItem26_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem26.ClickTryMe.AxMediaPlayer1.ShowDialog(MediaPlayer.MPShowDialogConstants.mpS howDialogStatistics)Catch ex As ExceptionMessageBox.Show("可能没有打开媒体文件!", "信息提示", MessageBoxButtons.OK, rmation)End TryEnd Sub'快捷菜单Private Sub MenuItem28_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem28.ClickMe.AxMediaPlayer1.ShowDialog(MediaPlayer.MPShowDialogConstants.mpS howDialogContextMenu)End Sub'属性设置Private Sub MenuItem30_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem30.ClickMe.AxMediaPlayer1.ShowPropertyPages()'Me.AxMediaPlayer1.ShowDialog(MediaPlayer.MPShowDialogConstants.mpS howDialogOptions)End Sub'静音设置Private Sub MenuItem32_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem32.Click'使用Not操作符简化编码Me.AxMediaPlayer1.Mute = Not Me.AxMediaPlayer1.Mute'添加Check标记If Me.AxMediaPlayer1.Mute = True ThenMe.MenuItem32.Checked = TrueElseMe.MenuItem32.Checked = FalseEnd IfEnd Sub'增大音量Private Sub MenuItem34_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem34.ClickMe.AxMediaPlayer1.Volume = Me.AxMediaPlayer1.Volume + 100End Sub'减小音量Private Sub MenuItem36_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem36.ClickMe.AxMediaPlayer1.Volume = Me.AxMediaPlayer1.Volume - 100End Sub'帮助Private Sub MenuItem38_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem38.ClickMe.AxMediaPlayer1.ShowDialog(MediaPlayer.MPShowDialogConstants.mpS howDialogHelp)End Sub'关于Private Sub MenuItem40_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem40.ClickMe.AxMediaPlayer1.ShowAboutBox()End SubPrivate Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.LoadEnd SubEnd Class你看看是不是你要的,不是的话我还有别的注意了,在你运行的时候可能会出现AxMediaPlayer为导入的提示,这时候你在菜单栏里的工具-> 添加移除工具箱,选择COM组件,点浏览,,在C:\WINDOWS\SYSTEM32\MSDXM.OCX这个文件并打开,这时候会增加一个windows media player的控件,使用它就可以了。
自己设计的MP3播放器(VC)

m_button2.SizeToContent();
m_button3.SizeToContent();
m_button5.SizeToContent();
play.SizeToContent();
zanting.SizeToContent();
pre.SizeToContent();
: CDialog(CMp3playerDlg::IDD, pParent)
{
m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
}
void CMp3playerDlg::DoDataExchange(CDataExchange* pDX)
{
ON_WM_TIMER()
//}}AFX_MSG_MAP
ON_BN_CLICKED(IDC_T, &CMp3playerDlg::OnClickedT)
//ON_NOTIFY(HDN_ITEMDBLCLICK, 0, &CMp3playerDlg::OnItemdblclickList1)
{
// TODO: 在此添加控件通知处理程序代码
/*int n=m_tab.GetCurSel();
switch(n)
{
case 1:
{
GetDlgItem(IDC_SOUSUOMULU)->ShowWindow(false);
GetDlgItem(IDC_SOUSUOMULU2)->ShowWindow(false);
// Mp3playerDlg.cpp : 实现文件
#include "stdafx.h"
MP3c语言源代码

static MCI_PLAY_PARMS mciPlay;
static MCI_OPEN_PARMS mciOpen;
static MCI_DGV_SETAUDIO_PARMS mciSetAudioPara;
memset(FileName, 0, sizeof(FileName) );
FileNames.hInstance = NULL ;
FileNames.lpstrFilter = szFilter ;
FileNames.lpstrCustomFilter = NULL ;
FileNames.nMaxCustFilter = 0 ;
}
c[7+i+j]=a[7];
c[8+i+j]=a[8];
memcpy(szFilter, c,100);
FileNames.lStructSize = sizeof (OPENFILENAME) ;
FileNames.hwndOwner = hwnd ;
FileNames.nFilterIndex = 0 ;
FileNames.lpstrFile = szFileName ;
FileNames.nMaxFile = MAX_PATH ;
FileNames.lpstrFileTitle = szTitleName ;
return 0;
}
mciSetAudioPara.dwValue = iPosition*10;
mciSendCommand(mciOpen.wDeviceID, MCI_SETAUDIO, MCI_DGV_SETAUDIO_VALUE | MCI_DGV_SETAUDIO_ITEM,(DWORD)(LPVOID)&mciSetAudioPara);
VC编写音频播放器

程序效果
音乐播放器可以播放Windows下常用的音频和视 频文件,如MP3、MIDI、WAV、WMA等。程序 的界面如图所示。用户可通过文件对话框添加想 要播放的文件和删除音乐文件,并可实现暂停、 关闭或重播的功能,并显示播放的时间和正在播 放文件的全路径和文件名,同时,在媒体文件播 放的过程中,用户可随时调节音,还可以设置播 放模式,如单曲循环,顺序播放等,同时,可以 同步歌词。
Softeem Consultancy Service
3,界面布局。在对话框中添加相应的控件,完成相应功能,最终效果如图:
Softeem Consultancy Service
4.进行对话框、控件的相应美化。 (1)给对话框添加背景 (2)给按钮添加位图 (3)使静态文本透明
实现播放音乐
Windows MCI与多媒体软件开发 Windows MCI(Media Control Interface)是控制多媒体设备的高层命令接口, 提供了与设备无关的控制多媒体设备的方法。MCI可控制的多媒体设备包括标准 的多媒体设备,如CD音频(CD Audio)、数字视频、动画、Wave格式数字声 音和MIDI音序器,以及影碟机等可选设备。MCI包含在Windows系统的 MMSYSTEM.DLL动态链接库中,用以协调多媒体事件和MCI设备驱动程序之间 的通信。一些MCI设备驱动程序,影碟机设备驱动程序,可以直接控制目标设备 ;另外一些MCI 设备驱动程序,如Wave和MIDI 设备驱动程序,通过 MMSYSTEM中的函数间接控制目标设备;还有一些MCI设备驱动程序则提供了 与其他Windows动态链接库的高层接口。MCI提供两种不同但相互联系的接口方 式。第一种方式利用消息和数据结构来给多媒体设备发送命令并接收设备传来的 信息,这种方法用函数mciSendCommand来给设备发送命令。其原型为:
c语言编写的音乐播放器源代码)

include <windows.h> #include <stdio.h>#include <stdlib.h>#include <string.h>#include <conio.h>unsigned frequency[100];char hight[100];unsigned time[100];unsigned rate;void main(){voidset(unsignedf[],charh[],unsignedt[],int r,int num);void music(unsigned f[],unsigned t[],intnum);int flag=0;FILE *f1;int i,n,menu;char FileName[30];while(1){f1=NULL;i=n=0;printf("本程序采用编码的形式播放音乐。
\n");printf("\n用记事本编辑乐谱,然后通过输入文件名播放音乐\n");printf("乐谱文件可以自创,也可以抄别人的\n");printf("\n现在可以先输入数字再按回车播放音乐:\n");printf("1播放指定音乐music1\n");printf("2播放指定音乐music2\n");printf("3通过程序文件名播放音乐\n");printf("4退出\n");while(1){printf("menu=");scanf("%d",&menu);if(menu==1) {strcpy(FileName,"music1.txt");break;}if(menu==2){strcpy(FileName,"music2.txt");break;}if(menu==3){scanf("%s",FileName);break;}if(menu==4)exit(0);}printf("\n该文件的音乐编码如下:\n");if((f1=fopen(FileName,"r"))==NULL){ printf("不能打开文件!\n");exit(1);}fscanf(f1,"%d",&rate);while(!feof(f1)&&flag!=1){fscanf(f1," %d%c%d",&frequency[i],&hight[i],&time[i]);printf("%d%c%d",frequency[i],hight[i],time[i]);if(time[i]!=-1){i++;n++;}elseflag=1;}printf("\n");set(frequency,hight,time,rate,n);music(frequency,time,n);fclose(f1);}getch();}void set(unsigned f[],char h[],unsigned t[],int r,int num){int i,k;for(i=0;i<num;i++){t[i]=t[i]*r;switch(h[i]){case 'H':k=4;break;case 'M':k=2;break;case 'L':k=1;}switch(f[i]){case 1: f[i]=262*k; break;case 2: f[i]=296*k; break;case 3: f[i]=330*k; break;case 4: f[i]=349*k; break;case 5: f[i]=392*k; break; case 6: f[i]=440*k; break;case 7: f[i]=494*k; break;} }}voidmusic(unsignedf[],unsignedt[],intnum){int i;for(i=0;i<num;i++){Beep(f[i],t[i]);}。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
用户在控制台输入不同数据后,应用程序根据不同的数据进行相应的输出,实现各种 Mp3 播放器的功能。
2.2 运行环境
Windows 操作系统。
2.3 基本设计概念和处理流程
系统总体功能流程为:运行程序进入页面,显示软件的版本信息,主要包括版本的版本号, 作者,日期,名称。然后输入任意键会进入主菜单,在这之前会提示是否选择歌曲列表,如果不 选择会自动加载默认的列表路径,默认路径为 d:\\mp3.txt。在主菜单里可以选择播放器的各种 控制功能,比如添加歌曲,显示列表,切换列表,查找歌曲,上一首,下一首,播放模式的选择 退出等选项功能。
进入播放列表后:
进入播放模式后: 进入播放选项后:
4.2 运行控制
开始进入界面: 输入 1 则输入新的路径下的播放列表,输入其他字符进入当前默认的播放列表
进入默认列表播放歌曲,根据提示的数字选择不同的选项,实现不同的功能。
输入 1 播放当前列表歌曲 输入 2 查找歌曲 输入 3 增加歌曲 输入 4 进入选择播放模式选项 输入 5 上一首 输入 6 下一首 输入 7 退出播放器
void stay_play(); void comeback_play(); void measure_volume(); void fast_backward(); void fast_upward(); 。
4 运行设计
//暂停播放 //恢复播放 //调节音量大小 //快进 //快退
4.1 运行模块组合
1.2 背景
说明: 1.软件名称:MP3 播放器。 2.开发小组成员:胥站峰 3.软件平台:windows 操作系统。
1.3 定义
MP3(MPEGAudioLayer-3)是一种数字音频压缩技术,数字压缩速率达到每通道 128kbps,数比 例可以达到 12:1。MP3 播放器的主要作用就是解压压缩的 MP3 数字音频,再现 MP3 音乐,同时为携 带方便还要能存贮 MP3 文件,MP3 歌曲可以从电脑上下载。MP3 播放器主要由 MP3 文件解码部分、 文 件 存 贮 部 分 、文 件 下 载 接 口 和 语 音 播 放 部 分 构 成 。根 据 解 码 的 方 法 播 放 器 可 分 为 软 解 码 和 硬 解 码两种: 软解码是利用控制软件解压缩 MP3 文件,它要求控制器处理速度要快。。
选择播放模式时: 输入 1 单曲播放 输入 2 单曲循环播放 输入 3 顺序列表播放 输入 4 列表循环播放 输入 5 随机播放 输入 6 返回上一层
播放时,按照提示,进入播放选项, 输入 0 停止播放
输入 1 暂停 输入 2 快退 输入 3 快进 输入 4 上一首 输入 5 下一首 输入 6 调节音量 输入 7 恢复播放 输入 8 查看文件长度大小 输入 9 返回上层
//输入新的信息
void show();
//显示列表信息
int str(struct media * head);//求链表长度
void load();
//从文件中加载信息
void lookup();
//查找歌曲信息
void lookup_show();
//查找歌曲并显示
void single_play(); void order_list_play(); void cyc_single_play(); void csc_list_play(); void random_play();
1. 视觉外观:进入播放器时,界面简洁大方,让人一目了然。具有简单易用的特性。 2. 系统使用播放器时能显示播放器的状态,当前播放的歌曲名称和路径。
2.2 界面需求:
播放器界面要求布局合理,颜色舒适。
2.3 性能需求
(1) 当要求歌曲播放时,软件响应时间最长不超过 1 秒 (2) 当要求歌曲暂停时,软件响应时间最长不超过 1 秒 (3) 播放歌曲,采用立体声播放,文件流畅
3.1 用户接口
当前默认列表 输入路径的列表 显示当前列表歌曲 添加新歌曲 选择播放模式 调节音量大小 进入播放选项 返回上层 顺序播放 随机播放 循环播放 单曲循环 单曲播放 查找歌曲 上一首 下一首 停止播放 暂停播放 继续播放
显示播放信息 快进 快退 查看文件长度 切换播放列表
3.2 外部接口
需求分析
1 引言
随着社会的快速发展,现今社会生活紧张,而欣赏音乐是其中最好的舒缓压力的方式之一,音乐成 了我们生活工作中的一个重要的部分。而计算机的普及,让人们能让我们通过播放软件,能更好的听到 我们喜欢的音乐。本文档就是为了能更好的设计出一个音乐播放去而编写的。
1.1 编写目的:
为明确软件需求、安排项目与进度、组织软件开发与测试,撰写本文档。本文档功项目经理、设计 人员、开发人员参考。
2.4 可靠性要求
系统能持续运行,不影响其他程序的使用,不多占用内存,不会造成死机等问题。
2.5 运行环境需求
操作系统:WindowsXP/windows7
1 引言
1.1 编写目的
本系统设计说明书用于描述 mp3 播放器项目的整体系统设计方案,本说明书是系统详细设计 的依据,也作为系统测试需求和系统测试计划和测试程序的重要参考。
如果输入错误,会自动重新输入。 。
4.3 运行时间
每个模块的运行时间<0.1s。
5 系统数据结构设计
5.1 逻辑结构设计要点
struct media
{
char path[N];
//歌曲的路径
char name[M];
//歌曲的名字
struct media *next;
};
struct media *head=NULL言程序设计——清华大学出版社 c 数据结构——清华大学出版社。
2.系统需求分析
根据项目,我们可以获得项目系统的基本需求,一下从不同角度来描述系统的需求。
2.1 功能需求
系统的功能需求,我们分成三部分来概括,即播放器的基本控制需求,播放列表管理需求和播放器友好 性需求。以下分别描述:
struct media *p1,*p2,*po=NULL;//p1,p2 为指向链表末尾的指针,po 指向当前
所用的节点的指针
FILE *fp;
char filepath[N]="d:\\mp3.txt";//文件的初始路径
char judge;
//判断是否还要添加歌曲
int count=0; //列表歌曲总数,也就是链表长度
2 模块功能描述.................................................................................................................................................. 14 2.1 数据结构定义...................................................................................................................................... 15 2.1.1 全局变量定义.......................................................................................................................... 15 2.1.2 常量定义.................................................................................................................................. 15 2.2 类模块功能实现.................................................................................................................................. 15 2.2.1 类数据成员.............................................................................................................................. 15 2.2.2 类成员函数.............................................................................................................................. 16
6 系统出错处理设计 6.1 出错信息 提示输入错误,重新输入,会自动返回。
项目名称:NeusoftMediaPlayer 项目编号: NEUWHU20080001 文档编号:D09-PMT08013
MediaPlayer详细设计
总页数 编制
正文
附录
批准
生效日期
目录
1 文档概述.......................................................................................................................................................... 14 1.1 文档目的和范围.................................................................................................................................. 14 1.2 项目背景.................................................................................................................错误!未定义书签。 1.3 参考文档.............................................................................................................................................. 14