浅谈音乐播放器

上传人:无*** 文档编号:100813730 上传时间:2022-06-03 格式:DOC 页数:42 大小:1.03MB
收藏 版权申诉 举报 下载
浅谈音乐播放器_第1页
第1页 / 共42页
浅谈音乐播放器_第2页
第2页 / 共42页
浅谈音乐播放器_第3页
第3页 / 共42页
资源描述:

《浅谈音乐播放器》由会员分享,可在线阅读,更多相关《浅谈音乐播放器(42页珍藏版)》请在装配图网上搜索。

1、工程职业技术学院毕业设计设计论文题目: 音乐解码技术研究与音乐播放 的实现 : 飞翔_ 1专业: 08软件数据库1班指导 胡勇智音频解码技术研究与音乐播放器实现摘要本文介绍研究音频编码解码相关技术,并结合VS2005编写多媒体音乐播放器,利用软件工程原理,采用面向对象的编程方法,其开发主要包括前台窗体的设计和后台源码的实现两个方面,实现了利用计算机进行多媒体音频的播放.音乐播放器开发过程总共包含了六部分,通过系统分析,系统开发的方法,系统开发平台介绍,概要的设计,系统的规划和设计,系统设计,分别介绍了从分析到开发到系统的设计与测试的整个音乐播放器的生成过程。系统分析介绍了播放器的播放流程,开发

2、背景发展前景,开发工具概要,开发系统的最低配置等。系统开发的方法介绍了音乐播放器的具体的开发方法和如何选择的开发方法。系统开发平台的介绍,具体介绍了VS2005主要界面和使用方法,其中包括常用工具具体位置与使用方法和工作区的生成,项目的创建、项目中文件的添加删除、项目的编译、项目的测试等。后边几部分和附录介绍了系统规划与分析,应用程序主界面,数据库的生成,代码的编写与功能的实现,系统的编译与运行,最终实现了音乐播放器的功能,能对歌曲音乐进行播放和控制。关键词:音频解码;软件系统; VS2005; 音乐播放器; 开发平台 项目工程; 资源文件.目录目录II1 绪论11.1 课题的来源11.2 选

3、题的背景及目的21.2.1 音频编解码发展历史21.2.2 音频编解码过程31.2.3 选题的目的61.3 系统主要实现容与实现方式71.3.1 系统主要实现容71.3.2 系统的开发方法81.3.3系统的开发平台102 系统的分析102.1 系统的可行性分析102.1.1 经济可行性分析102.1.2 操作可行性分析112.1.3 技术可行性分析112.2 系统功能分析113 系统设计133.1 系统概要设计133.2 系统功能模块设计203.2.1 添加文件213.2.2 添加文件夹223.2.3 歌曲列表223.2.4 歌曲控制233.2.5 音量设置233.2.6 静音设置233.2.

4、7 登录注销243.2.8皮肤更换243.3.9乐库管理243.4.0系统管理243.3 系统运行环境254 系统实现254.1 系统的编译和发行254.2 系统运行274.3 系统功能界面284.3.1 加入文件功能实现284.3.2 添加文件夹314.3.3 歌曲列表功能实现324.3.4 歌曲控制功能实现344.3.5 音量控制功能实现354.3.6 静音设置功能实现364.3.7登录注销功能实现374.3.8皮肤更换功能实现404.3.9乐库功能实现424.4.0系统登录功能实现44上述容详细代码见附录。46致46参考文献47附录4938 / 421 绪论1.1 课题的来源语音时语言的

5、声学表现,是人类交流信息最自然、最有效、最直接的手段,也是人类进行思维的一种依托。随着社会的不断进步,人们的生活水平也在不断的提高,从而对精神生活提出了新的要求。音乐一直以来就是人们日常休闲的必要调剂品,它可以冶人的情操,极大的丰富了人们的精神生活。那么一首首动听的音乐又是如何播放出来的呢?这就要通过形式多样的合成手段了,即当播放多媒体文件时,计算机将指令发给声卡,声卡按照指令将媒体播放信息重新合成起来。所以,多媒体的播放效果取决于用户设备的质量和音色。就电脑声卡而言,最为常见的手段是fm合成与波表合成。前者多用于以前的isa声卡,fm是频率调变的英文缩写,它运用声音振荡的原理对MIDI进行合

6、成处理。但由于技术本身的局限,加上这类声卡或显卡用的大多数为廉价的芯片,效果自然差劲;而波表和视频合成所带来的效果要远远超过fm,而且在电脑上已被广泛运用,各类波表,声卡、显卡,以及解码软件层出不穷。图1.1 多媒体播放流程图由输出设备播放声卡/显卡合成信息计算机指令MIDI然而,在音频压缩出现之前,存储高质量的数字音频数据往往需要占用大量的硬盘空间以及通道带宽。假设一首普通的歌曲时间为一分钟,要想达到CD音质,至少需要大约10MB的存储空间,可以想象,如果要从Internet上下载这首歌,使用一个普通的28.8Kbit/s的Modem,不算传输开支和网络不畅,理论上将会用至少49分钟。同时,

7、如果是要在电脑上欣赏音乐,也会极大的降低磁盘占用空间,这明显是不可接受的。所以,音乐的存储就成了一个问题。为了使人们能够更方便,更直接的欣赏音乐,就必须要降低磁盘占用空间。可以使用两种方法达到目的,降低采样指标或者压缩。降低指标不可取,因此只能通过各种压缩方法进行压缩。音频压缩需要编码,自然,播放此音频文件则需要解码。编码,解码的不同,导致音频在经过处理后得到的音质也不尽相同,而好的音质能够更好的满足人们的听觉享受。所以,对各种音频文件进行解码的技术研究就很有必要了。本课题就是对音频解码技术进行相关研究,并设计出一款属于自己的音乐播放器软件。1.2选题的背景及目的1.2.1 音频编解码发展历史

8、音频压缩技术的发展最初是从才能够无损压缩开始的。20世纪70年代初,开始采用类似的瞬时压缩技术和块压扩Block-Compressing技术。这种技术的编码率较低。20世纪80年代,随着数字信号处理技术的发展,出现了从音质尚可到音质卓越的一系列频域编码算法。20世纪80年代末至90年代初涌现的编码算法普遍采用了一种高效率编码技术,即利用人耳的掩蔽效应和临界频带等特性来进行子带编码和变换编码,其中有MUSICAM系统、128kbit/s的AC-2编码器、AC-3系统、ASPEC和SB-ADPCM编码算法等。20世纪90年代至今,有损音频编码把音频数据的压缩率提高到了12:1。付出的代价是音质的下

9、降。比较著名的是MP3、AAC高级音频编码、RM等。同时,能给最终用户提供最佳的听觉体验的无损压缩技术也取得了新的突破。Meridian无损压缩MLP是一种应用所有权技术的音频编解码计划,它能传送多声道环绕声,并以可能的最高动态围和更高的取样频率来确保任何声音细节都表现完美。音频解码和音频编码是共生的,音频编码的发展历史其实也就是音频解码技术不断进步的真实写照。1.2.2 音频编解码过程当前数字音频编码领域存在着不同的编码方案和实现方式,但基本的编码思路小异,对每一个音频声道中的PCM音频信号,首先都要将它们映射到频域中,这种时域到频域的映射可通过子带滤波器或通过变换滤波器组实现。这两种方式的

10、最大不同之处在于滤波器组中的频率分辨率不同。每个声道中的音频采样块首先要根据心里声学模型来计算掩蔽门限值,然后由计算出的掩蔽门限值决定,从公共比特池中分配给该声道的不同频率域中多少比特数,或由计算出的掩蔽门限值来决定哪些频率围的量化噪声可引入而不需要去除。最后将控制参数及辅助数据进行交织产生编码后的数据流。解码过程则首先将编码后的数据流进行解码复用,然后通过比特流中传输的控制参数对音频数据反量化,或通过心里声学模型参数反向运算得到音频信号,最后得到的音频信号由频域反变换到时域,完成解码过程。当前常见的音频编码系统主要有G.7xx、MPEG伴音系列和杜比音像系统。CCITT最初定义的音频编码算法

11、建议标准包括G.711、G.721、G.723等。1995年,ITU-T批准了新的语音压缩标准G.729.该标准采用共轭结构代数码激励线性预测CS-ACELP,可以仅用8kbit/s的带宽传输话音,而话音质量与32kbit/s的ADPCM相同,它被用于IP-phone技术中。G.711是现在使用最普遍的编码技术,它是目前全世界电路交换网中使用的编码技术。而在ADPCM上最主要的标准就是G.726,我们就以G.726 ADPCM编码系统为例来了解一下编码解码的过程。编码过程:图1.2 编码原理流程图Encoder输入14bitPCM信号s1 ACCUM调用predictor_pole函数,从6阶

12、零点预测器计算出预测信号-sezi调用predictor_pole函数,从二阶极点预测器计算出预测信号-sezi,与sez计算出预测信号-se求出差分信号sl-se-d SUBTA调用step_size函数,计算出量化器的标度因子y MIX调用quantize函数,量化得出ADPCM形式编码的信号-i调用reconstruct函数,根据y,生成的ADPCM编码信号i还原得到量化差分信号dq根据dq,预测信号se得到重建信号sr ADDA计算出预测器差分信号sr+sez-se-dqsez ADDC调用update函数,调整输出编码的每个状态变量返回编码后的信号值idecoder解码函数。deco

13、der解码函数主要由ACCUM方框、MIX方框、ADDB方框、ADDC方框4个功能子方框组合完成。g723-24-decoder、g721decoder、g723-40-decoder用于完成24、32、40kbit/s ADPCM解码原理。首先读入k时刻ADPCM输入信号i,用k-1时刻量化差分信号dq和重建信号sr,调用predictor-zero函数和predictor_pole函数完成自适应预测器功能,预测出K时刻信号估算值se。在量化前,调用step_size函数计算出量化器标度因子Y,使反向量化器能适应语音和数据等具有不同统计特性以及不同幅度的输入信号。调用reconstruct函

14、数,使用ADPCM代码i和量化器标度因子Y完成反向自适应量化器功能,产生量化差分信号dq,进一步得到重建信号sr,为计算出k+1时刻预测值se做准备。调用update函数,更新反向量化器快、慢标度因子和二、六阶预测器系数等,完成量化器标度因子自适应、自适应速度控制、音调和转移检测器功能。解码过程: 图1.3 解码原理流程图Decoder屏蔽得到正确的代码值i调用predictor_zero函数,从六阶零点预测器计算预测信号-sezi调用predictor函数,从二阶极点预测器得出预测信号,与sezi计算出预测信号-se调用step_size函数,计算量化器标度因子y调用reconstruct函

15、数,根据量化阶y生成的ADPCM信号i还原得到量化差分信号dq根据dq预测信号se得到重建信号sr计算出预测器差分信号sr+sez-se-dqsez调用upadate函数,调整输出编码的每个状态变量将线性PCM信号输出1.2.3 选题的目的人类进入信息化时代以来,网络的长足发展和广泛的普及,使得人们能够更快,更方便的欣赏音乐。在个人PC上,一款音乐播放器在手,听尽世间音乐。而一款好的音乐播放器,能帮助人们更好的去欣赏音乐。现今网络上有许多优秀的音乐播放器,如千千静听等,他们置了相当多的音频解码器,能够播放各种格式的音频文件。能编写属于自己的一款音乐播放器无疑是一件有趣的事情,但首先得了解音乐播

16、放器是怎么实现对各种音频格式文件进行播放的,如何实现播放器上许多方便快捷的功能。带着这个目的,我选择了此课题。而对音频解码进行技术研究有助于了解其在的原理,能够帮助我们更好的设计出一款属于自己的音乐播放器。1.3系统主要实现容与实现方式1.3.1 系统主要实现容通过对音频编码解码技术的相关研究,了解音频编码解码的原理以及过程,从而设计出一款能够播放多音频格式的音乐播放器。1.3.2 系统的开发方法建立一个信息系统,是一项复杂的软件工程的实施。近30多年来,软件工程发展成为新科学,至今已经成为IT产业的重要支柱。一开始,人们往往使用手工作坊式的软件开发方法,靠个人的力量编写各种小型程序;但是随着

17、计算机硬件技术的飞速发展,计算机软件在各个领域中的作用日益突出,那种多年来被人们沿用的手工作坊式的开发方法,已经在软件产品的质量、成本及开发时间等方面无法满足需求。结构化生命周期法是一种传统的管理信息系统开发方法,其基本思想是把整个系统开发过程分成若干个阶段,每个阶段进行若干活动,每项活动应用一系列标准、规、方法和技术,完成一个或多个任务,形成符合给定规的产品。采用结构化生命周期法开发管理信息系统时,应遵循的主要原则: 用户参与的原则 先逻辑后物理的原则 自顶向下的原则 工作成果描述主要指文档标准化的原则其具体开发步骤可分为以下四步: 系统规划 系统开发q 系统分析系统初步调查系统可行性研究现

18、行系统的详细调查新系统逻辑方案的提出q 系统设计系统总体结构设计系统总体功能设计系统总体物理结构设计系统详细设计数据库设计代码设计输入输出设计q 系统实施程序设计系统测试 系统的运行及维护 系统评价快速原型法是80年代发展起来的,旨在缩短开发周期,提高开发效率和用户对系统的满意程度。其基本思想是在系统开发的初期,尽快构造出系统的原型,使用户能及早地运行这个系统原型,通过使用它、熟悉它,受到启发并取得经验,然后对系统的目标和功能提出更精确、具体的要求,研制人员据此逐渐修改和完善原型,使它满足用户的需求,最后完成系统的开发。该方法大大提高了系统开发效率,弥补了结构化生命周期法开发时间长的缺陷。通常

19、采用原型法需以下四个阶段: 明确用户的基本要求 研制系统的原型 使用、评价系统原型 修改和完善原型1.3.3系统的开发平台众所周知,VS2005 是功能非常强大的多媒体开发工具,它有丰富的函数和方法处理各种各样的多媒体信息,能够很灵活的操作图形、声音、动画、影像等多媒体素材。但有时我们使用Visual Studio2005开发非多媒体应用程序,并不需要在应用程序量的使用声音,而只是需要在特定的场合出现。如Windows的警告声。这就要求程序员在恰当的环境中恰当的使用声音文件,既不失去VC在多媒体方面的特长,又能够为应用程序增加吸引人的效果。本音乐播放器系统就是在Visual Studio200

20、5 平台环境下编写设计而成的。2 系统的分析2.1 系统的可行性分析2.1.1 经济可行性分析本系统开发简单但要耗去一定的时间,所用的开发工具和软件都差不多是免费的。由此可见在,开发此系统在经济上是完全可行的。2.1.2 操作可行性分析如今的计算机已经走进千家万户,硬件成本的下降,导致计算机购买成本的降低.我的这套系统是利用自己的计算机加微软的集成开发环境Microsoft Visual Studio2005 作为软件的开发平台,使开发出来的系统有友好的用户界面、有良好的安全性设置、有详细的操作说明书,这样更使各类用户很快地掌握系统的使用方法,操作友好因此在操作上是可行的.2.1.3 技术可行

21、性分析从目前IT业界比较流行的数据库开发、管理软件来看,对于比较简单的中小型数据库,VC 和Windows 系列操作系统的结合无疑是在实际应用中较为成功的一种解决方案。为用户提供了业界软件开发一直坚持的非常友好、操作简单的用户界面、完善强大的数据库操作功能和简洁明了的数据库接口。所以技术实行起来相对会容易。2.2系统功能分析基于音乐播放器所要实现的容,我们列出用户操作的模块,其中每个模块对应一个功能。普通用户通过注册的用户名、密码,登陆进播放器主界面,用户可以播放选定的歌曲。用户可以对歌曲进行添加、删除、分组。可以查看播放歌曲的歌词。用户可以从乐库中查找歌曲,然后对查找出的歌曲添加。服务器管理

22、员根据用户名、密码,登陆进服务器界面,管理员可以通过服务器对数据库歌曲进行查找,添加,删除,修改。图2.1 UML用例图 用户登陆音乐播放器主界面音乐库歌词播放列表数据库音乐服务器管理员登陆本地歌曲本系统的设计思想:q 普通用户通过注册的用户名、密码,登陆进播放器主界面,用户可以播放选定的歌曲。q 用户可以对歌曲进行添加、删除、分组,还可以查看播放歌曲的歌词。q 除了操作主界面上的按钮,还可以通过小迷你模式控制和滚动模式的设定。q 本系统使用系统托盘技术,使得应用程序可以以图标的方式运行。根据开发思想,确定了系统的功能。本系统需要完成的功能如下:q 创建时钟,显示当前操作系统的时间。q 向系统

23、中添加文件或目录。q 皮肤管理q 乐库管理。q 歌曲控制、包括歌词、打开/播放、暂停、停止、上一首、下一首、循环播放等。q 静音设置。q 音量设置。q 滚动显示正在播放的歌曲名和歌曲的长度。q 显示歌曲的播放进度。3 系统设计3.1系统概要设计 准备工作要开发一个软件,首先必须搞清楚这个软件有什么功能、需要用到哪些组件、输出的容和方法等,画出结构流程图,然后为这些组件建立一个目录框架,把开发过程中创建的文件和需要用到的文件都保存到这个目录中,如新建一个文件夹,命名为 客户管理系统,其中存放对话框,DATA,存放数据文件,这样文件结构清晰,以便于组织和管理。 对于创建的每个Visual Stud

24、io2005应用程序来说,Visual Studio2005使用一个项目工作区来存储该项目所需的所有文件,其中项目工作区或称为工作区就是一个文件夹,与项目相关的文件存储在该文件夹下.而一个项目又由一定数量的文件组成,如果要生成一个可执行程序,其中一个文件还必须是源代码,而这些文件通常都存储在同一工作区文件夹中.我们用Visual Studio选择一个项目类型,创建一个新的Studio2005应用程序首先从菜单单栏中选择File项打开如图4-1所示的File子菜单,从这个子菜单中选择New选项,打开如图3.1 New对话框.图3.1 File子菜单图3.2 New对话框在3.2所示的New对话框

25、中选Windows窗体应用程序项目类型 当开始一个新项目里首先确保Projects选项卡处于活动状态,并在Projects选项卡中,你必须指定三项容.第一项是选择项目类型.第二项是项目名称.项目名称必须在Project Name文件框中输入.特别的,为新的项目创建了一个新的文件夹,对于这种情形,文件夹名称为pgm1_1.这是必须提供的第三项.一旦为图3.2中的对话框提供了所需的信息并单击OK命令按钮就出现如图3.3所示的对话框单击OK按钮,则会发生两个事件.第一个事件是自动创建一定数量的文件产将这些文件放置在新项目的工作我文件夹中,随后IDE变成如图3.3所示的样子,特别要留意Workspac

26、e窗口,显示了关于当前工作中所有项目的一个分层式列表,并显示每个项目中所包含的全部项:图3.3 含一个活动工作区的IDE窗口 创建数据库:因为数据库应用程序在很大程度上依赖于所管理的数据,所以最好从数据入手进行应用程序的设计。在设计用户界面和用于管理数据的组件之前,应首先创建和设置数据库,并确定表之间的关系以及所希望的事务规则等信息。在可靠的数据库基础上,开发工作会容易很多。 设计用户操作界面:界面直接表现一个应用程序的功能。Visual Studio2005 的设计工具使得创建富有吸引力,并且功能丰富的界面成为软件开发中一件愉快的事情.用户界面主要包括Dialog对话框,工具栏和菜单,它们可

27、以将应用程序的所有功能与界面中的控件或菜单命令联系起来。 设计访问信息的方法:开发人员往往想在表单上为用户显示一些信息,或者也想给用户提供一些方便,以准确地给出他们所需的容,留给他们自己选择的余地。 测试与调试:这是开发人员在开发工作过程中经常要做的事。其目的就是要尽早发现源程序中可能存在的错误,并加以解决。随着开发工作的深入,不断地进行软件测试和调试,可以避免给后续工作带来更大的麻烦。假设创建了一个表单,那么在处理应用程序的其他部分之前,最好检查一下表单能否完成预定的功能,只有调试过后并且不存在错误后才允许付诸使用。3.2系统功能模块设计在系统功能分析的基础上,生成如图2.2所示的系统功能模

28、块图。 图3.6 系统功能模块图音乐播放器加入目录加入文件用户登录歌曲控制静音设置音量设置歌曲列表用户登录3.2.1 添加文件音乐的潮流步伐是快速的,我们常常需要向音乐播放器中添加时下最新的歌曲,以便能够及时欣赏。此功能模块能够选择电脑中或者从网络上已下载的最新的歌曲,将之加入播放器的播放列表,同时更新播放列表。然后,就能开始欣赏最新的音乐了。3.2.2添加文件夹我们可能将许多歌曲放在电脑中一个目录下面,如果要一首一首的向播放器中添加歌曲,显然是很麻烦的。此功能模块实现加入一个目录下面所有需要进行播放的歌曲,同时更新播放器播放列表。3.2.3 歌曲列表我们听歌曲时,喜欢某一个歌星歌曲时,可以对

29、其歌曲整理成列表形式,方便于用户听歌。图3.7 文件3.2.4 歌曲控制我们听音乐时,不免需要对歌曲进行,听到一首好听的歌曲,可以让它循环播放,不喜欢听,可以切换下一首。歌曲控制,此功能模块实现对歌曲进行打开/播放、暂停、停止、上一首、下一首、循环播放等控制。3.2.5 音量设置欣赏音乐时,不同的时间,不同的歌曲,不同的气氛,都对音量的要不同的。音量设置,就可以对当前正在播放的歌曲调节播放音量的大小,方便快捷的享受音乐带来的感动。3.2.6 静音设置当听音乐时,有时有紧急事情需要处理,比如打,需要一个相对安静的当前环境。当然,你可以将音量调到最小,不过,更便捷的方法是直接就行对当前播放歌曲的静

30、音。静音设置,此功能模块实现对当前正在播放的歌曲直接进行静音。3.2.7 迷你模式有的时候运行程序时候桌面空余面积不够,或者觉得播放器太大,这时候可以选择迷你模式运行。3.2.7登录注销音乐播放器用户登录后可以实现更多功能,例如歌词显示控制,列表管理,音乐库联网搜索下载,能够更好的为用户服务,实现行智能化。已登录的用户可以单击注销进行用户注销,实现多用户间的切换。3.2.8皮肤更换当用户用久了一个播放器界面或者不喜欢播放器界面可以进行多个播放器界面更换,实现多样化,让用户更加满意改播放器,皮肤更换不需要用户登录即可使用。3.3.9乐库管理我们听音乐时,不免需要对歌曲进行查找搜索、添加到播放列表

31、、网络下载需求。乐库管理,当用用户登录后此功能模块实现对网络歌曲的查找、试听、添加到播放列表、添加到分组等控制。3.4.0系统管理些播放器采用C/S结构,拥有普通用户和系统管理员2个角色,其中系统管理员主要负责对乐库服务器端的歌曲进行管理。歌曲添加、删除、歌手等信息修改等服务器端的管理。3.3系统运行环境 硬件平台: AMD Athlontm64 X2 Dual Core QL-60 1.90 GHz 2GB存 160GB硬盘软件平台:操作系统:Windows 7 开发工具:Microsoft Visual Studio20054系统实现4.1 系统的编译和发行下面介绍如何完成本系统的编译。在

32、Visual Studio2005集成开发环境中,用鼠标点击菜单调试 示。然后单击启动调试按钮,或者直接按Ctrl+F5进行项目编译,最后在本系统的Debug目录下会生成可执行文件 QQMusic.exe。4.2 系统运行这款音乐播放器启动运行后,程序主界面如下所示:图4.2 音乐播放器界面4.3 系统功能界面4.3.1 加入文件功能实现功能描述:选择电脑中或者从乐库中,将之加入播放器的播放列表,同时更新播放列表。处理流程: 图 4.3 加入文件处理流程图添加添加文件单击加入文件弹出打开文件对话框选中文件,单击打开完成添加流程描述:用户运行音乐播放器软件,单击播放器的设定歌曲按钮,选择加图4.

33、4 加入文件功能演示图入文件,如图4.4所示。此时播放器调用oToolStripMenuItem_Click事件打开加入音乐对话框:图4.5 加入音乐对话框4.3.2添加文件夹功能描述:实现加入一个目录下面所有需要进行播放的歌曲,同时更新播放器播放列表。处理流程: 4.6 加入目录流程图运行单击设定歌曲单击加入添加文件夹弹出打开目录对话框选中目录,单击打开完成添加流程描述:用户运行音乐播放器软件,单击播放器的设定歌曲按钮,选择加入目录,此时播放器调用ToolStripMenuItem_Click事件,打开加入目录对话框,如图4.7所示:图4.7 加入目录对话框上述容详细代码见附录。4.3.3

34、歌曲列表功能实现功能描述:此功能模块实现通过一个对话框显示歌曲的相关信息并可以进行编辑,保存,删除。处理流程:图4.8 歌曲列表功能流程图运行单击列表管理按钮弹出歌曲列表单击保存完成流程描述:运行音乐播放器软件,单击列表管理功能按钮,在播放器下弹出新建列表,如图4.9所示,弹出文件信息对话框,如图4.10所示,然后进行相关编辑,保存即可。图 4.9 歌曲列表图4.10 文件信息对话框上述容详细代码见附录。4.3.4 歌曲控制功能实现功能描述:此功能模块实现对歌曲进行打开/播放、暂停、停止、上一首、下一首、循环播放等控制。处理流程:图4.11 歌曲控制功能流程图运行单击相应的功能按钮播放器完成相

35、应功能完成流程描述:如图所示,从左到右,从上到下,相对应功能为,打开/播放、暂停、上一首、向后5秒、向前5秒、下一首,重复,随机,循环。图4.12 控制功能按钮图4.13 控制功能演示图上述容详细代码见附录4.3.5 音量控制功能实现功能描述:可以对当前正在播放的歌曲调节播放音量的大小,方便快捷的享受音乐带来的感动。处理流程: 图4.14 音量控制功能流程图运行单击音量控制按钮上下滑动调节音量完成流程描述:运行音乐播放器软件,拖动音量控制功能按钮,普通模式左右拉动或者迷你模式上下拉动滑块进行音量调节,如图所示。图4.15 音量控制功能演示图上述容详细代码见附录。4.3.6 静音设置功能实现功能

36、描述:此功能模块实现对当前正在播放的歌曲直接进行静音。处理流程: 图4.16 静音设置功能流程图运行单击静音按钮进行静音/取消静音完成流程描述:运行音乐播放软件,单击播放器右侧静音按钮,按钮为非静音状态,按钮为静音状态,具体如图所示。图4.17 非静音状态图4.18 静音状态上述容详细代码见附录。4.3.7登录注销功能实现功能描述:当没有音乐播放时,向用户提供开发者的相关信息,当播放音乐时,想实现更多功能,可以选择用户登录后即可实现更多功能满足于用户需求。此功能模块如果是新用户进行注册,进入注册界面按流程即可。如果是用户登录,需对用户用户名和密码进行验证。其验证流程:用户判断用户名、密码用户名

37、、密码用户名、密码错误进入播放器正确注册用户名、密码数据库处理流程:图4.21 滚动字幕功能流程图运行单击用户登录按钮输入账号、密码或用户名注册进行用户身份验证完成流程描述:运行音乐播放器,单击用户登录按钮,弹出登录对话框,如图所示,输入相应的用户信息,单击登录按钮。没有用户名注册,可以选择新用户注册,实现其功能。图4.22 选择滚送标题菜单项图4.23 滚动标题对话框用户登录用户注册上述容详细代码见附录。4.3.8皮肤更换功能实现功能描述:此功能模块实现对当前入播放器直接进行皮肤选择。处理流程: 图4.16 皮肤设置功能流程图运行单击皮肤按钮进行皮肤选择完成流程描述:运行音乐播放软件,单击播

38、放器右侧皮肤按钮,具体如图所示。主界面1主界面2上述容详细代码见附录。4.3.9乐库功能实现1功能描述: 具有搜索网络音乐的功能,按音乐曲库歌手分类,或者输入歌曲名进行搜索,对搜索出来的歌曲可以进行全部选中、添加到音乐列表、对该选中歌曲进行播放乐库2流程图:添加到播放播放添加到搜索音乐音乐曲库根据歌手分类查找歌曲显示查找到的歌曲全部选中播放器音乐列表显示搜索结果根据关键字查找可以进行模糊查找全部选中音乐列表播放器上述容详细代码见附录。4.4.0系统登录功能实现1功能描述:系统管理的主要功能是对数据库里的音乐进行管理。管理员可以对数据库音乐进行删除、查询、修改、添加2流程图:管理员登陆管理界面数

39、据库添加、删除、修改、查询图1图2上述容详细代码见附录。致尊敬的工程职业技术学院的领导、老师,衷心感你们对我的关心和爱护。感所有执教我们的老师,你们渊博的知识、严谨的治学、高尚的道德、浓厚的学习氛围给我们留下了难忘的印象。同时感所有辛勤工作的行政、教务、后勤的工作人员,你们默默无闻的工作、热情周到的服务。在工程职业技术学院三年的大学学习时间,我感受到了良好的校园气氛,同时亦感学有所获,谨向诸位领导、老师和工作人员之一衷心的感。本论文是在我的导师胡勇智老师的悉心指导下完成的。本次毕业论文完成的过程中,得到了指导老师胡勇智的大力帮助,并参阅了诸多的文献资料,在此对胡勇智及各文献作者的辛勤劳动一并表

40、示深深的意!同时,学院领导的关心和帮助,正是因为他们严格地管理和耐心地指导使得本次毕业设计能够顺利完成,在此谨致以衷心的感和崇高的敬意! 在此,谨向导师、所有帮助过作者的领导、老师、同学和朋友们表示最诚挚的感。并衷心感评审老师在百忙之中抽出宝贵时间仔细审阅我的论文。参考文献1 路锦正,周冬梅.Visual Studio2005音频/视频处理技术及工程实践M.电子工业,2010.2 马兰,笑云,万砾.Visual Studio2005视频/音频编解码技术M.人民邮电,1010.3侯俊杰.深入浅出MFC第二版M.华中科技大学,2009.4 Scott Meyers.Effective Studio

41、2005M.电子工业,2008.5Wendong huang,Ye Wang,Samarjit Chakraborty.Power-aware bandwidth and stereo-image scalable audio decodingJ.ACM Press,2005:291-294.6M.Alexander Broadhead,Charles B.Owen.Direct manipulation of MPEG compressed digital audioJ.ACM Press,2004:43-54.7Bruce Eckel.Thinking in Studio2005M.机械工

42、业,2010.8辉,叶子青.Visual Studio2005系统开发实例精粹M.人民邮电,2010.附录音乐播放器播放列表功能模块源代码:using System;/添加本地文件privatevoid 添加本地文件ToolStripMenuItem_Click if this.openFileDialog1.ShowDialog = DialogResult.OK string strFile = this.openFileDialog1.FileNames;foreach FileInfo f = newFileInfo;string MyShortFileName = f.Name.Su

43、bstring; AddFile;ListViewItem item = newListViewItem; item.Text = Convert.ToStringNumOfMusic.ToString; item.SubItems.Add;this.listView1.Items.Add; /添加本地文件夹privatevoid 添加本地文件夹ToolStripMenuItem_Click if this.folderBrowserDialog1.ShowDialog = DialogResult.OK DirectoryInfo dir = newDirectoryInfo;foreach

44、 FileInfo f in dir.GetFiles AddFile;string file = f.Name.Substring;ListViewItem item = newListViewItem; item.Text = NumOfMusic.ToString; item.SubItems.Add;this.listView1.Items.Add; foreach FileInfo f in dir.GetFiles AddFile;string file = f.Name.Substring;ListViewItem item = newListViewItem; item.Tex

45、t = NumOfMusic.ToString; item.SubItems.Add;this.listView1.Items.Add; privatevoid 单曲循环ToolStripMenuItem_Click 单曲循环ToolStripMenuItem.Checked = true; 顺序循环ToolStripMenuItem.Checked = false; 随即播放ToolStripMenuItem.Checked = false; privatevoid 顺序循环ToolStripMenuItem_Click 顺序循环ToolStripMenuItem.Checked = tru

46、e; 单曲循环ToolStripMenuItem.Checked = false; 随即播放ToolStripMenuItem.Checked = false; privatevoid 随即播放ToolStripMenuItem_Click 顺序循环ToolStripMenuItem.Checked = false; 单曲循环ToolStripMenuItem.Checked = false; 随即播放ToolStripMenuItem.Checked = true; / 播放下一首歌曲方法publicvoid nextSound if 0 int iSel = pl.listView1.Se

47、lectedItems0.Index +1;if iSel pl.listView1.ItemsiSel - 1.Selected = false; pl.listView1.ItemsiSel.Selected = true; pl.listView1.ItemsiSel.Focused = true; axWindowsMediaPlayer1.URL = Playlist.playListiSel + 1; elseMessageBox.Show; / 播放上一首歌曲方法/publicvoid backSound if 0 int iSel = pl.listView1.SelectedItems0.Index + 1;if 1 pl.listView1.ItemsiSel - 2.Selected = true; pl.listView1.ItemsiSel - 2.Focused = true;/获取焦点,去掉虚线框 pl.listView1.ItemsiSel - 1.Selected = false; axWindowsMediaPlayer1.URL = Playlist.playListiSel - 1; else MessageBox.Show;

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!