基于labview的音乐播放器设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
成绩:
《虚拟仪器技术及应用》
课
程
设
计
题目:基于LabVIEW的音乐播放器程序设计
学期:2013~2014学年第一学期
指导教师:
姓名:
学号:
年级、专业:
目录
1程序设计背景 (3)
2程序设计思路 (3)
2.1程序整体设计思路 (3)
2.2程序流程设计 (4)
3程序介绍 (4)
3.1程序各部分模块结构 (4)
3.1.1文件路径判断 (4)
3.1.2媒体播放器调用的实现 (5)
3.1.3当前播放曲目显示的实现 (6)
3.1.4事件结构的设置 (6)
3.1.5路径及其转化实现 (7)
3.2程序整体结构 (7)
4程序改进 (8)
5存在的一些问题 (9)
6结论 (9)
基于LabVIEW的MP3程序设计
1程序设计背景
MP3是利用人耳对高频声音信号不敏感的特性,将时域波形信号转换成频域信号,并划分成多个频段,对不同的频段使用不同的压缩率,对高频加大压缩比(甚至忽略信号)对低频信号使用小压缩比,保证信号不失真。
MP3的工作原理:从内存中取出并读取存储器上的信号→到解码芯片对信号进行解码→通过数模转换器将解出来的数字信号转换成模拟信号→再把转换后的模拟音频放大→低通滤波后到耳机输出口,输出后就是我们所听到的音乐了。
经过几年的发展MP3已经走进了千家万户,使用者也遍布各个年龄段和各个文化阶层。从最初的简单MP3播放器,到现在的手机,平板等便携设备自带的MP3播放器,MP3播放器已经走向大众,并演化为人们生活不可缺少的一部分,车上会有车载MP3,电脑手机平板上的MP3也是必不可少,总之,已经人们时时刻刻都已经在享受着MP3带来的快乐。
2程序设计思路
2.1程序整体设计思路
该虚拟仪器—MP3播放器,主要用于播放已存储计算机磁盘中的音乐文件。它是将播放器的系统装入计算机,以通用的计算机硬件及操作系统为依托,实现音乐功能的。VI程序设计里,默认容易识别的格式为WA V格式,所以在设计MP3时采取调用的方法,本系统主要利用labview的Activex, 属性节点,调用节点,Event structure等控制实现的。MP3音乐播放器界面包括播放歌曲名字,播放路径以及停止按钮。
2.2程序流程设计
程序流程设计:设定路径,判定路径是否有效→无效报错;有效,执行下一阶段程序→调用媒体播放器,编写歌名显示和文件路径显示,设置停止功能按钮→程序结束。
本程序主要涉及到一下控件或结构的使用:
(1)事件结构:包括一个或多个子程序框图或事件分支,结构执行时,仅有一个子程序框图或分支在执行。事件结构可等待直至事件发生,并执行相应条件分支,处理该事件。连线事件结构边框左上角的“超时”接线端,指定事件结构等待事件发生的时间,以毫秒为单位。默认值为–1,即永不超时。
(2)ActiveX容器:用于在VI的前面板上嵌入ActiveX对象。基于Windows 的应用程序可通过此方式在前面板上显示并与LabVIEW控件交互。可在ActiveX 容器中放置两种类型的ActiveX对象。用户可自行创建新的ActiveX控件或文档。也可插入现有的ActiveX控件或文档。框图中的MEDIA PLAYER就是现有的控件。
(3)属性节点:可自动调整为用户所引用的对象的类。LabVIEW的属性节点可访问ActiveX属性。框图中的IWMPPLAYER4和IWMPCONTROLS均为所引用的对像的类。
(4)路径控件:用于输入或返回文件或目录的地址。
(5)字符串/数组/路径转换:使路径转换为字符串,以操作平台的标准格式描述路径。字符是当前平台上通过标准格式路径表示的路径描述符。字符串的数据类型结构与路径一致。
3程序介绍
3.1程序各部分模块结构
3.1.1文件路径判断
在前面板新建银色里新建一个文件路径输入控件,文件路径控件,创建一个
条件判断文件路径的有效性,在条件结构执行中,若路径为真,即有效,则进行程序下一步;路径为假则报错,报错利用建议错误处理器完成。完成此小模块后的程序图如图3-1所示:
图3-1 文件路径及条件结构对路径的判断
3.1.2媒体播放器调用的实现
添加属性节点调整为所引用对象的类:在程序框图中右键单击出“函数”选板,点击“互联接口”,选择ActiveX—属性节点—选择类—ActiveX—IWMPPLAYER4,左键单击属性栏,即可选择相应的属性—URL。若不止一个属性,则下拉属性栏,在按照相同的方法选择相应的属性—controls。其结果如
右图:。IWMPCONTROLS的创建及参数设定方法基本和
IWMPPLAYER4一致,这里就不在重复,其结果如:左下图:。
用ActiveX容器插入MEDIA PLAYER:在前面板上右键单击打开控件,按照控件—经典—经典容器—ActiveX容器—插入ActiveX对象—WindowsMediaPlayer 的步骤即可实现。其结果在前面板上有显示。
用ActiveX容器插入文件路径输入控件:按(4)的步骤打开控件后,按照控件—经典—经典容器—ActiveX容器—替换—文本输入控件—文件路径输入控件操作完成即可。其结果在前面板上也有显示。完成后在程序框图接线,结果如图3-2所示:
图3-2 媒体播放器调用的实现
3.1.3当前播放曲目显示的实现
利用拆分路径控件拆分出“文件名称”和连接字符串连接“正在播放”常量,可实现对当前播放曲目的显示,在前面板添加一个字符串显示控件即可显示出当前播放曲目。控件连线的实现如图3-3所示:
图3-3 正在播放曲目的显示实现
3.1.4事件结构的设置
事件结构的设置:首先按照函数——编程——结构——事件结构的步骤找出事件结构,然后起参数设定过程如下:右键单击事件结构即可出现编辑事件对话框,然后取消左下角的锁定前面板,将事件源修改为“停止”,事件修改为“值改变”。再锁定前面板,即可得到下面的对话框。点击确定保存即可。操作界面设置如果3-4所示: