Step:
[filename, filepath] = uigetfile('*.mp3');if filepath == 0 set (handles.musicname,'String','None');else set (handles.musicname,'String',filename); [Path] = [filepath filename]; [handles.oridata,handles.fre] = audioread([Path]); L = (length(handles.oridata))/handles.fre; set (handles.Length,'String',L); set (handles.endtime,'String',L); handles.player = audioplayer(handles.oridata,handles.fre); handles.data = handles.oridata; handles.frecha = handles.fre; handles.temp = handles.player; handles.reverse = flipud(handles.data);endglobal Stime;global Etime;if str2double(get(handles.starttime,'String')) == 0 Stime = 1;else Stime =(str2double (get(handles.starttime,'String')))*handles.fre;endif str2double(get(handles.endtime,'String')) == 0 Etime = 1;else Etime =(str2double (get(handles.endtime,'String')))*handles.fre;endif (Stime > Etime) handles.data = handles.reverse;else handles.data = handles.oridata;endguidata(hObject,handles);global Stime;global Etime;handles.temp = audioplayer(handles.data,handles.frecha);play(handles.temp,[Stime,Etime]);guidata(hObject,handles);Time = 1:length(handles.data)/handles.frecha;plot(handles.axes1,Time,handles.data);hold on;class(handles.data);guidata(hObject,handles);resume(handles.temp);guidata(hObject,handles);pause(handles.temp);guidata(hObject,handles);stop(handles.temp);guidata(hObject,handles);cla(handles.axes1);Volume = get(handles.Vsilder, 'Value');set(handles.volume,'String',Volume);global Stime;global Etime;if (Stime > Etime) handles.data = (Volume)*(handles.reverse);else handles.data = (Volume)*(handles.oridata);endif isplaying(handles.temp) pause(handles.temp); sample = handles.temp.CurrentSample; handles.run = audioplayer(handles.data,handles.frecha); play(handles.run,sample);else sample = handles.temp.CurrentSample; handles.run = audioplayer(handles.data,handles.frecha); play(handles.run,sample); pause(handles.run);endhandles.temp = handles.run;guidata(hObject,handles);Frequency = get(handles.Frqslider,'Value');set(handles. frequency,'String',Frequency);handles.frecha = (Frequency)*(handles.fre);if isplaying(handles.temp) pause(handles.temp); sample = handles.temp.CurrentSample; handles.temp = audioplayer(handles.data,handles.frecha); play(handles.temp,sample);else sample = handles.temp.CurrentSample; handles.temp = audioplayer(handles.data,handles.frecha); play(handles.temp,sample); pause(handles.temp);endguidata(hObject,handles);stop(handles.temp);global Stime;global Etime;if str2double(get(handles.starttime,'String')) == 0 Stime = 1;else Stime =(str2double (get(handles.starttime,'String')))*handles.fre;endif str2double(get(handles.endtime,'String')) == 0 Etime = 1;else Etime =(str2double (get(handles.endtime,'String')))*handles.fre;endif (Stime > Etime) handles.data = handles.reverse;else handles.data = handles.oridata;endguidata(hObject,handles);stop(handles.temp);global Stime;global Etime;if str2double(get(handles.starttime,'String')) == 0 Stime = 1;else Stime =(str2double (get(handles.starttime,'String')))*handles.fre;endif str2double(get(handles.endtime,'String')) == 0 Etime = 1;else Etime =(str2double (get(handles.endtime,'String')))*handles.fre;endif (Stime > Etime) handles.data = handles.reverse;else handles.data = handles.oridata;endguidata(hObject,handles);set(handles.volume,'String',1);set(handles. frequency,'String',1);set(handles.Frqslider,'Value',1);set(handles.Vsilder,'Value',1);global Stime;global Etime;if (Stime > Etime) handles.data = handles.reverse;else handles.data = handles.oridata;endhandles.frecha = handles.freif isplaying(handles.temp) pause(handles.temp); sample = handles.temp.CurrentSample; handles.temp = audioplayer(handles.data,handles.fre); play(handles.temp,sample);else handles.temp = audioplayer(handles.data,handles.fre); sample = handles.temp.CurrentSample; play(handles.temp,sample); pause(handles.temp);endguidata(hObject,handles);