From 28c7b97eebeaa1cea4f0eae3d3aeb87123d8e3aa Mon Sep 17 00:00:00 2001 From: yomguy Date: Fri, 21 Mar 2008 16:51:32 +0000 Subject: [PATCH] * Translate all fields into english * Add white and pink noise generation (thanks to Etienne Corteel) * Add /lib folder, move tools git-svn-id: http://svn.parisson.org/svn/CNAQ/trunk@150 5fc3e0e6-29bc-4d03-b52b-c088cb822bde --- CNAQ.fig | Bin 13651 -> 13676 bytes CNAQ.m | 24 +++++++++++++----- .../pa_wavplay usage instructions.txt | 0 {pa_wavplay => lib/pa_wavplay}/pa_wavplay.m | 0 .../pa_wavplay}/pa_wavplayrecord.m | 0 {pa_wavplay => lib/pa_wavplay}/pa_wavrecord.m | 0 {pa_wavplay => lib/pa_wavplay}/pawavplaya.dll | Bin {pa_wavplay => lib/pa_wavplay}/pawavplayw.dll | Bin {pa_wavplay => lib/pa_wavplay}/pawavplayx.dll | Bin {vu-meters => tools/vu-meters}/meterH.exe | Bin {vu-meters => tools/vu-meters}/meterV.exe | Bin 11 files changed, 18 insertions(+), 6 deletions(-) rename {pa_wavplay => lib/pa_wavplay}/pa_wavplay usage instructions.txt (100%) rename {pa_wavplay => lib/pa_wavplay}/pa_wavplay.m (100%) rename {pa_wavplay => lib/pa_wavplay}/pa_wavplayrecord.m (100%) rename {pa_wavplay => lib/pa_wavplay}/pa_wavrecord.m (100%) rename {pa_wavplay => lib/pa_wavplay}/pawavplaya.dll (100%) rename {pa_wavplay => lib/pa_wavplay}/pawavplayw.dll (100%) rename {pa_wavplay => lib/pa_wavplay}/pawavplayx.dll (100%) rename {vu-meters => tools/vu-meters}/meterH.exe (100%) rename {vu-meters => tools/vu-meters}/meterV.exe (100%) diff --git a/CNAQ.fig b/CNAQ.fig index 26618f35c9115af090a936992c4e4588c5df10ca..ccc37715962e02d6733188bdbbc76a920e335a7e 100644 GIT binary patch literal 13676 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 bM>_8?L|P!y`_2JFGW73L3JK?sUgZA+b=b+{ diff --git a/CNAQ.m b/CNAQ.m index 387d276..646b178 100644 --- a/CNAQ.m +++ b/CNAQ.m @@ -124,7 +124,7 @@ root_dir = pwd; % The directory where CNAQ is installed cnaq_path = root_dir; config_path = [cnaq_path filesep 'config' filesep]; tools_path = [cnaq_path filesep 'tools' filesep]; -pa_path = [cnaq_path filesep 'pa_wavplay' filesep]; +pa_path = [cnaq_path filesep 'lib' filesep 'pa_wavplay' filesep]; path(path, cnaq_path); path(path, tools_path); path(path, pa_path); @@ -134,13 +134,13 @@ path(path, config_path); [device, latency] = asio(); % Get home directory -home_dir = uigetdir(root_dir, 'Choose your home directory'); +home_dir = uigetdir(root_dir, 'Choose your workspace'); % Get/Set ID id = get_id(handles); set(handles.ID,'String',id); set(handles.home_dir_box,'String',home_dir); -set(handles.info1_text,'String',['CNAQ v' cnaq_version ' - Copyright (C) 2007']); +set(handles.info1_text,'String',['CNAQ v' cnaq_version ' - Copyright (C) 2007-2008']); set(handles.info2_text,'String','Guillaume Pellerin, Manuel Melon (CNAM Paris) http://svn.parisson.org/cnaq/'); % Set default values @@ -169,7 +169,7 @@ set(handles.f_s,'String','44100|48000|88200|96000|192000'); %set(handles.out_on_off,'Value',0); set(handles.in_on_off,'Value',0); set(handles.gen_on_off,'Value',0); -set(handles.sig_type,'String','Sinus|Chirp'); +set(handles.sig_type,'String','Sinus|Chirp|White noise|Pink noise'); set(handles.voices_in,'String','1|1 2|1 2 3|1 2 3 4'); set(handles.voices_out,'String','1|1 2|1 2 3|1 2 3 4'); @@ -216,8 +216,12 @@ function set_fs(handles, f_s) fs_ind = 1; elseif f_s == 48000 fs_ind = 2; - elseif f_s == 96000 + elseif f_s == 88200 fs_ind = 3; + elseif f_s == 96000 + fs_ind = 4; + elseif f_s == 192000 + fs_ind = 5; end set(handles.f_s,'Value',fs_ind); @@ -490,6 +494,7 @@ function gen_on_off_Callback(hObject, eventdata, handles) gain_out = get(handles.gain_out,'Value'); gain_out = 10^(gain_out/20); t = [0:1/f_s:time]; + n_t = length(t); if sig_type == 1 % SINUS @@ -497,6 +502,12 @@ function gen_on_off_Callback(hObject, eventdata, handles) elseif sig_type == 2 % CHIRP sig = gain_out*chirp(t,f_min,time,f_max,'logarithmic'); + elseif sig_type == 3 + % WHITE NOISE + sig = gain_out*white_noise(n_t); + elseif sig_type == 4 + % PINK NOISE + sig = gain_out*pink_noise(n_t); end sig_out = []; @@ -707,7 +718,8 @@ function save_button_Callback(hObject, eventdata, handles) % Increment ID increment_id(handles); - + + % --- Executes on button press in load. function load_Callback(hObject, eventdata, handless) % hObject handle to load (see GCBO) diff --git a/pa_wavplay/pa_wavplay usage instructions.txt b/lib/pa_wavplay/pa_wavplay usage instructions.txt similarity index 100% rename from pa_wavplay/pa_wavplay usage instructions.txt rename to lib/pa_wavplay/pa_wavplay usage instructions.txt diff --git a/pa_wavplay/pa_wavplay.m b/lib/pa_wavplay/pa_wavplay.m similarity index 100% rename from pa_wavplay/pa_wavplay.m rename to lib/pa_wavplay/pa_wavplay.m diff --git a/pa_wavplay/pa_wavplayrecord.m b/lib/pa_wavplay/pa_wavplayrecord.m similarity index 100% rename from pa_wavplay/pa_wavplayrecord.m rename to lib/pa_wavplay/pa_wavplayrecord.m diff --git a/pa_wavplay/pa_wavrecord.m b/lib/pa_wavplay/pa_wavrecord.m similarity index 100% rename from pa_wavplay/pa_wavrecord.m rename to lib/pa_wavplay/pa_wavrecord.m diff --git a/pa_wavplay/pawavplaya.dll b/lib/pa_wavplay/pawavplaya.dll similarity index 100% rename from pa_wavplay/pawavplaya.dll rename to lib/pa_wavplay/pawavplaya.dll diff --git a/pa_wavplay/pawavplayw.dll b/lib/pa_wavplay/pawavplayw.dll similarity index 100% rename from pa_wavplay/pawavplayw.dll rename to lib/pa_wavplay/pawavplayw.dll diff --git a/pa_wavplay/pawavplayx.dll b/lib/pa_wavplay/pawavplayx.dll similarity index 100% rename from pa_wavplay/pawavplayx.dll rename to lib/pa_wavplay/pawavplayx.dll diff --git a/vu-meters/meterH.exe b/tools/vu-meters/meterH.exe similarity index 100% rename from vu-meters/meterH.exe rename to tools/vu-meters/meterH.exe diff --git a/vu-meters/meterV.exe b/tools/vu-meters/meterV.exe similarity index 100% rename from vu-meters/meterV.exe rename to tools/vu-meters/meterV.exe -- 2.39.5