annotate userProgramsTim/speech_stimuli_check.m @ 38:c2204b18f4a2 tip

End nov big change
author Ray Meddis <rmeddis@essex.ac.uk>
date Mon, 28 Nov 2011 13:34:28 +0000
parents
children
rev   line source
rmeddis@38 1 %skript to test several stimuli with MAP1_14
rmeddis@38 2 % Tim Juergens, September 2011
rmeddis@38 3
rmeddis@38 4 %addpath('C:\Documents and Settings\tjurgens\My Documents\Dropbox\matlab');
rmeddis@38 5 addpath('C:\MAP\userPrograms');
rmeddis@38 6 parameterfile='Normal';
rmeddis@38 7
rmeddis@38 8 %Read the wavfiles
rmeddis@38 9 [da,sfreq] = wavread('..\wavFileStore\new-da-44khz.wav'); %artificial stimulus
rmeddis@38 10 ba = wavread('..\wavFileStore\new-ba-44khz.wav'); %artificial stimulus
rmeddis@38 11
rmeddis@38 12 %set level of speech stimuli (RMS 1 equals 94 dB)
rmeddis@38 13 da_69dB = da./sqrt(mean(da.^2)).*10^(-(94-69)/20);
rmeddis@38 14 da_49dB = da./sqrt(mean(da.^2)).*10^(-(94-49)/20);
rmeddis@38 15 ba_69dB = ba./sqrt(mean(ba.^2)).*10^(-(94-69)/20);
rmeddis@38 16 %20*log10(sqrt(mean(ba_69dB.^2))/20e-6) %reference pressure: 20uPa
rmeddis@38 17
rmeddis@38 18
rmeddis@38 19 cd ..
rmeddis@38 20 cd MAP
rmeddis@38 21
rmeddis@38 22 %MAP and store AN output of HSR fibers in variables
rmeddis@38 23 MAP1_14(da_69dB,sfreq,-1,parameterfile,'probability');
rmeddis@38 24 global ANprobRateOutput
rmeddis@38 25 AN_da_69dB = ANprobRateOutput(1:size(ANprobRateOutput,1)/2,:);
rmeddis@38 26
rmeddis@38 27 MAP1_14(da_49dB,sfreq,-1,parameterfile,'probability');
rmeddis@38 28 global ANprobRateOutput
rmeddis@38 29 AN_da_49dB = ANprobRateOutput(1:size(ANprobRateOutput,1)/2,:);
rmeddis@38 30 %
rmeddis@38 31 MAP1_14(ba_69dB,sfreq,-1,parameterfile,'probability');
rmeddis@38 32 global ANprobRateOutput
rmeddis@38 33 global savedBFlist
rmeddis@38 34 AN_ba_69dB = ANprobRateOutput(1:size(ANprobRateOutput,1)/2,:);
rmeddis@38 35
rmeddis@38 36 %Do the IPIH analysis
rmeddis@38 37 [iih_da_69dB,IPIhisttime_da_69dB,IPIhistweight_da_69dB] = track_formants_from_IPI_guy(AN_da_69dB,sfreq);
rmeddis@38 38 %[iih_da_69dB,IPIhisttime_da_69dB,IPIhistweight_da_69dB] = IPIHextract(AN_da_69dB,sfreq);
rmeddis@38 39 poolIPI_across_channels(IPIhisttime_da_69dB,IPIhistweight_da_69dB);
rmeddis@38 40 map_iih_onto_log(iih_da_69dB,30,sfreq);
rmeddis@38 41 [iih_da_49dB,IPIhisttime_da_49dB,IPIhistweight_da_49dB] = track_formants_from_IPI_guy(AN_da_49dB,sfreq);
rmeddis@38 42 % poolIPI_across_channels(IPIhisttime_da_49dB,IPIhistweight_da_49dB);
rmeddis@38 43 %
rmeddis@38 44 [iih_ba_69dB,IPIhisttime_ba_69dB,IPIhistweight_ba_69dB] = track_formants_from_IPI_guy(AN_ba_69dB,sfreq);
rmeddis@38 45 % [tmp,ctr]=poolIPI_across_channels(IPIhisttime_ba_69dB,IPIhistweight_ba_69dB);
rmeddis@38 46 %
rmeddis@38 47
rmeddis@38 48
rmeddis@38 49
rmeddis@38 50 %%%%%% OLLO stimuli %%%%%%%%%%%%%%%%%
rmeddis@38 51 % OLLOwavfiles = {'dahd','bahb','dehd','behb','died','bieb','dohd','bohb','duhd','buhb','atta','ascha','assa'};
rmeddis@38 52 % OLLO_level = 69; %level of OLLO files in dB SPL
rmeddis@38 53 % paramChanges = [];%{'DRNLParams.rateToAttenuationFactorProb = 0;'};
rmeddis@38 54 %
rmeddis@38 55 % for iCounter = 1:length(OLLOwavfiles)
rmeddis@38 56 %
rmeddis@38 57 % %read the stimuli
rmeddis@38 58 % eval(['[' OLLOwavfiles{iCounter} ',sfreq_OLLO] = wavread([''..\wavFileStore\S02M_L' ...
rmeddis@38 59 % sprintf('%3.3i',sloga2iloga(OLLOwavfiles{iCounter})) '_V6_M1_N2_CS0.wav'']);'])
rmeddis@38 60 %
rmeddis@38 61 % %delete preceding and subsequent silence and resample to 44100 Hz
rmeddis@38 62 % %sampling frequency
rmeddis@38 63 % eval([OLLOwavfiles{iCounter} ' = cutsignal(' OLLOwavfiles{iCounter} ',sfreq_OLLO,''d_d'');']);
rmeddis@38 64 % eval([OLLOwavfiles{iCounter} ' = resample(' OLLOwavfiles{iCounter} ',sfreq,sfreq_OLLO);']);
rmeddis@38 65 %
rmeddis@38 66 % %set level
rmeddis@38 67 % partfilename = [OLLOwavfiles{iCounter} num2str(OLLO_level) 'dB'];
rmeddis@38 68 % eval([partfilename ' = ' OLLOwavfiles{iCounter} ...
rmeddis@38 69 % './sqrt(mean(' OLLOwavfiles{iCounter} '.^2)).*10^(-(94-' num2str(OLLO_level) ')/20);']);
rmeddis@38 70 %
rmeddis@38 71 % %use MAP
rmeddis@38 72 % eval(['MAP1_14(' partfilename ',sfreq,-1,parameterfile,''probability'', paramChanges );']);
rmeddis@38 73 % global ANprobRateOutput
rmeddis@38 74 % eval(['AN_' partfilename ' = ANprobRateOutput(1:size(ANprobRateOutput,1)/2,:);']);
rmeddis@38 75 %
rmeddis@38 76 % %Do the IPIH analysis
rmeddis@38 77 % eval(['[iih_' partfilename ',IPIhisttime_' partfilename ',IPIhistweight_' ...
rmeddis@38 78 % partfilename '] = track_formants_from_IPI_guy(AN_' partfilename ',sfreq);']);
rmeddis@38 79 % eval(['poolIPI_across_channels(IPIhisttime_' partfilename ',IPIhistweight_' partfilename ');']);
rmeddis@38 80 % title(partfilename);
rmeddis@38 81 % %set(gca,'Title',partfilename);
rmeddis@38 82 % xlabel('Interval (ms)')
rmeddis@38 83 % ylabel('Stimulus time (ms)');
rmeddis@38 84 %
rmeddis@38 85 % eval(['map_iih_onto_log(iih_' partfilename ',30,sfreq);']);
rmeddis@38 86 % title(partfilename);
rmeddis@38 87 % end
rmeddis@38 88
rmeddis@38 89
rmeddis@38 90 %%%%%%%%%%%%% OLLO stimuli from different speakers
rmeddis@38 91 % OLLOwavfiles = {'S01F_L111_V6_M1_N2_CS0.wav','S02M_L111_V6_M1_N2_CS0.wav'};
rmeddis@38 92 % OLLO_level = 69; %level of OLLO files in dB SPL
rmeddis@38 93 % for iCounter = 1:length(OLLOwavfiles)
rmeddis@38 94 %
rmeddis@38 95 % partfilename = [OLLOwavfiles{iCounter}(1:end-4) num2str(OLLO_level) 'dB'];
rmeddis@38 96 % %read the stimuli
rmeddis@38 97 % eval(['[' partfilename ',sfreq_OLLO] = wavread([''..\wavFileStore\' OLLOwavfiles{iCounter} ''']);'])
rmeddis@38 98 %
rmeddis@38 99 % %delete preceding and subsequent silence and resample to 44100 Hz
rmeddis@38 100 % %sampling frequency
rmeddis@38 101 % eval([partfilename ' = cutsignal(' partfilename ',sfreq_OLLO,''d_d'');']);
rmeddis@38 102 % eval([partfilename ' = resample(' partfilename ',sfreq,sfreq_OLLO);']);
rmeddis@38 103 %
rmeddis@38 104 % %set level
rmeddis@38 105 %
rmeddis@38 106 % eval([partfilename ' = ' partfilename ...
rmeddis@38 107 % './sqrt(mean(' partfilename '.^2)).*10^(-(94-' num2str(OLLO_level) ')/20);']);
rmeddis@38 108 %
rmeddis@38 109 % %use MAP
rmeddis@38 110 % eval(['MAP1_14(' partfilename ',sfreq,-1,parameterfile,''probability'');']);
rmeddis@38 111 % global ANprobRateOutput
rmeddis@38 112 % eval(['AN_' partfilename ' = ANprobRateOutput(1:size(ANprobRateOutput,1)/2,:);']);
rmeddis@38 113 %
rmeddis@38 114 % %Do the IPIH analysis
rmeddis@38 115 % eval(['[iih_' partfilename ',IPIhisttime_' partfilename ',IPIhistweight_' ...
rmeddis@38 116 % partfilename '] = track_formants_from_IPI_guy(AN_' partfilename ',sfreq);']);
rmeddis@38 117 % eval(['poolIPI_across_channels(IPIhisttime_' partfilename ',IPIhistweight_' partfilename ');']);
rmeddis@38 118 % title(partfilename);
rmeddis@38 119 % %set(gca,'Title',partfilename);
rmeddis@38 120 % xlabel('Interval (ms)')
rmeddis@38 121 % ylabel('Stimulus time (ms)');
rmeddis@38 122 %
rmeddis@38 123 % eval(['map_iih_onto_log(iih_' partfilename ',30,sfreq);']);
rmeddis@38 124 % title(partfilename);
rmeddis@38 125 % end
rmeddis@38 126
rmeddis@38 127
rmeddis@38 128
rmeddis@38 129 %%%%%% da stimuli with different pitches %%%%%%%%%%%%%%%%%
rmeddis@38 130
rmeddis@38 131 dawavfiles = { '200ms_da_080Hz.wav','200ms_da_100Hz.wav','200ms_da_120Hz.wav','200ms_da_140Hz.wav', ...
rmeddis@38 132 '200ms_da_160Hz.wav','200ms_da_180Hz.wav','200ms_da_200Hz.wav','200ms_da_220Hz.wav', ...
rmeddis@38 133 '200ms_da_240Hz.wav', ...
rmeddis@38 134 'noise.wav', ...
rmeddis@38 135 'da_whispered.wav', ...
rmeddis@38 136 };
rmeddis@38 137
rmeddis@38 138 da_level = 69; %level of OLLO files in dB SPL
rmeddis@38 139 for iCounter = 1:length(dawavfiles)
rmeddis@38 140
rmeddis@38 141 %read the stimuli
rmeddis@38 142 partfilename = ['da' dawavfiles{iCounter}(1:end-4)];
rmeddis@38 143 eval([ partfilename ' = wavread(''..\wavFileStore\' dawavfiles{iCounter} ''');'])
rmeddis@38 144
rmeddis@38 145 %set level
rmeddis@38 146 eval([partfilename ' = ' partfilename ...
rmeddis@38 147 './sqrt(mean(' partfilename '.^2)).*10^(-(94-' num2str(da_level) ')/20);']);
rmeddis@38 148
rmeddis@38 149 %use MAP
rmeddis@38 150 eval(['MAP1_14(' partfilename ',sfreq,-1,parameterfile,''probability'');']);
rmeddis@38 151 global ANprobRateOutput
rmeddis@38 152 eval(['AN_' partfilename ' = ANprobRateOutput(1:size(ANprobRateOutput,1)/2,:);']);
rmeddis@38 153
rmeddis@38 154 %Do the IPIH analysis
rmeddis@38 155 eval(['[iih_' partfilename ',IPIhisttime_' partfilename ',IPIhistweight_' ...
rmeddis@38 156 partfilename '] = IPIHextract(AN_' partfilename ',sfreq);']);%partfilename '] = track_formants_from_IPI_guy(AN_' partfilename ',sfreq);']);%
rmeddis@38 157 eval(['poolIPI_across_channels(IPIhisttime_' partfilename ',IPIhistweight_' partfilename ');']);
rmeddis@38 158 title(partfilename);
rmeddis@38 159 %set(gca,'Title',partfilename);
rmeddis@38 160 xlabel('Interval (ms)')
rmeddis@38 161 ylabel('Stimulus time (ms)');
rmeddis@38 162
rmeddis@38 163 eval(['map_iih_onto_log(iih_' partfilename ',30,sfreq);']);
rmeddis@38 164 title(partfilename);
rmeddis@38 165 end
rmeddis@38 166 %
rmeddis@38 167 %
rmeddis@38 168