How can I ensure that when I click the play button more than once in my MATLAB GUI, the audio is played only once, regardless of how many times I press the play button?
% PLAY BUTTON function pushbutton2_Callback(hObject, eventdata, handles) % hObject handle to pushbutton2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) audiofile = handles.fullpathname; % the input audio file is stored in "audiofile" variable. [x, fs] = audioread(audiofile); guidata(hObject, handles); handles.CP=1; % Storing the value of slider in respective variables. slider_1 = get(handles.slider1, 'Value'); slider_2 = get(handles.slider2, 'Value'); slider_3 = get(handles.slider3, 'Value'); slider_4 = get(handles.slider4, 'Value'); slider_6 = get(handles.slider6, 'Value'); % Applying different filters on these variables. filter1 = BPF63(x, slider_1); filter2 = BPF250(x, slider_2); filter3 = BPF1000(x, slider_3); filter4 = BPF4000(x, slider_4); filter6 = BPF16000(x, slider_6); %Adding all these variables to make the new signal. total = filter1 + filter2 + filter3 + filter4 + filter6; sound(total,fs); %Plotting the signals plot(handles.axes1, 1:length(x),x); grid on; fourier = fft(x); plot(handles.axes3, 1:length(fourier), abs(fourier)); grid on; plot(handles.axes4, 1:length(total), total); grid on; total_fourier = fft(total); plot(handles.axes5, 1:length(total_fourier), abs(total_fourier)) grid on; end
% Button pushed function: PlayButton function PlayButtonPushed(app, event) %Disable the button set(app.PlayButton,'Enable','off'); %Read and play the audio [x,fs] = audioread(app.FilePathEditField.Value); sound(x,fs); %you can add any of your plots etc either before %or after the pause depending on desired effect %Wait for audio to finish pause(length(x)/fs); %Re-enable the button set(app.PlayButton,'Enable','on') end
Matlabsolutions.com provides guaranteed satisfaction with a
commitment to complete the work within time. Combined with our meticulous work ethics and extensive domain
experience, We are the ideal partner for all your homework/assignment needs. We pledge to provide 24*7 support
to dissolve all your academic doubts. We are composed of 300+ esteemed Matlab and other experts who have been
empanelled after extensive research and quality check.
Matlabsolutions.com provides undivided attention to each Matlab
assignment order with a methodical approach to solution. Our network span is not restricted to US, UK and Australia rather extends to countries like Singapore, Canada and UAE. Our Matlab assignment help services
include Image Processing Assignments, Electrical Engineering Assignments, Matlab homework help, Matlab Research Paper help, Matlab Simulink help. Get your work
done at the best price in industry.