Help on making MULTIRESOLUTION WAVELET ANALYSIS available ? - Page 3 - diyAudio
Go Back   Home > Forums > Design & Build > Software Tools

Software Tools SPICE, PCB CAD, speaker design and measurement software, calculators

Please consider donating to help us continue to serve you.

Ads on/off / Custom Title / More PMs / More album space / Advanced printing & mass image saving
Reply
 
Thread Tools Search this Thread
Old 19th April 2010, 08:57 PM   #21
mige0 is offline mige0  Austria
diyAudio Member
 
mige0's Avatar
 
Join Date: Jan 2005
Location: Austria, at a beautiful place right in the heart of the Alps.
function [wtf_mag_norm] = wtf_mag_norm(wtf_mag, d_bug)

%--------------------------------------------------------
% wtf_mag_norm
%--------------------------------------------------------
% This file is part of Diy_Audio_WTF package, intended to get started on Audio Wavelet Transformation
% on free Octave software
% Copyright (C) 2010 Michael Gerstgrasser
%
% "wtf_mag_norm" is a function to normalize magnitude of wavelet analysis
%
% Input variables :
% wtf_mag is magnitude of wavelet analysis
% d_bug is for providing additional information in case of debug mode
%
% Output variables:
% wtf_mag_norm is normalized magnitude of wavelet analysis
%
%
% see also load_wav_ir.m, load_ascii_ir.m, load_ascii1_ir.m, fft_ir_raw, waveletdemo.m

% Contributing authors to the Diy_Audio_WTF package in order of code publishing date:
%
% Michael Gerstgrasser - Contact information: user 'mige0' at www.diyaudio.com
% Elias Pekonen - Contact information: user 'Elias' at www.diyaudio.com
% J. Lewalle: Prof. Jacques Lewalle
%
% check out on www.diyaudio.com :
% "Help on making MULTIRESOLUTION WAVELET ANALYSIS available ?"
% Help on making MULTIRESOLUTION WAVELET ANALYSIS available ?
% "WTF!? Wavelet TransForm for audio measurements - What-is? and How-to?"
% WTF!? Wavelet TransForm for audio measurements - What-is? and How-to?
% "Horn Honk $$ WANTED $$"
% Horn Honk $$ WANTED $$
%
% Diy_Audio_WTF (Wavelet Audio Analysis) is free software; you can redistribute it and/or modify it
% under the terms of the GNU General Public License as published by the
% Free Software Foundation; either version 2, or (at your option) any
% later version.
%
% Diy_Audio_WTF is distributed in the hope that it will be useful, but WITHOUT
% ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
% FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
% for more details.
%
% You should have received a copy of the GNU General Public License
% along with Diy_WAA; see the file COPYING. If not, write to the Free
% Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
%
%--------------------------------------------------------


if d_bug == 1;
disp ("DEBUG REPORT: processing function : wtf_mag_norm , please WAIT !" )
endif

max_wtf_mag = max(max(wtf_mag));
min_wtf_mag = min(min(wtf_mag));

wtf_mag_norm = wtf_mag - max_wtf_mag; % set matrix peak value to 0


if d_bug == 1;
disp ("DEBUG REPORT: function : wtf_mag_norm processed successfully" )
endif


endfunction
  Reply With Quote
Old 19th April 2010, 08:58 PM   #22
mige0 is offline mige0  Austria
diyAudio Member
 
mige0's Avatar
 
Join Date: Jan 2005
Location: Austria, at a beautiful place right in the heart of the Alps.
function [wtf_t, wtf_f, wtf_mag] = wtf_lecleach (ir_time_trim, ir_amp_trim, d_bug);
%
% This file is part of Diy_Audio_WTF package, intended to get started on Audio Wavelet Transformation
% on free Octave software
% by Jean-Michel Le Clac'h (version 2010)
% adapted by Michael Gerstgrasser 2010
%
% "wtf_lecleach" is a function to perform Jean-Michel LeCleach spectrogram wavelt analysis.
% "wtf_lecleach" is EXCLUDED from GNU licence of the Diy_Audio_WTF package.
% Ask original Author for permission of any further usage.
%
% Input variables :
% ir_time_trim is the vector containing the time data of the IR file
% ir_amp_trim is the vector containing the amplitude of the IR file
% d_bug is for providing additional information in case of debug mode
%
% Output variables:
% wtf_x time scale variable
% wtf_y frequency scale variabel
% wtf_mag magnitude variable
%
% see also load_wav_ir.m, load_ascii_ir.m, load_ascii1_ir.m, fft_ir_raw, waveletdemo.m

% Contributing authors to the Diy_Audio_WTF package in order of code adaption date:
%
% Michael Gerstgrasser - Contact information: user 'mige0' at www.diyaudio.com
% Elias Pekonen - Contact information: user 'Elias' at www.diyaudio.com
% J. Lewalle - Contact information: Prof. Jacques Lewalle
% Jean-Michel Le Clac'h - Contact information: user 'Jmmlc' at www.diyaudio.com
%
% check out on www.diyaudio.com :
% "Help on making MULTIRESOLUTION WAVELET ANALYSIS available ?"
% Help on making MULTIRESOLUTION WAVELET ANALYSIS available ?
% "WTF!? Wavelet TransForm for audio measurements - What-is? and How-to?"
% WTF!? Wavelet TransForm for audio measurements - What-is? and How-to?
% "Horn Honk $$ WANTED $$"
% Horn Honk $$ WANTED $$
%
% Diy_Audio_WTF (Wavelet Audio Analysis) is free software; you can redistribute it and/or modify it
% under the terms of the GNU General Public License as published by the
% Free Software Foundation; either version 2, or (at your option) any
% later version.
%
% Diy_Audio_WTF is distributed in the hope that it will be useful, but WITHOUT
% ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
% FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
% for more details.
%
% You should have received a copy of the GNU General Public License
% along with Diy_WAA; see the file COPYING. If not, write to the Free
% Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
%
%--------------------------------------------------------

if d_bug == 1;
disp ("DEBUG report: processing function : wtf_lecleach , please WAIT !" )
endif

%
%================================================= ================
% adapt interfacing of variables
%================================================= ================

sig=ir_amp_trim;
N=length(sig);
s_r_rec=10/(ir_time_trim(110)-ir_time_trim(100)); % reconstruckt sample rate
Fe=s_r_rec;
Fy=Fe;
period=1/Fe;
%
%================================================= ================
% SIGNAL PRECONDITIONNING
%================================================= ================
% limits and number of samples of the signal window
%================================================= ================
%
fraction=0.3;
% 12 periods ==> fraction = 0.17
tc = gauspuls2('cutoff',600.0,fraction,[],-40);
tc=period*round(tc/period);
tp = -tc : period : tc;
Npts=length(tp);
y=zeros(1,Npts);
%
%================================================= ================
% centering of the Impulse Response inside the signal window
%================================================= ================
%
ymax=max(sig); ymin=min(sig);
imax= find(sig==ymax);
if ymax<abs(ymin);
imax=find(sig==ymin);
endif
idec=round(Npts-1)/2;
idec= idec-imax+1;
for i = 1:N;
j=i+idec;
if j>0;
if j<=Npts;
y(j)=sig(i);
endif
endif
endfor
%================================================= ==============
% gaussian envelop pulse with frequency center = 1000Hz
%================================================= ================
%
fcentr=1000;
tc = gauspuls2('cutoff',fcentr,2.0,[],-40); % tc = cut off time
tc=period*round(tc/period);
t = -tc : period : tc;
[cosgauss, singauss, envelop] = gauspuls2(t, fcentr, 2.0);
%
%================================================= ==============
% convolution of the IR by the gaussian envelop pulse
%================================================= ==============
%
zcos=conv(y,cosgauss);
zsin=conv(y,singauss);
zcos2 = zcos.*zcos;
zsin2 = zsin.*zsin;
zamp=zcos2+zsin2;
zamp = zamp.^(1/2);
long_decal= round((length(t)+0.5)/2);
ymax=max(zamp);
if ymax>0;
imax= find(zamp==ymax);
else
imax=round((Npts+0.5)/2);
endif
imax=imax-long_decal+1-round((Npts+0.5)/2);


%================================================= ==============
% limits of frequency of the frequency analysis
%================================================= ==============

fmax=23000;
if fmax>Fe/2;
fmax=Fe/2;
endif
Nfreqs=400;
fmin=200;
if fmin<10;
fmin=10;
endif
freq=ones(1,Nfreqs);
sfen=ones(1,Nfreqs);
logfreq=zeros(1,Nfreqs);
freq(1)=fmin;
dfreq=(fmax/fmin)^(1/(Nfreqs-1));
for i = 2:Nfreqs
freq(i)=freq(i-1)*dfreq;
endfor
logfreq=log10(freq); % for vertical axis of the spectrogram

%================================================= ==============
%================================================= ==============
% MAIN LOOP
%================================================= ==============
%
spectro=zeros(Nfreqs,Npts);

for i = 1:Nfreqs
%================================================= ==============
% calculation of a gaussian envelop pulse for the ith frequency
%================================================= ==============
fcentr= freq(i);
tc = gauspuls2('cutoff',fcentr,1.0,[],-40);
tc=period*round(tc/period);
t = -tc : period : tc;
[cosgauss,singauss,envelop] = gauspuls2(t,fcentr,1.0);
%================================================= ==============
% convolution of the IR by the gaussian envelop pulse
%================================================= ==============
zcos=conv(y,cosgauss); zsin=conv(y,singauss);
zcos2 = zcos.*zcos;
zsin2 = zsin.*zsin;
zamp=zcos2+zsin2;
zamp = zamp.^(1/2);
long_decal= round((length(t)+0.5)/2);
spectro(i, =zamp(long_decal:long_decal+Npts-1);
endfor

%================================================= ==============
% spectrogram in dBs
%================================================= ==============

dBmin=-40; % 40 dB color scale
spectro = 20*log10(spectro);
spectro=max(dBmin,spectro);

%================================================= ==============
% graphical output of the spectrogram
%================================================= ==============


spectro1=spectro(:, 1);
f = (1:length (spectro1));
tp=tp*1000;

%================================================= ==============
% output for further processing
%================================================= ==============

wtf_t = tp;
wtf_f = freq;
wtf_mag = spectro;


if d_bug == 1;
disp ("DEBUG report: function : wtf_lecleach processed successfully" )
endif

%================================================= ==============
% END
%================================================= ==============
endfunction
  Reply With Quote
Old 19th April 2010, 08:59 PM   #23
mige0 is offline mige0  Austria
diyAudio Member
 
mige0's Avatar
 
Join Date: Jan 2005
Location: Austria, at a beautiful place right in the heart of the Alps.
function [wtf_t, wtf_f, wtf_mag] = wtf_morlet_lewalle (ir_time_trim, ir_amp_trim, d_bug);

%--------------------------------------------------------
% wtf_morlet_lewalle
%--------------------------------------------------------
% This file is part of Diy_Audio_WTF package, intended to get started on Audio Wavelet Transformation
% on free Octave software
% Copyright (C) J. Lewalle 1995
% rewritten by Michael Gerstgrasser 2010
%
% "wtf_morlet_lewalle" is a function for continuous wavelet processing
%
% Input variables :
% ir_time_trim is the vector containing the time data of the IR file
% ir_amp_trim is the vector containing the amplitude of the IR file
% d_bug is for providing additional information in case of debug mode
%
% Output variables:
% wtf_x time scale variable
% wtf_y frequency scale variabel
% wtf_mag magnitude variable
%
%
% see also load_wav_ir.m, load_ascii_ir.m, load_ascii1_ir.m, fft_ir_raw, waveletdemo.m

% Contributing authors to the Diy_Audio_WTF package in order of code publishing date:
%
% Michael Gerstgrasser - Contact information: user 'mige0' at www.diyaudio.com
% Elias Pekonen - Contact information: user 'Elias' at www.diyaudio.com
% J. Lewalle
%
% check out on www.diyaudio.com :
% "Help on making MULTIRESOLUTION WAVELET ANALYSIS available ?"
% Help on making MULTIRESOLUTION WAVELET ANALYSIS available ?
% "WTF!? Wavelet TransForm for audio measurements - What-is? and How-to?"
% WTF!? Wavelet TransForm for audio measurements - What-is? and How-to?
% "Horn Honk $$ WANTED $$"
% Horn Honk $$ WANTED $$
%
% Diy_Audio_WTF (Wavelet Audio Analysis) is free software; you can redistribute it and/or modify it
% under the terms of the GNU General Public License as published by the
% Free Software Foundation; either version 2, or (at your option) any
% later version.
%
% Diy_Audio_WTF is distributed in the hope that it will be useful, but WITHOUT
% ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
% FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
% for more details.
%
% You should have received a copy of the GNU General Public License
% along with Diy_WAA; see the file COPYING. If not, write to the Free
% Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
%

if d_bug == 1;
disp ("DEBUG REPORT: processing function : wtf_morlet_lewalle , please WAIT !" )
endif


%--------------------- interface with input variables -------------------------------

dx = (ir_time_trim(110)-ir_time_trim(100)) / 10;

nvcs = 20 ; % number of voices per octave
drs = 2^(2/nvcs);
nx = length(ir_amp_trim);
ns = log2(nx)*nvcs;
% covers the range of time-scales in the signal;
% can be narrowed to the range of interest.
ns = (fix(ns/2))*2+1; % make sure ns is odd integer

%--------------------- removes the mean from a signal -------------------------------

y = ir_amp_trim - mean(ir_amp_trim);


%-------------------- START script ----------------------------------------------------------------

nx = length(y);
x=linspace(0,nx-1,nx)*dx;
ff = lewa_fftfreq(x,dx, d_bug); % Fourier frequency axis (2-sided linear)
yh = fft(y); % FFT of signal

s(ns) = (dx/pi)^2; % dx/pi is Nyquist cutoff
% see comment regarding energy in the `showmaps' function
% see the extension of the spectra on the figure.
for is=ns-1:-1:1;
s(is) = s(is+1)*drs;
endfor
for is=1:ns ;
kf(is) = sqrt(1/s(is))/2/pi;
endfor



% ----------------- MORLET TRANSFORM: norm, phase and complex ---------------------------


wtf_mag = lewa_mymorlet(yh,ff,kf, d_bug);
wtf_mag = log10(wtf_mag) .*20;
wtf_t = x*1000; % scale in ms
wtf_f = kf;




if d_bug == 1;
disp ("DEBUG REPORT: function : wtf_morlet_lewalle processed successfully" )
endif

endfunction
  Reply With Quote
Old 19th April 2010, 09:00 PM   #24
mige0 is offline mige0  Austria
diyAudio Member
 
mige0's Avatar
 
Join Date: Jan 2005
Location: Austria, at a beautiful place right in the heart of the Alps.
function [ff] = lewa_fftfreq(x,dx, d_bug)

%--------------------------------------------------------
% lewa_fftfreq
%--------------------------------------------------------
% This file is part of Diy_Audio_WTF package, intended to get started on Audio Wavelet Transformation
% on free Octave software
% Copyright (C) J. Lewalle 1995
% rewritten by Michael Gerstgrasser 2010
%
% " lewa_fftfreq" constructs the linear 2-sided scale of frequencies for FFT
%
% Input variables :
% d_bug is for providing additional information in case of debug mode
%
%
% see also load_wav_ir.m, load_ascii_ir.m, load_ascii1_ir.m, fft_ir_raw, waveletdemo.m

% Contributing authors to the Diy_Audio_WTF package in order of code publishing date:
%
% Michael Gerstgrasser - Contact information: user 'mige0' at www.diyaudio.com
% Elias Pekonen - Contact information: user 'Elias' at www.diyaudio.com
% J. Lewalle
%
% check out on www.diyaudio.com :
% "Help on making MULTIRESOLUTION WAVELET ANALYSIS available ?"
% Help on making MULTIRESOLUTION WAVELET ANALYSIS available ?
% "WTF!? Wavelet TransForm for audio measurements - What-is? and How-to?"
% WTF!? Wavelet TransForm for audio measurements - What-is? and How-to?
% "Horn Honk $$ WANTED $$"
% Horn Honk $$ WANTED $$
%
% Diy_Audio_WTF (Wavelet Audio Analysis) is free software; you can redistribute it and/or modify it
% under the terms of the GNU General Public License as published by the
% Free Software Foundation; either version 2, or (at your option) any
% later version.
%
% Diy_Audio_WTF is distributed in the hope that it will be useful, but WITHOUT
% ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
% FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
% for more details.
%
% You should have received a copy of the GNU General Public License
% along with Diy_WAA; see the file COPYING. If not, write to the Free
% Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
%

if d_bug == 1;
disp ("DEBUG REPORT: processing function : lewa_fftfreq , please WAIT !" )
endif

n=length(x);
for ii=1n/2) ; ff(ii)= (ii-1)/n/dx; end
for ii=(1+n/2):n ; ff(ii)= -(n-ii+1)/n/dx; end

if d_bug == 1;
disp ("DEBUG REPORT: function : lewa_fftfreq processed successfully" )
endif

endfunction
  Reply With Quote
Old 19th April 2010, 09:00 PM   #25
mige0 is offline mige0  Austria
diyAudio Member
 
mige0's Avatar
 
Join Date: Jan 2005
Location: Austria, at a beautiful place right in the heart of the Alps.
function [wtf_mag] = lewa_mymorlet(xh,ff,kf, d_bug)
% xh: DFFT of signal
% ff: vector of frequencies (linear)
% kf: vector of frequencies (logarithmic)
% z0: parameter
% yn: norm of Morlet transform arrays
%--------------------------------------------------------
% lewa_mymorlet
%--------------------------------------------------------
% This file is part of Diy_Audio_WTF package, intended to get started on Audio Wavelet Transformation
% on free Octave software
% Copyright (C) J. Lewalle 1995
% rewritten by Michael Gerstgrasser 2010
%
% "lewa_mymorlet" is a function for Morlet wavelet trasnform of a signal
%
% Input variables :
% d_bug is for providing additional information in case of debug mode
%
%
%
%
% see also load_wav_ir.m, load_ascii_ir.m, load_ascii1_ir.m, fft_ir_raw, waveletdemo.m

% Contributing authors to the Diy_Audio_WTF package in order of code publishing date:
%
% Michael Gerstgrasser - Contact information: user 'mige0' at diyAudio
% Elias Pekonen - Contact information: user 'Elias' at diyAudio
% J. Lewalle
%
% check out on diyAudio :
% "Help on making MULTIRESOLUTION WAVELET ANALYSIS available ?"
% Help on making MULTIRESOLUTION WAVELET ANALYSIS available ?
% "WTF!? Wavelet TransForm for audio measurements - What-is? and How-to?"
% WTF!? Wavelet TransForm for audio measurements - What-is? and How-to?
% "Horn Honk $$ WANTED $$"
% Horn Honk $$ WANTED $$
%
% Diy_Audio_WTF (Wavelet Audio Analysis) is free software; you can redistribute it and/or modify it
% under the terms of the GNU General Public License as published by the
% Free Software Foundation; either version 2, or (at your option) any
% later version.
%
% Diy_Audio_WTF is distributed in the hope that it will be useful, but WITHOUT
% ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
% FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
% for more details.
%
% You should have received a copy of the GNU General Public License
% along with Diy_WAA; see the file COPYING. If not, write to the Free
% Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
%
%--------------------------------------------------------

if d_bug == 1;
disp ("DEBUG REPORT: processing function : lewa_mymorlet , please WAIT !" )
endif


n=length(xh);
ns=length(kf);
sq2pi = sqrt(2*pi);
z0 = 5; % variable
cps= 1.4406;
for is=1:ns
for ii=1:n
z=ff(ii)/kf(is);
morh(ii)= z0/kf(is)/sq2pi * (exp(-(z0^2*(1-z)^2)/2) ...
- exp(-z0^2*(1+z^2)/2) ) +0*i;
morh(ii) = morh(ii) * kf(is)/sqrt(cps) ;% my scaling
endfor
for ii=1:n ;
yh(ii) = xh(ii)*morh(ii);
endfor
ycmor(is,:) = ifft(yh); % the complex inverse transform
end
wtf_mag = abs(ycmor); % its norm


if d_bug == 1;
disp ("DEBUG REPORT: function : lewa_mymorlet processed successfully" )
endif


endfunction
  Reply With Quote
Old 19th April 2010, 09:02 PM   #26
mige0 is offline mige0  Austria
diyAudio Member
 
mige0's Avatar
 
Join Date: Jan 2005
Location: Austria, at a beautiful place right in the heart of the Alps.
to be continued....

by a zip file for download of complete package

have fun !


Michael
  Reply With Quote
Old 21st April 2010, 05:31 AM   #27
mige0 is offline mige0  Austria
diyAudio Member
 
mige0's Avatar
 
Join Date: Jan 2005
Location: Austria, at a beautiful place right in the heart of the Alps.
To install Octave on windows

1.) download and install
Octave-3.2.4_i686-pc-mingw32_gcc-4.4.0_setup.exe

2.) download and install
Xoctave_setup 0.9.92.exe

3.) Start XOctave

4.) on first call Xoctave tells you the Octave path is not assigned
>> view >> options >> console >> "where is Octave"
enter your path to Console software (most probably: "C:\Octave\3.2.4_gcc-4.4.0\bin\octave.exe")

5.) download DIY_wavelet_Package and unpack
place folder "mige0_start_wavelet_ver_xx" to wherever you like

6.) tell Octave the path where your files are to be found
>> view >> path >>
enter your path to "mige0_start_wavelet_ver_xx" folder and press "Add Path"
check if your path to "mige0_start_wavelet_ver_xx" has been assigned by pressing "Update"



now >> view >> Console >> and you are ready to go under Windows !



################

To install Octave under Ubuntu (10.04 beta I've tryed), its already listed under Software and you can install comfortably both, Octave and QtOctave from there.

You do not have to tell QtOctave where to find Octave but you have to tell QtOctave where to find "mige0_start_wavelet_ver_xx" folder of course.

Finally set cursor to " console " and you are ready to go under Linux !



################



type in " start_wavelet " and follow the user menu you are told – or – check out Elias' " waveletdemo "

For convenience I have added an IR_file.wav file from my 0-deg honker – so you can go through the menu to check out easily.

If you are going to analyse your own IR files, you either have to place it in the "mige0_start_wavelet_ver_xx" folder, or you have to add an additional path to your preferred directory.



################


Navigating through the Diy_Audio_WTF (Wavelet Audio Analysis) package:


>>> start_wavelet

will start the WTF package and will bring up the intro and in the first menu you will be ask to choose between :


Click the image to open in full size.

- normal operation
- debug operation

I recommend to use "normal operation" unless you face unexpected problems.
"debug operation" gives you additional information on what functions are called and have processed successfully. So this is a handy tool to post a simple screenshot in case something went wrong.

********

in next menu you will be asked to select an impulse response file.


Click the image to open in full size.

You can just press enter to select the default file "ir_file.wav" of type in the name of your file.
Its best to avoid spaces and any special characters for your impulse response file.
Also the file has to be located where it can be found by octave – meaning – you either can put it into the "mige0_start_wavelet_ver_xx" folder, or you set an additional path to your preferred folder.

********

in next menu you will be asked to select an impulse response file type.


Click the image to open in full size.


As for now the package can process different file types:
- WAV file
- ARTA text file export
- plain two column ascii text file
- plain one column ascii text file

in case of "ascii two column text file" it is assumed that the first column contains the time and the second column contains the amplitude of your impulse response.

in case of "ascii one column text file" it is assumed that the first and only column contains the amplitude of your impulse response and you will be asked to enter the sample rate in a sub menue.

********

in next menu you will be asked to select wavelet analysis type.


Click the image to open in full size.


As for now the package can process the "Lewalle Morlet wavelet analysis" only, but is fully prepared for the Jean-Michel Le Clea'ch wavelet analysis" as well.



********

The first plot popping up after the third menu will display the raw impulse response from 0 to 100ms


Click the image to open in full size.


The second plot popping up after the fourth menu will display the normalized impulse
response from 0 to 13ms with the peak centred at 3ms


Click the image to open in full size.


The third plot popping up after the fourth menu will display the wavelet analysis for a range of 40dB and within a time range of 0 to 13ms with the peak centred at 3ms


Click the image to open in full size.


The fourth plot popping up after the fourth menu will display the normalized wavelet analysis for a range of 40dB and within a time range of 0 to 13ms with the peak centred at 3ms


Click the image to open in full size.


********

Between the menus additional information is displayed that you may you find interesting and helpful.


Click the image to open in full size.


If you quit by " EXIT " in menu, you have to reconnect Xoctave to Octave.
Be warned that for one reason or another, the plots are pretty slow when you work under Windows.



********


Hope you have fun with the first free software package available, aimed for wavelet audio analysis to the "non-math-head" user.


You can download the full package here:

http://www.kinotechnik.edis.at/pages...et_ver_1_0.zip



In the "readme" you find above text, and I also included the screen shots of the menu structure and the plots that get calculated.




Michael

Last edited by mige0; 21st April 2010 at 05:48 AM.
  Reply With Quote
Old 21st April 2010, 06:49 AM   #28
maiky76 is offline maiky76  France
diyAudio Member
 
Join Date: Dec 2004
Location: China, SZX
Hi,

Thanks for the contribution!
In case you don't know there is this amazing Octave UI:
QtOctave: a front-end for Octave/un Front-End para Octave
I have been using it for the past year and like it better than Xoctave.
It is compatible with many Linux flavors and Windows.

Cheers
Mickael

Last edited by maiky76; 21st April 2010 at 06:52 AM.
  Reply With Quote
Old 21st April 2010, 07:26 AM   #29
maiky76 is offline maiky76  France
diyAudio Member
 
Join Date: Dec 2004
Location: China, SZX
By the way whay using a none free app such as Arta when a package is especialy designed for Matlab/Octave.
MATAA (Mat's Audio Analyzer) | Get MATAA (Mat's Audio Analyzer) at SourceForge.net
I also use it and it is fantastic and since you guys are familiar with Matlab/Octave and signal processing it should be ok.
I sucessfully used it with an Emu 0404 USB and a M-audio Transit, I coudl help to get you started if you want.
  Reply With Quote
Old 21st April 2010, 09:32 AM   #30
Gaga is offline Gaga  Europe
diyAudio Member
 
Join Date: May 2005
Location: City
Default Wavelet Analysis for OS X Platform

Dear all,

Though I do not understand everything on wavelet-analysis discussed here, I followed the threads on 'how to' and horn honk with great interest.

The main contributors here seem to work on windows or linux platforms. As an os x user I just want to direct you to Christoph Lauers work and homepage on audio and wavelet analysis (www.christoph-lauer.de) - may be you missed his nice work for this reason.

Please refer to 'Sonogram' and the 'Fast-Wavelet-Transformation Toolbox in C++' (see the Blog on his homepage). May be of interest anyway.

Regards,
gaga
  Reply With Quote

Reply


Hide this!Advertise here!
Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
What is pole analysis ? percy Solid State 22 12th March 2006 02:03 PM
Midrange Analysis mbutzkies Multi-Way 4 25th May 2005 01:51 PM
noise analysis tenderland Tubes / Valves 5 29th March 2005 11:22 PM
FFT Analysis RobPhill33 Everything Else 22 19th March 2003 07:01 PM


New To Site? Need Help?

All times are GMT. The time now is 12:47 PM.


vBulletin Optimisation provided by vB Optimise (Pro) - vBulletin Mods & Addons Copyright © 2014 DragonByte Technologies Ltd.
Copyright 1999-2014 diyAudio

Content Relevant URLs by vBSEO 3.3.2