我在MATLAB中创建了一个GUI,以分析钢琴歌曲。我的GUI基本上有一个加载,播放和停止按钮。
我使用代码加载文件
[FileName,PathName] = uigetfile({'*.wav'},'Load Wav File');
[x,Fs] = wavread([PathName '/' FileName]);
handles.fileLoaded = 1;
guidata(hObject, handles);
这是我用来播放歌曲的代码
if (handles.fileLoaded==1)
sound(handles.x, handles.Fs);
end
之后,我不确定如何停止播放歌曲,因此每次我测试GUI时,都不必继续收听整首歌曲...有什么建议吗?
提前感谢:)
最佳答案
您应该使用audioplayer
[FileName,PathName] = uigetfile({'*.wav'},'Load Wav File');
[x,Fs] = wavread([PathName '/' FileName]);
player=audioplayer(x,Fs);
% start the playback
play(player);
% pause the playback
pause(player);
% resume the playback
resume(player)
% stop the playback
stop(player)
您可以在按钮代码中使用audioplayer类方法。
您也可以查看此链接How to stop sound in MATLAB?
关于matlab - 停止在MATLAB GUI中播放wav文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20027989/