音乐播放器设计报告

2024-09-22

音乐播放器设计报告(精选7篇)

音乐播放器设计报告 篇1

机械与电子工程学院

嵌入式系统设计实习报告

题目:简易音频播放器设计

目录

第一章 引言·····················································3 1.1课题研究目的·····················································3 1.2课题研究意义·····················································3 1.3课题可行性分析···················································3 1.3.1课题调研····················································3 1.3.2可行性分析··················································3 第二章 开发环境安装和配置··································4 2.1开发包及其工具介绍···············································4 2.2Android开发平台搭建步骤··········································4 第三章 程序逻辑架构··········································5 3.1程序工程结构图···················································5 3.2工程各文件简介···················································5 3.2.1程序源文件夹src简介·········································5 3.2.2程序外部资源文件夹res简介···································6 3.2.3其他文件简介················································7 第四章 程序设计················································8 4.1主界面musicActivity设计···········································8 4.1.1onCreat函数··················································8 4.1.2关键代码讲解················································8 4.2音乐播放服务LocalService设计·····································10 4.2.1onCreat函数·················································10 4.2.2关键代码讲解···············································10 4.3数据库Helper类MusicListdbHelper设计······························11 4.3.1构造函数MusicListdbHelper···································11 4.3.2关键代码讲解···············································11 第五章 程序测试···············································13 第六章 分工与总结············································14

第一章 引言

1.1 课题研究的目的

1.熟悉一下eclipse工具和安卓的环境配置及开发的过程;

2.熟练掌握java的组件如button,textview,listView,menu等组件的灵活应用; 3.熟练掌握安卓的一个关于数据保存的方式SQLite3; 4.锻炼一下自己遇到问题,然后解决问题的能力。

1.2 课题研究的意义

随着3G技术的成熟和智能手机的不断普及,移动应用的需求与日俱增,移动应用开发成为当下最热门的技术之一。在google和android手机联盟的共同推动下,android在众多移动应用开发平台中脱颖而出。

Android操作系统是google最具杀伤力的武器之一。苹果以其天才的创新,使得iphone在全球迅速拥有了数百万忠实的“粉丝”,而android作为第一个完整、开放、免费的手机平台,使开发者在为其开发程序时拥有更大的自由。与windows mobile,symbian等厂商不同的是,android操作系统是免费向开发人员提供,这样可节省近三层得成本。

我们知道,无论是产品还是技术,商业应用都是它最大的发展动力。android如此受到厂商与开发者的青睐,它的前景一片光明。国内对于安卓这方面的市场还没有完全开发出来。

只要我们努力学习android,对理想、对生活都会有很大的补益。

因此,开发这样一套很简单的音乐播放器软件对我们来讲是一件很有必要的事情,在下面的各章中我们将以开发安卓音乐播放器软件为例,谈谈其开发过程和所涉及到的问题及解决方法。

本文中所做的主要工作如下:

 开发环境及开发工具的安装及配置;

 阐述整个音乐播放器的系统结构及工作原理;  设计实现“主界面activity设计”,“播放器Service设计”,“数据库设计”这三个主要的功能模块;

 分析并解决实现中的若干技术问题,像组件的选择以及保存方式的选择;  进行测试并分析结果。

1.3 课题的可行性分析

1.3.1 课题调研

(1)与实践活动和相关的文件和资料由作者本人网络查找,以及老师帮助;(2)具有遇到问题,具有独立思考,耐心钻研,向老师虚心求教的良好态度;(3)关于技术方面的难题,跟指导老师面谈。1.3.2 可行性分析

1)技术可行性-----本项目仅需要一台装有eclipse及配置好android开发环境的计算机即可,对计算机本身有一定的要求,它可以使用windows xp及其以上版本,mac os,linux等操作系统;

2)经济可行性-----由于本软件开发只需要一台电脑就行,基本不需要太大的成本。在经济上完全可行;

3)操作可行性-----界面设计时充分考虑用户的习惯以及手机方面的局限性,程序必须要很简单;本程序只涉及到开发环境配置,安卓组件的熟悉,以及安卓平台上的数据存储,并没有太大的难度,所以,该项目完全有可操作性。第二章 开发环境的安装和配置

2.1 开发包及其工具的介绍

Android以java作为开发语言,jdk是进行java开发时必需的开发包.eclipse是一款非常优秀的开源IDE,在大量插件的“配合”下,完全可以满足从企业级java应用到手机终端java游戏的开发.Google官方也提供了基于Eclipse的android开发插件ADT,所以本软件开发选择Eclipse作为开发IDE.2.2 Android开发平台搭建步骤

首先到http:///downloads/下载Eclipse集成开发环境并且解压,这里推荐下载Java EE 集成版本,可以为平台的搭建省下不少工作。接着再去http://java.sun.com/javase/downloads/index.jsp 站点下载SDK后安装,下载http://dl.google.com/android/android-sdk-windows-1.5_r1.zip,Android SDK1.5后解压。第一步下载工序就结束了。

②双击Eclipse解压后目录中的eclipse.exe然后启动,选择Eclipse菜单中的Help-> Install New Software-> 选项卡上的Available Software,点击右侧的“Add”输入http://dl-ssl.google.com/android/eclipse/后确定,然后在“Work with”下拉菜单中选择刚才输入的网址。过一会就会出现一个Developer Tools选项,勾上以后点击Next以后Eclipse会自动网上查找Android 开发工具插件,然后找到Android DDMS和Android Development Tools,选中这两个点击Finish,Eclipse就会自动下载并安装Android插件了,最后会提示重启Eclipse。

③重启后选择Eclipse菜单中的Windows-> Preferences 在左侧的Android项目中SDK Location中填入Android SDK解压后的目录,然后点击Apply。

④在Windows的系统变量中的path变量中添加一个值,该值指向解压后的Android SDK目录下的tools文件夹。

第三章 程序逻辑架构

3.1 程序工程结构图

下放两图即为程序的整个工程的结构图,左方为工程的整体结构图,右方为res文件中的各类用到的资源文件视图。

3.2 工程各文件简介

3.2.1 程序源文件夹src简介

源文件夹src下包含两个包com.terry与com.lyric,分别用于程序主要功能的实现和提供歌词同步显示的控件。

先分析歌词包com.lyric。其中com.lyric.LyricView.java设计了一个歌词显示的View控件LyricView,提供给主程序并作为一个控件显示出来;com.lyric.SongLyric.java设计了歌词类用以从sd卡中寻找到响应歌词文件并进行初始化操作。

主程序类包com.terry中,musicActivity和SdCardList均为Activity,前者为播放器的主界面进行各种播放控制操作,后者用来从SD卡中选择MP3文件添加到播放列表中;LocalService是音乐播放的Service,用于进行音乐播放并在通知栏中显示消息;MusicListdbHelper为自定义的数据库Helper类,将歌曲的名字和路径存入数据库,提供对歌 曲数据库的增加和删除的操作;另外两个均为辅助类,一个用于从文件夹中选择后缀名为mp3的文件(MusicFilter.java),另一个用于整合控件(viewHolder.java),代码如下:

MusicFilter.java

viewHolder.java

3.2.2 程序外部资源文件夹res简介

外部资源文件夹主要为程序提供各种外部资源,如图片等,这里主要介绍一下我们用到的布局文件夹Layout中的各种xml文件。

layout_gridview.xml、layout_listview.xml、layout_lyricview.xml 这三个xml文件被主界面调用viewGroup整合在主界面中,即程序中出现的左右滑动效果,其中gridview显示了歌曲的专辑图片,listview显示了歌曲播放列表,lyricview显示了同步歌词。

main.xml、main1.xml 主程序的主界面资源文件,同上述三个xml一样,整合在viewGroup中由musicActivity设定为当前界面。其中main决定了各view的布局,main1则是程序下方的进度条及简单控制按钮。

musicitme.xml、sdcard.xml 均被用于SdCardList这个Activity的布局,sdcard提供了SDCardList的主界面,musicitme提供了SDCardList中ListView的样式。progressbar.xml 由LocalService调用,通知信息栏的布局文件。3.2.3 其他文件简介

引入的外部JAR: android-support-v4.jar 为程序了viewGroup以实现左右滑动展示不同的View的效果。AndroidManifest.xml 应用的配置文件,描述应用程序的名称、权限、能力和运行方式等。

gen文件夹

这是必需的,为应用程序自动生成的资源文件夹,它所包含的应用程序资源管理源文件R文件定义了该项目所有资源的索引,不能被编辑。

Android 2.1–update1 这是Android 2.1的系统类库,在编译该项目时用到的环境。我们可以通过相应的配置来选择所需的系统类库。

assets文件夹

主要用于放置多媒体等数据文件。

default.properties 这是自动创建的工程文件,定义了应用程序的target和其所需的选项。

第四章 程序设计

4.1 主界面musicActivity设计

4.1.1 养成良好习惯,先看看onCreat函数

如下图所示即为作为程序入口的musicActivity的onCreat函数。大致的流程是调用父类onCreat函数,隐藏标题栏,设置布局,寻找布局控件,初始化应用,刷新歌词文件,刷新播放列表,绑定监听器,开启标志位检测线程,设定空歌词,启动服务。

4.1.2 关键代码讲解

设置布局函数setView()中,先初始化ListView、GridView还有歌词布局lyricview的内容,完毕后再将其添加到viewPager中从而可以进行滑动切换显示。

初始化程序initApp()如果程序是第一次启动(没有数据库文件),那么就自动初始化一次歌曲播放列表,默认路径为SD卡根目录,将歌曲文件信息添加到数据库并且添加到播放列表中。如果有数据库文件则不进行操作。

初始化程序完成之后就需要开启刷新歌词的线程了,refreshLyric()开启了刷新的线程使用已经定义好的handler hand发送刷新信息并进行相应的响应。

下一步就是列表的刷新显示,当前的播放列表中虽然存储有歌曲信息却没有将它显示 出来,所以我们需要刷新并显示一次播放列表,refreshlist()即可做到这一点,并且在每次对播放列表进行操作后都需要调用一次它。

4.2 音乐播放服务LocalService设计

4.2.1 仍然先看一下onCreat函数

播放服务的流程就比较简单,实例化MediaPlayer对象,从musicActivity中得到音乐列表,开启刷新通知栏和musicActivity中progressbar的线程,设置并显示通知栏信息。4.2.2 关键代码讲解

启动流程中的函数几乎没有什么需要讲解的,音乐播放器的Service中的关键代码当然是播放音乐和对切换歌曲的处理。

进度条更新函数progressbar()这个函数启动了一个更新进度条的线程,同时更新了musicActivity中和通知栏中的进度条。

播放音乐的函数playMusic(String path)函数中的参数为歌曲的路径(包含歌曲的文件名和后缀),返回类型为空,它的作用就是播放该路径的歌曲并且有一个播放完毕的监听器。所有的歌曲控制指令都写在musicActivity中,Service本身并不负责对歌曲列表的操作,所以,如果播放完毕,则给musicActivity一个切换歌曲的指令。

切换歌曲后需要调用的函数changeSong()切换歌曲以后需要重新设定一下progressbar还有正在播放的文件名,专辑图片,歌词信息等。这个函数在musicActivity中被大量调用从而实现对音乐播放的安全控制。

4.3 数据库Helper类MusicListdbHelper设计

4.3.1 构造函数MusicListdbHelper(Context _context)MusicListdbHelper是一个类,类对象的实例化都需要构造函数,数据库的Helper类的构造很简单,就是建立或者打开一个自己定义的数据库

4.3.2 关键代码讲解

需要被应用开始时调用的函数FirstStart()以判断应用是否需要初始化,返回类型为boolean FirstStart()中建立了一个游标查询数据库中的名为“colaconfig”的表,该表也仅作为初始化查询而特别建立,如果该表不存在,则说明数据库中不存在歌曲信息表,则创建该表和歌曲信息表“musicitem”,如果该表存在,则返回false并不进行任何操作。其他函数及其作用:

CreateTable_musicitem()创建歌曲信息表 CreateTable_colaconfig()创建配置表

Musicitem_insitem(String name,String path)添加歌曲到歌曲信息表,返回类型为boolean Musicitem_delitem(String name)从歌曲信息表中删除名为name的条目

getMusicItem()得到歌曲信息表的游标用以查询表中歌曲信息,返回值为Cursor

第五章 程序的测试

1.第一次运行程序的主界面

2.点击“choice”后的歌曲选择界面 3.选定的歌曲在主界面中显示播放进度,也可拖动进度条播放

5.使用返回键退出程序后Service仍在后台运行(歌曲仍在后台播放)

第六章 分工与总结

6.1 人员分工

张润浩:musicActivity、SdCardList的编写以及数据库的建立,同时负责软件后期的调试和修改;

刘博:主要负责Service的编写,包括通知栏和主Activity中控件的同步,同时负责报告的书写;

6.2 课程总结

通信软件设计设计是一门紧跟时代步伐的课程,顺应了当下移动互联网的发展浪潮,通过这门课程使我们大学生将课堂所学的知识逐步转化为社会所需要的才能,令我们获益匪浅。这次的作品在短短两周内,虽然并非一切顺利,但也算磕磕绊绊地完成了。途中遇到过难以解决的问题,虽然厌烦但还是逼着自己搞定了。说几个具体的吧,通过这次的课程设计,主要得到了这么几个经验。首先,在开发之前,如果是比较生疏的领域最好将资料准备完备,否则在做扩展的时候将会后悔莫及;其次,效率永远是第一位的,如果想睡了的话就不要勉强自己继续工作;最后,询问别人并自己进行思考永远是最快捷的成长途径。总而言之,通过这次的软件开发,通过这门课程,我们培养了自己独立思考和独立作业的能力,更加能够自信地面对即将踏入的社会。

音乐播放器设计报告 篇2

1.1 设计要求

音乐播放器是现在非常流行的电子产品。本文所要设计的多功能音乐播放器,要求如下:

1)可以播放多首歌曲;

2)可以通过按键选择需要播放的歌曲;

3)选择需要播放的歌曲时,歌曲名称要在LCD屏幕上显示;

4)播放的歌曲声音要清晰。

1.2 方案确定

由设计要求可知,总体设计中,包括主控单片机,LCD显示器模块以及歌曲选择按钮模块。多功能音乐播放器设计如图1所示。

2 具体实现过程

2.1 硬件电路设计

本设计中的硬件电路设计关键的控制器件是LCD显示器、扬声器以及按键。多功能音乐播放器硬件电路,如下图2所示。

本设计中控制电路在精度上要求不高,所以我们选用带4K字节FLASH存储器的AT89S51单片机就可以满足设计要求。

本设计中我们通过AT89S51单片机的P2.7引脚端口来传送出各种频率的信号源,再通过放大之后传送至喇叭处,P2.7引脚端口发送出的频率控制喇叭发出声音。

LCD是使用12864LCD显示器,显示数据通过单片机的P0引脚来传送。

本设计可实现10首歌曲的播放,因此,按键应有10个。由于涉及的电路元件及I/O引脚都比较少,因此,这里采用10个I/O引脚分别连接一个按键的方式来实现设计要求。本设计中,P1口的P1.0-P1.7以及P2.0、P2.1引脚分别连接按键K1-K10。按键未与I/O引脚连接的一端是与地相连的,因此,当有按键动作时,低电平就会送入I/O引脚中。

扬声器只有两根连接线,一端连接系统正电源,另一端与单片机的P2.7相连。当P2.7输出低电平时,扬声器将导通;当P2.7输出高电平时,扬声器将关闭。如此反复,就可以产生一定频率的歌曲了。

2.2 软件编程及调试

本设计中主要是必须处理好音乐歌曲码以及LCD显示器的字符显示码。程序流程图如图3所示。

音符的产生过程:

1)要让单片机发出声音频率的脉冲信号,就必须要计算得出这一声音频率的时间周期。然后我们利用AT89S51单片机内部的定时/计数器对这一声音频率的半周期进行计时,每当这个半周期计时完成后就将输出脉冲的I/O反相,接下来我们重复此操作,就能够在I/O引脚上得到此声音频率的脉冲。

2)我们利用AT89S51单片机内部定时/计数器,使其在计数器工作方式0下,通过定时/计数器计数初值THO、TLO的改变,用以产生不同的声音频率的方法。

3)其计数值的计算方法如下:

例:设Fi=1MHz,Fr=523Hz,求中音DO的计数值(T)。

T=65536-N=65536-(Fi/2/Fr)=65536-(1000000/2/Fr)=64580

所以得到中音DO的计数值为64580。

音符的编码过程:

将乐曲中所有用到的音符按低、中、高的顺序编码,如下所示:

节拍的编码过程:

1)找出简谱中最短的节拍(1/4节拍),并以其为基准,则各音符的节拍码如下图所示:

2)用定时器/计数0中断的方法来实现音符的节拍,每50ms中断一次,重复循环8次,则1/4节拍为0.4s

编写音乐代码过程:

根据简谱,依次找出每个音符代码及节拍码,按照把音符码放在高4位节拍码放在低4位的方法组合成一个字节,并建立一个表格按顺序存放,则通过顺序查表的方式,就能获得音符及节拍的信息。

歌曲方面应先找到歌曲的简谱,然后对照每个音符的频率值计算出初值,再在程序中列出节拍和音调值。这样程序运行时只需检查这些值即可实现歌曲要求的声音播放。

LCD显示的字符码方面,本设计中要求在音乐播放的同时,在LCD上显示歌曲的名称。歌曲名都是汉字,可以通过LCD自带的汉字字符码转化程序,获取歌曲名称对应的字符码,然后再将LCD字符显示的相关程序作为子程序添加到源程序中,供主程序调用即可完成这部分的设计。

主程序主要先进行LCD显示器的初始化,然后检测是否有按键的动作,若有动作,则播放相应按键对应的歌曲,并将对应的歌曲名显示于LCD上。播放歌曲过程中,若有新的按键动作,则停止播放,转而播放新按键对应的歌曲,并将新的歌曲名称显示于LCD上。当播放遇到结束音符时,播放停止,程序等待下一次的按键动作。

摘要:基于AT89S51单片机的多功能音乐播放器的设计是高职院校“单片机原理及应用”课程教学中可以选用的很好教学案例之一,本文给出了该教学案例的具体设计思路与实现的方法。

基于“云”技术的音乐播放器设计 篇3

关键词: 云; 音乐播放器; 云计算; 共享

中图分类号:TP393 文献标志码:A 文章编号:1006-8228(2012)10-17-03

引言

近几年来“云计算”概念非常的火爆,“云计算”核心是将大量的网络资源统一起来,为用户提供高效、便捷的软件服务[1]。“云计算”倡导者希望的是:用户使用软件服务就像使用电和水一样,可以便捷、随时随地、按需地使用服务。在“云计算”这个网络应用模式下,用户可以通过各种“端”访问“云”,“端”可以是任何能够上网的电子设备,“云”就是提供的服务,“云”可能是巨大的、连成一片的、无边境的,也可能是渺小的、孤立的,总之它无处不在,能够提供给用户所需要的各种服务。云计算被视为科技业的下一次革命,它将带来工作方式和商业模式的根本性改变[2]。我国政府十分重视云计算的发展,全国各地纷纷建起云计算基地,云计算已在我国显示出了其强大的生命力。

音乐在我国已经有几千年的发展历史,它对每个人来说已经是一种不可或缺的产品。走在大街上,坐在餐厅中,呆在房间中,都能听到很多悦耳的音乐,这些都归功于技术的发展,让音乐生活更加丰富多彩。如今,人们听音乐的方式也已经有了很大的改变,从古老的乐器演奏,到后来的机器播放,再到现在的MP3,WMA等音乐文件的出现,始终向着为方便人们享受这种美妙的感觉的方向前进。而随着“云“的发展,音乐可以更加快速的在社会中传播,这一个时刻你正在听的歌曲,也许下一个时刻正在被其他人听。

正如文献[3]中所提出的:在“云计算”时代,“云”会替我们做存储和计算的工作,所以“云“的出现为我们的生活提供了极大的方便。假如要出差去一个很远的地方,不方便携带电脑,但是电脑中保存着一些重要的信息,那么,我们就可以把这些信息保存在”云“端,无论我们在哪里,只要有一台电脑或者一部手机,就可以下载到这些信息,而不需要携带电脑或者移动硬盘等。音乐也可以通过”云“达到这种效果,例如,我们在某个地方听到一首很好听的歌曲,但是没有办法下载带走,而通过”云“,我们就可以实现歌曲的上传和下载,从而实现音乐共享。很久以前,上传音乐只是一些音乐门户网站或者会员的权力,一般用户只能在线收听或者下载,这种单一的方式不利于音乐的快速发展。如今,人们将自己喜爱的音乐,或者自己录制的歌曲放置在”云“端后,可以告诉他的同学朋友们,这样,他的朋友就可以马上在”云“端找到这首歌,不仅可以将这首歌下载下来,还可以对这首歌曲添加评论。这种方式,让音乐不再仅限于听,而是更加注重于分享。

1 “云”音乐播放器设计思路

我们开发的是一款典型的Android娱乐应用软件——“云”音乐播放器,由于本软件是基于Google App Engine,借助Google云进行开发和编制的云端软件,其中包括网络音乐云同步,网络音乐云下载等功能,所以也是一款地地道道的Google云应用软件、云终端。

1.1 播放器模块

“云”音乐播放器引入了云存储等技术,设计包括两个主要模块:

⑴ 本地音乐播放模块,支持传统的音乐播放器模式,包括本地歌曲搜索,播放,设置铃声等功能。

⑵ “云”音乐播放模块,将本地音乐上传到“云”端,或者从云端下载到本地,包括上传,下载和评论的功能。

1.1.1 本地音乐播放模块功能

本地音乐搜索:

具有两种搜索方法,一是选择自己添加喜欢的歌曲或者歌曲文件夹,二是选择让程序自动扫描内存卡的所有歌曲文件。添加文件后,用户只要输入歌曲名,就可以查找在播放列表中的歌曲。

播放本地歌曲:

实现日常的播放功能,实现歌曲和歌词的同步,提供了单曲循环,列表循环,随机播放三个播放模式。一共有五个分类:全部歌曲,歌手,专辑,文件夹和我的最爱。用户可以根据分类来查看歌曲信息,将喜爱的歌曲添加到“我的最爱”列表,也可以删除歌曲,包括从列表中删除和删除内存卡中的文件。添加桌面插件功能,用户不需要打开程序,直接在桌面上就可以播放歌曲。

设置手机铃声:

⑴ 可以将自己喜欢的歌曲设置为来电铃声或短信铃声。

⑵ 有短信或者来电时会暂停播放歌曲,直到通话结束继续播放,并可以监听耳机上的按键操作,比如接通或挂断电话,音量的加减等。

1.1.2 “云”音乐播放模块功能

上传音乐:将本地音乐上传到“云”端,提供给其他用户下载使用。

下载音乐:查看并下载放置在“云”端的音乐,也可以在线播放,省去下载时间。

评论音乐:对放置在“云”端的音乐提供打分评论机制,所有用户都可以看到,作为对音乐的一种评价。

1.2 云存储

由于网络资源丰富,加上现代人尤其是年青一代对个性化的追求,使得播放器所要处理的音乐量非常庞大,所以才有了云存储的概念。

1.2.1 云存储的概念

云存储是在云计算概念上延伸和发展出来的一个新的概念,是计算机云领域比较成熟的一部分,可用于解决存储的相关问题,在网络时代可以用于解决个体用户的设备维护、数据安全、存储等一系列相关问题[3]。它是指通过集群应用、网格技术或分布式文件系统等功能,将网络中大量各种不同类型的存储设备通过应用软件集合起来协同工作,共同对外提供数据存储和业务访问功能的一个系统[1]。当云计算系统运算和处理的核心是大量数据的存储和管理时,云计算系统中就需要配置大量的存储设备,那么云计算系统就转变成为一个云存储系统,所以云存储是一个以数据存储和管理为核心的云计算系统。

1.2.2 云存储的模拟实现

本程序对于音乐文件的存储采用了云存储的概念,其存储设计如图2所示。

每个移动终端将自己的音乐文件存储到“云”端,用分布式文件系统管理这些文件,方便用户在需要的时候查看并下载,并可以共享给其他用户。这样不仅节省了很大的存储设备开支,也方便用户管理音乐文件。

本程序使用TOMCAT+SQLSERVER模拟了一个本地的“云”服务器,用户通过本程序,将选择的音乐保存到TOMCAT服务器中,同时将歌曲信息保存到SQLSERVER数据库里,包括歌曲名,歌曲所有者,歌曲保存路径,歌曲共享权限等。音乐文件上传到“云”服务器之后,用户可以在程序中看到保存在“云”端的歌曲列表,其他用户可以看到“云”端共享的音乐文件,并且能够下载这些文件。

2 系统开发的关键技术及验证性测试

2.1 系统的开发技术

根据Android的设计理念,在程序的开发过程中,尽量做到代码的高效性和程序的快速性[2]。本程序采用多线程处理模式,并发控制多个任务的进行,包括歌曲播放和歌曲下载,保证了程序的流畅性和高效性。云技术的发展让多媒体技术有了更广阔的发展空间。本程序的网络歌曲部分将放置在云端的音乐链接获取下来呈现给用户,用户可以随时随地收听,下载。而且通过云计算,能够保证用户在听音乐的同时完成其他任务,比如看电子书,浏览网站等等,大大增加了用户的体验感,也使得程序运行更加流畅。

2.1.1 本地音乐播放的开发

⑴ 本程序在实现了监听手机按键(Listener)的同时,还考虑到手机的外围设备,增加了对耳机的监听功能,以使用户能够更加容易地使用。

⑵ 歌曲显示和扫描方面,采用适配器的方法,将图片和文字整合到ListView中,监听Item操作来实现歌曲播放和添加。

⑶ Android的MediaPlayer包含了Audio和video的播放功能,在Android的界面上,Music和Video两个应用程序都是调用MediaPlayer实现的。MediaPlayer在底层是基于OpenCore(PacketVideo)的库实现的,为了构建一个MediaPlayer程序,上层还包含了进程间通讯等内容,这种进程间通讯的基础是Android基本库中的Binder机制。本程序使用了MediaPlayer类用来实现歌曲的本地播放和在线播放,并且用Java中的Stream类来控制歌曲下载,并支持断点重连。歌曲显示和扫描方面,采用适配器(Adapter)的方法,将图片和文字整合到ListView中,监听Item操作来实现歌曲播放和添加。

⑷ 后台处理方面,解析网络歌曲信息采用SAX类来解析XML文件,使用SQLite数据库来保存和处理歌曲和歌手信息,添加必要的触发器来操作数据库。将歌曲放在Service中操作,同时运用多线程处理,将搜索歌曲和下载歌曲放在子线程中,保证了整个程序流畅。

⑸ 在Android里面有各种各样的广播,比如电池的使用状态,电话的接收和短信的接收都会产生一个广播,应用程序开发者也可以监听这些广播并做出程序逻辑处理。如图3所示。

本程序利用了BroadCastReceiver的机制,将所有按钮的监听通过该机制来实现,并且增加了对手机外围设备的监听,比如来电时暂停歌曲播放,通话结束后继续播放歌曲等。这样一来不仅统一了所有按钮的操作,也加快了程序运行的速度,进而提升了用户体验感。

⑹ 数据处理方面,解析网络歌曲信息采用SAX类来解析XML文件。采用XML文件存储数据是Android程序常用的存储方式。解析XML主要有DOM、SAX方式,DOM处理XML文档是基于将XML文档解析成树状模型,放入内存进行处理;而SAX则是采用基于事件驱动的处理模式,它将XML文档转化成一系列的事件,由单独的事件处理器来决定如何处理。SAX是一个解析速度快并且占用内存少的XML解析器,非常适合用于Android等移动设备。 本文给出部分使用SAX解析XML文件的代码:

2.1.2 云音乐播放模块的开发

根据云存储的理念,我们在本地模拟了一个云服务器。

在Android平台上,集成了一个嵌入式关系型数据库—SQLite,它是一款轻量级的关系型数据库。由于SQLite占用的资源非常少,所以在很多嵌入式设备都是用它来存储数据。SQLite目前支持Windows/Linux/Unix等主流的操作系统,兼容性还不错。我们也可以用多种开发语言如C#、Java、PHP等来通过ODBC接口操作SQLite,十分方便。本程序就是采用SQLite数据库来保存和处理歌曲和歌手信息,添加必要的触发器来操作数据库。将歌曲放在Service中操作,同时运用多线程处理,将搜索歌曲和下载歌曲放在子线程中,保证了整个程序的流畅性。

2.2 验证性测试

为了验证程序的可行性与兼容性,我们在多个平台上对其进行了测试,测试结果如表1所示。

3 “云”音乐播放器的特点

3.1 美观华丽的界面

用户评价一个软件项目的好坏,首先就是看其界面的美观程度,我们在这方面上精心设计,力争精心设计每个控件,让整个界面美观华丽。在UI上采用Android系统中的经典的布局结构(Layout),整合多种控件和华丽的动画效果,保证了程序的简洁性和界面的美观性,给予用户强烈的视觉冲击。

3.2 流畅简洁的操作

根据Android的设计理念,我们在程序的开发过程中,做到代码的高效性和程序的快速性。本程序采用多线程处理模式,并发控制多个任务的进行,包括歌曲播放和歌曲下载,保证了程序的流畅性和高效性。

3.3 “云”技术的应用

用户使用“云”技术时,可以选择公有云或私有云,即选择上传的音乐能否被其他用户查找到,从而尊重用户的隐私权。对上传到“云”端的音乐文件采用分布式管理,进行多个备份,防止数据丢失,并提供打分制度,提供一种对音乐文件的评价和用户下载的参考依据。通过“云”技术,还能优化程序运行的效率,提高运行速度。文献[2]指出:如果使用云计算服务,绝大部分任务交给云端完成,只需让电脑接入互联网即可。由于应用了“云”技术,省去了大型的服务器,使得本软件的运行成本大幅降低。

4 结束语

音乐播放器设计报告 篇4

据国外媒体报道,新闻集团旗下社交网站MySpace联合创始人、CEO克里斯・德沃尔夫(Chris DeWolfe)周四表示,MySpace将来可能开发一款数字音乐播放器,与苹果热销的iPod相竞争,但他同时称,还没有生产和销售这种设备的计划。

德沃尔夫在旧金山Web 2.0年度峰会上表示,MySpace最近与大音乐公司组建了音乐合资公司,其“可能”最终会开发一款音乐设备,

但他还说:“现在,我们只是关注音乐服务。”

MySpace于9月推出了MySpace Music服务,可提供主要唱片公司的完整唱片。除可以吸引用户外,该服务还吸引了很多大公司如麦当劳、丰田、索尼电影公司和State Farm保险公司等投放广告。

音乐公司也急切想在其他播放器上销售音乐,通过促进与苹果iTunes的竞争来拉动销售。苹果也于近期推出了采用新的Genuis技术的iTunes 8。但德沃尔夫称,Genuis新技术不会让iTunes成为MySpace Music的竞争对手,因为苹果继续把关注焦点放在销售其音乐设备上。德沃尔夫认为,如果不自己开发设备,无法与苹果竞争。

音乐播放器设计报告 篇5

其中paragraphiceq是参数图形均衡器.graphiceq是图示均衡器。用滑动控制器作为参数调整的多段可变均衡器。滑动控制器下的标识与其频率响应所对应。每一频段的中心频率与

超大的EQ 带宽是固定的。

做音乐最离不开的效果器是什么?相信大多数朋友都会回答:是EQ!不错,正是有了这个所谓“均衡”的效果器,我们的音乐才不会过载,乐器音色才会如此丰富。然而知道1加1等于2更要知道1加1为什么等于2。今天我把这个效果器扒光,从根本上来分析它的工作原理。

“EQ的原理?声波是由不同谐波组成的!所谓均衡处理就是改变这些谐波的振幅。”这个说法也对也不对。说它对是因为均衡效果器的初衷是这样的。说它不对,是因为以当今的数学算法,还不能做到由答案推出确定的问题。比如一道题的答案是10,我的问题可以是2+8,也可以是1+3+6,甚至可以是5.5+4.4+0.1等等等等„„波形也是一样,同样的合成波形,可以有无数谐波组合。所以说,效果器根本不能分清楚这些谐波的个数与振幅类型。不过均衡的发明者很聪明,他并不让EQ处理不可琢磨的谐波去改变音色,而是通过一种巧妙的方法,间接的改变了音色。

从高中物理书上的“振动与波”一章可知频率等于周期的倒数。而所谓周期,就是指物体完成某种运动,回到初始状态所经历的时间。

由纵轴的零点来看,这个波形的从0时刻从0振幅开始跨越1/440秒后回到了初始状态(第1/880点纵轴位置也是0点,但是运动方向与初始位置相反。所以不能当作返回)。我们知道这个波形的频率是440Hz(1/440的倒数),可是这个波形就只有440Hz的声音么?不是的。如果我们从图中纵轴的某个非零位置看上去。

正如大家看到的,这一段里,振动回到平衡位置经历的时间是1/1000秒,也就是说,绿色部分是频率为1000Hz的波形。同样的,从纵轴不同的非零位置看,可以得到各种频率的波形。

这样,我们就近似得到了波形的各个分波。下面EQ所要做的,就是调整各个近似分波的振幅(音量)大小。但在这之前,我们先要下一个定义:同样的波形,在纵轴的不同位置看上去有不同的频率,我们把从平衡位置(纵轴零点)看上去呈现的频率称为“乐音频率”,把从纵轴不同位置看上去的分波统称“声音频率”。人耳在接收声音的时候,会自动把耳膜在平衡位置的振动频率(也就是“乐音频率”)当作音高,把其他频率转化为音色。

模拟EQ,数字EQ横纵比:

最原始的EQ,是利用电容器的所谓“容抗”现象来调整声音的音色,所谓“容抗”,既是说电容器有这样一种物理现象:对于不同规格的

这是一个四段均衡器

电容,其对不同频率交流电信号有减弱或提升的现象。声音从mic转化后会变成交流电信号,电流I会正比于声音振幅(其实只能近似正比)。I通过导线进入EQ,我们用一个3段EQ的理论电路来举例:

3个不同规格的电容器分别负责调整高频,中频和低频。由于三个电容分别对高,中,低频率的敏感程度不一样,人们便可以通过调整各个电容的电流传输效率来产生EQ效果。这种利用物理现象的方法是明智又省力的,而且相当精确!但是随着数码录音技术的发展,录音师们开始喜欢在后期加入EQ,传统EQ便不能满足需要了。于是越来越多的数字EQ出现在了人们眼前。在声音信号已经量化的数字信号中调整EQ,就必须利用数学算法来解决。大家一定都听说过“采样率”这个概念。在数字音频信号中,波形的变化不能是连续的,而是由一个一个采样点串起来的。

这种设计产生了一个麻烦——我们在分析采样点频率时很难找到另一个采样点刚好与这个点振幅状态一致:

所以,数码EQ必须像穿线一样将各个采样点连起来,才能近似找到两个状态一致的点。说起来容易作起来难,电脑不是人脑,只能以数学方法来“穿线”。最古老的方法,我称作“直线路径”即用直线连接各个采样点。这种做法很简单,但是谁都知道采样点与采样点之间不可能是直线连接,这样会产生很大误差!后来人们根据高数中的某个算式(名字忘了),用最接近原始波形的曲线连接了采样点,我称作“模拟路径”。如图:

这种方法误差依然存在,毕竟那是理论算出来的不是真正的波形。但是已经与原始波形相差很少很少了。现今流行的数字EQ,大都采用这种设计。

数字EQ的原理:

数字EQ虽然种类繁多,其实原理都是一样的,即:将输入信号“x”建立对应输出信号“Y”,Y=f(X),其中f()这个作用式中又包括了一个与“x”对应频率“k”的函数。将对应“X”的函数表达式展开也就是:Y=g(k)*X。其中g()随EQ参数调节而变化。

举例:古老数字EQ的原理。

这是一个古老的3段EQ,使用“直线路径”。我们把中频提升到2倍,高频提升3倍。这时,函数的作用式就变成了:

Y=1*X(k属于0hz到400hz)Y=2*X(k属于400hz到2500hz)Y=3*X(k属于2500hz到无穷)

可以看出,这种EQ调节“有塄有角”,399.9hz振幅还一点不变,到401hz就突然增加2倍。我和朋友写过一个小播放器,就加入了这EQ,产生了魔鬼的声音„„„„现今的EQ不但拥有“模拟路径”,还拥有渐变的函数作用式。同样的3段EQ,把中频提升到2倍,高频提升3倍,函数图像会变的很圆滑:

所示,这个“楼梯”很圆滑,在虽然中频从400hz开始算起,但是从350hz左右就已经开始增加振幅产生渐变的效果。大家可以试试,即便把EQ的高频降低到0,我们依然可以听到一点高频。而且由于采用了“模拟路径”,使频率的分析更准确!更加容易调节。但这两种优化算法比古老EQ更费系统资源。

我们之所以要讲到已经没有用的古老EQ,是因为它更方便人们理解EQ。有些朋友总是问:EQ效果器既然能改变声音的频率,C调的歌调完EQ会不会变成降B??降低bass的低频,bass听起来会不会好像升了一个8度??大家还记得前文提到的“乐音频率”和“声音频率”概念么?我们带着这个概念从古老EQ入手来解释这两个问题。

我们来看古老EQ的公式:Y=r*X(k属于ahz到bhz)。前面已经说过,声音的音高只与“乐音频率”有关。也就是说,想证明EQ效果器能改变声音的频率而不改变音高,只需证明EQ效果器能改变声音频率而不改变乐音频率。

根据乐音频率的定义,它必然是两个同样状态的0点之间时间长度的倒数(第1零点,第3零点)。我们设1点的时刻为t1,3点的时刻为t2。乐音频率f=1/(t2-t1)。我们来证明t1时刻或者t2时刻不发生变化:对于任意一个输入信号“x”有输出信号Y=r*X(k属于ahz到bhz)。在任意t时刻,经过EQ处理的信号可以改变为任意值。但是由于1,3点的X值为0,所以无论我们如何调整EQ参数,Y=r*0=0,所以在1,3点,X值永远等于Y值为0。即所有振幅为0的时刻点经过EQ处理,振幅依然为0,所以第1零点,第3零点之间的时间间隔不随参数变化而变化。

这就是EQ效果器能改变声音频率而不改变音高的原因,所以大家(尤其是初学者)大可放心地使用EQ。其实随着技术的进步,数字EQ的算法也开始变得多种多样。就在这篇稿子即将完成时,又听说有通过任意频点的前后两点前后两点计算斜率(就是该点的速度)来确定频率的新奇高招,但EQ的宗旨不变——只改变千篇一律的音色。声音频率和音乐中440hz等等乐音频率不是一个概念,调低高频音乐不可能没了高声部,bass也不会因为降低低频而消失。1.20Hz--60Hz部分

这一段提升能给音乐强有力的感觉,给人很响的感觉,如雷声。是音乐中强劲有力的感觉。如果提升过高,则又会混浊不清,造成清晰度不佳,特别是低频响应差和低频过重的音响设备。

2.60Hz--250Hz部分

这段是音乐的低频结构,它们包含了节奏部分的基础音,包括基音、节奏音的主音。它和高中音的比例构成了音色结构的平衡特性。提升这一段可使声音丰满,过度提升会发出隆隆声。衰减这两段会使声音单薄。

3.250Hz--2KHz部分

这段包含了大多数乐器的低频谐波,如果提升过多会使声音像电话里的声音。如把600Hz和1kHz过度提升会使声音像喇叭的声音。如把3kHz提升过多会掩蔽说话的识别音,即口齿不清,并使唇音“mbv”难以分辨。如把1kHz和3kHz过分提升会使声音具有金属感。由于人耳对这一频段比较敏

感,通常不调节这一段,过分提升这一段会使听觉疲劳。4.2KHz--4kHz部分

这段频率属中频,如果提升得过高会掩盖说话的识别音,尤其是3kHz提升过高,会引起听觉疲劳。

5.4kHz--5KHz部分 这是具有临场感的频段,它影响语言和乐器等声音的清晰度。提升这一频段,使人感觉声源与听者的距离显得稍近了一些;衰减5kHz,就会使声音的距离感变远;如果在5kHz左右提出升6dB,则会使整个混合声音的声功率提升3dB。

6.6kHz--16kHz部分

这一频段控制着音色的明亮度,宏亮度和清晰度。一般来说提升这几段使声音宏亮,但不清晰,不可能会引起齿音过重,衰减时声音变得清晰,但声音不宏亮。在mpio的几款mp3种都是把频率分成5段,fy200是50Hz/200Hz/1KHz/5KHz/15KHz,fl100我记不太清楚了。呵呵!

EQ的使用

EQ均衡在音频处理中是必不可少的一项工作。均衡的可以在音乐本身的基础上进一步表现音乐和乐器的色彩!我们常说的将“地鼓调的再硬一点,BASS再厚一点”等这些话的时候,首先就是去调节EQ均衡。但是看到均衡器上的许多按纽或一堆推子,很多朋友会不知所措,我先简单讲一下均衡器中各频段在音乐中的色彩。1、100Hz色彩温暖区,如果信号频带多集中于此,应适当加强。2、200Hz色彩低沉且混浊,有必要适当减弱。

3、大多数音乐的骨干频率会集中在300-1kHz,突出这一频带可以加强音色的骨骼(如,BASS的触弦声)。当然,有时这一区域会显得“粘滞”,特别在300-800Hz范围。4、1.5k-2kHz色彩有点“嗡嗡”的,削弱该频带当然会使声音干净许多,但同时你

也会失去一部分有力的支撑。5、2k-4kHz色彩温暖而不失亮度,特别适合Guitar类乐器。同时,前期录音就适当

加强该频段,在后期混音时很容易做出饱满而充满质感的音质。6、4k-5kHz往往是音质较为粗糙的频段,这部分的提升还会导致整体音量的上升。7、7k和7k以上,属于高频段。音质尖锐而有“攻击性”,易产生“嘶...嘶...” 的声音。

8、钗片音色通常在8k-10kHz范围,建议最好还是想办法将钗片音色频段控制在这一范围内,超过部分予以削弱或切除。

这是一个模拟状态的EQ均衡器,它和上图中的曲线式EQ均衡器在原理上是一致的。

传统EQ均衡器是由高中低三段均衡参数组成,如图:包括db增益、HZ频率、开关及Q参数。

传统EQ均衡器高中低的频响范围分别是: LOW低频的范围为32HZ---1KHZ MID中频的范围为32HZ---18KHZ HIGH高频的范围为1KHZ—18KHZ 在数字EQ中,我们通过调节频段db的大小来改变乐器的音色。这样我们就会看到有的曲线为坡状,有的曲线为山峰状。

Q参数就是用来调节曲线的参数。

下面是一张关于EQ调节模式的参数表,只要按这个标准来调节EQ,慢慢的有了经验以后,就不会感到无从下手了。

在EQ参数表中,其中F表示频率,G表示电平增益,SHELF表示坡状,Oct表示八度倍频程。

6.2 EQ效果器的数据表 低频 中频 高频

在小音量时增加低音 G +5db +3db 0db F 80Hz 200Hz 10KHz Q 坡状 2oct 坡状

为DISCO舞曲增加高低音 G +5db-4db +4db F 90Hz 700Hz 12K Hz Q 3oct 1/6oct 3oct 为流行音乐强调中高音 G 0db +2db +2db F 100Hz 2.8kHz 10K Hz Q 坡状 3oct 3cot 为摇滚乐强调高低音 G +4db +2db +4db F 80Hz 2.5kHz 12K Hz Q 1cot 1oct 坡状

为现场音乐强调高中低音 G +3db +1db +2db F 125Hz 700Hz 12KHz Q 坡状 2oct 坡状

流行乐鼓的紧凑音色 G +5db-5db +4db F 80Hz 400Hz 2.5KHz Q 3/4cot 1/3oct 3/2oct 用于摇滚乐鼓的重音色 G +5db +2db +1db F 110Hz 2.0kHz 12KHz Q 坡状 3/2oct 3oct 地鼓音色 强调低音 G +8db-7db +5db F 80Hz 400Hz 2.5KHz Q 3/4oct 1/6oct 1/3oct 干净的军鼓音色 G +2db +1db +3db F 200Hz 1.4kHz 5.6KHz Q 坡状 3/2oct 3oct 重军鼓音色 G +5db-6db +5db F 200Hz 700Hz 3.2KHz Q 3/4oct 1/6oct 1/3oct 吊镲音色,强调鼓槌激打声 G +2db 0db +4db F 200Hz 2.0kHz 12KHz Q 坡状 3/2oct 坡状

紧凑的踩镲音色 G-3db-2db +3db F 80Hz 250Hz 8.0KHz Q 坡状 1/6oct 坡状

通鼓音色 G +4db-1db +3db F 200Hz 900Hz 4.0KHz Q 坡状 3/2oct 3oct 电贝司 G +5db-1db +4db F 200Hz 1.4kHz 5.6KHz Q 坡状 3/2oct 3oct 木贝司 G +2db +1db +3db F 80Hz 315Hz 2.2KHz Q 3oct 3/2oct 坡状

木吉它 G +2db +3db +4db F 180Hz 4.0kHz 7.0KHz Q 2oct 2oct 坡状

小号,有延音 G +1db +1db +4db F 360Hz 1.4kHz 5.6KHz Q 3oct 1oct 2oct 萨克斯,有延音 G +3db +1db +3db F 315Hz 900Hz 3.6KHz Q 2oct 1/4oct 坡状 钢琴 G +2db +1db +1db F 140Hz 2.0kHz 5.0KHz Q 坡状 3oct 3oct 男性声音,强调中低音 G +3db +1db +2db F 280Hz 1.8kHz 5.0KHz Q 3oct 3/4oct 坡状

女性声音,强调高中音 G-1db +1db +2db F 220Hz 2.0kHz 7.0KHz Q 坡状 3oct 3oct 人声合唱 G +1db +2db-4db F 280Hz 1.4kHz 5.6KHz Q 3oct 3/2oct 坡状

男性讲话,增加清晰度 G-3db +2db-4db F 100Hz 4.5kHz 7.0KHz Q 1oct 3oct 坡状

女性讲话,强调中音 G-3db +3db-1db F 200Hz 2.0kHz 8.0KHz Q 坡状 2oct 坡状

模拟电话,减少高低音 G-15db +12db-10db F 500Hz 1.1kHz 9.0KHz Q 坡状 2oct 3/4oct 在4KHz处滤波以减少反馈啸叫 G 0db 0db-10db F 80Hz 2.0kHz 4.0KHz Q 坡状 3/2oct 1/6oct 在50Hz处滤波以减少嗡嗡声 G-9db-10db 0db F 50Hz 160Hz 10KHz Q 1/6oct 1/6oct 坡状

在60Hz处滤波以减少嗡嗡声 G-9db-10db 0db F 60Hz 180Hz 10KHz Q 1/6oct 1/6oct 坡状 为磁带放音减小高频噪音 G 0db 0db-13db F 80Hz 2.0kHz 16KHz Q 坡状 3/2oct 坡状

我们已经知道了各种状态下EQ的调节方法,但是在各频段之间曲线怎样精确的调节呢?这里有一个Q参数对照表,我们可以根据这个参数进行细微的调节。

在前面我们已经知道调整各种音色风格主要是对各频段进行电平的增益或衰减,上面29种模式中的高中低三段频率F其实就是我们选出的各种音色风格的Center Frequency(中央频率),用于以此为中心对其它频段非常细致的均衡调整。Q参数其实就是频带宽度(Width)的指数。它以8度(Octave)为单位,在中央频率(Center Frequency)向两边频率对称扩散的增益或衰减。

我在这里向大家介绍Q参数是现在流行的数字调音台用的频带宽度,它是更具有音乐性的八度值,许多调音台都是以这些参数为标准的。如YAMAHA02R、01 V等。

这是Octave八度值与传统十进制Q值的对照表: Octave Q 1/6 8.65 1/4 5.76 1/3 4.32 1/2 2.87 3/4 1.90 1 1.41 3/2 0.92 2 0.67 3 0.40 我们只要掌握了这些参数就能很好的调出音色的基本状态,然后在根据经验及音乐的需要对这些参数进行修改,就可以做出我们自己的喜爱的音色。不管什么设备,所有音色及音乐都是以这些参数来调节的。所以掌握这些EQ数据对今后制作音乐来说是非常重要的。因为音色的好坏对音乐的表现来说是致关重要的。

【EQ唱片】

北京丰峰尚文化传播有限公司(EQarts)是国内一流的音乐制作公司,以音乐制作、艺人培养及管理、音乐版权管理、唱片录制发行等为核心业务。

公司制作部的前身是内地音乐界颇富盛名的EQ录音棚,棚内配备有齐全的顶尖专业录音设备和经验丰富的高水平录音工程师。数年来,为国内及亚洲当红歌星、团体录制歌曲数千首,是众多知名歌手录制专辑的首选录音棚。

音乐播放器设计报告 篇6

关键词:语音识别,技术,音乐播放器,设计

目前,人类实现了由传统靠键盘和按键控制机电、计算机系统的生活作业模式到通过语音识别技术控制机电和计算机系统的飞跃。语音识别技术的播放器设计过程实际是实现语音智能控制音乐播放器的技术。很长一段时间,人机对话通过数字领域的“手动操作”来进行,这种交流方式将人与机电系统和计算机系统之间的交流变得狭隘,人与机器只能通过数字量或者数字转换形式在近距离的空间里进行交换。语言本是人类最基本的沟通交流工具,在日常活动中,人们通过语言进行信息传递。语言能承载很大的信息量,具有较高的智能水平,在以后的探索中,它是实现机电系统和计算机系统向人一样能感知、能表达的发展方标。一般的播放器都是通过手动来调节,这种操作形式不仅使硬件设施老化迅速,还给手脚不方便的使用者带来很多麻烦。有人预测,语音识别技术在10年之内将迅速进入家电、通信、家庭、汽车及工业等领域。

1语音识别技术的发展现状

语音识别技术最早出现在50年代,AT&T Bell实验室研制的可识别十个英文数字的语音识别系统标志着语音识别技术时代的到来;60年代的重要成果就是用动态规划方法来解决语音识别中不等长的对正问题;70年代,取得了突破性的进展,研制出了基于线性预测倒谱和DW技术的特定人孤立语音识别系统,80年代,HMM模型和人工神经元网络在语音识别系统中的应用使语音识别研究进一步加深;90年代,伴随着多媒体的到来,迫切要求语音识别系统从实验室中走到现实生活中。许多发达国家的著名工资投入巨资在语音系统地实际应用开发中,现今,是市场上出现了语音识别电话和语音识别笔记本电脑等产品的身影,尤其在家电方面应用广泛。

2语音识别技术

2.1语音识别技术定义

语音识别技术是让机器通过识别和理解将人类的语言信号转换为相对应的文本或者命令的技术。语音识别是一门与声学、与声学、语音学、语言学、数学信号处理理论、信息论、计算机学科等众多学科紧密联系的综合学科。它是人和机器交流的一项重要工具,目的在于让机器听懂人类的语言,是机器智能化的一个重要表现。语音识别与人的说话方式、说话语速、说话内容和不同的环境情况有关,语音信号本身的多变性、波动性,持续性、瞬间性在某种程度上增加了语音识别的困难。

2.2语音识别类别

2.2.1按照识别单位划分

包括音素识别、音节识别、孤立局识别、语音理解、识别的单词之间由停顿和连续的识别等。

2.2.2按照词汇识别量划分

包括10-50个的小词汇、50-200个的中词汇、200个以上的大词汇等。

2.2.3按照说话对象的划分

包括固定说话人、多个说话人、不关联说话人的人。其中固定说话人的语音识别比较简单,识别率较高。多个说话人和与说话人无关的语音识别系统的应用范围比较广,实用性较高,但难度系数也是比较大的,识别率不是太高。但是后两者的使用价值比固定说话人的价值更大。

2.2.4按照识别方法分

大体包括概率语义分析法、随机模式法、模板匹配法,还涉及到人工神经网络语音识别和语法是语音识别等。现今,语音识别在连续语音、不是固定人、大量词汇方面发展较多并且取得了一些突破性的成就,如以HMM为构架,构建识别系统模型。

2.3语音识别基本原理

现在大多数语音识别系统都采用模式匹配原理。将待识别的语音先经过话筒转换成为语音信号,然后从识别系统顶端输入,在进行预处理。特征提取部分用来提取语音识别信息中能够代表本质的声音参数。通常训练在识别之前进行,通过讲话者反复重复语音,最初语音样本中除掉多余信息,保留关键数据来实现。模式匹配时语音识别系统的中心,它是根据专家知识和一定的准则计算出输入特征和库存模式之间的近似度,推断出输入语音所要表达的意思。

2.4语音识别的瓶颈

语音识别虽已有50多年的发展史,但在语音识别系统的实际应用中还是碰到了瓶颈,具体表现在依赖外在环境条件和只能在安静的环境下工作。语音识别系统一旦在吵闹的环境下工作,会发生声音失真、发音速度和音调变动的不良现象,一般通过谱减法、环境技术调整、修正识别模型、建立噪声模型这四种手段进行整顿。要想跨过以上瓶颈我们在实际的应用研究中应慎重选择语音识别基元,提高端点检测技术,在语音识别系统中结合韵律信息(说话人的重音、语调等)。

3音乐播放器设计

音乐播放系统实际是多媒体技术在社会生活中的实际应用。多媒体是指能够同时获取、处理、编辑、存储和展示文字、声音、图片、动画、视频等两种不同信息媒体的技术,简而言之,多媒体是一种技术。计算机技术和信息处理技术的发展 , 极大的提高了人类处理多媒体信息的能力。

音频播放系统可以通过音频硬件的自动检测和使用加速,来控制媒体的播放,也可支持没有硬件加速的系统。它所支持的媒体格式包括MP3、WAVE、AVI、DV,这都是我们生活中常用的格式。特别重要的是它可直接支持DVD播放,并且提供的是一种开放式的开发环境。

4 基于语音识别技术的单片机音乐播放器设计

4.1 基于语音识别技术的音乐播放器的硬件设计

4.1.1音乐播放器系统设计

该音乐播放器系统由音频输入和音频输出两个模块组成,音频输入是为实现语音信号识别,音频输入是为实现播放。现提出方案如下:

这一方案件简单易行,节约了很多电路结构。只要注意在语音录入时加入麦克风电路,在语音输出时外接功放电路即可进行实现语音播放功能。

4.1.2音乐播放器电路设计

音乐播放器单片机电路设计

单片机的主电路主要包括晶振,锁相环,复位电路等外围的基本模块。

音乐播放器电源电路设计

通过电池盒提供给的4.5V直流电压经由SPY0029后产生3.3V给整个系统提供电量。SPY0029是一个电压调整IC,引用CMOS技术,它的静态电流低,驱动能力较强,线性调整突出。

音乐播放器键盘调控电路设计

因为该音乐播放器是双重模式控制,除了语音控制播放器外,还有播放,开关机,暂停,停止,上一首,下一首六个按键控制播放器模式。

4.2 音识别技术的音乐播放器的软件设计

在较早的程序设计中都是采用不同的软件来进行处理,研制人员得在几种软件中来回转换使用,例如先用文字处理软件编辑源程序,再用链接程序进行函数处理,最后用编译程序进行编译。现在的研制人员将编辑、翻译、处理等功能放在了一个桌面环境里,这在无形之中给使用者带来了很多的方便。

4.2.1音乐播放器的集成开发环境

该集成开发环境支持16位单片机系列、语言汇编、C语言混合编程的程序开发。它为使用者提供完整的交互桌面,操作简单,调试工作便于进行,他所提供的软件仿真功能可以在脱离仿真板的条件下,模拟硬件部分功能。该开发环境的主口操作界面由六部分组成 : 主菜单、工具栏、工作区、输出去、编辑区、状态栏。

4.2.2 音乐播放器的训练命令程序设计

通过特定发音人训练播放器识别播放、暂停、停止、上一首、下一首这五种命令。

当检测到训练标志位内容为非训练时,这就要求训练者对它进行训练操作。获取结果一般经过两次训练。以训练音乐播放器暂停为例,播放器先会提示操作者输入第一条语音指令,此时训练者说出暂停命令,然后播放器会提示请再说一遍,训练者按照提示再说一遍,只要两次暂停的声音差别不是太大,播放器就会成功建立模型,这时暂停命令训练已经成功,若未能成功建立模型,播放器会提示失败原因,只要注意原因重新训练即可。暂停指令训练成功后,会自然给出下一条有待训练方式。依照按键顺序完成全部训练,训练结束后,子程序返回。

5结语

本文通过对基于语音识别技术的SPCE061A单片机音乐播放器设计分析,有力的证明了语音控制音乐播放器的实用性,通过该项技术我们可以简单轻松的对已经开机的播放器进行播放、暂停、停止、上一首、下一首等模式的命令。与传统的按键控制播放模式相比,其优势是显而易见的。

音乐播放器设计报告 篇7

■屏幕尺寸2.0英寸

■显示分辨率176×220

■音频格式MP3/WMA/WAV/APE/FLAC

■视频格式SMV(M-JPEG)30fps

■信噪比90dB

■频率范围20Hz-20KHz

■输出功率15mW(L)+15mW(R)

■FM调频支持

■FM范围76.0MHz-108MHz

■音频续航51小时

■视频续航5.5小时

■外观尺寸93.5×46×9mm

■机身重量43.7g

■参考价格349元(4GB)

随着手机功能的突飞猛进以及平板电脑的普及,传统的纯音乐MP3播放器似乎已经不再成为消费者关注的焦点,更多的人选择了用手机或是平板电脑作为播放载体。不过,相对于新兴的音乐播放设备,传统的MP3播放器更加精而专,在音质、便携性、续航时间、格式支持等方面都有着属于自己的优势,因而其依旧是许多追求完美音乐享受的消费者的首选。本期将向读者介绍的这款来自韩国的知名厂商艾利和(iRiver)全新推出的E40,就是一款以音乐播放为主兼带有视频播放、图片浏览、电子阅读等诸多功能于一身的音乐播放器,无论在音质还是功能方面都相当贴心。

外观设计:简约纯白+简易操作

提到艾利和,人们最先想到的往往是时尚而独特的外观造型。确实,其产品设计秉承了韩系品牌所惯有的潮流取向,因而也得到了诸多时尚达人们的追捧。不过,相对于许多同门“姐妹”的靓丽风尚,E40显得很有些简约质朴,与其上代产品E30差别也并不明显,同样采用了纯色设计,计有黑白两款,只是显示屏更大了些而已。笔者拿到的是其中的白色版本,虽然机身材质采用了ABS工程塑料,但9mm超薄“体型”搭配由“头”至“脚”的纯白机身干净清爽,而且由于使用了出色的处理技术,握持感很舒适,触摸起来也相当润滑。

E40的机身正面配置有2英寸176×220分辨率的TFT LCD,而且色彩数也达到了26万色,这与入门级的手机基本相当,因而画面表现不错,色彩显示鲜艳,且从不同角度观看的可视角度也比较大。而由于便携音乐播放器“听”大过“看”的实际使用需求,这样的配置应付日常应用已经绰绰有余。E40的功能操作按键被设置屏幕下方,采用了独特的D·Click四方位按键,分为选择键、子菜单和上下切换键。不过需要提醒的是,该按键在视觉上给人以触控操作的感觉,但实际却是实实在在的物理按键,因而在初次使用时难免有手感偏硬的直观印象。

E40的接口设置在机身底部,依次有USB接口和3.5毫米耳机插口,侧面则设有音量调节键和MIC孔,另一边为开/解锁键,长按此键则为开关机功能。整体而言,其按键设计不仅传统而且好不繁琐,最大程度的简化了使用者的操作。

性能配置:直观界面+升级音效

与外观设计一样,E40的UI界面同样采用了简约大方的设计风格,不仅字体大而清晰,还有两种主题风格可供选择,看起来很直观也很舒服。界面分别设有音乐、视频、图片、FM、录音、文件管理器、设置等几大项,都是较为常见的设计,很容易上手掌握。音乐播放方面,E40支持WAV、MP3、WMA、OGG、FLAC、APE、ASF等多种主流音乐格式的播放,以及长达51小时的音乐播放续航能力,可以满足路途上的使用需求。

其他功能方面,E40还支持MP4及AVI两种格式的视频播放、87.5MHz—108.0MHz的FM收音、以及录音等功能。当然,对于这样一款产品而言,如果真的拿来看视频,想必很难引起太多的观看欲望,也无法让我们对其这方面的能力有太多的期望,只能算是聊胜于无吧。

声音表现:升级音效+良好质素

E40采用了WOW技术的升级版本SRS WOW HD音效技术,可以让使用者根据自己的需要和环境调整音响效果。并且新增的High Definition、CENTER、Limiter等技术,使得背景音效更加强。而借助于High Definition人声清晰度更高,低音效果更强劲有力。

在实际音质表现方面,笔者试听了多种不同风格不同题材的音乐。应该说,E40还是比较好的完成了试听任务,声音表现温暖自然,尤其是低音部分表现柔和,层次感分明。高、中音则表现均衡,音质圆润,基本体现出了MP3音乐所应该具备的质素。不过,其随机提供的标配耳机质素平平,用来听大多数的流行歌曲毫无问题,但如果你希望欣赏一些发烧级的曲目,则建议还是更换更高端的耳机为好。

结语

上一篇:第19周测试卷第一单元测试卷下一篇:道德法律化的原理与实践探析