我在 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/