音乐播放器系统设计与实现

音乐播放器系统设计与实现[20191218103701]
摘要
在闲暇之余,越来越多的人会选择听音乐来放松自己。而在电脑上听音乐就需要一个好的音乐播放器来帮助我们收听音乐。目前常用的播放器有qq音乐,酷狗,千千静听等。但是每个人的习惯或者喜欢都不同,这些音乐播放器的个性化较差,并且这些播放器都不是开源的,无法对其进行优化。
本系统采用了Visual studio 2010开发平台,Windows 7操作系统和C#开发工具,设计并实现了“好听”音乐播放器。其主要功能有:
1. 文件控制:主要体现在添加音乐文件时,控制用户只能添加本程序支持的文件。本程序支持的格式为MP3。还有对播放列表的控制:添加删除。
2. 播放控制:即对选择播放文件,上一曲,下一曲,循环方式的控制。循环方式包括:单曲播放,单曲循环,列表播放,列表循环,随机播放。
3. 进度控制:显示当前音乐的播放进度及总长度,另外,用户能通过点击进度条来调整播放进度
4. 音量控制:调整音量的大小,控制是否静音。
 查看完整论文请+Q: 351916072 
关键字: 网络歌曲搜索及下载通过代码访问百度音乐进行关键字搜索,然后解析搜索结果网页获取歌曲信息及下载地址。 关键字音乐播放器歌曲管理解析网页 作为一种面向对象的语言,C#支持封装、继承和多态性的概念。所有的变量和方法,包括Main方法(应用程序的入口点),都封装在类定义中。类可能直接从一个父类继承,但它可以实现任意数量的接口。重写父类中的虚方法的各种方法要求override关键字作为一种避免意外重定义的方式。在C#中,结构类似于一个轻量类;它是一种堆栈分配的类型,可以实现接口,但不支持继承。
目 录
1.引言 1
1.1.选题的背景及意义 1
1.2.几大流行音乐播放器分析 1
2.相关技术 4
2.1. C#语言简介 4
2.2.NET Framework 平台体系结构 5
3.总体功能设计与实现 7
3.1功能设计及描述 7
3.2功能模块图 7
4.系统实现 9
4.1文件控制模块 9
4.2.播放控制模块 11
4.3进度控制模块 14
4.4.音量控制模块 15
4.5.网络歌曲模块: 15
4.6播放列表及用户设置保存和读取: 23
4.6.1播放列表的保存和读取 23
4.6.2用户设置保存和读取 24
4.7歌词显示 26
4.7.1播放时同步显示歌词 26
4.7.2歌词的搜索及下载 28
5.系统测试 33
5.1系统测试 33
5.2单元测试 33
结 论 37
参 考 文 献 38
致谢 391.引言
1.1.选题的背景及意义
音乐是反映现实生活的情感的一种艺术。在数千年前人类还没产生语言时,就已经知道通过利用呼喊发出的声音高低强弱来表达自己的意思和情感。随着人类的逐步发展,在劳动生活中产生了统一劳动节奏的号子和相互间传递信息的呼喊,这便是最原始的音乐雏形。而如今,越来越多的人习惯在闲暇时,听听音乐来放松自己,讨厌情操。随着科技的进步,手机、电脑灯电子设备的普及,给人们的生活带来的极大的便利,也让人们能够随时随地的享受音乐。
音乐播放器是一种用于播放各种音乐文件的多媒体播放软件。音乐要通过音乐播放器软件来播放,那它的原理是什么呢?其实质就是对各种音频解码器的操作。不同格式的音乐文件播放所需的解码器也不同,例如,APE格式调用的是Monkeys Audio解码器,FLAC格式调用的是FLAC解码器,MP3调用的是lame解码器。大部分音乐播放器能播放多种格式的音乐文件是因为它集成了各种所需的音频解码器,对不同格式的音乐文件调用相应的解码器。
参考目前网络上比较流行的几款音乐播放器(酷狗、酷我、千千静听、QQ音乐等),这些音乐播放器都具有以下几个特点:一,自带海量曲库;二,附带歌词下载;三,歌曲管理功能;四,页面美观,操作简便。
我所做的播放器基本功能与以上提到的那些流行播放器相类似,但是,我的播放器有一点和这些都不同:那些播放器下载歌曲时都是从自己的服务器下载的。而我的播放器没有服务器,下载歌曲时通过代码访问百度音乐网页进行搜索,然后解析搜索结果网页,从中得到歌曲下载地址。
1.2.几大流行音乐播放器分析
一、搜索引擎代表:百度音乐盒
百度凭借庞大的用户基数及海量的数据来源,一直占据着音乐门户的首要位置,成为其他众多音乐门户的头等大敌。近年,百度推出了百度音乐盒,其主要功能是用户把喜欢听的歌曲集合在“我的音乐盒”中,形成个性歌单,进行播放及下载。
优点:
1. 产品用户体验较好,外观设计简洁,操作简便容易上手。
2. 歌曲数量多来源广。
3. 与百度其它产品互相联通。
劣势:
1. 歌曲播放速度取决于原始链接地址。
2. 版权问题:主要是歌曲及LRC歌词版权等。但百度正积极与唱片公司进行合作来解决这个问题。
二、网络电台的代表:豆瓣FM
豆瓣FM是一款个性化的音乐收听工具。软件简单方便,打开就能收听。在收听过程中,用户可以用“红心”、“垃圾桶”或者“跳过” 告诉豆瓣FM用户的喜好。豆瓣FM将根据用户的操作和反馈,从海量曲库中自动发现并播出符合用户音乐口味的歌曲。
优点:
1. 歌曲按风格分类,方便用户选择收听。
2. 良好的界面设计,令人赏心悦目。
劣势:?
1. 缺少上一首功能,可能导致部分用户体验不佳。
2. 播放过程中会出现广告。
3. 曲库库存不足,推荐音乐重复率过高。
综上所述,豆瓣FM是一个能满足“懒人”们听音乐的基本需求与享受,界面极简,算法较为人性化,响应速度快,但同时曲目少,重复率高的在线音乐电台产品。
三、酷狗音乐
酷狗是中国领先的数字音乐 交互服务提供商,互联网 技术创新的领军企业,致力于为互联网用户和数字音乐产业发展提供最佳的解决方案,公司的使命是成为亚太地区 最大的数字音乐销售推广企业。自公司创建以来,一直在数字音乐 发展上大胆尝试,先后与几十家唱片公司 、版权 管理机构合作探索发展,积累了数万首数字音乐版权 ,并在推动广范围的跨行业、跨平台合作上做出努力,在艰巨的全球音乐数字化进程中作出自身的贡献。
优点:
1. 本地音乐文件关联,用户双击相关联的音频文件即可直接调用酷狗音乐盒进行播放。
2. 搜索下载功能强大。
3. 支持大量的音频格式,包括APE无损音频压缩格式及CD音轨文件等,还提供10波段均衡器
劣势:
1. 占用内存较大。
2. 资源良莠不齐很难选择。
2.相关技术
2.1. C#语言简介
中微软是这么介绍C#的:
C# 是一种简洁、类型安全的面向对象的语言,开发人员可以使用它来构建在 .NET Framework 上运行的各种安全、可靠的应用程序。 您可以使用 C# 来创建 Windows 客户端应用程序、XML Web services、分布式组件、客户端/服务器应用程序、数据库应用程序等等。 Visual C# 提供了高级代码编辑器、方便的用户界面设计器、集成调试器和许多其他工具,使您可以更轻松地在 C# 语言和 .NET Framework 的基础上开发应用程序。
C# 语法表现力强,而且简单易学。 C# 的大括号语法使任何熟悉 C、C++ 或 Java 的人都可以立即上手。 了解上述任何一种语言的开发人员通常在很短的时间内就可以开始使用 C# 高效地进行工作。 C# 语法简化了 C++ 的诸多复杂性,并提供了很多强大的功能,例如可为 null 的值类型、枚举、委托、lambda 表达式和直接内存存取,这些都是 Java 所不具备的。 C# 支持泛型方法和类型,从而提供了更出色的类型安全和性能。C# 还提供了迭代器,允许集合类的实施者定义自定义的迭代行为,以便容易被客户端代码使用。 语言集成查询 (LINQ) 表达式使强类型查询成为了一流的语言构造。
除了这些基本的面向对象的原理之外,C# 还通过几种创新的语言构造简化了软件组件的开发,这些结构包括:
· 封装的方法签名(称为“委托”),它实现了类型安全的事件通知。
· 属性,充当私有成员变量的访问器。
· 特性,提供关于运行时类型的声明性元数据。
· 内联 XML 文档注释。
· 语言集成查询 (LINQ),提供了跨各种数据源的内置查询功能。

版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jsj/jsjkxyjs/3323.html

好棒文