\r
% Author: Guillaume Pellerin <guillaume.pellerin@cnam.fr>\r
\r
-% Last Modified by GUIDE v2.5 07-Nov-2007 18:26:57\r
+% Last Modified by GUIDE v2.5 12-Jan-2008 11:35:34\r
\r
% CNAQ, by itself, creates a new CNAQ or raises the existing\r
% singleton*.\r
elseif fs_ind == 3\r
f_s = 96000;\r
end\r
+ \r
+function set_fs(handles, f_s)\r
+ if f_s == 44100\r
+ fs_ind = 1;\r
+ elseif f_s == 48000\r
+ fs_ind = 2;\r
+ elseif f_s == 96000\r
+ fs_ind = 3;\r
+ end\r
+ set(handles.f_s,'Value',fs_ind);\r
\r
function voices_out = get_voices_out(handles)\r
vo_ind = get(handles.voices_out,'Value');\r
nbits = 24;\r
end\r
\r
-\r
+function set_nbits(handles, nbits)\r
+ if nbits == 16\r
+ nb_ind = 1;\r
+ elseif nbits == 24\r
+ nb_ind = 2;\r
+ end\r
+ set(handles.nbits,'Value', nb_ind);\r
+ \r
%============================================\r
% DONNEES\r
%============================================\r
set(handles.ID,'UserData',sig_mes);\r
set(handles.id_title,'UserData',sig_exc);\r
set(handles.mes_on,'UserData',f);\r
- \r
- % Get infos\r
- username = get(handles.username,'String');\r
- comment = get(handles.comment,'String');\r
- id = get(handles.ID,'String');\r
- \r
- % Compute excitation spectrum\r
- [rep_imp_exc, spec_exc] = fonc_trans(f, sig_exc, sig_exc);\r
- len_spec_exc = length(spec_exc);\r
- spec_exc = spec_exc(1:len_spec_exc/2);\r
- \r
- % Compute all Ris and specs\r
- for i=1:n_col_sig_mes\r
- voice = num2str(i);\r
- [rep_imp_mes, spec_mes] = fonc_trans(f, sig_exc, sig_mes(:,i));\r
- len_spec_mes = length(spec_mes); \r
- spec_mes = spec_mes(1:len_spec_mes/2);\r
- % Plot results\r
- f_lin = [0:f_s/len_spec_mes:f_s/2];\r
- f_lin = f_lin(1:length(f_lin)-1);\r
- plot_mes(t, f_lin, f_s, f_min, f_max, sig_exc, sig_mes(:,i), rep_imp_mes, spec_mes, spec_exc, id, voice, username, comment, i);\r
- end\r
- \r
- set(handles.close_button,'UserData',f_lin');\r
set(handles.plot,'UserData',t);\r
-\r
+ \r
+ % Plot\r
+ plot_Callback(hObject, eventdata, handles)\r
\r
% Close all figures\r
% --- Executes on button press in close_button.\r
% handles structure with handles and user data (see GUIDATA)\r
close all;\r
\r
-\r
+ \r
% --- Executes on button press in plot.\r
function plot_Callback(hObject, eventdata, handles)\r
% hObject handle to plot (see GCBO)\r
plot_mes(t, f_lin, f_s, f_min, f_max, sig_exc, sig_mes(:,i), rep_imp_mes, spec_mes, spec_exc, id, voice, username, comment, i);\r
end\r
\r
+ set(handles.close_button,'UserData',f_lin');\r
+ set(handles.plot,'UserData',t);\r
+ \r
\r
% SAVE all data in a mat file \r
function save_button_Callback(hObject, eventdata, handles) \r
f_lin = get(handles.close_button,'UserData');\r
f_s = get_fs(handles);\r
nbits = get_nbits(handles);\r
+ f = get(handles.mes_on,'UserData');\r
+ t = get(handles.plot,'UserData');\r
f_min = str2double(get(handles.f_gen_min,'String'));\r
f_max = str2double(get(handles.f_gen_max,'String'));\r
time = get(handles.time_gen,'Value');\r
% Increment ID\r
increment_id(handles);\r
\r
-
\ No newline at end of file
+% --- Executes on button press in load.\r
+function load_Callback(hObject, eventdata, handless)\r
+% hObject handle to load (see GCBO)\r
+% eventdata reserved - to be defined in a future version of MATLAB\r
+% handles structure with handles and user data (see GUIDATA)\r
+\r
+ [filename, pathname, filterindex] = uigetfile('*.mat', 'Pick a saved MAT file');\r
+ load([pathname filename]);\r
+ \r
+ % Set data\r
+ set(handless.username,'String',username);\r
+ set(handless.home_dir_box,'String',home_dir);\r
+ set(handless.comment,'String',comment);\r
+ set(handless.id_title,'UserData',sig_exc);\r
+ set(handless.ID,'UserData',sig_mes);\r
+ set(handless.mes_on,'UserData',f_log);\r
+ set(handless.close_button,'UserData',f_lin);\r
+ set_fs(handless, f_s);\r
+ set_nbits(handless, nbits);\r
+ set(handless.mes_on,'UserData', f);\r
+ set(handless.plot,'UserData', t);\r
+ set(handless.f_gen_min,'String', num2str(f_min));\r
+ set(handless.f_gen_max,'String', num2str(f_max));\r
+ set(handless.f_gen,'Value', f);\r
+ set(handles.freq_value,'String',num2str(f));\r
+ set(handless.time_gen,'Value', time);\r
+ set(handles.time_value,'String',num2str(time));\r
+ set(handless.gain_in,'Value', gain_in);\r
+ set(handless.gain_out,'Value', gain_out);\r
+ set(handless.gain_in_value,'String',num2str(gain_in));\r
+ set(handless.gain_out_value,'String',num2str(gain_out));\r
+ \r
+ \r
+
\ No newline at end of file