matlab制作音乐播放器GUI界面
一.打开matlab App Designer设计界面
在App Designer的代码视图中初始化参数,代码如下:
properties (Access = private)
music_path = ''; % Description
frameSize = 1024;
end
properties (Access = public)
stop_flag = false;
pause_flag = false;
origin_flag = false;
end
二.制作播放界面
1.打开音频文件
在App Designer中选择按钮,将按钮命名为选择音频文件,编写回调函数,代码如下:
function Button_7Pushed(app, event)
[file,path] = uigetfile('*.*');
app.music_path = fullfile(path,file);
end
2.播放音频文件
在App Designer中选择按钮,将按钮命名为播放,编写回调函数,代码如下:
function Button_8Pushed(app, event)
app.stop_flag = false;
app.pause_flag = false;
app.origin_flag = false;
fileReader = dsp.AudioFileReader(app.music_path,"SamplesPerFrame",app.frameSize);
deviceWriter = audioDeviceWriter("SampleRate",fileReader.SampleRate);
while ~isDone(fileReader)
% 此处可以添加代码对原始音频信号实时处理
originalSignal = fileReader();
% 控制结束
if app.stop_flag == true
break
end
% 控制暂停/继续
if app.pause_flag == true
while(1)
pause(0.001);
if app.pause_flag == false
break;
end
end
end
% 播放音频文件或者处理之后的音频文件
deviceWriter(originalSignal);
%如果需要和其他回调函数进行交互,比如实时读取用户输入的控制参数数据,需要添加代码pause(0.001)
pause(0.001);
end
release(fileReader)
release(deviceWriter)
end
3.播放暂停和继续
在App Designer中选择按钮,将按钮命名为暂停/继续,编写回调函数,代码如下:
function Button_11Pushed(app, event)
if app.pause_flag == false
app.pause_flag = true;
else
app.pause_flag = false;
end
end
4.结束播放
在App Designer中选择按钮,将按钮命名为结束,编写回调函数,代码如下:
function Button_9Pushed(app, event)
app.stop_flag = true;
end
三,播放界面如下


浙公网安备 33010602011771号