我在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时我都不必一直听完整首歌......有什么建议吗? Thanx提前:))
答案 0 :(得分:3)
您应该使用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?