所有栏目 | 云社区 美国云服务器[国内云主机商]
你的位置:首页 > 云社区 » 正文

用matlab实现对音频文件的播放代码?

发布时间:2020-04-15 16:43:26

资讯分类:matlab  音频  代码  播放  音频  播放  功能
用matlab实现对音频文件的播放代码?

如何用MATLAB制作音频播放器之<The Economist>简介:The Economist(包含文档与音频,简称TE)是优秀的英语读物,但使用常规音乐播放器难以实现文档与音频文件的对应阅读。因此,本文利用MATLAB软件,制作一种TE杂志的专用音频播放器。该播放器能实现TE杂志与相应音频的对应关系、半自动搜索杂志与音频、杂志打开、音频播放(暂停、停止)、顺序播放、单期循环、音频跳播与时间显示、按钮图标显示与切换等功能。使用结果表明,该程序能有效实现音频播放功能、TE杂志与音频的对应检索功能等,能满足常规应用需求。一、功能需求与设计难点:实现杂志与音频搜索; 实现TE杂志与其音频的对应关系;实现音频播放、暂停、停止等功能;实现音频播放过程中的进度条显示与时长显示功能;实现音频的顺序播放、单期循环、音频跳播等功能;实现按钮图标的显示与切换功能;二、解决方案:选择文件夹后,自动递归搜索该文件夹下指定类型的文件;在TE杂志列表中选中某期后,在该文件所属的文件夹自动搜索对应音频并显示;将音频文件送入workspace,通过play()、resume()、pause()与stop()与evalin()等函数实现音频的播放控制;每个音频播放时均添加timer function,定时更新进度条与时长标签的状态;设计全局timer函数,结合isplaying()函数定时检测workspace中音频的播放状态,若isplaying=0,则查找当前播放音频编号,按顺序加载下一个音频到workspace中;若当前音频已是最后一个,则加载编号001的音频;跳播时,先暂停timers,再根据进度条移动后的数值与当前音频的TotalSamples属性,计算音频的起始采样位置,利用play(player, start)函数播放;利用图标重采样与imread()后,送入按钮的CData属性,实现图标显示与切换。三、结果四、总结应用MATLAB可以有效实现音频播放控制功能;MATLAB的音频控制函数太少,一些函数需要自己造轮子;题外话MATLAB确实厉害,应用功能齐全,但更多轮子仍需完善。这个程序从构思到设计完成,共花了3天时间,很多时间都浪费在怎么处理一些小问题上。初始构思时的功能很简单,能实现杂志与音频的对应关系就行,但看着某音乐播放器,觉得这个程序功能少、界面丑,后期一点点调试增加功能与美化图标。总之,这个程序的设计花了不少时间,但方便了后续应用。

留言与评论(共有 0 条评论)
   
验证码:
Top