├── .gitignore
├── AuditoryToolbox
├── AuditoryToolboxTechReport.pdf
├── CorrelogramArray.m
├── CorrelogramFrame.m
├── CorrelogramMovie.m
├── CorrelogramPitch.m
├── DesignLyonFilters.m
├── ERBFilterBank.m
├── ERBSpace.m
├── EpsilonFromTauFS.m
├── FMPoints.m
├── FreqResp.m
├── LyonPassiveEar.m
├── MakeERBFilters.m
├── MakeVowel.m
├── MeddisHairCell.m
├── README
├── SecondOrderFilter.m
├── SeneffEar.m
├── SeneffEarSetup.m
├── SetGain.m
├── WhiteVowel.m
├── agc.dll
├── agc.mex
├── agc.mex.bin
├── agc.mexsg
├── agc.mexsg64
├── agc.mexsol
├── agc.o
├── contents.m
├── dtw.mex
├── dtw.mexlx
├── dtw.mexsg
├── dtw.mexsg64
├── dtw.mexsol
├── dtw.o
├── inverseagc.dll
├── inverseagc.mex.bin
├── inverseagc.mexsg
├── inverseagc.mexsg64
├── inverseagc.mexsol
├── invsoscascade.dll
├── invsoscascade.mex
├── invsoscascade.mex.bin
├── invsoscascade.mexsg
├── invsoscascade.mexsg64
├── invsoscascade.mexsol
├── invsoscascade.o
├── mfcc.m
├── proclpc.m
├── rasta.m
├── soscascade.dll
├── soscascade.mex
├── soscascade.mex.bin
├── soscascade.mexsg
├── soscascade.mexsg64
├── soscascade.mexsol
├── soscascade.o
├── sosfilters.dll
├── sosfilters.mex
├── sosfilters.mex.bin
├── sosfilters.mexsg
├── sosfilters.mexsg64
├── sosfilters.mexsol
├── sosfilters.o
├── spectrogram.m
├── src
│ ├── Makefile
│ ├── Makefile.m
│ ├── agc.c
│ ├── agc.mex
│ ├── agc.o
│ ├── dtw.c
│ ├── dtw.mex
│ ├── dtw.o
│ ├── invsoscascade.c
│ ├── invsoscascade.mex
│ ├── invsoscascade.o
│ ├── soscascade.c
│ ├── soscascade.mex
│ ├── soscascade.o
│ ├── sosfilters.c
│ ├── sosfilters.mex
│ └── sosfilters.o
├── synlpc.m
├── tapestry.wav
└── test_auditory.m
├── README.md
├── amtoolbox
├── COPYING
├── Contents.m
├── INSTALL
├── amtbasepath.m
├── amthelp.m
├── amtmex.m
├── amtoolbox_version
├── amtredofile.m
├── amtstart.m
├── binaural
│ ├── Contents.m
│ ├── binauralinit.m
│ ├── breebaart2001preproc.m
│ ├── dietz2011.m
│ ├── dietz2011interauralfunctions.m
│ ├── estimate_azimuth.m
│ ├── lindcentroid.m
│ ├── lindemann1986.m
│ ├── may2011.m
│ ├── plotlindemann1986.m
│ ├── plotziegelwanger2013.m
│ ├── takanen2013.m
│ ├── ziegelwanger2013.m
│ ├── ziegelwanger2013offaxis.m
│ └── ziegelwanger2013onaxis.m
├── breebart
│ └── RunModel.m
├── comp
│ ├── arg_absolutethreshold.m
│ ├── arg_adaptloop.m
│ ├── arg_amtredofile.m
│ ├── arg_auditoryfilterbank.m
│ ├── arg_drnl.m
│ ├── arg_eicell.m
│ ├── arg_ihcenvelope.m
│ ├── arg_langendijkcomp.m
│ ├── arg_lindemann1986bincorr.m
│ ├── comp_adaptloop.m
│ ├── compinit.m
│ └── progressbar.m
├── demos
│ ├── Contents.m
│ ├── demo_absolutethreshold.m
│ ├── demo_adaptloop.m
│ ├── demo_baumgartner2013.m
│ ├── demo_drnl.m
│ ├── demo_hohmannfilterbank.m
│ ├── demo_lindemann1986.m
│ ├── demo_may2011.m
│ ├── demo_takanen2013.m
│ ├── demo_transposedtone.m
│ ├── demosinit.m
│ └── poly_lookup.mat
├── doc
│ ├── HRTF format description.odt
│ ├── HRTF format meta data.ods
│ ├── LangendijkDoc.odt
│ └── modelstatus.lyx
├── experiments
│ ├── Contents.m
│ ├── azi_lookup_4.mat
│ ├── exp_baumgartner2013.m
│ ├── exp_dietz2011.m
│ ├── exp_enzner2008.m
│ ├── exp_georganti2013.m
│ ├── exp_jelfs2011.m
│ ├── exp_joergensen2011.m
│ ├── exp_langendijk2002.m
│ ├── exp_lindemann1986.m
│ ├── exp_lindemann1986a_fig10.mat
│ ├── exp_lindemann1986a_fig11.mat
│ ├── exp_lindemann1986a_fig12.mat
│ ├── exp_lindemann1986a_fig13.mat
│ ├── exp_lindemann1986a_fig14a.mat
│ ├── exp_lindemann1986a_fig14b.mat
│ ├── exp_lindemann1986a_fig15.mat
│ ├── exp_lindemann1986a_fig16.mat
│ ├── exp_lindemann1986a_fig17.mat
│ ├── exp_lindemann1986a_fig18.mat
│ ├── exp_lindemann1986a_fig6.mat
│ ├── exp_lindemann1986a_fig7.mat
│ ├── exp_lindemann1986a_fig8.mat
│ ├── exp_lopezpoveda2001.m
│ ├── exp_roenne2012.m
│ ├── exp_roenne2012_fig5.mat
│ ├── exp_roenne2012_fig6.mat
│ ├── exp_roenne2012_fig7.mat
│ ├── exp_spille2013.m
│ ├── exp_takanen2013.m
│ ├── exp_ziegelwanger2013.m
│ └── experimentsinit.m
├── filters
│ ├── Contents.m
│ ├── Example_Filter.m
│ ├── Example_Synthesis.m
│ ├── cqdft.m
│ ├── filterbank_block.m
│ ├── filterbank_init.m
│ ├── filterbankz.m
│ ├── filtersinit.m
│ ├── gammatone.m
│ ├── gfb_analyzer_clear_state.m
│ ├── gfb_analyzer_new.m
│ ├── gfb_analyzer_process.m
│ ├── gfb_analyzer_zresponse.m
│ ├── gfb_delay_clear_state.m
│ ├── gfb_delay_new.m
│ ├── gfb_delay_process.m
│ ├── gfb_filter_clear_state.m
│ ├── gfb_filter_new.m
│ ├── gfb_filter_process.m
│ ├── gfb_filter_zresponse.m
│ ├── gfb_hohmann
│ │ ├── Gfb_Analyzer_fprocess.c
│ │ ├── Gfb_analyze.c
│ │ ├── Gfb_analyze.h
│ │ ├── README.txt
│ │ ├── README_examples.txt
│ │ └── README_implementation.txt
│ ├── gfb_mixer_new.m
│ ├── gfb_mixer_process.m
│ ├── gfb_set_constants.m
│ ├── gfb_synthesizer_clear_state.m
│ ├── gfb_synthesizer_new.m
│ ├── gfb_synthesizer_process.m
│ ├── may2011gammatone.m
│ ├── may2011gammatoneinit.m
│ ├── obsolete
│ │ └── gfb_center_frequencies.m
│ ├── thirdoctrmsanalysis24.m
│ ├── ufilterbankz.m
│ └── weightedaveragefilter.m
├── general
│ ├── Contents.m
│ ├── audspecgram.m
│ ├── dbspl.m
│ ├── generalinit.m
│ ├── itd2angle.m
│ ├── joergensen2011multchansnrenv.m
│ ├── joergensen2011overlapadd3.m
│ ├── joergensen2011specsub.m
│ ├── modspecgram.m
│ ├── setdbspl.m
│ ├── sph2horpolar.m
│ └── stmodspecgram.m
├── gpl-3.0.txt
├── hrtf
│ ├── Contents.m
│ ├── enzner2008.m
│ ├── extractsp.m
│ ├── hrtf_M_langendijk2002 P3.mat
│ ├── hrtf_M_langendijk2002 P6.mat
│ ├── hrtfinit.m
│ └── read_hrir.m
├── humandata
│ ├── Contents.m
│ ├── absolutethreshold.m
│ ├── data_baumgartner2013.m
│ ├── data_dietz2011.m
│ ├── data_elberling2010.m
│ ├── data_glasberg1990.m
│ ├── data_goode1994.m
│ ├── data_harte2009.m
│ ├── data_joergensen2011.m
│ ├── data_langendijk2002.m
│ ├── data_lindemann1986.m
│ ├── data_lopezpoveda2001.m
│ ├── data_neely1988.m
│ ├── data_pralong1996.m
│ ├── data_roenne2012.m
│ ├── data_takanen2013.m
│ ├── data_ziegelwanger2013.m
│ ├── data_zwicker1961.m
│ ├── humandatainit.m
│ ├── langendijk2002-P3.mat
│ ├── langendijk2002-P6.mat
│ ├── roenne2012_elberling2010stim.mat
│ ├── roenne2012_harte2009stim.mat
│ ├── siiweightings.m
│ ├── speechpercentcorrect.m
│ ├── spille2013_s123456.wav
│ ├── takanen2013_cochleardelays.mat
│ ├── takanen2013_lookuptable.mat
│ ├── takanen2013_msolimits.mat
│ ├── takanen2013_onsetmultp.mat
│ ├── takanen2013_periphenergyaverages.mat
│ ├── takanen2013_wbmsomultp.mat
│ └── ur.mat
├── mex
│ ├── comp_adaptloop.c
│ ├── comp_meddishaircell.c
│ ├── comp_zilany2007humanized.c
│ ├── gammatoneMEX.cpp
│ └── mexinit.m
├── modelstages
│ ├── Contents.m
│ ├── adaptloop.m
│ ├── adaptloop_init.m
│ ├── adaptloop_run.m
│ ├── auditoryfilterbank.m
│ ├── caspmdecide.m
│ ├── casptemplate.m
│ ├── culling2005bmld.m
│ ├── drnl.m
│ ├── eicell.m
│ ├── headphonefilter.m
│ ├── ihcenvelope.m
│ ├── itd2azimuth.m
│ ├── langendijkcomp.m
│ ├── lindemann1986bincorr.m
│ ├── lookup_table.m
│ ├── may2011neuraltransduction.m
│ ├── mfc.m
│ ├── mfc2.m
│ ├── middleearfilter.m
│ ├── modelstagesinit.m
│ ├── modfilterbank.m
│ ├── modfilterbankepsm.m
│ ├── optimaldetector.m
│ ├── pmv2ppp.m
│ ├── takanen2013contracomparison.m
│ ├── takanen2013cueconsistency.m
│ ├── takanen2013directionmapping.m
│ ├── takanen2013formbinauralactivitymap.m
│ ├── takanen2013lso.m
│ ├── takanen2013mso.m
│ ├── takanen2013onsetenhancement.m
│ ├── takanen2013periphery.m
│ ├── takanen2013wbmso.m
│ └── unwrap_itd.m
├── monaural
│ ├── Contents.m
│ ├── baumgartner2013.m
│ ├── dau1996preproc.m
│ ├── dau1997preproc.m
│ ├── jepsen2008preproc.m
│ ├── langendijk.m
│ ├── likelilangendijk.m
│ ├── monauralinit.m
│ ├── petibubtest.txt
│ ├── plotbaumgartner2013.m
│ ├── plotlangendijk.m
│ ├── plotlikelilangendijk.m
│ ├── plotroenne2012.m
│ ├── plotroenne2012chirp.m
│ ├── plotroenne2012tonebursts.m
│ ├── roenne2012.m
│ ├── roenne2012chirp.m
│ ├── roenne2012click.m
│ ├── roenne2012tonebursts.m
│ ├── verhulst2012.m
│ ├── viemeister79.m
│ └── zilany2007humanized.m
├── oct
│ ├── Makefile
│ ├── comp_adaptloop.cc
│ ├── comp_adaptloop.o
│ ├── comp_adaptloop.oct
│ ├── comp_adaptloop_run.cc
│ ├── comp_adaptloop_run.o
│ ├── comp_adaptloop_run.oct
│ ├── comp_meddishaircell.cc
│ └── octinit.m
├── signals
│ ├── Contents.m
│ ├── Danish_CLUE_10sentence_samples_22kHz.mat
│ ├── bincorrnoise.m
│ ├── bmsin.m
│ ├── dietz2011_bNoise.wav
│ ├── dietz2011_five_speakers.wav
│ ├── dietz2011_one_of_three.wav
│ ├── dietz2011_one_speaker_reverb.wav
│ ├── dietz2011_three_of_three.wav
│ ├── dietz2011_two_of_three.wav
│ ├── dietz2011_two_speakers.wav
│ ├── ildsin.m
│ ├── irns.m
│ ├── itdildsin.m
│ ├── itdsin.m
│ ├── notchednoise.m
│ ├── perfectsweep.m
│ ├── signalsinit.m
│ └── transposedtone.m
├── speech
│ ├── Contents.m
│ ├── dsrts_from_pc_mean.m
│ ├── jelfs2011.m
│ ├── joergensen2011combineinformation.m
│ ├── joergensen2011snrenv.m
│ ├── plotjelfs2011.m
│ └── speechinit.m
├── src
│ ├── Makefile
│ ├── adaptloop.c
│ ├── amtoolbox.h
│ ├── meddishaircell.c
│ └── verhulst
│ │ ├── AllocationError.f90
│ │ ├── CloseWrite.f90
│ │ ├── CochleaParameters.f90
│ │ ├── DeInitialize.f90
│ │ ├── DecibelToLevel.f90
│ │ ├── Declare.f90
│ │ ├── FilesModule.f90
│ │ ├── GraphsModule.f90
│ │ ├── Initialize.f90
│ │ ├── InitializeCochlea.f90
│ │ ├── InitializeFiles.f90
│ │ ├── InitializeGaussElimination.f90
│ │ ├── InitializeGraphs.f90
│ │ ├── InitializeMiddleEar.f90
│ │ ├── InitializeStimulus.f90
│ │ ├── InitializeZweig.f90
│ │ ├── IntToString.f90
│ │ ├── KaiserBessel.f90
│ │ ├── LowPassFilter.f90
│ │ ├── Makefile
│ │ ├── Message.f90
│ │ ├── MessageModule.f90
│ │ ├── OpenPressureEarCanal.f90
│ │ ├── OpenProbing.f90
│ │ ├── OpenWrite.f90
│ │ ├── Parameters.f90
│ │ ├── ParametersModule.f90
│ │ ├── PlotGraphs.f90
│ │ ├── PoleCalculation.f90
│ │ ├── PuriaM1.f90
│ │ ├── PuriaM2.f90
│ │ ├── RK4.f90
│ │ ├── ReadError.f90
│ │ ├── ReadMembraneStatus.f90
│ │ ├── ReadParameterFile.f90
│ │ ├── Resample.f90
│ │ ├── SampleUpAndDown.f90
│ │ ├── SetDampingAndStiffness.f90
│ │ ├── SheraParameters.f90
│ │ ├── SolveTridiag.f90
│ │ ├── WaveRead.f90
│ │ ├── WaveReadModule.f90
│ │ ├── WriteData.f90
│ │ ├── WriteError.f90
│ │ ├── WriteMembraneStatus.f90
│ │ ├── WriteProbing.f90
│ │ ├── WriteProfile.f90
│ │ ├── ZweigImpedance.f90
│ │ └── cochlea.f90
└── verhulst
│ └── parameters.dat
├── config_doc.rst
├── drnl_config.json
├── features.m
├── features.py
├── get_center_times.m
├── jsonlab
├── AUTHORS.txt
├── ChangeLog.txt
├── LICENSE_BSD.txt
├── README.txt
├── examples
│ ├── demo_jsonlab_basic.m
│ ├── demo_ubjson_basic.m
│ ├── example1.json
│ ├── example2.json
│ ├── example3.json
│ ├── example4.json
│ ├── jsonlab_basictest.matlab
│ ├── jsonlab_selftest.m
│ ├── jsonlab_selftest.matlab
│ └── jsonlab_speedtest.m
├── jsonopt.m
├── license.txt
├── loadjson.m
├── loadubjson.m
├── mergestruct.m
├── savejson.m
├── saveubjson.m
└── varargin2struct.m
├── kaldi_features.py
├── kaldi_io.py
├── licence
└── LICENSE.txt
├── ltfat
├── AUTHORS
├── CITATION
├── COPYING
├── ChangeLog
├── Contents.m
├── INSTALL
├── INSTALL-Matlab
├── INSTALL-Octave
├── NEWS
├── README
├── auditory
│ ├── Contents.m
│ ├── audfiltbw.m
│ ├── auditoryinit.m
│ ├── audspace.m
│ ├── audspacebw.m
│ ├── audtofreq.m
│ ├── erbspace.m
│ ├── erbspacebw.m
│ ├── erbtofreq.m
│ ├── freqtoaud.m
│ ├── freqtoerb.m
│ ├── gammatonefir.m
│ ├── rangecompress.m
│ ├── rangeexpand.m
│ └── semiaudplot.m
├── blockproc
│ ├── Contents.m
│ ├── block.m
│ ├── block_fwt.m
│ ├── block_ifwt.m
│ ├── blockana.m
│ ├── blockdevices.m
│ ├── blockdone.m
│ ├── blockfigure.m
│ ├── blockframeaccel.m
│ ├── blockframepairaccel.m
│ ├── blockpanel.m
│ ├── blockpanelget.m
│ ├── blockplay.m
│ ├── blockplot.m
│ ├── blockprocinit.m
│ ├── blockread.m
│ ├── blocksyn.m
│ └── java
│ │ ├── Makefile
│ │ ├── blockproc.jar
│ │ └── net
│ │ └── sourceforge
│ │ └── ltfat
│ │ ├── ContFrame.java
│ │ ├── SpectFrame.java
│ │ ├── Utils.java
│ │ └── thirdparty
│ │ └── JRangeSlider.java
├── comp
│ ├── arg_firwin.m
│ ├── arg_freqtoaud.m
│ ├── arg_fwt.m
│ ├── arg_fwt2.m
│ ├── arg_fwtcommon.m
│ ├── arg_fwtext.m
│ ├── arg_groupthresh.m
│ ├── arg_ltfattranslate.m
│ ├── arg_normalize.m
│ ├── arg_pfilt.m
│ ├── arg_plotfilterbank.m
│ ├── arg_plotfwt.m
│ ├── arg_tfplot.m
│ ├── arg_thresh.m
│ ├── arg_wfbtcommon.m
│ ├── assert_L.m
│ ├── assert_classname.m
│ ├── assert_groworder.m
│ ├── assert_sigreshape_post.m
│ ├── assert_sigreshape_pre.m
│ ├── assert_squarelat.m
│ ├── block_interface.m
│ ├── comp_atrousfilterbank_td.m
│ ├── comp_cellcoef2tf.m
│ ├── comp_chirpzt.m
│ ├── comp_col2diag.m
│ ├── comp_dct.m
│ ├── comp_dgt.m
│ ├── comp_dgt_fb.m
│ ├── comp_dgt_long.m
│ ├── comp_dgt_ola.m
│ ├── comp_dgt_walnut.m
│ ├── comp_dgtreal.m
│ ├── comp_dgtreal_fb.m
│ ├── comp_dgtreal_long.m
│ ├── comp_dgtreal_ola.m
│ ├── comp_downs.m
│ ├── comp_dst.m
│ ├── comp_dwilt.m
│ ├── comp_dwilt_fb.m
│ ├── comp_dwilt_long.m
│ ├── comp_dwiltii.m
│ ├── comp_dwiltiii.m
│ ├── comp_dwiltiv.m
│ ├── comp_edgt6.m
│ ├── comp_extBoundary.m
│ ├── comp_fftreal.m
│ ├── comp_filterbank.m
│ ├── comp_filterbank_a.m
│ ├── comp_filterbank_fft.m
│ ├── comp_filterbank_fftbl.m
│ ├── comp_filterbank_pre.m
│ ├── comp_filterbank_td.m
│ ├── comp_filterbankresponse.m
│ ├── comp_fourierwindow.m
│ ├── comp_framelength_fusion.m
│ ├── comp_framelength_tensor.m
│ ├── comp_frana_fusion.m
│ ├── comp_frana_tensor.m
│ ├── comp_frsyn_fusion.m
│ ├── comp_frsyn_tensor.m
│ ├── comp_fwt.m
│ ├── comp_gabdual_long.m
│ ├── comp_gabmixdual_fac.m
│ ├── comp_gabreassign.m
│ ├── comp_gabtight_long.m
│ ├── comp_gdgt.m
│ ├── comp_gfeigs.m
│ ├── comp_gga.m
│ ├── comp_hermite.m
│ ├── comp_hermite_all.m
│ ├── comp_iatrousfilterbank_td.m
│ ├── comp_idgt.m
│ ├── comp_idgt_fac.m
│ ├── comp_idgt_fb.m
│ ├── comp_idgtreal.m
│ ├── comp_idgtreal_fac.m
│ ├── comp_idgtreal_fb.m
│ ├── comp_idwilt.m
│ ├── comp_idwiltii.m
│ ├── comp_idwiltiii.m
│ ├── comp_idwiltiv.m
│ ├── comp_iedgt6.m
│ ├── comp_ifftreal.m
│ ├── comp_ifilterbank.m
│ ├── comp_ifilterbank_fft.m
│ ├── comp_ifilterbank_fftbl.m
│ ├── comp_ifilterbank_td.m
│ ├── comp_ifwt.m
│ ├── comp_igdgt.m
│ ├── comp_inonsepdgt.m
│ ├── comp_inonsepdgt_shear.m
│ ├── comp_inonsepdgtreal_quinqux.m
│ ├── comp_irdgt.m
│ ├── comp_irdgtii.m
│ ├── comp_irdgtiii.m
│ ├── comp_iufilterbank_td.m
│ ├── comp_iufwt.m
│ ├── comp_iuwfbt.m
│ ├── comp_iuwpfbt.m
│ ├── comp_iwfac.m
│ ├── comp_iwfbt.m
│ ├── comp_iwpfbt.m
│ ├── comp_nonsepdgt_multi.m
│ ├── comp_nonsepdgt_shear.m
│ ├── comp_nonsepdgtreal_quinqux.m
│ ├── comp_nonsepwin2multi.m
│ ├── comp_pchirp.m
│ ├── comp_pgauss.m
│ ├── comp_sigreshape_post.m
│ ├── comp_sigreshape_pre.m
│ ├── comp_transferfunction.m
│ ├── comp_ufilterbank_fft.m
│ ├── comp_ufilterbank_td.m
│ ├── comp_ufwt.m
│ ├── comp_ups.m
│ ├── comp_uwfbt.m
│ ├── comp_uwpfbt.m
│ ├── comp_warpedfoff.m
│ ├── comp_warpedfreqresponse.m
│ ├── comp_wfac.m
│ ├── comp_wfbt.m
│ ├── comp_window.m
│ ├── comp_wpfbt.m
│ ├── compinit.m
│ ├── demo_blockproc_header.m
│ ├── gabpars_from_window.m
│ ├── gabpars_from_windowsignal.m
│ ├── nonsepgabpars_from_window.m
│ └── vect2cell.m
├── demos
│ ├── Contents.m
│ ├── demo_audiocompression.m
│ ├── demo_audiodenoise.m
│ ├── demo_audioshrink.m
│ ├── demo_auditoryfilterbank.m
│ ├── demo_audscales.m
│ ├── demo_blockproc_basicloop.m
│ ├── demo_blockproc_denoising.m
│ ├── demo_blockproc_dgtequalizer.m
│ ├── demo_blockproc_erblets.m
│ ├── demo_blockproc_paramequalizer.m
│ ├── demo_blockproc_pitchshift.m
│ ├── demo_blockproc_slidingsgram.m
│ ├── demo_dgt.m
│ ├── demo_firwin.m
│ ├── demo_gabfir.m
│ ├── demo_gabmixdual.m
│ ├── demo_gabmul.m
│ ├── demo_gabmulappr.m
│ ├── demo_imagecompression.m
│ ├── demo_isgram.m
│ ├── demo_lasso.m
│ ├── demo_nextfastfft.m
│ ├── demo_nsdgt.m
│ ├── demo_ofdm.m
│ ├── demo_pbspline.m
│ ├── demo_pgauss.m
│ ├── demo_phaseplot.m
│ └── demosinit.m
├── deprecated
│ ├── Contents.m
│ ├── deprecatedinit.m
│ ├── gabelitistlasso.m
│ ├── gabgrouplasso.m
│ ├── gablasso.m
│ ├── gabmul.m
│ ├── gabmuleigs.m
│ ├── iufilterbank.m
│ ├── iunsdgt.m
│ ├── iunsdgtreal.m
│ └── tfmat.m
├── filterbank
│ ├── Contents.m
│ ├── cqt.m
│ ├── erbfilters.m
│ ├── erblett.m
│ ├── filterbank.m
│ ├── filterbankbounds.m
│ ├── filterbankdual.m
│ ├── filterbankinit.m
│ ├── filterbanklength.m
│ ├── filterbanklengthcoef.m
│ ├── filterbankrealbounds.m
│ ├── filterbankrealdual.m
│ ├── filterbankrealtight.m
│ ├── filterbankresponse.m
│ ├── filterbanktight.m
│ ├── filterbankwin.m
│ ├── icqt.m
│ ├── ierblett.m
│ ├── ifilterbank.m
│ ├── insdgfb.m
│ ├── nonu2ufilterbank.m
│ ├── plotfilterbank.m
│ └── ufilterbank.m
├── fourier
│ ├── Contents.m
│ ├── blfilter.m
│ ├── ceil23.m
│ ├── ceil235.m
│ ├── chirpzt.m
│ ├── convolve.m
│ ├── dcti.m
│ ├── dctii.m
│ ├── dctiii.m
│ ├── dctiv.m
│ ├── dctresample.m
│ ├── dfracft.m
│ ├── dft.m
│ ├── dsti.m
│ ├── dstii.m
│ ├── dstiii.m
│ ├── dstiv.m
│ ├── expwave.m
│ ├── ffracft.m
│ ├── fftindex.m
│ ├── fftreal.m
│ ├── fftresample.m
│ ├── fir2long.m
│ ├── firfilter.m
│ ├── firkaiser.m
│ ├── firwin.m
│ ├── floor23.m
│ ├── floor235.m
│ ├── fourierinit.m
│ ├── gga.m
│ ├── hermbasis.m
│ ├── idft.m
│ ├── ifftreal.m
│ ├── involute.m
│ ├── isevenfunction.m
│ ├── long2fir.m
│ ├── magresp.m
│ ├── middlepad.m
│ ├── modcent.m
│ ├── nextfastfft.m
│ ├── pbspline.m
│ ├── pchirp.m
│ ├── pconv.m
│ ├── pderiv.m
│ ├── peven.m
│ ├── pfilt.m
│ ├── pgauss.m
│ ├── pheaviside.m
│ ├── pherm.m
│ ├── plotfft.m
│ ├── plotfftreal.m
│ ├── podd.m
│ ├── prect.m
│ ├── psech.m
│ ├── psinc.m
│ ├── pxcorr.m
│ ├── shah.m
│ ├── transferfunction.m
│ └── warpedblfilter.m
├── frames
│ ├── Contents.m
│ ├── frame.m
│ ├── frameaccel.m
│ ├── framebounds.m
│ ├── framecoef2native.m
│ ├── framecoef2tf.m
│ ├── framediag.m
│ ├── framedual.m
│ ├── framegram.m
│ ├── framelength.m
│ ├── framelengthcoef.m
│ ├── framematrix.m
│ ├── framenative2coef.m
│ ├── framepair.m
│ ├── framered.m
│ ├── framesinit.m
│ ├── frametf2coef.m
│ ├── frametight.m
│ ├── frana.m
│ ├── franagrouplasso.m
│ ├── franaiter.m
│ ├── franalasso.m
│ ├── frsyn.m
│ ├── frsynabs.m
│ ├── frsyniter.m
│ └── plotframe.m
├── gabor
│ ├── Contents.m
│ ├── col2diag.m
│ ├── constructphase.m
│ ├── dgt.m
│ ├── dgt2.m
│ ├── dgtlength.m
│ ├── dgtreal.m
│ ├── dsft.m
│ ├── dwilt.m
│ ├── dwilt2.m
│ ├── dwiltlength.m
│ ├── gabdual.m
│ ├── gabdualnorm.m
│ ├── gabframebounds.m
│ ├── gabframediag.m
│ ├── gabimagepars.m
│ ├── gabmixdual.m
│ ├── gaborinit.m
│ ├── gabphasegrad.m
│ ├── gabprojdual.m
│ ├── gabreassign.m
│ ├── gabrieszbounds.m
│ ├── gabtight.m
│ ├── gabwin.m
│ ├── idgt.m
│ ├── idgt2.m
│ ├── idgtreal.m
│ ├── idwilt.m
│ ├── idwilt2.m
│ ├── instfreqplot.m
│ ├── isgram.m
│ ├── isgramreal.m
│ ├── iwmdct.m
│ ├── iwmdct2.m
│ ├── izak.m
│ ├── latticetype2matrix.m
│ ├── longpar.m
│ ├── matrix2latticetype.m
│ ├── noshearlength.m
│ ├── phaselock.m
│ ├── phaseplot.m
│ ├── phaseunlock.m
│ ├── plotdgt.m
│ ├── plotdgtreal.m
│ ├── plotdwilt.m
│ ├── plotwmdct.m
│ ├── projkern.m
│ ├── rect2wil.m
│ ├── resgram.m
│ ├── s0norm.m
│ ├── sgram.m
│ ├── shearfind.m
│ ├── symphase.m
│ ├── tconv.m
│ ├── tfplot.m
│ ├── wil2rect.m
│ ├── wilbounds.m
│ ├── wildual.m
│ ├── wilframediag.m
│ ├── wilorth.m
│ ├── wilwin.m
│ ├── wmdct.m
│ ├── wmdct2.m
│ └── zak.m
├── isoctave.m
├── ltfat_version
├── ltfatarghelper.m
├── ltfatbasepath.m
├── ltfatgetdefaults.m
├── ltfathelp.m
├── ltfatmex.m
├── ltfatsetdefaults.m
├── ltfatstart.m
├── ltfatstop.m
├── mex
│ ├── Makefile
│ ├── Makefile_mac
│ ├── Makefile_mingw
│ ├── Makefile_unix
│ ├── Makefile_unix_old
│ ├── block_interface.c
│ ├── block_interface.h
│ ├── comp_atrousfilterbank_td.c
│ ├── comp_cellcoef2tf.c
│ ├── comp_chirpzt.c
│ ├── comp_col2diag.c
│ ├── comp_dct.c
│ ├── comp_dgt_fb.c
│ ├── comp_dgt_long.c
│ ├── comp_dgt_ola.c
│ ├── comp_dgtreal_fb.c
│ ├── comp_dgtreal_long.c
│ ├── comp_dgtreal_ola.c
│ ├── comp_dst.c
│ ├── comp_dwilt_long.c
│ ├── comp_fftreal.c
│ ├── comp_filterbank.c
│ ├── comp_filterbank_fft.c
│ ├── comp_filterbank_fftbl.c
│ ├── comp_filterbank_td.c
│ ├── comp_gabdual_long.c
│ ├── comp_gabreassign.c
│ ├── comp_gabtight_long.c
│ ├── comp_gga.c
│ ├── comp_heapint.c
│ ├── comp_iatrousfilterbank_td.c
│ ├── comp_idgt_fac.c
│ ├── comp_idgt_fb.c
│ ├── comp_idgtreal_fac.c
│ ├── comp_idgtreal_fb.c
│ ├── comp_ifftreal.c
│ ├── comp_ifilterbank.c
│ ├── comp_ifilterbank_fft.c
│ ├── comp_ifilterbank_fftbl.c
│ ├── comp_ifilterbank_td.c
│ ├── comp_iwfac.c
│ ├── comp_nonsepdgt_multi.c
│ ├── comp_nonsepdgt_shear.c
│ ├── comp_nonsepdgt_shearola.c
│ ├── comp_nonsepwin2multi.c
│ ├── comp_pchirp.c
│ ├── comp_pgauss.c
│ ├── comp_ufilterbank_fft.c
│ ├── comp_wfac.c
│ ├── config.h
│ ├── filedefs.mk
│ ├── ltfat_mex_template_helper.h
│ ├── ltfat_mex_typecomplexindependent.h
│ ├── ltfat_mex_typeindependent.h
│ ├── mex-memalloc.c
│ ├── mexinit.m
│ ├── postpad.m
│ └── vect2cell.c
├── mulaclab.m
├── mulaclab
│ └── icons
│ │ ├── apply.png
│ │ ├── colormap.png
│ │ ├── difference.png
│ │ ├── freehand.png
│ │ ├── intersection.png
│ │ ├── loop.png
│ │ ├── magicwand.png
│ │ ├── pan.png
│ │ ├── play.png
│ │ ├── resizebutton.png
│ │ ├── showsymbol.png
│ │ ├── stop.png
│ │ ├── subbandsel.png
│ │ ├── union.png
│ │ ├── zoomin.png
│ │ └── zoomout.png
├── nonstatgab
│ ├── Contents.m
│ ├── insdgt.m
│ ├── insdgtreal.m
│ ├── nonstatgabinit.m
│ ├── nsdgt.m
│ ├── nsdgtlength.m
│ ├── nsdgtreal.m
│ ├── nsgabdual.m
│ ├── nsgabframebounds.m
│ ├── nsgabframediag.m
│ ├── nsgabtight.m
│ ├── nsgabwin.m
│ ├── plotnsdgt.m
│ ├── plotnsdgtreal.m
│ ├── unsdgt.m
│ └── unsdgtreal.m
├── oct
│ ├── Makefile_mac
│ ├── Makefile_mingwoct
│ ├── Makefile_unix
│ ├── comp_atrousfilterbank_td.cc
│ ├── comp_chirpzt.cc
│ ├── comp_col2diag.cc
│ ├── comp_dct.cc
│ ├── comp_dgt_fb.cc
│ ├── comp_dgt_long.cc
│ ├── comp_dgt_ola.cc
│ ├── comp_dgtreal_fb.cc
│ ├── comp_dgtreal_long.cc
│ ├── comp_dgtreal_ola.cc
│ ├── comp_dst.cc
│ ├── comp_dwilt_long.cc
│ ├── comp_fftreal.cc
│ ├── comp_filterbank_fft.cc
│ ├── comp_filterbank_fftbl.cc
│ ├── comp_filterbank_td.cc
│ ├── comp_gabdual_long.cc
│ ├── comp_gabreassign.cc
│ ├── comp_gabtight_long.cc
│ ├── comp_gga.cc
│ ├── comp_heapint.cc
│ ├── comp_iatrousfilterbank_td.cc
│ ├── comp_idgt_fac.cc
│ ├── comp_idgt_fb.cc
│ ├── comp_idgtreal_fac.cc
│ ├── comp_idgtreal_fb.cc
│ ├── comp_ifftreal.cc
│ ├── comp_ifilterbank_fft.cc
│ ├── comp_ifilterbank_fftbl.cc
│ ├── comp_ifilterbank_td.cc
│ ├── comp_iwfac.cc
│ ├── comp_nonsepdgt_multi.cc
│ ├── comp_nonsepdgt_shear.cc
│ ├── comp_nonsepwin2multi.cc
│ ├── comp_pchirp.cc
│ ├── comp_pgauss.cc
│ ├── comp_ufilterbank_fft.cc
│ ├── comp_wfac.cc
│ ├── config.h
│ ├── ltfat_oct_template_helper.h
│ ├── oct-memalloc.c
│ └── octinit.m
├── operators
│ ├── Contents.m
│ ├── framemul.m
│ ├── framemuladj.m
│ ├── framemulappr.m
│ ├── framemuleigs.m
│ ├── gabmulappr.m
│ ├── iframemul.m
│ ├── ioperator.m
│ ├── operator.m
│ ├── operatoradj.m
│ ├── operatorappr.m
│ ├── operatoreigs.m
│ ├── operatormatrix.m
│ ├── operatornew.m
│ ├── operatorsinit.m
│ ├── spreadadj.m
│ ├── spreadeigs.m
│ ├── spreadfun.m
│ ├── spreadinv.m
│ └── spreadop.m
├── scalardistribute.m
├── signals
│ ├── Clar.wav
│ ├── Contents.m
│ ├── Piano2.wav
│ ├── bat.asc
│ ├── bat.m
│ ├── batmask.asc
│ ├── batmask.m
│ ├── cameraman.m
│ ├── cameraman.png
│ ├── cocktailparty.m
│ ├── cocktailparty.wav
│ ├── ctestfun.m
│ ├── expchirp.m
│ ├── greasy.m
│ ├── greasy.wav
│ ├── gspi.m
│ ├── gspi.wav
│ ├── lichtenstein.m
│ ├── lichtenstein.png
│ ├── linus.m
│ ├── linus.wav
│ ├── ltfatlogo.m
│ ├── ltfatlogo.wav
│ ├── ltfattext.m
│ ├── ltfattext.png
│ ├── noise.m
│ ├── otoclick.asc
│ ├── otoclick.m
│ ├── pinknoise.m
│ ├── signalsinit.m
│ ├── traindoppler.m
│ └── traindoppler.wav
├── sigproc
│ ├── Contents.m
│ ├── crestfactor.m
│ ├── dynlimit.m
│ ├── elitistthresh.m
│ ├── gaindb.m
│ ├── groupthresh.m
│ ├── iqam4.m
│ ├── jpeg2rgb.m
│ ├── largestn.m
│ ├── largestr.m
│ ├── normalize.m
│ ├── qam4.m
│ ├── rampdown.m
│ ├── rampsignal.m
│ ├── rampup.m
│ ├── rgb2jpeg.m
│ ├── rms.m
│ ├── sigprocinit.m
│ ├── thresh.m
│ └── uquant.m
├── src
│ ├── Makefile_mac
│ ├── Makefile_mingw
│ ├── Makefile_mingwoct
│ ├── Makefile_octpkg
│ ├── Makefile_unix
│ ├── README
│ ├── bootstrap
│ ├── c-safe-memalloc.c
│ ├── ciutils.c
│ ├── ciutils.h
│ ├── config.h
│ ├── configure.ac
│ ├── dgt.c
│ ├── dgt_fac.c
│ ├── dgt_fb.c
│ ├── dgt_long.h
│ ├── dgt_multi.c
│ ├── dgt_multi.h
│ ├── dgt_ola.c
│ ├── dgt_shear.c
│ ├── dgt_shear.h
│ ├── dgt_shearola.c
│ ├── dgt_walnut.c
│ ├── dgtreal_fac.c
│ ├── drivers.c
│ ├── dwilt.c
│ ├── filedefs.mk
│ ├── filterbank.c
│ ├── gabdual.c
│ ├── gabdual_fac.c
│ ├── gabtight.c
│ ├── gabtight_fac.c
│ ├── goertzel.c
│ ├── goertzel.h
│ ├── heapint.c
│ ├── idgt_fac.c
│ ├── idgt_fb.c
│ ├── integer_manip.c
│ ├── iwfac.c
│ ├── ltfat.h
│ ├── ltfat_blaslapack.c
│ ├── ltfat_complexindependent.c
│ ├── ltfat_complexindependent_bl.c
│ ├── ltfat_notdllexport.def
│ ├── ltfat_typecomplexindependent.h
│ ├── ltfat_typeindependent.h
│ ├── ltfat_types.h
│ ├── m4
│ │ ├── ax_blas.m4
│ │ └── ax_lapack.m4
│ ├── ostools.mk
│ ├── pfilt.c
│ ├── reassign.c
│ ├── spread.c
│ ├── tfutil.c
│ ├── thirdparty
│ │ ├── cblas.h
│ │ ├── f77-fcn.h
│ │ ├── fftw3.h
│ │ └── portaudio.h
│ ├── wavelets.c
│ ├── wavelets.h
│ ├── wfac.c
│ ├── windows.c
│ └── winmanip.c
├── thirdparty
│ ├── GPC
│ │ ├── GPC-README.pdf
│ │ ├── VERSIONS.TXT
│ │ ├── gpc.c
│ │ └── gpc.h
│ ├── Playrec
│ │ ├── Makefile_mac
│ │ ├── Makefile_macoct
│ │ ├── Makefile_mingw
│ │ ├── Makefile_mingwoct
│ │ ├── Makefile_unix
│ │ ├── Makefile_unixoct
│ │ ├── license.txt
│ │ ├── mex_dll_core.c
│ │ ├── mex_dll_core.h
│ │ ├── pa_dll_playrec.c
│ │ └── pa_dll_playrec.h
│ ├── PolygonClip
│ │ ├── Makefile_mac
│ │ ├── Makefile_mingw
│ │ ├── Makefile_unix
│ │ ├── PolygonClip.c
│ │ ├── PolygonClip.h
│ │ ├── ReadMe.txt
│ │ └── license.txt
│ └── thirdpartyinit.m
└── wavelets
│ ├── Contents.m
│ ├── fwt.m
│ ├── fwt2.m
│ ├── fwt2filterbank.m
│ ├── fwtbounds.m
│ ├── fwtclength.m
│ ├── fwtinit.m
│ ├── fwtlength.m
│ ├── ifwt.m
│ ├── ifwt2.m
│ ├── iufwt.m
│ ├── iuwfbt.m
│ ├── iuwpfbt.m
│ ├── iwfbt.m
│ ├── iwpfbt.m
│ ├── iwtfft.m
│ ├── plotwavelets.m
│ ├── ufwt.m
│ ├── uwfbt.m
│ ├── uwpfbt.m
│ ├── wavcell2pack.m
│ ├── waveletsinit.m
│ ├── wavfun.m
│ ├── wavpack2cell.m
│ ├── wfbt.m
│ ├── wfbt2filterbank.m
│ ├── wfbtbounds.m
│ ├── wfbtclength.m
│ ├── wfbtinit.m
│ ├── wfbtlength.m
│ ├── wfbtmanip
│ ├── deleteNode.m
│ ├── deleteSubtree.m
│ ├── depthIndex2NodeNo.m
│ ├── maxTreeSub.m
│ ├── nat2freqOrder.m
│ ├── noOfChildOutputs.m
│ ├── noOfNodeOutputs.m
│ ├── noOfOutputs.m
│ ├── noOfSubtreeOutputs.m
│ ├── nodeFiltUps.m
│ ├── nodeInLen.m
│ ├── nodePredecesors.m
│ ├── nodeSub.m
│ ├── nodeSubtreeBF.m
│ ├── nodeSubtreeDF.m
│ ├── nodesBForder.m
│ ├── nodesDForder.m
│ ├── nodesLevelsBForder.m
│ ├── nodesMultid.m
│ ├── rangeInLocalOutputs.m
│ ├── rangeInNodeOutputs.m
│ ├── rangeInOutputs.m
│ ├── rangeInWpOutputs.m
│ ├── rangeWpBF.m
│ └── treeSub.m
│ ├── wfbtput.m
│ ├── wfbtremove.m
│ ├── wfilt_algmband.m
│ ├── wfilt_apr.m
│ ├── wfilt_db.m
│ ├── wfilt_dden.m
│ ├── wfilt_dgrid.m
│ ├── wfilt_dtree.m
│ ├── wfilt_hden.m
│ ├── wfilt_lemarie.m
│ ├── wfilt_matlabwtwrapper.m
│ ├── wfilt_maxflat.m
│ ├── wfilt_mband.m
│ ├── wfilt_optfs.m
│ ├── wfilt_remez.m
│ ├── wfilt_spline.m
│ ├── wfilt_sym.m
│ ├── wfilt_symds.m
│ ├── wfiltinfo.m
│ ├── wfreq_lemarie.m
│ ├── wpbest.m
│ └── wpfbt.m
├── lyon_config.json
├── mel_config.json
├── mfcc_config.json
├── npz2csv.py
├── npz2h5features.py
├── oct.m
├── rasta_config.json
├── rastamat
├── audspec.m
├── bark2hz.m
├── cep2spec.m
├── deltas.m
├── dolpc.m
├── fft2barkmx.m
├── fft2melmx.m
├── hz2bark.m
├── hz2mel.m
├── invaudspec.m
├── invmelfcc.m
├── invpostaud.m
├── invpowspec.m
├── ispecgram.m
├── levinson_fix.m
├── lifter.m
├── lpc2cep.m
├── lpc2spec.m
├── mel2hz.m
├── melfcc.m
├── postaud.m
├── powspec.m
├── process_options.m
├── rastafilt.m
├── rastaplp.m
├── readhtk.m
├── sm1_cln.wav
└── spec2cep.m
├── requirements.txt
├── sample2frameno.m
├── setup.py
├── sig2drnl.m
├── sig2lyon.m
├── sig2rasta.m
└── test
└── wavs
├── s_f101_ba.wav
├── s_f101_bc.wav
├── s_f101_be.wav
├── s_f101_bi.wav
├── s_f101_bo.wav
├── s_f101_bu.wav
├── s_f101_bxe.wav
└── s_f101_bxi.wav
/.gitignore:
--------------------------------------------------------------------------------
1 | # Mac specific files
2 | .DS_Store
3 |
4 | # Spyder IDE files
5 | .spyderproject
6 | .spyderworkspace
7 |
8 | # Byte-compiled / optimized / DLL files
9 | __pycache__/
10 | *.py[cod]
11 |
12 | # C extensions
13 | *.so
14 |
15 | # Distribution / packaging
16 | .Python
17 | env/
18 | bin/
19 | build/
20 | develop-eggs/
21 | dist/
22 | eggs/
23 | lib/
24 | lib64/
25 | parts/
26 | sdist/
27 | var/
28 | *.egg-info/
29 | .installed.cfg
30 | *.egg
31 |
32 | # Installer logs
33 | pip-log.txt
34 | pip-delete-this-directory.txt
35 |
36 | # Unit test / coverage reports
37 | htmlcov/
38 | .tox/
39 | .coverage
40 | .cache
41 | nosetests.xml
42 | coverage.xml
43 |
44 | # Translations
45 | *.mo
46 |
47 | # Mr Developer
48 | .mr.developer.cfg
49 | .project
50 | .pydevproject
51 |
52 | # Rope
53 | .ropeproject
54 |
55 | # Django stuff:
56 | *.log
57 | *.pot
58 |
59 | # Sphinx documentation
60 | docs/_build/
61 |
62 | # pyTest cache
63 | test/__pycache__
--------------------------------------------------------------------------------
/AuditoryToolbox/AuditoryToolboxTechReport.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/AuditoryToolboxTechReport.pdf
--------------------------------------------------------------------------------
/AuditoryToolbox/CorrelogramArray.m:
--------------------------------------------------------------------------------
1 | function movie = CorrelogramArray(data, sr, frameRate, width)
2 | % function movie = CorrelogramArray(data, sr, frameRate, width)
3 | % Compute an array of correlogram frames, from the sound file data with
4 | % a sampling rate of sr Hz. Compute frameRate frames per second, using
5 | % a window size of "width" samples.
6 |
7 | % (c) 1998 Interval Research Corporation
8 |
9 | if nargin < 2, sr = 16000; end
10 | if nargin < 3, frameRate = 12; end
11 | if nargin < 4, width = 256; end
12 |
13 | [channels, len] = size(data);
14 | frameIncrement = fix(sr/frameRate);
15 | frameCount = floor((len-width)/frameIncrement)+1;
16 | fprintf('Correlogram spacing is %g samples per frame.\n', frameIncrement);
17 |
18 | movie = zeros(channels*width, frameCount);
19 | for i=1:frameCount
20 | start = (i-1)*frameIncrement + 1;
21 | pic = CorrelogramFrame(data, width, start, frameIncrement*4);
22 | minimum = min(min(pic));
23 | maximum = max(max(pic));
24 | image((pic-minimum)/(maximum-minimum)*length(colormap));
25 | drawnow;
26 | movie(:,i) = reshape(pic, channels*width, 1);
27 | end
28 |
--------------------------------------------------------------------------------
/AuditoryToolbox/CorrelogramMovie.m:
--------------------------------------------------------------------------------
1 | function movie = CorrelogramMovie(data, sr, frameRate, width)
2 | % function movie = CorrelogramMovie(data, sr, frameRate, width)
3 | % Compute a Matlab movie of a sound array called "data" which has
4 | % a sampling rate of sr Hz. Compute frameRate frames per second, each
5 | % time taking "width" samples for analysis.
6 |
7 | % (c) 1998 Interval Research Corporation
8 |
9 | if nargin < 2, sr = 16000; end
10 | if nargin < 3, frameRate = 12; end
11 | if nargin < 4, width = 256; end
12 |
13 | [channels, len] = size(data);
14 | frameIncrement = fix(sr/frameRate);
15 | frameCount = floor((len-width)/frameIncrement)+1;
16 |
17 | movie = moviein(frameCount);
18 | for i=1:frameCount
19 | start = (i-1)*frameIncrement + 1;
20 | pic = CorrelogramFrame(data, width, start, frameIncrement*2);
21 | minimum = min(min(pic));
22 | maximum = max(max(pic));
23 | image((pic-minimum)/(maximum-minimum)*length(colormap));
24 | drawnow;
25 | movie(:,i) = getframe;
26 | end
27 |
--------------------------------------------------------------------------------
/AuditoryToolbox/ERBSpace.m:
--------------------------------------------------------------------------------
1 | function cfArray = ERBSpace(lowFreq, highFreq, N)
2 | % function cfArray = ERBSpace(lowFreq, highFreq, N)
3 | % This function computes an array of N frequencies uniformly spaced between
4 | % highFreq and lowFreq on an ERB scale. N is set to 100 if not specified.
5 | %
6 | % See also linspace, logspace, MakeERBCoeffs, MakeERBFilters.
7 | %
8 | % For a definition of ERB, see Moore, B. C. J., and Glasberg, B. R. (1983).
9 | % "Suggested formulae for calculating auditory-filter bandwidths and
10 | % excitation patterns," J. Acoust. Soc. Am. 74, 750-753.
11 |
12 | if nargin < 1
13 | lowFreq = 100;
14 | end
15 |
16 | if nargin < 2
17 | highFreq = 44100/4;
18 | end
19 |
20 | if nargin < 3
21 | N = 100;
22 | end
23 |
24 | % Change the following three parameters if you wish to use a different
25 | % ERB scale. Must change in MakeERBCoeffs too.
26 | EarQ = 9.26449; % Glasberg and Moore Parameters
27 | minBW = 24.7;
28 | order = 1;
29 |
30 | % All of the followFreqing expressions are derived in Apple TR #35, "An
31 | % Efficient Implementation of the Patterson-Holdsworth Cochlear
32 | % Filter Bank." See pages 33-34.
33 | cfArray = -(EarQ*minBW) + exp((1:N)'*(-log(highFreq + EarQ*minBW) + ...
34 | log(lowFreq + EarQ*minBW))/N) * (highFreq + EarQ*minBW);
35 |
36 |
--------------------------------------------------------------------------------
/AuditoryToolbox/EpsilonFromTauFS.m:
--------------------------------------------------------------------------------
1 | function y=EpslionFromTauFS(tau, fs)
2 | % EpsilonFromTauFS - Find first order filter coefficient
3 | % as a function of time constant (tau) and sample rate (fs)
4 |
5 | % (c) 1998 Interval Research Corporation
6 | y=1-exp(-1/tau/fs);
7 |
--------------------------------------------------------------------------------
/AuditoryToolbox/FMPoints.m:
--------------------------------------------------------------------------------
1 | function points=FMPoints(len, freq, fmFreq, fmAmp, fs)
2 | % points=FMPoints(len, freq, fmFreq, fmAmp, fs)
3 | % Generates (fractional) sample locations for frequency-modulated impulses
4 | % len = number of samples
5 | % freq = pitch frequency (Hz)
6 | % fmFreq = vibrato frequency (Hz) (defaults to 6 Hz)
7 | % fmAmp = max change in pitch (defaults to 5% of freq)
8 | % fs = sample frequency (defaults to 22254.545454 samples/s)
9 | %
10 | % Basic formula: phase angle = 2*pi*freq*t + (fmAmp/fmFreq)*sin(2*pi*fmFreq*t)
11 | % k-th zero crossing approximately at sample number
12 | % (fs/freq)*(k - (fmAmp/(2*pi*fmFreq))*sin(2*pi*k*(fmFreq/freq)))
13 |
14 | % (c) 1998 Interval Research Corporation
15 |
16 | if nargin<2,
17 | fprintf('Format: sig=fmPoints(len, freq [, fmAmp, fmFreq, sampleRate])\n');
18 | return;
19 | end;
20 | if nargin<5,
21 | fs=22254.545454;
22 | end;
23 | if nargin<4,
24 | fmAmp=0.05*freq;
25 | end;
26 | if nargin<3,
27 | fmFreq=6;
28 | end;
29 |
30 | kmax=fix(freq*(len/fs));
31 | points=0:kmax-1;
32 | points=1+(fs/freq)*(points-(fmAmp/(2*pi*fmFreq))* ...
33 | sin(2*pi*(fmFreq/freq)*points));
34 |
--------------------------------------------------------------------------------
/AuditoryToolbox/FreqResp.m:
--------------------------------------------------------------------------------
1 | % mag = FreqResp(filter, f, fs)
2 | % Find the frequency response (in dB) of a filter (1x5 vector) at
3 | % frequency f and sampling rate fs.
4 |
5 | % (c) 1998 Interval Research Corporation
6 |
7 | function mag=FreqResp(filter,f,fs)
8 | cf = exp(i*2*pi*f/fs);
9 | mag = (filter(3) + filter(2)*cf + filter(1)*cf.^2) ./ ...
10 | (filter(5) + filter(4)*cf + cf.^2);
11 | mag = 20*log10(abs(mag));
12 |
--------------------------------------------------------------------------------
/AuditoryToolbox/SecondOrderFilter.m:
--------------------------------------------------------------------------------
1 | % filter = SecondOrderFilter(f, q, fs)
2 | % Design a second order digital filter with a center frequency of
3 | % f, filter quality of q, and digital sampling rate of fs (Hz).
4 |
5 | % (c) 1998 Interval Research Corporation
6 |
7 | function filts = SecondOrderFilter(f,q,fs)
8 | cft = f'/fs;
9 | rho = exp(- pi * cft ./ q');
10 | theta = 2 * pi * cft .* sqrt(1-1 ./(4*q'.^2));
11 | filts = [ ones(size(rho)) -2*rho.*cos(theta) rho.^2 ];
12 |
--------------------------------------------------------------------------------
/AuditoryToolbox/SetGain.m:
--------------------------------------------------------------------------------
1 | % filter = SetGain(filter, desired, f, fs)
2 | % Set the gain of a filter (1x5 vector) to any desired gain
3 | % at any desired frequency (f).
4 |
5 | % (c) 1998 Interval Research Corporation
6 |
7 | function filter = SetGain(filter, desired, f, fs)
8 | oldGain = 10^(FreqResp(filter, f, fs)/20);
9 | filter(1:3) = filter(1:3)*desired/oldGain;
10 |
--------------------------------------------------------------------------------
/AuditoryToolbox/agc.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/agc.dll
--------------------------------------------------------------------------------
/AuditoryToolbox/agc.mex:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/agc.mex
--------------------------------------------------------------------------------
/AuditoryToolbox/agc.mex.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/agc.mex.bin
--------------------------------------------------------------------------------
/AuditoryToolbox/agc.mexsg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/agc.mexsg
--------------------------------------------------------------------------------
/AuditoryToolbox/agc.mexsg64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/agc.mexsg64
--------------------------------------------------------------------------------
/AuditoryToolbox/agc.mexsol:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/agc.mexsol
--------------------------------------------------------------------------------
/AuditoryToolbox/agc.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/agc.o
--------------------------------------------------------------------------------
/AuditoryToolbox/dtw.mex:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/dtw.mex
--------------------------------------------------------------------------------
/AuditoryToolbox/dtw.mexlx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/dtw.mexlx
--------------------------------------------------------------------------------
/AuditoryToolbox/dtw.mexsg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/dtw.mexsg
--------------------------------------------------------------------------------
/AuditoryToolbox/dtw.mexsg64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/dtw.mexsg64
--------------------------------------------------------------------------------
/AuditoryToolbox/dtw.mexsol:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/dtw.mexsol
--------------------------------------------------------------------------------
/AuditoryToolbox/dtw.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/dtw.o
--------------------------------------------------------------------------------
/AuditoryToolbox/inverseagc.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/inverseagc.dll
--------------------------------------------------------------------------------
/AuditoryToolbox/inverseagc.mex.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/inverseagc.mex.bin
--------------------------------------------------------------------------------
/AuditoryToolbox/inverseagc.mexsg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/inverseagc.mexsg
--------------------------------------------------------------------------------
/AuditoryToolbox/inverseagc.mexsg64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/inverseagc.mexsg64
--------------------------------------------------------------------------------
/AuditoryToolbox/inverseagc.mexsol:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/inverseagc.mexsol
--------------------------------------------------------------------------------
/AuditoryToolbox/invsoscascade.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/invsoscascade.dll
--------------------------------------------------------------------------------
/AuditoryToolbox/invsoscascade.mex:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/invsoscascade.mex
--------------------------------------------------------------------------------
/AuditoryToolbox/invsoscascade.mex.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/invsoscascade.mex.bin
--------------------------------------------------------------------------------
/AuditoryToolbox/invsoscascade.mexsg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/invsoscascade.mexsg
--------------------------------------------------------------------------------
/AuditoryToolbox/invsoscascade.mexsg64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/invsoscascade.mexsg64
--------------------------------------------------------------------------------
/AuditoryToolbox/invsoscascade.mexsol:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/invsoscascade.mexsol
--------------------------------------------------------------------------------
/AuditoryToolbox/invsoscascade.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/invsoscascade.o
--------------------------------------------------------------------------------
/AuditoryToolbox/soscascade.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/soscascade.dll
--------------------------------------------------------------------------------
/AuditoryToolbox/soscascade.mex:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/soscascade.mex
--------------------------------------------------------------------------------
/AuditoryToolbox/soscascade.mex.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/soscascade.mex.bin
--------------------------------------------------------------------------------
/AuditoryToolbox/soscascade.mexsg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/soscascade.mexsg
--------------------------------------------------------------------------------
/AuditoryToolbox/soscascade.mexsg64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/soscascade.mexsg64
--------------------------------------------------------------------------------
/AuditoryToolbox/soscascade.mexsol:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/soscascade.mexsol
--------------------------------------------------------------------------------
/AuditoryToolbox/soscascade.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/soscascade.o
--------------------------------------------------------------------------------
/AuditoryToolbox/sosfilters.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/sosfilters.dll
--------------------------------------------------------------------------------
/AuditoryToolbox/sosfilters.mex:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/sosfilters.mex
--------------------------------------------------------------------------------
/AuditoryToolbox/sosfilters.mex.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/sosfilters.mex.bin
--------------------------------------------------------------------------------
/AuditoryToolbox/sosfilters.mexsg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/sosfilters.mexsg
--------------------------------------------------------------------------------
/AuditoryToolbox/sosfilters.mexsg64:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/sosfilters.mexsg64
--------------------------------------------------------------------------------
/AuditoryToolbox/sosfilters.mexsol:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/sosfilters.mexsol
--------------------------------------------------------------------------------
/AuditoryToolbox/sosfilters.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/sosfilters.o
--------------------------------------------------------------------------------
/AuditoryToolbox/src/Makefile:
--------------------------------------------------------------------------------
1 | MEX = agc.c soscascade.c sosfilters.c dtw.c
2 |
3 | MEXFLAGS =
4 |
5 | all: soscascade sosfilters agc invsoscascade dtw inverseagc
6 |
7 | soscascade: soscascade.c
8 | # mex $(MEXFLAGS) soscascade.c
9 | mkoctfile --mex $(MEXFLAGS) soscascade.c
10 | cp soscascade.mex* ..
11 |
12 | invsoscascade: invsoscascade.c
13 | # mex $(MEXFLAGS) invsoscascade.c
14 | mkoctfile --mex $(MEXFLAGS) invsoscascade.c
15 | cp invsoscascade.mex* ..
16 |
17 | sosfilters: sosfilters.c
18 | # mex $(MEXFLAGS) sosfilters.c
19 | mkoctfile --mex $(MEXFLAGS) sosfilters.c
20 | cp sosfilters.mex* ..
21 |
22 | agc: agc.c
23 | # mex $(MEXFLAGS) agc.c
24 | mkoctfile --mex $(MEXFLAGS) agc.c
25 | cp agc.mex* ..
26 |
27 | inverseagc: agc.c
28 | # mex $(MEXFLAGS) agc.c -DINVERSE -output inverseagc
29 | mkoctfile --mex $(MEXFLAGS) agc.c -DINVERSE -o inverseagc
30 | cp inverseagc.mex* ..
31 |
32 | dtw: dtw.c
33 | # mex $(MEXFLAGS) dtw.c -DMATLAB
34 | mkoctfile --mex $(MEXFLAGS) dtw.c -DMATLAB
35 | cp dtw.mex* ..
36 |
--------------------------------------------------------------------------------
/AuditoryToolbox/src/Makefile.m:
--------------------------------------------------------------------------------
1 | mex agc.c -O
2 | agc(ones(1,20),[.5;.5])
3 | agc(ones(1,20),[.5;.5])
4 | [output s] = agc(ones(1,10),[.5;.5])
5 | agc(ones(1,10),[.5; .5], s)
6 |
7 |
8 |
9 | mex agc.c -DINVERSE -output inverseagc -O
10 | output = agc(ones(1,20),[.5;.5]);
11 | inverseagc(output, [.5; .5])
12 |
13 | mex soscascade.c -O
14 | soscascade([1 0 0 0 0],[1 0 0 -.9 0;1 1 0 0 0])
15 | soscascade([1 0 0 0 0 0 0 0 0 0],[1 0 0 -.9 0;1 1 0 0 0])
16 | [y,s] = soscascade([1 0 0 0 0],[1 0 0 -.9 0;1 1 0 0 0])
17 | soscascade([0 0 0 0 0],[1 0 0 -.9 0;1 1 0 0 0], s)
18 |
19 | mex invsoscascade.c -O
20 | invsoscascade([1 0 0 0 0;1 0 0 0 0],[1 0 0 -.9 0;1 1 0 0 0])
21 |
22 | mex sosfilters.c -O
23 | sosfilters([1 0 0 0 0 0], [1 0 0 -.9 0; 1 0 0 -.8 0])
24 | sosfilters([1 0 0 0 0 0;2 0 0 0 0 0], [1 0 0 -.9 0])
25 | sosfilters([1 zeros(1,9)], [1 0 0 -.9 0; 1 0 0 -.8 0])
26 | [output,s] = sosfilters([1 zeros(1,4)], [1 0 0 -.9 0; 1 0 0 -.8 0])
27 | sosfilters(zeros(1,5), [1 0 0 -.9 0; 1 0 0 -.8 0], s)
28 |
--------------------------------------------------------------------------------
/AuditoryToolbox/src/agc.mex:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/src/agc.mex
--------------------------------------------------------------------------------
/AuditoryToolbox/src/agc.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/src/agc.o
--------------------------------------------------------------------------------
/AuditoryToolbox/src/dtw.mex:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/src/dtw.mex
--------------------------------------------------------------------------------
/AuditoryToolbox/src/dtw.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/src/dtw.o
--------------------------------------------------------------------------------
/AuditoryToolbox/src/invsoscascade.mex:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/src/invsoscascade.mex
--------------------------------------------------------------------------------
/AuditoryToolbox/src/invsoscascade.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/src/invsoscascade.o
--------------------------------------------------------------------------------
/AuditoryToolbox/src/soscascade.mex:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/src/soscascade.mex
--------------------------------------------------------------------------------
/AuditoryToolbox/src/soscascade.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/src/soscascade.o
--------------------------------------------------------------------------------
/AuditoryToolbox/src/sosfilters.mex:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/src/sosfilters.mex
--------------------------------------------------------------------------------
/AuditoryToolbox/src/sosfilters.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/src/sosfilters.o
--------------------------------------------------------------------------------
/AuditoryToolbox/tapestry.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/AuditoryToolbox/tapestry.wav
--------------------------------------------------------------------------------
/amtoolbox/COPYING:
--------------------------------------------------------------------------------
1 | This software is licensed under the GPL version 3.0 with the possibily
2 | to obtain a commercial license, if you cannot abide by the terms of
3 | the GPL.
4 |
5 | For the exact terms of the GPL, see the file glp-3.0.txt
6 |
7 | If you wish to obtain a commercial license, please contact the authors at
8 | amtoolbox-help@ltfat.sourceforge.net
9 |
--------------------------------------------------------------------------------
/amtoolbox/INSTALL:
--------------------------------------------------------------------------------
1 |
2 | --------- Running the toolbox --------------------
3 |
4 | AMToolbox depends on LTFAT. You must first download LTFAT from
5 | http://ltfat.sourceforge.net/ and unpack the downloaded file.
6 |
7 | To start LTFAT in Matlab or Octave type "ltfatstart" as the first
8 | command from the installation directory. This will set up the correct
9 | paths. Similarly, type "amtstart" to start AMToolbox.
10 |
11 | In Octave you can put these commands in your ~/.octaverc file. In Matlab
12 | you can put these command in your startup.m file. Your startup file of
13 | choice should contain some lines like this:
14 |
15 | addpath /path/to/ltfat
16 | addpath /path/to/amtoolbox
17 | ltfatstart;
18 | amtstart;
19 |
20 | The "ltfatstart" and "amtstart" commands will add all the necessary
21 | subdirectories (so please don't add these manually), and will print
22 | statements telling you which backend you are currently using.
23 |
24 | -------- Compiling the toolbox ------- ------------
25 |
26 | If you wish to compile the C and Fortran functions in the toolbox,
27 | execute the "amtmex" command. This will execute all the necessary
28 | compilation scripts if you have the required compilers installed.
29 |
30 |
--------------------------------------------------------------------------------
/amtoolbox/amtbasepath.m:
--------------------------------------------------------------------------------
1 | function bp = amtbasepath;
2 | %AMTBASEPATH The base path of the AMT installation
3 | % Usage: bp = amtbasepath;
4 | %
5 | % AMTBASEPATH returns the top level directory in which the AMT
6 | % files are installed.
7 | %
8 | % See also: amtstart
9 | %
10 | % Url: http://amtoolbox.sourceforge.net/doc//amtbasepath.php
11 |
12 | % Copyright (C) 2009-2013 Peter L. Søndergaard and others.
13 | % This file is part of AMToolbox version 0.9.1
14 | %
15 | % This program is free software: you can redistribute it and/or modify
16 | % it under the terms of the GNU General Public License as published by
17 | % the Free Software Foundation, either version 3 of the License, or
18 | % (at your option) any later version.
19 | %
20 | % This program is distributed in the hope that it will be useful,
21 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
22 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
23 | % GNU General Public License for more details.
24 | %
25 | % You should have received a copy of the GNU General Public License
26 | % along with this program. If not, see .
27 |
28 | f=mfilename('fullpath');
29 |
30 | bp = f(1:end-11);
31 |
32 |
--------------------------------------------------------------------------------
/amtoolbox/amtoolbox_version:
--------------------------------------------------------------------------------
1 | 0.9.1
2 |
--------------------------------------------------------------------------------
/amtoolbox/binaural/binauralinit.m:
--------------------------------------------------------------------------------
1 | %
2 | % Url: http://amtoolbox.sourceforge.net/doc//binaural/binauralinit.php
3 |
4 | % Copyright (C) 2009-2013 Peter L. Søndergaard and others.
5 | % This file is part of AMToolbox version 0.9.1
6 | %
7 | % This program is free software: you can redistribute it and/or modify
8 | % it under the terms of the GNU General Public License as published by
9 | % the Free Software Foundation, either version 3 of the License, or
10 | % (at your option) any later version.
11 | %
12 | % This program is distributed in the hope that it will be useful,
13 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
14 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 | % GNU General Public License for more details.
16 | %
17 | % You should have received a copy of the GNU General Public License
18 | % along with this program. If not, see .
19 | status=1;
20 |
21 |
--------------------------------------------------------------------------------
/amtoolbox/comp/arg_amtredofile.m:
--------------------------------------------------------------------------------
1 | function definput=arg_amtredofile(definput)
2 | %
3 | % Url: http://amtoolbox.sourceforge.net/doc//comp/arg_amtredofile.php
4 |
5 | % Copyright (C) 2009-2013 Peter L. Søndergaard and others.
6 | % This file is part of AMToolbox version 0.9.1
7 | %
8 | % This program is free software: you can redistribute it and/or modify
9 | % it under the terms of the GNU General Public License as published by
10 | % the Free Software Foundation, either version 3 of the License, or
11 | % (at your option) any later version.
12 | %
13 | % This program is distributed in the hope that it will be useful,
14 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
15 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 | % GNU General Public License for more details.
17 | %
18 | % You should have received a copy of the GNU General Public License
19 | % along with this program. If not, see .
20 |
21 | definput.flags.redomode={'autorefresh','refresh','cached'};
22 |
23 |
--------------------------------------------------------------------------------
/amtoolbox/comp/arg_auditoryfilterbank.m:
--------------------------------------------------------------------------------
1 | function definput=arg_auditoryfilterbank(definput)
2 | %
3 | % Url: http://amtoolbox.sourceforge.net/doc//comp/arg_auditoryfilterbank.php
4 |
5 | % Copyright (C) 2009-2013 Peter L. Søndergaard and others.
6 | % This file is part of AMToolbox version 0.9.1
7 | %
8 | % This program is free software: you can redistribute it and/or modify
9 | % it under the terms of the GNU General Public License as published by
10 | % the Free Software Foundation, either version 3 of the License, or
11 | % (at your option) any later version.
12 | %
13 | % This program is distributed in the hope that it will be useful,
14 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
15 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 | % GNU General Public License for more details.
17 | %
18 | % You should have received a copy of the GNU General Public License
19 | % along with this program. If not, see .
20 |
21 | definput.keyvals.flow=80;
22 | definput.keyvals.fhigh=8000;
23 | definput.keyvals.basef=[];
24 | definput.keyvals.bwmul=1;
25 |
26 |
--------------------------------------------------------------------------------
/amtoolbox/comp/arg_eicell.m:
--------------------------------------------------------------------------------
1 | function definput=arg_eicell(definput)
2 | %
3 | % Url: http://amtoolbox.sourceforge.net/doc//comp/arg_eicell.php
4 |
5 | % Copyright (C) 2009-2013 Peter L. Søndergaard and others.
6 | % This file is part of AMToolbox version 0.9.1
7 | %
8 | % This program is free software: you can redistribute it and/or modify
9 | % it under the terms of the GNU General Public License as published by
10 | % the Free Software Foundation, either version 3 of the License, or
11 | % (at your option) any later version.
12 | %
13 | % This program is distributed in the hope that it will be useful,
14 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
15 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 | % GNU General Public License for more details.
17 | %
18 | % You should have received a copy of the GNU General Public License
19 | % along with this program. If not, see .
20 |
21 | definput.keyvals.tc = 30e-3; % Temporal smoothing constant
22 | definput.keyvals.rc_a = 0.1; % Range compression parameter 'a'
23 | definput.keyvals.rc_b = .00002; % Range compression parameter 'b'
24 | definput.keyvals.ptau = 2.2e-3; % time constant for p(tau) function
25 |
26 |
--------------------------------------------------------------------------------
/amtoolbox/comp/arg_ihcenvelope.m:
--------------------------------------------------------------------------------
1 | function definput=arg_ihcenvelope(definput)
2 | %
3 | % Url: http://amtoolbox.sourceforge.net/doc//comp/arg_ihcenvelope.php
4 |
5 | % Copyright (C) 2009-2013 Peter L. Søndergaard and others.
6 | % This file is part of AMToolbox version 0.9.1
7 | %
8 | % This program is free software: you can redistribute it and/or modify
9 | % it under the terms of the GNU General Public License as published by
10 | % the Free Software Foundation, either version 3 of the License, or
11 | % (at your option) any later version.
12 | %
13 | % This program is distributed in the hope that it will be useful,
14 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
15 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 | % GNU General Public License for more details.
17 | %
18 | % You should have received a copy of the GNU General Public License
19 | % along with this program. If not, see .
20 |
21 | definput.flags.ihctype={'nodefault','ihc_bernstein','ihc_breebaart','ihc_dau','hilbert', ...
22 | 'ihc_lindemann','ihc_meddis'};
23 |
24 | definput.keyvals.minlvl=[];
25 |
26 |
--------------------------------------------------------------------------------
/amtoolbox/comp/arg_langendijkcomp.m:
--------------------------------------------------------------------------------
1 | function definput=arg_langendijkcomp(definput)
2 | %
3 | % Url: http://amtoolbox.sourceforge.net/doc//comp/arg_langendijkcomp.php
4 |
5 | % Copyright (C) 2009-2013 Peter L. Søndergaard and others.
6 | % This file is part of AMToolbox version 0.9.1
7 | %
8 | % This program is free software: you can redistribute it and/or modify
9 | % it under the terms of the GNU General Public License as published by
10 | % the Free Software Foundation, either version 3 of the License, or
11 | % (at your option) any later version.
12 | %
13 | % This program is distributed in the hope that it will be useful,
14 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
15 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 | % GNU General Public License for more details.
17 | %
18 | % You should have received a copy of the GNU General Public License
19 | % along with this program. If not, see .
20 |
21 | definput.flags.cp={'std','xcorr'};
22 |
23 | definput.keyvals.s=2;
24 | definput.keyvals.do=0;
25 |
26 | end
27 |
--------------------------------------------------------------------------------
/amtoolbox/comp/arg_lindemann1986bincorr.m:
--------------------------------------------------------------------------------
1 | function definput=arg_lindemann1986bincorr(definput)
2 | %
3 | % Url: http://amtoolbox.sourceforge.net/doc//comp/arg_lindemann1986bincorr.php
4 |
5 | % Copyright (C) 2009-2013 Peter L. Søndergaard and others.
6 | % This file is part of AMToolbox version 0.9.1
7 | %
8 | % This program is free software: you can redistribute it and/or modify
9 | % it under the terms of the GNU General Public License as published by
10 | % the Free Software Foundation, either version 3 of the License, or
11 | % (at your option) any later version.
12 | %
13 | % This program is distributed in the hope that it will be useful,
14 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
15 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 | % GNU General Public License for more details.
17 | %
18 | % You should have received a copy of the GNU General Public License
19 | % along with this program. If not, see .
20 |
21 | definput.keyvals.c_s = 0.3;
22 | definput.keyvals.w_f = 0.035;
23 | definput.keyvals.M_f = 6;
24 | definput.keyvals.T_int = 5;
25 | definput.keyvals.N_1 = 1;
26 |
27 | definput.groups.stationary={'T_int',Inf,'N_1',17640'};
28 |
29 |
--------------------------------------------------------------------------------
/amtoolbox/comp/compinit.m:
--------------------------------------------------------------------------------
1 | %
2 | % Url: http://amtoolbox.sourceforge.net/doc//comp/compinit.php
3 |
4 | % Copyright (C) 2009-2013 Peter L. Søndergaard and others.
5 | % This file is part of AMToolbox version 0.9.1
6 | %
7 | % This program is free software: you can redistribute it and/or modify
8 | % it under the terms of the GNU General Public License as published by
9 | % the Free Software Foundation, either version 3 of the License, or
10 | % (at your option) any later version.
11 | %
12 | % This program is distributed in the hope that it will be useful,
13 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
14 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 | % GNU General Public License for more details.
16 | %
17 | % You should have received a copy of the GNU General Public License
18 | % along with this program. If not, see .
19 | status=2;
20 |
21 |
--------------------------------------------------------------------------------
/amtoolbox/demos/demo_transposedtone.m:
--------------------------------------------------------------------------------
1 | %DEMO_TRANSPOSEDTONE
2 | %
3 | % These are some example parameters used in the sudy by S. Santurette.
4 | %
5 | %
6 | % Url: http://amtoolbox.sourceforge.net/doc//demos/demo_transposedtone.php
7 |
8 | % Copyright (C) 2009-2013 Peter L. Søndergaard and others.
9 | % This file is part of AMToolbox version 0.9.1
10 | %
11 | % This program is free software: you can redistribute it and/or modify
12 | % it under the terms of the GNU General Public License as published by
13 | % the Free Software Foundation, either version 3 of the License, or
14 | % (at your option) any later version.
15 | %
16 | % This program is distributed in the hope that it will be useful,
17 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
18 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 | % GNU General Public License for more details.
20 | %
21 | % You should have received a copy of the GNU General Public License
22 | % along with this program. If not, see .
23 |
24 | fc = 5000;
25 | fm = 435;
26 | dur = 1;
27 | fs = 44100;
28 |
29 | outsig = transposedtone(fc,fm,dur,fs);
30 | %OLDFORMAT
31 |
32 |
--------------------------------------------------------------------------------
/amtoolbox/demos/demosinit.m:
--------------------------------------------------------------------------------
1 | %
2 | % Url: http://amtoolbox.sourceforge.net/doc//demos/demosinit.php
3 |
4 | % Copyright (C) 2009-2013 Peter L. Søndergaard and others.
5 | % This file is part of AMToolbox version 0.9.1
6 | %
7 | % This program is free software: you can redistribute it and/or modify
8 | % it under the terms of the GNU General Public License as published by
9 | % the Free Software Foundation, either version 3 of the License, or
10 | % (at your option) any later version.
11 | %
12 | % This program is distributed in the hope that it will be useful,
13 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
14 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 | % GNU General Public License for more details.
16 | %
17 | % You should have received a copy of the GNU General Public License
18 | % along with this program. If not, see .
19 | status=1;
20 | %OLDFORMAT
21 |
22 |
--------------------------------------------------------------------------------
/amtoolbox/demos/poly_lookup.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/demos/poly_lookup.mat
--------------------------------------------------------------------------------
/amtoolbox/doc/HRTF format description.odt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/doc/HRTF format description.odt
--------------------------------------------------------------------------------
/amtoolbox/doc/HRTF format meta data.ods:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/doc/HRTF format meta data.ods
--------------------------------------------------------------------------------
/amtoolbox/doc/LangendijkDoc.odt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/doc/LangendijkDoc.odt
--------------------------------------------------------------------------------
/amtoolbox/experiments/azi_lookup_4.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/experiments/azi_lookup_4.mat
--------------------------------------------------------------------------------
/amtoolbox/experiments/exp_lindemann1986a_fig10.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/experiments/exp_lindemann1986a_fig10.mat
--------------------------------------------------------------------------------
/amtoolbox/experiments/exp_lindemann1986a_fig11.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/experiments/exp_lindemann1986a_fig11.mat
--------------------------------------------------------------------------------
/amtoolbox/experiments/exp_lindemann1986a_fig12.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/experiments/exp_lindemann1986a_fig12.mat
--------------------------------------------------------------------------------
/amtoolbox/experiments/exp_lindemann1986a_fig13.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/experiments/exp_lindemann1986a_fig13.mat
--------------------------------------------------------------------------------
/amtoolbox/experiments/exp_lindemann1986a_fig14a.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/experiments/exp_lindemann1986a_fig14a.mat
--------------------------------------------------------------------------------
/amtoolbox/experiments/exp_lindemann1986a_fig14b.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/experiments/exp_lindemann1986a_fig14b.mat
--------------------------------------------------------------------------------
/amtoolbox/experiments/exp_lindemann1986a_fig15.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/experiments/exp_lindemann1986a_fig15.mat
--------------------------------------------------------------------------------
/amtoolbox/experiments/exp_lindemann1986a_fig16.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/experiments/exp_lindemann1986a_fig16.mat
--------------------------------------------------------------------------------
/amtoolbox/experiments/exp_lindemann1986a_fig17.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/experiments/exp_lindemann1986a_fig17.mat
--------------------------------------------------------------------------------
/amtoolbox/experiments/exp_lindemann1986a_fig18.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/experiments/exp_lindemann1986a_fig18.mat
--------------------------------------------------------------------------------
/amtoolbox/experiments/exp_lindemann1986a_fig6.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/experiments/exp_lindemann1986a_fig6.mat
--------------------------------------------------------------------------------
/amtoolbox/experiments/exp_lindemann1986a_fig7.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/experiments/exp_lindemann1986a_fig7.mat
--------------------------------------------------------------------------------
/amtoolbox/experiments/exp_lindemann1986a_fig8.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/experiments/exp_lindemann1986a_fig8.mat
--------------------------------------------------------------------------------
/amtoolbox/experiments/exp_roenne2012_fig5.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/experiments/exp_roenne2012_fig5.mat
--------------------------------------------------------------------------------
/amtoolbox/experiments/exp_roenne2012_fig6.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/experiments/exp_roenne2012_fig6.mat
--------------------------------------------------------------------------------
/amtoolbox/experiments/exp_roenne2012_fig7.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/experiments/exp_roenne2012_fig7.mat
--------------------------------------------------------------------------------
/amtoolbox/experiments/experimentsinit.m:
--------------------------------------------------------------------------------
1 | %
2 | % Url: http://amtoolbox.sourceforge.net/doc//experiments/experimentsinit.php
3 |
4 | % Copyright (C) 2009-2013 Peter L. Søndergaard and others.
5 | % This file is part of AMToolbox version 0.9.1
6 | %
7 | % This program is free software: you can redistribute it and/or modify
8 | % it under the terms of the GNU General Public License as published by
9 | % the Free Software Foundation, either version 3 of the License, or
10 | % (at your option) any later version.
11 | %
12 | % This program is distributed in the hope that it will be useful,
13 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
14 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 | % GNU General Public License for more details.
16 | %
17 | % You should have received a copy of the GNU General Public License
18 | % along with this program. If not, see .
19 | status=1;
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/amtoolbox/filters/filtersinit.m:
--------------------------------------------------------------------------------
1 | %
2 | % Url: http://amtoolbox.sourceforge.net/doc//filters/filtersinit.php
3 |
4 | % Copyright (C) 2009-2013 Peter L. Søndergaard and others.
5 | % This file is part of AMToolbox version 0.9.1
6 | %
7 | % This program is free software: you can redistribute it and/or modify
8 | % it under the terms of the GNU General Public License as published by
9 | % the Free Software Foundation, either version 3 of the License, or
10 | % (at your option) any later version.
11 | %
12 | % This program is distributed in the hope that it will be useful,
13 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
14 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 | % GNU General Public License for more details.
16 | %
17 | % You should have received a copy of the GNU General Public License
18 | % along with this program. If not, see .
19 | status=1;
20 |
21 | p = mfilename('fullpath');
22 | addpath([p(1:end-11),'obsolete']);
23 |
24 |
25 |
--------------------------------------------------------------------------------
/amtoolbox/filters/gfb_hohmann/README.txt:
--------------------------------------------------------------------------------
1 | This directory contains a Matlab implementation of the gammatone
2 | filterbank described in V. Hohmann's Paper `Frequency analysis and
3 | synthesis using a Gammatone filterbank', published 2002 in `acta
4 | acustica'. It uses numerical methods described in `Improved numerical
5 | methods for gammatone filterbank analysis and synthesis' by T. Herzke
6 | and V. Hohmann, published 2007 in `acta acustica'.
7 |
8 | copyright: Universitaet Oldenburg
9 | author : tp
10 | date : Jan Apr 2002, Nov 2003, Nov 2006, Jan Feb 2007
11 | filename : README.txt
12 |
13 | Documentation
14 | =============
15 |
16 | README_implementation.txt: Introduces the design principles behind this
17 | implementation, and containes a list of the
18 | implemented Matlab functions.
19 | README_examples.txt: Explains where to find the specific implementations
20 | and how to execute the examples promised in section
21 | 5 of Hohmann's 2002 `acta acustica' article.
22 |
23 |
--------------------------------------------------------------------------------
/amtoolbox/general/generalinit.m:
--------------------------------------------------------------------------------
1 | %
2 | % Url: http://amtoolbox.sourceforge.net/doc//general/generalinit.php
3 |
4 | % Copyright (C) 2009-2013 Peter L. Søndergaard and others.
5 | % This file is part of AMToolbox version 0.9.1
6 | %
7 | % This program is free software: you can redistribute it and/or modify
8 | % it under the terms of the GNU General Public License as published by
9 | % the Free Software Foundation, either version 3 of the License, or
10 | % (at your option) any later version.
11 | %
12 | % This program is distributed in the hope that it will be useful,
13 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
14 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 | % GNU General Public License for more details.
16 | %
17 | % You should have received a copy of the GNU General Public License
18 | % along with this program. If not, see .
19 | status=1;
20 |
21 |
--------------------------------------------------------------------------------
/amtoolbox/hrtf/Contents.m:
--------------------------------------------------------------------------------
1 | % AMT - Functions for reading HRTFs
2 | %
3 | % The AMT team, 2012 - 2013.
4 | %
5 | % HRTF and HRIR
6 | % READ_HRIR - Read HRIR from selected databases.
7 | % ENZNER2008 - Calculate a set of HRIRs
8 | %
9 | % For help, bug reports, suggestions etc. please send email to
10 | % amtoolbox-help@lists.sourceforge.net
11 | %
12 | % Url: http://amtoolbox.sourceforge.net/doc//hrtf/Contents.php
13 |
14 | % Copyright (C) 2009-2013 Peter L. Søndergaard and others.
15 | % This file is part of AMToolbox version 0.9.1
16 | %
17 | % This program is free software: you can redistribute it and/or modify
18 | % it under the terms of the GNU General Public License as published by
19 | % the Free Software Foundation, either version 3 of the License, or
20 | % (at your option) any later version.
21 | %
22 | % This program is distributed in the hope that it will be useful,
23 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
24 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
25 | % GNU General Public License for more details.
26 | %
27 | % You should have received a copy of the GNU General Public License
28 | % along with this program. If not, see .
29 |
30 |
31 |
--------------------------------------------------------------------------------
/amtoolbox/hrtf/hrtf_M_langendijk2002 P3.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/hrtf/hrtf_M_langendijk2002 P3.mat
--------------------------------------------------------------------------------
/amtoolbox/hrtf/hrtf_M_langendijk2002 P6.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/hrtf/hrtf_M_langendijk2002 P6.mat
--------------------------------------------------------------------------------
/amtoolbox/hrtf/hrtfinit.m:
--------------------------------------------------------------------------------
1 | %
2 | % Url: http://amtoolbox.sourceforge.net/doc//hrtf/hrtfinit.php
3 |
4 | % Copyright (C) 2009-2013 Peter L. Søndergaard and others.
5 | % This file is part of AMToolbox version 0.9.1
6 | %
7 | % This program is free software: you can redistribute it and/or modify
8 | % it under the terms of the GNU General Public License as published by
9 | % the Free Software Foundation, either version 3 of the License, or
10 | % (at your option) any later version.
11 | %
12 | % This program is distributed in the hope that it will be useful,
13 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
14 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 | % GNU General Public License for more details.
16 | %
17 | % You should have received a copy of the GNU General Public License
18 | % along with this program. If not, see .
19 | status=2;
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/amtoolbox/humandata/humandatainit.m:
--------------------------------------------------------------------------------
1 | %
2 | % Url: http://amtoolbox.sourceforge.net/doc//humandata/humandatainit.php
3 |
4 | % Copyright (C) 2009-2013 Peter L. Søndergaard and others.
5 | % This file is part of AMToolbox version 0.9.1
6 | %
7 | % This program is free software: you can redistribute it and/or modify
8 | % it under the terms of the GNU General Public License as published by
9 | % the Free Software Foundation, either version 3 of the License, or
10 | % (at your option) any later version.
11 | %
12 | % This program is distributed in the hope that it will be useful,
13 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
14 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 | % GNU General Public License for more details.
16 | %
17 | % You should have received a copy of the GNU General Public License
18 | % along with this program. If not, see .
19 | status=1;
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/amtoolbox/humandata/langendijk2002-P3.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/humandata/langendijk2002-P3.mat
--------------------------------------------------------------------------------
/amtoolbox/humandata/langendijk2002-P6.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/humandata/langendijk2002-P6.mat
--------------------------------------------------------------------------------
/amtoolbox/humandata/roenne2012_elberling2010stim.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/humandata/roenne2012_elberling2010stim.mat
--------------------------------------------------------------------------------
/amtoolbox/humandata/roenne2012_harte2009stim.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/humandata/roenne2012_harte2009stim.mat
--------------------------------------------------------------------------------
/amtoolbox/humandata/spille2013_s123456.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/humandata/spille2013_s123456.wav
--------------------------------------------------------------------------------
/amtoolbox/humandata/takanen2013_cochleardelays.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/humandata/takanen2013_cochleardelays.mat
--------------------------------------------------------------------------------
/amtoolbox/humandata/takanen2013_lookuptable.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/humandata/takanen2013_lookuptable.mat
--------------------------------------------------------------------------------
/amtoolbox/humandata/takanen2013_msolimits.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/humandata/takanen2013_msolimits.mat
--------------------------------------------------------------------------------
/amtoolbox/humandata/takanen2013_onsetmultp.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/humandata/takanen2013_onsetmultp.mat
--------------------------------------------------------------------------------
/amtoolbox/humandata/takanen2013_periphenergyaverages.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/humandata/takanen2013_periphenergyaverages.mat
--------------------------------------------------------------------------------
/amtoolbox/humandata/takanen2013_wbmsomultp.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/humandata/takanen2013_wbmsomultp.mat
--------------------------------------------------------------------------------
/amtoolbox/humandata/ur.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/humandata/ur.mat
--------------------------------------------------------------------------------
/amtoolbox/mex/comp_meddishaircell.c:
--------------------------------------------------------------------------------
1 | #include "mex.h"
2 |
3 | #include "../src/meddishaircell.c"
4 |
5 | void mexFunction(int nlhs, mxArray *plhs[],
6 | int nrhs, const mxArray *prhs[])
7 | {
8 |
9 | int siglen,nsigs; /* temporary array size holders */
10 | int fs;
11 |
12 | siglen = mxGetM(prhs[0]);
13 | nsigs = mxGetN(prhs[0]);
14 | fs = mxGetScalar(prhs[1]);
15 |
16 | /* Step 1: Error Checking Step 1a: is nlhs 1? If not,
17 | generate an error message and exit mexample (mexErrMsgTxt
18 | does this for us!) */
19 | if (nlhs!=1)
20 | mexErrMsgTxt("mhc requires one output argument.");
21 |
22 | /* Step 1b: is nrhs 2? */
23 | if (nrhs!=2)
24 | mexErrMsgTxt("mhc requires two input arguments, \
25 | prhs[0] and SAMPLERATE");
26 |
27 | plhs[0] = mxCreateDoubleMatrix(siglen, nsigs, mxREAL);
28 |
29 | meddishaircell(mxGetPr(prhs[0]), fs, siglen, nsigs,
30 | mxGetPr(plhs[0]));
31 |
32 | }
33 |
--------------------------------------------------------------------------------
/amtoolbox/mex/mexinit.m:
--------------------------------------------------------------------------------
1 | %
2 | % Url: http://amtoolbox.sourceforge.net/doc//mex/mexinit.php
3 |
4 | % Copyright (C) 2009-2013 Peter L. Søndergaard and others.
5 | % This file is part of AMToolbox version 0.9.1
6 | %
7 | % This program is free software: you can redistribute it and/or modify
8 | % it under the terms of the GNU General Public License as published by
9 | % the Free Software Foundation, either version 3 of the License, or
10 | % (at your option) any later version.
11 | %
12 | % This program is distributed in the hope that it will be useful,
13 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
14 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 | % GNU General Public License for more details.
16 | %
17 | % You should have received a copy of the GNU General Public License
18 | % along with this program. If not, see .
19 | status=2;
20 |
21 |
--------------------------------------------------------------------------------
/amtoolbox/modelstages/modelstagesinit.m:
--------------------------------------------------------------------------------
1 | %
2 | % Url: http://amtoolbox.sourceforge.net/doc//modelstages/modelstagesinit.php
3 |
4 | % Copyright (C) 2009-2013 Peter L. Søndergaard and others.
5 | % This file is part of AMToolbox version 0.9.1
6 | %
7 | % This program is free software: you can redistribute it and/or modify
8 | % it under the terms of the GNU General Public License as published by
9 | % the Free Software Foundation, either version 3 of the License, or
10 | % (at your option) any later version.
11 | %
12 | % This program is distributed in the hope that it will be useful,
13 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
14 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 | % GNU General Public License for more details.
16 | %
17 | % You should have received a copy of the GNU General Public License
18 | % along with this program. If not, see .
19 | status=1;
20 |
21 |
--------------------------------------------------------------------------------
/amtoolbox/monaural/monauralinit.m:
--------------------------------------------------------------------------------
1 | %
2 | % Url: http://amtoolbox.sourceforge.net/doc//monaural/monauralinit.php
3 |
4 | % Copyright (C) 2009-2013 Peter L. Søndergaard and others.
5 | % This file is part of AMToolbox version 0.9.1
6 | %
7 | % This program is free software: you can redistribute it and/or modify
8 | % it under the terms of the GNU General Public License as published by
9 | % the Free Software Foundation, either version 3 of the License, or
10 | % (at your option) any later version.
11 | %
12 | % This program is distributed in the hope that it will be useful,
13 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
14 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 | % GNU General Public License for more details.
16 | %
17 | % You should have received a copy of the GNU General Public License
18 | % along with this program. If not, see .
19 | status=1;
20 |
21 |
--------------------------------------------------------------------------------
/amtoolbox/monaural/petibubtest.txt:
--------------------------------------------------------------------------------
1 | kfhsafhkjf
--------------------------------------------------------------------------------
/amtoolbox/oct/Makefile:
--------------------------------------------------------------------------------
1 | OCTS = comp_adaptloop.oct
2 |
3 | all: $(OCTS)
4 |
5 | %.oct: %.cc Makefile
6 | mkoctfile -Wall -I. $<
7 |
8 | clean:
9 | rm *.oct
10 |
11 | .PHONY: all clean
--------------------------------------------------------------------------------
/amtoolbox/oct/comp_adaptloop.cc:
--------------------------------------------------------------------------------
1 | #include
2 | #include "../src/adaptloop.c"
3 |
4 | DEFUN_DLD (comp_adaptloop, args, ,
5 | "This function calls the C-library\n\
6 | c=comp_adaptloop(insig,fs,limit,minlvl);\n\
7 | Yeah.")
8 | {
9 |
10 | const Matrix insig = args(0).matrix_value();
11 |
12 | const int siglen = insig.rows();
13 | const int nsigs = insig.columns();
14 |
15 | const int fs = args(1).int_value();
16 | const double limit = args(2).double_value();
17 | const double minlvl = args(3).double_value();
18 | const Matrix tau = args(4).matrix_value();
19 |
20 | const int nloops = tau.rows()*tau.columns();
21 |
22 | adaptloopstate s;
23 |
24 | Matrix outsig(siglen,nsigs);
25 |
26 | adaptloop_init(&s, nsigs, nloops);
27 | adaptloop_set(&s, fs, limit, minlvl, (const double*)tau.data());
28 | adaptloop_run(&s, (double*)insig.data(), siglen, (double*)outsig.data());
29 | adaptloop_free(&s);
30 |
31 | //adaptloop((double*)insig.data(),fs,siglen,nsigs,limit,minlvl,(double*)outsig.data());
32 | return octave_value (outsig);
33 | }
34 |
35 |
--------------------------------------------------------------------------------
/amtoolbox/oct/comp_adaptloop.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/oct/comp_adaptloop.o
--------------------------------------------------------------------------------
/amtoolbox/oct/comp_adaptloop.oct:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/oct/comp_adaptloop.oct
--------------------------------------------------------------------------------
/amtoolbox/oct/comp_adaptloop_run.cc:
--------------------------------------------------------------------------------
1 | #include
2 | #include
3 |
4 | DEFUN_DLD (structdemo, args, , "Struct demo.")
5 | {
6 | int nargin = args.length ();
7 | octave_value retval;
8 |
9 | if (nargin != 2)
10 | print_usage ();
11 | else
12 | {
13 | Octave_map arg0 = args(0).map_value ();
14 | std::string arg1 = args(1).string_value ();
15 |
16 | if (! error_state && arg0.contains (arg1))
17 | {
18 | // The following two lines might be written as
19 | // octave_value tmp;
20 | // for (Octave_map::iterator p0 = arg0.begin() ;
21 | // p0 != arg0.end(); p0++ )
22 | // if (arg0.key (p0) == arg1)
23 | // {
24 | // tmp = arg0.contents (p0) (0);
25 | // break;
26 | // }
27 | // though using seek is more concise.
28 | Octave_map::const_iterator p1 = arg0.seek (arg1);
29 | octave_value tmp = arg0.contents(p1)(0);
30 | Octave_map st;
31 | st.assign ("selected", tmp);
32 | retval = octave_value (st);
33 | }
34 | }
35 | return retval;
36 | }
37 |
--------------------------------------------------------------------------------
/amtoolbox/oct/comp_adaptloop_run.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/oct/comp_adaptloop_run.o
--------------------------------------------------------------------------------
/amtoolbox/oct/comp_adaptloop_run.oct:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/oct/comp_adaptloop_run.oct
--------------------------------------------------------------------------------
/amtoolbox/oct/comp_meddishaircell.cc:
--------------------------------------------------------------------------------
1 | #include
2 | #include "../src/meddishaircell.c"
3 |
4 | DEFUN_DLD (comp_meddishaircell, args, ,
5 | "This function calls the C-library\n\
6 | c=comp_meddishaircell(insig,fs);\n\
7 | Yeah.")
8 | {
9 |
10 | const Matrix insig = args(0).matrix_value();
11 |
12 | const int siglen = insig.rows();
13 | const int nsigs = insig.columns();
14 |
15 | const int fs = args(1).int_value();
16 |
17 |
18 | Matrix outsig(siglen,nsigs);
19 |
20 | meddishaircell((double*)insig.data(),
21 | fs,
22 | siglen,
23 | (double*)outsig.data());
24 |
25 | return octave_value (outsig);
26 | }
27 |
28 |
--------------------------------------------------------------------------------
/amtoolbox/oct/octinit.m:
--------------------------------------------------------------------------------
1 | %
2 | % Url: http://amtoolbox.sourceforge.net/doc//oct/octinit.php
3 |
4 | % Copyright (C) 2009-2013 Peter L. Søndergaard and others.
5 | % This file is part of AMToolbox version 0.9.1
6 | %
7 | % This program is free software: you can redistribute it and/or modify
8 | % it under the terms of the GNU General Public License as published by
9 | % the Free Software Foundation, either version 3 of the License, or
10 | % (at your option) any later version.
11 | %
12 | % This program is distributed in the hope that it will be useful,
13 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
14 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 | % GNU General Public License for more details.
16 | %
17 | % You should have received a copy of the GNU General Public License
18 | % along with this program. If not, see .
19 | status=2;
20 |
21 |
--------------------------------------------------------------------------------
/amtoolbox/signals/Danish_CLUE_10sentence_samples_22kHz.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/signals/Danish_CLUE_10sentence_samples_22kHz.mat
--------------------------------------------------------------------------------
/amtoolbox/signals/dietz2011_bNoise.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/signals/dietz2011_bNoise.wav
--------------------------------------------------------------------------------
/amtoolbox/signals/dietz2011_five_speakers.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/signals/dietz2011_five_speakers.wav
--------------------------------------------------------------------------------
/amtoolbox/signals/dietz2011_one_of_three.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/signals/dietz2011_one_of_three.wav
--------------------------------------------------------------------------------
/amtoolbox/signals/dietz2011_one_speaker_reverb.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/signals/dietz2011_one_speaker_reverb.wav
--------------------------------------------------------------------------------
/amtoolbox/signals/dietz2011_three_of_three.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/signals/dietz2011_three_of_three.wav
--------------------------------------------------------------------------------
/amtoolbox/signals/dietz2011_two_of_three.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/signals/dietz2011_two_of_three.wav
--------------------------------------------------------------------------------
/amtoolbox/signals/dietz2011_two_speakers.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/amtoolbox/signals/dietz2011_two_speakers.wav
--------------------------------------------------------------------------------
/amtoolbox/signals/signalsinit.m:
--------------------------------------------------------------------------------
1 | %
2 | % Url: http://amtoolbox.sourceforge.net/doc//signals/signalsinit.php
3 |
4 | % Copyright (C) 2009-2013 Peter L. Søndergaard and others.
5 | % This file is part of AMToolbox version 0.9.1
6 | %
7 | % This program is free software: you can redistribute it and/or modify
8 | % it under the terms of the GNU General Public License as published by
9 | % the Free Software Foundation, either version 3 of the License, or
10 | % (at your option) any later version.
11 | %
12 | % This program is distributed in the hope that it will be useful,
13 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
14 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 | % GNU General Public License for more details.
16 | %
17 | % You should have received a copy of the GNU General Public License
18 | % along with this program. If not, see .
19 | status=1;
20 |
21 |
22 |
--------------------------------------------------------------------------------
/amtoolbox/speech/speechinit.m:
--------------------------------------------------------------------------------
1 | %
2 | % Url: http://amtoolbox.sourceforge.net/doc//speech/speechinit.php
3 |
4 | % Copyright (C) 2009-2013 Peter L. Søndergaard and others.
5 | % This file is part of AMToolbox version 0.9.1
6 | %
7 | % This program is free software: you can redistribute it and/or modify
8 | % it under the terms of the GNU General Public License as published by
9 | % the Free Software Foundation, either version 3 of the License, or
10 | % (at your option) any later version.
11 | %
12 | % This program is distributed in the hope that it will be useful,
13 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
14 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 | % GNU General Public License for more details.
16 | %
17 | % You should have received a copy of the GNU General Public License
18 | % along with this program. If not, see .
19 | status=1;
20 |
21 |
--------------------------------------------------------------------------------
/amtoolbox/src/Makefile:
--------------------------------------------------------------------------------
1 | # Use GNU Make to process this file
2 | CC = gcc
3 | CFLAGS=-O2 -Wall -fPIC -std=c99
4 |
5 | files = adaptloop.o meddishaircell.o strube1985.o
6 |
7 | all: libamtoolbox.a verhulst2012
8 |
9 | libamtoolbox.a: $(files)
10 | ar rvu libamtoolbox.a $(files_unix)
11 | ranlib libamtoolbox.a
12 |
13 | verhulst2012:
14 | $(MAKE) -C verhulst
15 |
16 | %.o: %.c Makefile
17 | $(CC) $(CFLAGS) -c $<
18 |
19 | clean:
20 | rm *.o *.a
21 | $(MAKE) -C verhulst clean
22 |
--------------------------------------------------------------------------------
/amtoolbox/src/amtoolbox.h:
--------------------------------------------------------------------------------
1 | #ifndef AMTOOLBOX_H
2 | #define AMTOOLBOX_H
3 |
4 | /* BEGIN_C_DECLS */
5 |
6 | #ifdef __cplusplus
7 | extern "C"
8 | {
9 | #endif /* __cplusplus */
10 |
11 | typedef struct adaptloopstatevar
12 | {
13 | int loops;
14 | int nsigs;
15 | double *state;
16 | double corr;
17 | double mult;
18 | double limit;
19 | double minlvl;
20 | double *a1;
21 | double *factor, *expfac, *offset;
22 | } adaptloopstate;
23 |
24 |
25 | void adaptloop_init(adaptloopstate *s, const int nsigs, const int loops);
26 |
27 | void adaptloop_set(adaptloopstate *s, const int fs, const double limit,
28 | const double minlvl, const double *tau);
29 |
30 | void adaptloop_run(adaptloopstate *s, const double *insig, const int siglen,
31 | double *outsig);
32 |
33 | void adaptloop_free(adaptloopstate *s);
34 |
35 |
36 | #ifdef __cplusplus
37 | } /* extern "C" */
38 | #endif /* __cplusplus */
39 |
40 | /* END_C_DECLS */
41 |
42 |
43 | #endif /* AMTOOLBOX_H */
44 |
--------------------------------------------------------------------------------
/amtoolbox/src/verhulst/AllocationError.f90:
--------------------------------------------------------------------------------
1 | ! Releases all allocated memory,
2 | ! displays message and
3 | ! terminates program
4 |
5 | SUBROUTINE AllocationError
6 | USE MessageModule
7 | IMPLICIT NONE
8 |
9 | CALL DeInitialize (.TRUE.)
10 | CALL DeInitialize (.FALSE.)
11 | CALL Message (MessageText(ALLOCATIONFAILURE), MessageTitle(ALLOCATIONFAILURE))
12 | STOP
13 |
14 | END SUBROUTINE
--------------------------------------------------------------------------------
/amtoolbox/src/verhulst/CloseWrite.f90:
--------------------------------------------------------------------------------
1 | ! Opens in
2 | ! If , a header row will be written, indicating
3 | ! what values will be written in each colum, that is: "time (s)"
4 | ! and "pressure Ear Canal (Pa)"
5 |
6 | SUBROUTINE CloseWrite
7 | USE Declare
8 | USE FilesModule
9 | IMPLICIT NONE
10 |
11 | IF (storePressureEarCanal) THEN
12 | CLOSE (FH_pEarcan)
13 | ENDIF
14 |
15 | IF (storeProbing) THEN
16 | CLOSE (FH_probing)
17 | ENDIF
18 |
19 | !IF (storeCochlea) THEN
20 | ! CLOSE (FH_cochlea)
21 | !ENDIF
22 | END SUBROUTINE CloseWrite
23 |
--------------------------------------------------------------------------------
/amtoolbox/src/verhulst/DecibelToLevel.f90:
--------------------------------------------------------------------------------
1 | ! returns the level in pressure, corresponding to the relative to the - pressure.
2 |
3 | FUNCTION DecibelToLevel (dB_value, reference)
4 | IMPLICIT NONE
5 | REAL(8) DecibelToLevel
6 | REAL(8), INTENT(IN) :: dB_value
7 | REAL(8), INTENT(IN) :: reference
8 |
9 | DecibelToLevel = reference * 10 ** (dB_value / 20)
10 |
11 | END FUNCTION
--------------------------------------------------------------------------------
/amtoolbox/src/verhulst/FilesModule.f90:
--------------------------------------------------------------------------------
1 | !This module is shared by "Cochlea" and "CochleaDialog"
2 |
3 | MODULE FilesModule
4 | SAVE
5 |
6 | ! File Handlers
7 | INTEGER, PARAMETER :: FH_PARAMETERS = 10
8 | INTEGER, PARAMETER :: FH_GAMMA = 20
9 | INTEGER, PARAMETER :: FH_FINALPOSITIONS = 30
10 | INTEGER, PARAMETER :: FH_FINALVELOCITIES = 40
11 | INTEGER, PARAMETER :: FH_PEARCAN = 100
12 | INTEGER, PARAMETER :: FH_PROFILE = 200
13 | INTEGER, PARAMETER :: FH_PROBING = 300
14 | INTEGER, PARAMETER :: FH_COCHLEA = 400
15 |
16 | ! File Names
17 | CHARACTER(*), PARAMETER :: FN_PARAMETERS = 'parameters.dat'
18 | CHARACTER(*), PARAMETER :: FN_GAMMA = 'gamma.dat'
19 | CHARACTER(*), PARAMETER :: FN_FINALPOSITIONS = 'final_y.bin'
20 | CHARACTER(*), PARAMETER :: FN_FINALVELOCITIES = 'final_v.bin'
21 |
22 | INTEGER, PARAMETER :: READS = 0
23 | INTEGER, PARAMETER :: WRITES = 1
24 | LOGICAL ParameterFileSucceeded !indicates whether last write/read parameters operation succeeded or not
25 |
26 | CHARACTER(9) writeFormat
27 |
28 | END MODULE FilesModule
29 |
--------------------------------------------------------------------------------
/amtoolbox/src/verhulst/GraphsModule.f90:
--------------------------------------------------------------------------------
1 | MODULE GraphsModule
2 | IMPLICIT NONE
3 |
4 | INTEGER(2), ALLOCATABLE :: membrane_y_pixel (:)
5 | INTEGER(2), ALLOCATABLE :: section_axis(:)
6 | INTEGER, ALLOCATABLE :: white(:)
7 | INTEGER, ALLOCATABLE :: black(:)
8 | REAL, ALLOCATABLE :: velocityMatrix ( : , : )
9 | REAL, ALLOCATABLE :: positionMatrix ( : , : )
10 | INTEGER(2) t_plotCounter
11 | REAL(8), ALLOCATABLE :: PositionPhase(:)
12 | REAL(8), ALLOCATABLE :: VelocityPhase(:)
13 | REAL(8), ALLOCATABLE :: previousPosition(:)
14 | REAL(8), ALLOCATABLE :: previousVelocity(:)
15 | REAL, ALLOCATABLE :: LastPositionPoints(:, :)
16 | REAL, ALLOCATABLE :: LastVelocityPoints(:, :)
17 |
18 | INTEGER LastIndex
19 | REAL maximumVelocity
20 | REAL minimumVelocity
21 | REAL maximumPosition
22 | REAL minimumPosition
23 | INTEGER t_plotpoints
24 | INTEGER n_plotpoints
25 |
26 | END MODULE GraphsModule
27 |
--------------------------------------------------------------------------------
/amtoolbox/src/verhulst/InitializeFiles.f90:
--------------------------------------------------------------------------------
1 | SUBROUTINE InitializeFiles
2 | USE Declare
3 | USE FilesModule
4 | USE MessageModule
5 | ! USE DFLIB
6 | IMPLICIT NONE
7 | INTEGER length, startIndex
8 | LOGICAL ok, driveLetterPresent
9 |
10 | IF (storePressureEarCanal .OR. storeProfile .OR. storeProbing) THEN
11 | OutputDirectory = ADJUSTL(OutputDirectory)
12 | driveLetterPresent = INDEX(OutputDirectory, ":") == 2
13 | length = LEN_TRIM(outputDirectory)
14 |
15 | length = LEN_TRIM(outputDirectory)
16 |
17 | startIndex = 1
18 | IF (driveLetterPresent) startIndex = 3
19 |
20 | WriteFormat = 'FORMATTED'
21 |
22 | ENDIF
23 |
24 | END SUBROUTINE InitializeFiles
25 |
--------------------------------------------------------------------------------
/amtoolbox/src/verhulst/InitializeGraphs.f90:
--------------------------------------------------------------------------------
1 | SUBROUTINE InitializeGraphs
2 | USE Declare
3 | USE GraphsModule
4 | IMPLICIT NONE
5 |
6 | n_plotpoints = (n-1)/plotEvery_n_points +1
7 | t_plotpoints = kmax/plotEvery_t_points +1
8 | ALLOCATE (section_axis(0: n_plotpoints-1), &
9 |
10 | velocityMatrix (0:n_plotpoints-1, 0:t_plotpoints-1), &
11 | positionMatrix (0:n_plotpoints-1, 0:t_plotpoints-1), &
12 | PositionPhase(0:n_plotpoints - 1), &
13 | VelocityPhase(0:n_plotpoints - 1), &
14 | previousPosition(0:n_plotpoints - 1), &
15 | previousVelocity(0:n_plotpoints - 1), &
16 | STAT = err)
17 |
18 | IF (err /= 0) CALL AllocationError
19 | PositionPhase = -1
20 | VelocityPhase = -1
21 | previousPosition = 0
22 | previousVelocity = 0
23 |
24 | section_axis = [0 : n_plotpoints - 1]
25 | membrane_y_pixel = 0
26 | t_plotCounter = -1
27 |
28 | END SUBROUTINE InitializeGraphs
29 |
--------------------------------------------------------------------------------
/amtoolbox/src/verhulst/InitializeMiddleEar.f90:
--------------------------------------------------------------------------------
1 | SUBROUTINE InitializeMiddleEar
2 | USE Declare
3 | IMPLICIT NONE
4 |
5 | REAL(8) stapes_area
6 | stapes_area = stapesArea(parameterSet)
7 |
8 | !the ME represents a resistance Rme
9 | !that equals the cochlear input impedance at low frequencies.
10 | !By doing this, there are little reflections of cochlear energy
11 | !back into the model, as it absorbs the energy at the stapes.
12 |
13 | Mme=1d0 !dummy parameter
14 | q0_factor = ZweigMpo * bm_width
15 | p0x = (ZweigMso * dx) / (Mme * ZweigMpo * bm_width )
16 | d_m_factor = - p0x * stapes_area * Rme
17 | RK4_0 = -(bm_width * ZweigMpo)/(Mme * stapes_area) !for RK4 method
18 | RK4G_0= (ZweigMpo * bm_width)/(ZweigMso * stapes_area * dx)
19 | END SUBROUTINE InitializeMiddleEar
20 |
--------------------------------------------------------------------------------
/amtoolbox/src/verhulst/InitializeStimulus.f90:
--------------------------------------------------------------------------------
1 | ! Calculation of values related to 'loudness' and frequency of an external stimulus.
2 |
3 | SUBROUTINE InitializeStimulus
4 | USE Declare
5 | IMPLICIT NONE
6 | REAL(8) DecibelToLevel
7 |
8 | signal1Pressure = DecibelToLevel (signal1Level, p0)
9 | signal2Pressure = DecibelToLevel (signal2Level, p0)
10 | signal3Pressure = DecibelToLevel (signal3Level, p0)
11 | audioFilePressure = DecibelToLevel (audioFileLevel, p0)
12 | signal1AngularFrequency =2 * pi * signal1Frequency
13 | signal2AngularFrequency = 2 * pi * signal2Frequency
14 | IF (useAudioFile) THEN
15 | maximumSignalPressure = audioFilePressure
16 | ELSE
17 | maximumSignalPressure = 0
18 | IF (useSignal1) maximumSignalPressure = signal1Pressure
19 | IF (useSignal2) maximumSignalPressure = maximumSignalPressure + signal2Pressure
20 | IF (useSignal3) maximumSignalPressure = maximumSignalPressure + signal3Pressure
21 | ENDIF
22 |
23 | END SUBROUTINE InitializeStimulus
--------------------------------------------------------------------------------
/amtoolbox/src/verhulst/InitializeZweig.f90:
--------------------------------------------------------------------------------
1 | SUBROUTINE InitializeZweig
2 |
3 | USE Declare
4 | IMPLICIT NONE
5 | REAL(8) f_resonance(1:n)
6 | REAL(8) exact_delay(1:n)
7 | REAL(8) relative_position(n)
8 | REAL(8) adaptation(n)
9 | REAL(8) HighFrequencyAdaptationFactor
10 |
11 |
12 | !Delay corresponds to the maximal possible delay in the model
13 | !determines the length of the buffers
14 | f_resonance = omega(1:n) / (2d0 * pi)
15 | exact_delay = SheraMuMax / (f_resonance(1:n) * dt) ![]
16 | delay = INT (exact_delay) + 1.d0 ! delay in integer number of samples
17 |
18 | ALLOCATE (Ybuffer(SUM(delay)), STAT = err)
19 | IF (err/=0) CALL AllocationError
20 |
21 | Ybuffer = 0
22 | ZweigSample1(1) = 1d0 !write pointer
23 | Zwp(1)=1d0 !write pointer
24 | DO i = 2, n
25 | ZweigSample1(i) = ZweigSample1(i-1) + delay(i-1)
26 | Zwp(i)=Zwp(i-1) + delay(i-1)
27 | ENDDO
28 | ZweigSample2 = ZweigSample1 + 1d0
29 |
30 | END SUBROUTINE InitializeZweig
31 |
--------------------------------------------------------------------------------
/amtoolbox/src/verhulst/IntToString.f90:
--------------------------------------------------------------------------------
1 | !This function is used by "cochlea" and "cochleaDialog"
2 |
3 | !Returns a left-aligned string of 12 characters representing the integer
4 |
5 | FUNCTION IntToString (int)
6 | IMPLICIT NONE
7 | INTEGER int
8 | CHARACTER(12) IntToString, temp
9 |
10 | WRITE (temp, *) int
11 | IntToString = ADJUSTL (temp)
12 |
13 | END FUNCTION IntToString
14 |
--------------------------------------------------------------------------------
/amtoolbox/src/verhulst/LowPassFilter.f90:
--------------------------------------------------------------------------------
1 | ! Calculates the Inverse Fourier Transform of a low pass filter
2 | ! with cut off frequency .
3 | ! answer(n) = 2 * f * sinc (2 * pi * f * n) = sin (2 * pi * f * n)/(pi * n)
4 | ! Answer is array [-M ... 0 ... M] containing 2*M + 1 values
5 |
6 | SUBROUTINE LowPassFilter (answer, M, f_cutoff)
7 | IMPLICIT NONE
8 |
9 | INTEGER, INTENT(IN) :: M
10 | REAL, INTENT(OUT) :: answer(-M:M)
11 | REAL, INTENT(IN) :: f_cutoff
12 | REAL sinc
13 |
14 | REAL, PARAMETER :: pi = 3.14159265
15 | REAL two_pi_f
16 | INTEGER n
17 |
18 | two_pi_f = 2 * pi * f_cutoff
19 |
20 | DO n = 1, M
21 | answer(n) = SIN (two_pi_f * n) / (pi * n)
22 | ! sinc is symmetrisch, dus:
23 | answer(-n) = answer(n)
24 | ENDDO
25 | answer(0) = 2 * f_cutoff
26 |
27 | END SUBROUTINE LowPassFilter
--------------------------------------------------------------------------------
/amtoolbox/src/verhulst/Message.f90:
--------------------------------------------------------------------------------
1 | ! displays message box with and
2 |
3 | SUBROUTINE Message (text, title)
4 | ! USE IFQWIN
5 | IMPLICIT NONE
6 | CHARACTER(*), INTENT(IN) :: text
7 | CHARACTER(*), INTENT(IN) :: title
8 | ! integer(4) :: messageResult
9 |
10 | ! messageResult = MessageBoxQQ (TRIM(text), TRIM(title), MB$OK .OR. MB$ICONEXCLAMATION)
11 | WRITE (*,*) text
12 |
13 | END SUBROUTINE
14 |
--------------------------------------------------------------------------------
/amtoolbox/src/verhulst/OpenPressureEarCanal.f90:
--------------------------------------------------------------------------------
1 | ! Opens in
2 | ! If , a header row will be written, indicating
3 | ! what values will be written in each colum, that is: "time (s)"
4 | ! and "pressure Ear Canal (Pa)"
5 |
6 | SUBROUTINE OpenPressureEarCanal
7 | USE Declare
8 | USE FilesModule
9 | IMPLICIT NONE
10 | INTEGER ios
11 |
12 | IF (storePressureEarCanal) THEN
13 | OPEN (FH_pEarcan, FILE = TRIM(OutputDirectory) // TRIM(PressureEarCanalFileName), FORM = writeFormat, IOSTAT = ios)
14 |
15 | ENDIF
16 | END SUBROUTINE OpenPressureEarCanal
17 |
--------------------------------------------------------------------------------
/amtoolbox/src/verhulst/OpenWrite.f90:
--------------------------------------------------------------------------------
1 | ! Opens in
2 | ! If , a header row will be written, indicating
3 | ! what values will be written in each colum, that is: "time (s)"
4 | ! and "pressure Ear Canal (Pa)"
5 |
6 | SUBROUTINE OpenWrite
7 | USE Declare
8 | USE FilesModule
9 | IMPLICIT NONE
10 | INTEGER ios
11 | INTEGER iosec
12 |
13 | IF (storePressureEarCanal) THEN
14 | OPEN (FH_pEarcan, FILE = TRIM(OutputDirectory) // TRIM(PressureEarCanalFileName), FORM = writeFormat, IOSTAT = iosec)
15 | ENDIF
16 |
17 | IF (storeProbing) THEN
18 | OPEN (FH_probing, FILE = TRIM(outputDirectory) // TRIM(probingFileName), FORM = writeFormat, IOSTAT = ios)
19 | ENDIF
20 |
21 | !IF (storeCochlea) THEN
22 | ! OPEN (FH_cochlea, FILE = TRIM(outputDirectory) // TRIM(CochleaFileName), FORM = writeFormat, IOSTAT = ios)
23 |
24 | !ENDIF
25 | END SUBROUTINE OpenWrite
26 |
--------------------------------------------------------------------------------
/amtoolbox/src/verhulst/PlotGraphs.f90:
--------------------------------------------------------------------------------
1 | SUBROUTINE PlotGraphs
2 |
3 | USE Declare
4 | USE GraphsModule
5 | IMPLICIT NONE
6 | INTEGER ii
7 |
8 | ! IF (MOD(kk, plotEvery_t_points) == 0) THEN
9 | ! t_plotCounter = t_plotCounter +1
10 | ! store current velocities and position of sections 1:n with an interval of plotEvery_n_points in velocityMatrix and positionMatrix
11 | ! velocityMatrix(section_axis, t_plotCounter) = REAL(V(1:n:plotEvery_n_points))!
12 | ! positionMatrix(section_axis, t_plotCounter) = REAL(Y(1:n:plotEvery_n_points))
13 | ! ENDIF
14 |
15 | END SUBROUTINE PlotGraphs
16 |
--------------------------------------------------------------------------------
/amtoolbox/src/verhulst/ReadError.f90:
--------------------------------------------------------------------------------
1 | !displays a message box informing the user that a read error occurred
2 | ! while reading from
3 |
4 | SUBROUTINE ReadError(fileName)
5 | ! USE DFLIB
6 | IMPLICIT NONE
7 | CHARACTER (*), INTENT(IN) :: fileName
8 | ! integer(4) :: messageBoxQQresult
9 |
10 | ! messageBoxQQresult = MESSAGEBOXQQ ("Could not read from " // TRIM(fileName) // &
11 | ! &".\nMake sure the file is in the right directory, it's a correct &
12 | ! &\nfile and the file is not in use by another program"C, &
13 | ! &"Error reading "//TRIM(FileName) // ""C, MB$OK .OR. MB$ICONINFORMATION)
14 | WRITE (*,*) 'could not read data file: ' // TRIM(fileName)
15 |
16 | END SUBROUTINE
17 |
--------------------------------------------------------------------------------
/amtoolbox/src/verhulst/ReadParameterFile.f90:
--------------------------------------------------------------------------------
1 | ! This routine is shared by "Cochlea" and CochleaDialog"
2 |
3 | ! reads parameters from using a call to Parameters
4 |
5 | SUBROUTINE ReadParameterFile (FileName)
6 | USE FilesModule
7 | IMPLICIT NONE
8 | CHARACTER(512), INTENT (IN) :: FileName
9 | INTEGER ios
10 |
11 | OPEN (FH_parameters, FILE = FileName, IOSTAT = ios)
12 | CALL Parameters (READS, FH_parameters)
13 | CLOSE (FH_parameters)
14 |
15 | END SUBROUTINE ReadParameterFile
--------------------------------------------------------------------------------
/amtoolbox/src/verhulst/SheraParameters.f90:
--------------------------------------------------------------------------------
1 | !this subroutine calculates SheraRho(1:n), SheraMu(1:n) and Sherad(1:n)
2 | !for a given pole distribtion SheraP(1:n) along the length of the cochlea
3 | !for calculation details see footnote 8 of Shera 2001
4 |
5 | SUBROUTINE SheraParameters
6 | USE Declare
7 | IMPLICIT NONE
8 | REAL(8), PARAMETER :: c = 120.8998691636393d0
9 | REAL(8) a(1:n)
10 | REAL(8) pimu(1:n)
11 |
12 | a(1:n) = ( SheraP(1:n) + DSQRT( (SheraP(1:n) ** 2d0) + c * (1d0 - (SheraP(1:n) ** 2d0))) ) / c
13 | Sherad(1:n) = 2d0 * (SheraP(1:n) - (a(1:n)))
14 | !SheraMu(1:n) = 1.7435d0 !to be idem to ZweigFactor !1.7441d0
15 | SheraMu(1:n)=1d0 / (2d0 * pi * a(1:n)) !replaced from the tlm2012 implementation. Is now made variable
16 | ! pimu = 1 / (2 * a(1:n))
17 | ! SheraRho = (DSQRT(1.d0 - (Sherad(1:n) ** 2d0)/4)) / (pimu(1:n) * DEXP(1.d0 + pimu * Sherad))
18 | SheraRho(1:n) = 2d0 * a(1:n) * DSQRT(1d0 - (Sherad(1:n)/2d0)**2d0) * DEXP(-SheraP(1:n)/a(1:n)) !replaced from the tlm2012 implementation
19 |
20 | END SUBROUTINE SheraParameters
21 |
--------------------------------------------------------------------------------
/amtoolbox/src/verhulst/WriteError.f90:
--------------------------------------------------------------------------------
1 | !displays a message box informing the user that a write error occurred
2 | ! while writing to
3 |
4 | SUBROUTINE WriteError(message)
5 | ! USE DFLIB
6 | IMPLICIT NONE
7 | CHARACTER (*), INTENT(IN) :: message
8 | ! integer(4) :: MESSAGEBOXQQresult
9 | ! MESSAGEBOXQQresult = MESSAGEBOXQQ ("Could not write to " // TRIM(fileName) // ".\nMake sure file is not write protected or in use by\nanother program and that there is enough disk space."C, &
10 | ! "Error writing "//TRIM(FileName) // ""C, MB$OK .OR. MB$ICONINFORMATION)
11 | WRITE (*,*) 'Could not write to file: ' // TRIM(message)
12 | END SUBROUTINE
13 |
--------------------------------------------------------------------------------
/amtoolbox/src/verhulst/WriteMembraneStatus.f90:
--------------------------------------------------------------------------------
1 | ! If , stores final BM-displacement
2 | ! and BM-velocity in the binary files
3 | ! and respectively.
4 |
5 | ! If a write error occurres, WriteError is called
6 | SUBROUTINE WriteMembraneStatus
7 | USE Declare
8 | USE FilesModule
9 | IMPLICIT NONE
10 |
11 | INTEGER irl, ios
12 |
13 | IF (storeMembraneStatus) THEN
14 | irl = (n+1)*8
15 |
16 | ! write final mebrane state (positions)
17 | OPEN (FH_FINALPOSITIONS, FILE = FN_FINALPOSITIONS, ACCESS='direct', RECL=irl, IOSTAT = ios)
18 | WRITE (FH_FINALPOSITIONS, REC = 1, IOSTAT = ios) Y !(Y(i), i=0,n)
19 | CLOSE (FH_FINALPOSITIONS)
20 | IF (ios /= 0) CALL WriteError(FN_FINALPOSITIONS)
21 |
22 | ! write final mebrane state (velocities)
23 | OPEN (FH_FINALVELOCITIES, FILE = FN_FINALVELOCITIES, ACCESS='direct', RECL=irl, IOSTAT = ios)
24 | WRITE (FH_FINALVELOCITIES, REC=1, IOSTAT = ios) V !(v(i), i=0,n)
25 | CLOSE (FH_FINALVELOCITIES)
26 | IF (ios /= 0) CALL WriteError(FN_FINALVELOCITIES)
27 |
28 | ENDIF
29 |
30 | END SUBROUTINE WriteMembraneStatus
31 |
--------------------------------------------------------------------------------
/config_doc.rst:
--------------------------------------------------------------------------------
1 | ===========
2 | Parameters:
3 | ===========
4 | Mel:
5 | ----
6 |
7 | - *alpha*: pre-emphasis
8 | - *frate*: frame rate
9 | - *fs*: frequency sampling
10 | - *lowerf*:
11 | - *upperf*:
12 | - *nfft*: fast fourier transform ?
13 | - *nfilt*: filterbanks ?
14 | - *wlen*: window length
15 |
16 | Mfcc:
17 | -----
18 |
19 | - *alpha*: pre-emphasis
20 | - *frate*: frame rate
21 | - *fs*: frequency sampling
22 | - *lowerf*:
23 | - *upperf*:
24 | - *nfft*:
25 | - *nfilt*:
26 | - *wlen*: window length
27 | - *do_deltas*: calculate deltas
28 | - *do_deltasdeltas*: calculate double deltas
29 |
30 | Rasta:
31 | ------
32 | - *dorasta*: do rasta; if 0, just calculate PLP
33 | - *modelorder*: order of the PLP model
34 | - *wlen*: window length
35 | - *frate*: frame rate
36 |
--------------------------------------------------------------------------------
/drnl_config.json:
--------------------------------------------------------------------------------
1 | {
2 | "features": "drnl",
3 | "wlen": 0.010,
4 | "frate": 100,
5 | "fs": 44100
6 | }
--------------------------------------------------------------------------------
/get_center_times.m:
--------------------------------------------------------------------------------
1 | function [center_times] = get_center_times(sig, fs, frate, wlen);
2 |
3 | duration = numel(sig)/fs;
4 | center_times = linspace(0, duration, numel(sig))
5 |
6 | % wshift_smp = fs / frate;
7 | % wlen_smp = wlen * fs;
8 | % nframes = size(sig, 1) / wshift_smp + 1;
9 | % center_times = zeros(nframes, 1);
10 | % for fr = 1:nframes
11 | % start_smp = round(fr * wshift_smp);
12 | % end_smp = min(size(sig, 1), start_smp + wlen_smp);
13 | % start_ms = start_smp / fs;
14 | % end_ms = end_smp / fs;
15 | % center_times(fr) = (start_ms + end_ms) / 2;
16 | % end
--------------------------------------------------------------------------------
/jsonlab/README.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/jsonlab/README.txt
--------------------------------------------------------------------------------
/jsonlab/examples/example1.json:
--------------------------------------------------------------------------------
1 | {
2 | "firstName": "John",
3 | "lastName": "Smith",
4 | "age": 25,
5 | "address":
6 | {
7 | "streetAddress": "21 2nd Street",
8 | "city": "New York",
9 | "state": "NY",
10 | "postalCode": "10021"
11 | },
12 | "phoneNumber":
13 | [
14 | {
15 | "type": "home",
16 | "number": "212 555-1234"
17 | },
18 | {
19 | "type": "fax",
20 | "number": "646 555-4567"
21 | }
22 | ]
23 | }
24 |
--------------------------------------------------------------------------------
/jsonlab/examples/example2.json:
--------------------------------------------------------------------------------
1 | {
2 | "glossary": {
3 | "title": "example glossary",
4 | "GlossDiv": {
5 | "title": "S",
6 | "GlossList": {
7 | "GlossEntry": {
8 | "ID": "SGML",
9 | "SortAs": "SGML",
10 | "GlossTerm": "Standard Generalized Markup Language",
11 | "Acronym": "SGML",
12 | "Abbrev": "ISO 8879:1986",
13 | "GlossDef": {
14 | "para": "A meta-markup language, used to create markup languages such as DocBook.",
15 | "GlossSeeAlso": ["GML", "XML"]
16 | },
17 | "GlossSee": "markup"
18 | }
19 | }
20 | }
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/jsonlab/examples/example3.json:
--------------------------------------------------------------------------------
1 | {"menu": {
2 | "id": "file",
3 | "value": "_&File",
4 | "popup": {
5 | "menuitem": [
6 | {"value": "_&New", "onclick": "CreateNewDoc(\"\"\")"},
7 | {"value": "_&Open", "onclick": "OpenDoc()"},
8 | {"value": "_&Close", "onclick": "CloseDoc()"}
9 | ]
10 | }
11 | }}
12 |
--------------------------------------------------------------------------------
/jsonlab/examples/example4.json:
--------------------------------------------------------------------------------
1 | [
2 | {
3 | "sample" : {
4 | "rho" : 1
5 | }
6 | },
7 | {
8 | "sample" : {
9 | "rho" : 2
10 | }
11 | },
12 | [
13 | {
14 | "_ArrayType_" : "double",
15 | "_ArraySize_" : [1,2],
16 | "_ArrayData_" : [1,0]
17 | },
18 | {
19 | "_ArrayType_" : "double",
20 | "_ArraySize_" : [1,2],
21 | "_ArrayData_" : [1,1]
22 | },
23 | {
24 | "_ArrayType_" : "double",
25 | "_ArraySize_" : [1,2],
26 | "_ArrayData_" : [1,2]
27 | }
28 | ],
29 | [
30 | "Paper",
31 | "Scissors",
32 | "Stone"
33 | ]
34 | ]
35 |
--------------------------------------------------------------------------------
/jsonlab/examples/jsonlab_selftest.m:
--------------------------------------------------------------------------------
1 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2 | % Regression Test Unit of loadjson and savejson
3 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4 |
5 | for i=1:4
6 | fname=sprintf('example%d.json',i);
7 | if(exist(fname,'file')==0) break; end
8 | fprintf(1,'===============================================\n>> %s\n',fname);
9 | json=savejson('data',loadjson(fname));
10 | fprintf(1,'%s\n',json);
11 | data=loadjson(json);
12 | end
13 |
14 | for i=1:4
15 | fname=sprintf('example%d.json',i);
16 | if(exist(fname,'file')==0) break; end
17 | fprintf(1,'===============================================\n>> %s\n',fname);
18 | json=saveubjson('data',loadjson(fname));
19 | fprintf(1,'%s\n',json);
20 | data=loadubjson(json);
21 | savejson('',data)
22 | end
23 |
--------------------------------------------------------------------------------
/jsonlab/examples/jsonlab_speedtest.m:
--------------------------------------------------------------------------------
1 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2 | % Benchmarking processing speed of savejson and loadjson
3 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4 |
5 | datalen=[1e3 1e4 1e5 1e6];
6 | len=length(datalen);
7 | tsave=zeros(len,1);
8 | tload=zeros(len,1);
9 | for i=1:len
10 | tic;
11 | json=savejson('data',struct('d1',rand(datalen(i),3),'d2',rand(datalen(i),3)>0.5));
12 | tsave(i)=toc;
13 | data=loadjson(json);
14 | tload(i)=toc-tsave(i);
15 | fprintf(1,'matrix size: %d\n',datalen(i));
16 | end
17 |
18 | loglog(datalen,tsave,'o-',datalen,tload,'r*-');
19 | legend('savejson runtime (s)','loadjson runtime (s)');
20 | xlabel('array size');
21 | ylabel('running time (s)');
22 |
--------------------------------------------------------------------------------
/jsonlab/jsonopt.m:
--------------------------------------------------------------------------------
1 | function val=jsonopt(key,default,varargin)
2 | %
3 | % val=jsonopt(key,default,optstruct)
4 | %
5 | % setting options based on a struct. The struct can be produced
6 | % by varargin2struct from a list of 'param','value' pairs
7 | %
8 | % authors:Qianqian Fang (fangq nmr.mgh.harvard.edu)
9 | %
10 | % $Id: loadjson.m 371 2012-06-20 12:43:06Z fangq $
11 | %
12 | % input:
13 | % key: a string with which one look up a value from a struct
14 | % default: if the key does not exist, return default
15 | % optstruct: a struct where each sub-field is a key
16 | %
17 | % output:
18 | % val: if key exists, val=optstruct.key; otherwise val=default
19 | %
20 | % license:
21 | % BSD license, see LICENSE_BSD.txt files for details
22 | %
23 | % -- this function is part of jsonlab toolbox (http://iso2mesh.sf.net/cgi-bin/index.cgi?jsonlab)
24 | %
25 |
26 | val=default;
27 | if(nargin<=2) return; end
28 | opt=varargin{1};
29 | if(isstruct(opt) && isfield(opt,key))
30 | val=getfield(opt,key);
31 | end
32 |
33 |
--------------------------------------------------------------------------------
/jsonlab/mergestruct.m:
--------------------------------------------------------------------------------
1 | function s=mergestruct(s1,s2)
2 | %
3 | % s=mergestruct(s1,s2)
4 | %
5 | % merge two struct objects into one
6 | %
7 | % authors:Qianqian Fang (fangq nmr.mgh.harvard.edu)
8 | % date: 2012/12/22
9 | %
10 | % input:
11 | % s1,s2: a struct object, s1 and s2 can not be arrays
12 | %
13 | % output:
14 | % s: the merged struct object. fields in s1 and s2 will be combined in s.
15 | %
16 | % license:
17 | % BSD license, see LICENSE_BSD.txt files for details
18 | %
19 | % -- this function is part of jsonlab toolbox (http://iso2mesh.sf.net/cgi-bin/index.cgi?jsonlab)
20 | %
21 |
22 | if(~isstruct(s1) || ~isstruct(s2))
23 | error('input parameters contain non-struct');
24 | end
25 | if(length(s1)>1 || length(s2)>1)
26 | error('can not merge struct arrays');
27 | end
28 | fn=fieldnames(s2);
29 | s=s1;
30 | for i=1:length(fn)
31 | s=setfield(s,fn{i},getfield(s2,fn{i}));
32 | end
33 |
34 |
--------------------------------------------------------------------------------
/jsonlab/varargin2struct.m:
--------------------------------------------------------------------------------
1 | function opt=varargin2struct(varargin)
2 | %
3 | % opt=varargin2struct('param1',value1,'param2',value2,...)
4 | % or
5 | % opt=varargin2struct(...,optstruct,...)
6 | %
7 | % convert a series of input parameters into a structure
8 | %
9 | % authors:Qianqian Fang (fangq nmr.mgh.harvard.edu)
10 | % date: 2012/12/22
11 | %
12 | % input:
13 | % 'param', value: the input parameters should be pairs of a string and a value
14 | % optstruct: if a parameter is a struct, the fields will be merged to the output struct
15 | %
16 | % output:
17 | % opt: a struct where opt.param1=value1, opt.param2=value2 ...
18 | %
19 | % license:
20 | % BSD license, see LICENSE_BSD.txt files for details
21 | %
22 | % -- this function is part of jsonlab toolbox (http://iso2mesh.sf.net/cgi-bin/index.cgi?jsonlab)
23 | %
24 |
25 | len=length(varargin);
26 | opt=struct;
27 | if(len==0) return; end
28 | i=1;
29 | while(i<=len)
30 | if(isstruct(varargin{i}))
31 | opt=mergestruct(opt,varargin{i});
32 | elseif(ischar(varargin{i}) && i
2 | Zdenek Prusa
3 | Peter Balazs
4 | Bruno Torresani
5 | Hans G. Feichtinger
6 |
--------------------------------------------------------------------------------
/ltfat/CITATION:
--------------------------------------------------------------------------------
1 | To cite LTFAT in publications please use:
2 |
3 | Peter L. Søndergaard, Bruno Torrésani, Peter Balazs. The Linear Time-Frequency Analysis Toolbox.
4 | International Journal of Wavelets, Multiresolution Analysis and Information Processing, 10(4), 2012.
5 |
6 | A BibTex entry for LaTex users:
7 |
8 | @article{ltfatnote015,
9 | author = "Peter L. S{\o}ndergaard and Bruno Torr\'esani and Peter Balazs",
10 | title = {{The Linear Time Frequency Analysis Toolbox}},
11 | journal = "International Journal of Wavelets, Multiresolution Analysis and Information Processing",
12 | year = 2012,
13 | volume = 10,
14 | number = 4,
15 | doi = "10.1142/S0219691312500324"
16 | }
17 |
--------------------------------------------------------------------------------
/ltfat/INSTALL:
--------------------------------------------------------------------------------
1 |
2 | --------- Running the toolbox --------------------
3 |
4 | In Matlab or Octave type "ltfatstart" as the first command from the
5 | installation directory. This will set up the correct paths.
6 |
7 | In Octave you can put this command in your ~/.octaverc file. In Matlab
8 | you can put this command in your startup.m file. Your startup file of
9 | choice should contain some lines like this:
10 |
11 | addpath /path/to/ltfat
12 | ltfatstart;
13 |
14 | The ltfatstart command will add all the necessary subdirectories (so
15 | please don't add these manually), and it will print a statement
16 | telling you which backend you are currently using.
17 |
18 | -------- Compiling the toolbox ------- ------------
19 |
20 | - If you wish to use the toolbox with Matlab, see the file INSTALL-Matlab
21 |
22 | - If you wish to use the toolbox with Octave, see the file INSTALL-Octave
23 |
24 |
--------------------------------------------------------------------------------
/ltfat/README:
--------------------------------------------------------------------------------
1 | To use the toolbox, 'cd' to this directory and execute 'ltfatstart'.
2 |
3 | In Octave you can put this command in your ~/.octaverc file.
4 |
5 | Directory struture.
6 |
7 | The toolbox is organized in subdirectories as follows:
8 |
9 | fourier - Fourier analysis, DCT/DST transforms and filters.
10 | gabor - Gabor, Wilson and WMDCT analysis and synthesis functions.
11 | filterbank - Filter banks.
12 | nonstatgab - Non-stationary Gabor frames.
13 | sparsereg - Tools for sparse regression of Gabor and Wilson systems.
14 | sigproc - A collection of simple, signal processing tools.
15 | auditory - Auditory scales and common filters types.
16 | demos - Demos
17 | signals - Test signals for use with the examples.
18 | comp - Computational subroutines.
19 | These should not be called directly.
20 | src - C implementation of the most computationally intensive
21 | routines.
22 | mex - Mex files to speed up the toolbox (if compiled)
23 | oct - Octave C++-files to speed up the toolbox (if compiled)
24 |
25 | The file INSTALL contains instructions for compiling the C-library and
26 | the Octave and Matlab interfaces.
--------------------------------------------------------------------------------
/ltfat/auditory/auditoryinit.m:
--------------------------------------------------------------------------------
1 | status=1;
2 |
3 |
4 | %
5 | % Url: http://ltfat.sourceforge.net/doc/auditory/auditoryinit.php
6 |
7 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
8 | % This file is part of LTFAT version 1.4.3
9 | %
10 | % This program is free software: you can redistribute it and/or modify
11 | % it under the terms of the GNU General Public License as published by
12 | % the Free Software Foundation, either version 3 of the License, or
13 | % (at your option) any later version.
14 | %
15 | % This program is distributed in the hope that it will be useful,
16 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
17 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 | % GNU General Public License for more details.
19 | %
20 | % You should have received a copy of the GNU General Public License
21 | % along with this program. If not, see .
22 |
23 |
--------------------------------------------------------------------------------
/ltfat/blockproc/blockplay.m:
--------------------------------------------------------------------------------
1 | function blockplay(f)
2 | %BLOCKPLAY Plays block
3 | %
4 | %
5 | %
6 | %
7 | % Url: http://ltfat.sourceforge.net/doc/blockproc/blockplay.php
8 |
9 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
10 | % This file is part of LTFAT version 1.4.3
11 | %
12 | % This program is free software: you can redistribute it and/or modify
13 | % it under the terms of the GNU General Public License as published by
14 | % the Free Software Foundation, either version 3 of the License, or
15 | % (at your option) any later version.
16 | %
17 | % This program is distributed in the hope that it will be useful,
18 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
19 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20 | % GNU General Public License for more details.
21 | %
22 | % You should have received a copy of the GNU General Public License
23 | % along with this program. If not, see .
24 |
25 | source = block_interface('getSource');
26 |
27 | if strcmp(source,'rec')
28 | error('%s: Blocks cannot be played in the rec only mode.',upper(mfilename));
29 | end
30 |
31 | block_interface('setToPlay',f);
32 |
33 |
--------------------------------------------------------------------------------
/ltfat/blockproc/java/Makefile:
--------------------------------------------------------------------------------
1 | # Use Make to process this file.
2 |
3 | JC=javac
4 |
5 | FLAGS=-source 1.6 -target 1.6
6 | include ../../src/ostools.mk
7 |
8 | default:
9 | $(JC) $(FLAGS) net/sourceforge/ltfat/*.java net/sourceforge/ltfat/thirdparty/*.java
10 | jar cf blockproc.jar net/sourceforge/ltfat/*.class net/sourceforge/ltfat/thirdparty/*.class
11 |
12 | clean: classclean
13 | $(RM) *.jar
14 |
15 | classclean:
16 | $(RM) net$(PS)sourceforge$(PS)ltfat$(PS)*.class
17 | $(RM) net$(PS)sourceforge$(PS)ltfat$(PS)thirdparty$(PS)*.class
18 |
19 |
--------------------------------------------------------------------------------
/ltfat/blockproc/java/blockproc.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/ltfat/blockproc/java/blockproc.jar
--------------------------------------------------------------------------------
/ltfat/comp/arg_freqtoaud.m:
--------------------------------------------------------------------------------
1 | function definput=arg_freqtoaud(definput)
2 |
3 | definput.flags.audscale={'erb','mel','mel1000','bark','erb83','freq','log10','semitone'};
4 |
5 |
6 |
7 | %
8 | % Url: http://ltfat.sourceforge.net/doc/comp/arg_freqtoaud.php
9 |
10 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
11 | % This file is part of LTFAT version 1.4.3
12 | %
13 | % This program is free software: you can redistribute it and/or modify
14 | % it under the terms of the GNU General Public License as published by
15 | % the Free Software Foundation, either version 3 of the License, or
16 | % (at your option) any later version.
17 | %
18 | % This program is distributed in the hope that it will be useful,
19 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
20 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 | % GNU General Public License for more details.
22 | %
23 | % You should have received a copy of the GNU General Public License
24 | % along with this program. If not, see .
25 |
26 |
--------------------------------------------------------------------------------
/ltfat/comp/arg_fwt.m:
--------------------------------------------------------------------------------
1 | function definput = arg_fwt(definput)
2 |
3 | %definput.flags.ext= {'per','zpd','sym','symw','asym','asymw','ppd','sp0'};
4 | %
5 | % Url: http://ltfat.sourceforge.net/doc/comp/arg_fwt.php
6 |
7 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
8 | % This file is part of LTFAT version 1.4.3
9 | %
10 | % This program is free software: you can redistribute it and/or modify
11 | % it under the terms of the GNU General Public License as published by
12 | % the Free Software Foundation, either version 3 of the License, or
13 | % (at your option) any later version.
14 | %
15 | % This program is distributed in the hope that it will be useful,
16 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
17 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 | % GNU General Public License for more details.
19 | %
20 | % You should have received a copy of the GNU General Public License
21 | % along with this program. If not, see .
22 | definput.flags.ext = {'per','zero','even','odd'};
23 |
24 |
--------------------------------------------------------------------------------
/ltfat/comp/arg_fwt2.m:
--------------------------------------------------------------------------------
1 | function definput = arg_fwt2(definput)
2 |
3 | definput.flags.type2d = {'standard','tensor'};
4 |
5 | %
6 | % Url: http://ltfat.sourceforge.net/doc/comp/arg_fwt2.php
7 |
8 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
9 | % This file is part of LTFAT version 1.4.3
10 | %
11 | % This program is free software: you can redistribute it and/or modify
12 | % it under the terms of the GNU General Public License as published by
13 | % the Free Software Foundation, either version 3 of the License, or
14 | % (at your option) any later version.
15 | %
16 | % This program is distributed in the hope that it will be useful,
17 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
18 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 | % GNU General Public License for more details.
20 | %
21 | % You should have received a copy of the GNU General Public License
22 | % along with this program. If not, see .
23 |
24 |
--------------------------------------------------------------------------------
/ltfat/comp/arg_fwtcommon.m:
--------------------------------------------------------------------------------
1 | function definput = arg_fwtcommon(definput)
2 |
3 |
4 | %definput.flags.ansy = {'syn','ana'};
5 | %
6 | % Url: http://ltfat.sourceforge.net/doc/comp/arg_fwtcommon.php
7 |
8 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
9 | % This file is part of LTFAT version 1.4.3
10 | %
11 | % This program is free software: you can redistribute it and/or modify
12 | % it under the terms of the GNU General Public License as published by
13 | % the Free Software Foundation, either version 3 of the License, or
14 | % (at your option) any later version.
15 | %
16 | % This program is distributed in the hope that it will be useful,
17 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
18 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 | % GNU General Public License for more details.
20 | %
21 | % You should have received a copy of the GNU General Public License
22 | % along with this program. If not, see .
23 | definput.keyvals.a = [];
24 |
25 |
--------------------------------------------------------------------------------
/ltfat/comp/arg_fwtext.m:
--------------------------------------------------------------------------------
1 | function definput = arg_fwtext(definput)
2 |
3 | %definput.flags.ext= {'per','zpd','sym','symw','asym','asymw','ppd','sp0'};
4 | %
5 | % Url: http://ltfat.sourceforge.net/doc/comp/arg_fwtext.php
6 |
7 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
8 | % This file is part of LTFAT version 1.4.3
9 | %
10 | % This program is free software: you can redistribute it and/or modify
11 | % it under the terms of the GNU General Public License as published by
12 | % the Free Software Foundation, either version 3 of the License, or
13 | % (at your option) any later version.
14 | %
15 | % This program is distributed in the hope that it will be useful,
16 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
17 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 | % GNU General Public License for more details.
19 | %
20 | % You should have received a copy of the GNU General Public License
21 | % along with this program. If not, see .
22 | definput.flags.ext = {'per','zero','even','odd','valid'};
23 |
24 |
--------------------------------------------------------------------------------
/ltfat/comp/arg_groupthresh.m:
--------------------------------------------------------------------------------
1 | function definput=arg_groupthresh(definput)
2 |
3 | definput.flags.grouptype={'group','elite'};
4 |
5 |
6 |
7 | %
8 | % Url: http://ltfat.sourceforge.net/doc/comp/arg_groupthresh.php
9 |
10 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
11 | % This file is part of LTFAT version 1.4.3
12 | %
13 | % This program is free software: you can redistribute it and/or modify
14 | % it under the terms of the GNU General Public License as published by
15 | % the Free Software Foundation, either version 3 of the License, or
16 | % (at your option) any later version.
17 | %
18 | % This program is distributed in the hope that it will be useful,
19 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
20 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 | % GNU General Public License for more details.
22 | %
23 | % You should have received a copy of the GNU General Public License
24 | % along with this program. If not, see .
25 |
26 |
--------------------------------------------------------------------------------
/ltfat/comp/arg_ltfattranslate.m:
--------------------------------------------------------------------------------
1 | function definput=arg_ltfattranslate(definput)
2 |
3 | definput.keyvals.frequency='Frequency';
4 | definput.keyvals.time='Time';
5 | definput.keyvals.samples='samples';
6 | definput.keyvals.normalized='normalized';
7 | definput.keyvals.magnitude='Magnitude';
8 |
9 |
10 |
11 | %
12 | % Url: http://ltfat.sourceforge.net/doc/comp/arg_ltfattranslate.php
13 |
14 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
15 | % This file is part of LTFAT version 1.4.3
16 | %
17 | % This program is free software: you can redistribute it and/or modify
18 | % it under the terms of the GNU General Public License as published by
19 | % the Free Software Foundation, either version 3 of the License, or
20 | % (at your option) any later version.
21 | %
22 | % This program is distributed in the hope that it will be useful,
23 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
24 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
25 | % GNU General Public License for more details.
26 | %
27 | % You should have received a copy of the GNU General Public License
28 | % along with this program. If not, see .
29 |
30 |
--------------------------------------------------------------------------------
/ltfat/comp/arg_normalize.m:
--------------------------------------------------------------------------------
1 | function definput=arg_normalize(definput)
2 |
3 | definput.flags.norm={'2','1','inf','area','energy','peak','s0','rms','null'};
4 |
5 |
6 |
7 | %
8 | % Url: http://ltfat.sourceforge.net/doc/comp/arg_normalize.php
9 |
10 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
11 | % This file is part of LTFAT version 1.4.3
12 | %
13 | % This program is free software: you can redistribute it and/or modify
14 | % it under the terms of the GNU General Public License as published by
15 | % the Free Software Foundation, either version 3 of the License, or
16 | % (at your option) any later version.
17 | %
18 | % This program is distributed in the hope that it will be useful,
19 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
20 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 | % GNU General Public License for more details.
22 | %
23 | % You should have received a copy of the GNU General Public License
24 | % along with this program. If not, see .
25 |
26 |
--------------------------------------------------------------------------------
/ltfat/comp/arg_pfilt.m:
--------------------------------------------------------------------------------
1 | function definput=arg_pfilt(definput)
2 |
3 | definput.keyvals.crossover=120;
4 |
5 |
6 |
7 | %
8 | % Url: http://ltfat.sourceforge.net/doc/comp/arg_pfilt.php
9 |
10 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
11 | % This file is part of LTFAT version 1.4.3
12 | %
13 | % This program is free software: you can redistribute it and/or modify
14 | % it under the terms of the GNU General Public License as published by
15 | % the Free Software Foundation, either version 3 of the License, or
16 | % (at your option) any later version.
17 | %
18 | % This program is distributed in the hope that it will be useful,
19 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
20 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 | % GNU General Public License for more details.
22 | %
23 | % You should have received a copy of the GNU General Public License
24 | % along with this program. If not, see .
25 |
26 |
--------------------------------------------------------------------------------
/ltfat/comp/arg_plotfilterbank.m:
--------------------------------------------------------------------------------
1 | function definput=arg_plotfilterbank(definput)
2 |
3 | definput.keyvals.fc=[];
4 | definput.keyvals.ntickpos=10;
5 | definput.keyvals.tick=[];
6 | definput.groups.audtick={'tick',[0,100,250,500,1000,2000,4000,8000,16000,32000]};
7 |
8 |
9 |
10 | %
11 | % Url: http://ltfat.sourceforge.net/doc/comp/arg_plotfilterbank.php
12 |
13 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
14 | % This file is part of LTFAT version 1.4.3
15 | %
16 | % This program is free software: you can redistribute it and/or modify
17 | % it under the terms of the GNU General Public License as published by
18 | % the Free Software Foundation, either version 3 of the License, or
19 | % (at your option) any later version.
20 | %
21 | % This program is distributed in the hope that it will be useful,
22 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
23 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
24 | % GNU General Public License for more details.
25 | %
26 | % You should have received a copy of the GNU General Public License
27 | % along with this program. If not, see .
28 |
29 |
--------------------------------------------------------------------------------
/ltfat/comp/arg_thresh.m:
--------------------------------------------------------------------------------
1 | function definput=arg_thresh(definput)
2 |
3 | definput.flags.iofun={'hard','soft','wiener'};
4 | definput.flags.outclass={'full','sparse'};
5 |
6 |
7 |
8 | %
9 | % Url: http://ltfat.sourceforge.net/doc/comp/arg_thresh.php
10 |
11 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
12 | % This file is part of LTFAT version 1.4.3
13 | %
14 | % This program is free software: you can redistribute it and/or modify
15 | % it under the terms of the GNU General Public License as published by
16 | % the Free Software Foundation, either version 3 of the License, or
17 | % (at your option) any later version.
18 | %
19 | % This program is distributed in the hope that it will be useful,
20 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
21 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22 | % GNU General Public License for more details.
23 | %
24 | % You should have received a copy of the GNU General Public License
25 | % along with this program. If not, see .
26 |
27 |
--------------------------------------------------------------------------------
/ltfat/comp/arg_wfbtcommon.m:
--------------------------------------------------------------------------------
1 | function definput = arg_wfbtcommon(definput)
2 |
3 | % definput.keyvals.J = 1;
4 | % definput.flags.treetype = {'full','dwt'};
5 | % Frequency vs. natral ordering of the output subbands
6 | %
7 | % Url: http://ltfat.sourceforge.net/doc/comp/arg_wfbtcommon.php
8 |
9 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
10 | % This file is part of LTFAT version 1.4.3
11 | %
12 | % This program is free software: you can redistribute it and/or modify
13 | % it under the terms of the GNU General Public License as published by
14 | % the Free Software Foundation, either version 3 of the License, or
15 | % (at your option) any later version.
16 | %
17 | % This program is distributed in the hope that it will be useful,
18 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
19 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20 | % GNU General Public License for more details.
21 | %
22 | % You should have received a copy of the GNU General Public License
23 | % along with this program. If not, see .
24 | definput.flags.forder = {'freq','nat'};
25 |
26 |
--------------------------------------------------------------------------------
/ltfat/comp/assert_sigreshape_post.m:
--------------------------------------------------------------------------------
1 | function f=assert_sigreshape_post(f,dim,permutedsize,order)
2 |
3 | % Restore the original, permuted shape.
4 | %
5 | % Url: http://ltfat.sourceforge.net/doc/comp/assert_sigreshape_post.php
6 |
7 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
8 | % This file is part of LTFAT version 1.4.3
9 | %
10 | % This program is free software: you can redistribute it and/or modify
11 | % it under the terms of the GNU General Public License as published by
12 | % the Free Software Foundation, either version 3 of the License, or
13 | % (at your option) any later version.
14 | %
15 | % This program is distributed in the hope that it will be useful,
16 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
17 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 | % GNU General Public License for more details.
19 | %
20 | % You should have received a copy of the GNU General Public License
21 | % along with this program. If not, see .
22 | f=reshape(f,permutedsize);
23 |
24 | if dim>1
25 | % Undo the permutation.
26 | f=ipermute(f,order);
27 | end;
28 |
29 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/ltfat/comp/comp_dwilt.m:
--------------------------------------------------------------------------------
1 | function [coef]=comp_dwilt(f,g,M)
2 | %COMP_DWILT Compute Discrete Wilson transform.
3 | %
4 | %
5 | % Url: http://ltfat.sourceforge.net/doc/comp/comp_dwilt.php
6 |
7 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
8 | % This file is part of LTFAT version 1.4.3
9 | %
10 | % This program is free software: you can redistribute it and/or modify
11 | % it under the terms of the GNU General Public License as published by
12 | % the Free Software Foundation, either version 3 of the License, or
13 | % (at your option) any later version.
14 | %
15 | % This program is distributed in the hope that it will be useful,
16 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
17 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 | % GNU General Public License for more details.
19 | %
20 | % You should have received a copy of the GNU General Public License
21 | % along with this program. If not, see .
22 |
23 | L=size(f,1);
24 | Lwindow=size(g,1);
25 |
26 | if Lwindow.
8 | % This file is part of LTFAT version 1.4.3
9 | %
10 | % This program is free software: you can redistribute it and/or modify
11 | % it under the terms of the GNU General Public License as published by
12 | % the Free Software Foundation, either version 3 of the License, or
13 | % (at your option) any later version.
14 | %
15 | % This program is distributed in the hope that it will be useful,
16 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
17 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 | % GNU General Public License for more details.
19 | %
20 | % You should have received a copy of the GNU General Public License
21 | % along with this program. If not, see .
22 |
23 | M=size(cin,1);
24 | N=size(cin,2)/2;
25 | W=size(cin,3);
26 |
27 | cout=zeros(M,N,W,assert_classname(cin));
28 |
29 | cout=cin(:,1:N,:);
30 |
31 | cout=reshape(cout,M*N,W);
32 |
33 |
34 |
--------------------------------------------------------------------------------
/ltfat/comp/comp_fftreal.m:
--------------------------------------------------------------------------------
1 | function f=comp_fftreal(f)
2 | %COMP_FFTREAL Compute an FFTREAL
3 | %
4 | % Url: http://ltfat.sourceforge.net/doc/comp/comp_fftreal.php
5 |
6 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
7 | % This file is part of LTFAT version 1.4.3
8 | %
9 | % This program is free software: you can redistribute it and/or modify
10 | % it under the terms of the GNU General Public License as published by
11 | % the Free Software Foundation, either version 3 of the License, or
12 | % (at your option) any later version.
13 | %
14 | % This program is distributed in the hope that it will be useful,
15 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
16 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 | % GNU General Public License for more details.
18 | %
19 | % You should have received a copy of the GNU General Public License
20 | % along with this program. If not, see .
21 |
22 | N=size(f,1);
23 | N2=floor(N/2)+1;
24 |
25 | % Force FFT along dimension 1, since we have permuted the dimensions
26 | % manually
27 | f=fft(f,N,1);
28 | f=f(1:N2,:);
29 |
30 |
31 |
32 |
--------------------------------------------------------------------------------
/ltfat/comp/comp_framelength_tensor.m:
--------------------------------------------------------------------------------
1 | function L=comp_framelength_tensor(F,Ls);
2 | %COMP_FRAMELENGTH_TENSOR Helper function for the Tensor frame
3 | %
4 | %
5 | % Url: http://ltfat.sourceforge.net/doc/comp/comp_framelength_tensor.php
6 |
7 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
8 | % This file is part of LTFAT version 1.4.3
9 | %
10 | % This program is free software: you can redistribute it and/or modify
11 | % it under the terms of the GNU General Public License as published by
12 | % the Free Software Foundation, either version 3 of the License, or
13 | % (at your option) any later version.
14 | %
15 | % This program is distributed in the hope that it will be useful,
16 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
17 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 | % GNU General Public License for more details.
19 | %
20 | % You should have received a copy of the GNU General Public License
21 | % along with this program. If not, see .
22 | error(['For the tensor product frame, call framelength for the ', ...
23 | 'individual subframes']);
24 |
--------------------------------------------------------------------------------
/ltfat/comp/comp_frana_fusion.m:
--------------------------------------------------------------------------------
1 | function outsig=comp_frana_fusion(F,insig)
2 |
3 | % All frames must use the same length signal.
4 | %
5 | % Url: http://ltfat.sourceforge.net/doc/comp/comp_frana_fusion.php
6 |
7 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
8 | % This file is part of LTFAT version 1.4.3
9 | %
10 | % This program is free software: you can redistribute it and/or modify
11 | % it under the terms of the GNU General Public License as published by
12 | % the Free Software Foundation, either version 3 of the License, or
13 | % (at your option) any later version.
14 | %
15 | % This program is distributed in the hope that it will be useful,
16 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
17 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 | % GNU General Public License for more details.
19 | %
20 | % You should have received a copy of the GNU General Public License
21 | % along with this program. If not, see .
22 | L=F.length(size(insig,1));
23 | insig=postpad(insig,L);
24 |
25 | coefs = cell(F.Nframes,1);
26 | for ii=1:F.Nframes
27 | coefs(ii)={F.w(ii)*frana(F.frames{ii},insig)};
28 | end;
29 | outsig=cell2mat(coefs);
30 |
31 |
32 |
--------------------------------------------------------------------------------
/ltfat/comp/comp_frana_tensor.m:
--------------------------------------------------------------------------------
1 | outsig = comp_frana_tensor(F,insig)
2 |
3 | outsig=frsyn(F.frames{1},insig);
4 | perm=circshift((1:F.Nframes).',-1);
5 | for ii=2:F.Nframes
6 | outsig=permute(outsig,perm);
7 | outsig=frsyn(F.frames{ii},outsig);
8 | end;
9 | outsig=permute(outsig,perm);
10 |
11 | %
12 | % Url: http://ltfat.sourceforge.net/doc/comp/comp_frana_tensor.php
13 |
14 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
15 | % This file is part of LTFAT version 1.4.3
16 | %
17 | % This program is free software: you can redistribute it and/or modify
18 | % it under the terms of the GNU General Public License as published by
19 | % the Free Software Foundation, either version 3 of the License, or
20 | % (at your option) any later version.
21 | %
22 | % This program is distributed in the hope that it will be useful,
23 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
24 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
25 | % GNU General Public License for more details.
26 | %
27 | % You should have received a copy of the GNU General Public License
28 | % along with this program. If not, see .
29 |
30 |
--------------------------------------------------------------------------------
/ltfat/comp/comp_frsyn_tensor.m:
--------------------------------------------------------------------------------
1 | function outsig=comp_frsyn_tensor(F,insig)
2 |
3 | outsig=frsyn(F.frames{1},insig);
4 | perm=circshift((1:F.Nframes).',-1);
5 | for ii=2:F.Nframes
6 | outsig=permute(outsig,perm);
7 | outsig=frsyn(F.frames{ii},outsig);
8 | end;
9 | outsig=permute(outsig,perm);
10 |
11 | %
12 | % Url: http://ltfat.sourceforge.net/doc/comp/comp_frsyn_tensor.php
13 |
14 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
15 | % This file is part of LTFAT version 1.4.3
16 | %
17 | % This program is free software: you can redistribute it and/or modify
18 | % it under the terms of the GNU General Public License as published by
19 | % the Free Software Foundation, either version 3 of the License, or
20 | % (at your option) any later version.
21 | %
22 | % This program is distributed in the hope that it will be useful,
23 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
24 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
25 | % GNU General Public License for more details.
26 | %
27 | % You should have received a copy of the GNU General Public License
28 | % along with this program. If not, see .
29 |
30 |
--------------------------------------------------------------------------------
/ltfat/comp/comp_warpedfoff.m:
--------------------------------------------------------------------------------
1 | function foff=comp_warpedfoff(fc,bw,fs,L,scaletofreq)
2 | %COMP_WARPEDFOFF foff for warped filters
3 | %
4 | % Url: http://ltfat.sourceforge.net/doc/comp/comp_warpedfoff.php
5 |
6 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
7 | % This file is part of LTFAT version 1.4.3
8 | %
9 | % This program is free software: you can redistribute it and/or modify
10 | % it under the terms of the GNU General Public License as published by
11 | % the Free Software Foundation, either version 3 of the License, or
12 | % (at your option) any later version.
13 | %
14 | % This program is distributed in the hope that it will be useful,
15 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
16 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 | % GNU General Public License for more details.
18 | %
19 | % You should have received a copy of the GNU General Public License
20 | % along with this program. If not, see .
21 |
22 | foff=floor(scaletofreq(fc-.5*bw)/fs*L)+1;
23 |
24 |
--------------------------------------------------------------------------------
/ltfat/comp/compinit.m:
--------------------------------------------------------------------------------
1 | status=2;
2 |
3 |
4 | %
5 | % Url: http://ltfat.sourceforge.net/doc/comp/compinit.php
6 |
7 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
8 | % This file is part of LTFAT version 1.4.3
9 | %
10 | % This program is free software: you can redistribute it and/or modify
11 | % it under the terms of the GNU General Public License as published by
12 | % the Free Software Foundation, either version 3 of the License, or
13 | % (at your option) any later version.
14 | %
15 | % This program is distributed in the hope that it will be useful,
16 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
17 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 | % GNU General Public License for more details.
19 | %
20 | % You should have received a copy of the GNU General Public License
21 | % along with this program. If not, see .
22 |
23 |
--------------------------------------------------------------------------------
/ltfat/comp/vect2cell.m:
--------------------------------------------------------------------------------
1 | function c = vect2cell(x,idx)
2 |
3 | idxEnd = cumsum(idx(:));
4 | idxStart = [1;1+idxEnd(1:end-1)];
5 | c = arrayfun(@(idS,idE) x(idS:idE,:),idxStart,idxEnd,'UniformOutput',0);
6 |
7 |
8 | %
9 | % Url: http://ltfat.sourceforge.net/doc/comp/vect2cell.php
10 |
11 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
12 | % This file is part of LTFAT version 1.4.3
13 | %
14 | % This program is free software: you can redistribute it and/or modify
15 | % it under the terms of the GNU General Public License as published by
16 | % the Free Software Foundation, either version 3 of the License, or
17 | % (at your option) any later version.
18 | %
19 | % This program is distributed in the hope that it will be useful,
20 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
21 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22 | % GNU General Public License for more details.
23 | %
24 | % You should have received a copy of the GNU General Public License
25 | % along with this program. If not, see .
26 |
27 |
--------------------------------------------------------------------------------
/ltfat/demos/demosinit.m:
--------------------------------------------------------------------------------
1 | status=1;
2 |
3 |
4 |
5 | %
6 | % Url: http://ltfat.sourceforge.net/doc/demos/demosinit.php
7 |
8 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
9 | % This file is part of LTFAT version 1.4.3
10 | %
11 | % This program is free software: you can redistribute it and/or modify
12 | % it under the terms of the GNU General Public License as published by
13 | % the Free Software Foundation, either version 3 of the License, or
14 | % (at your option) any later version.
15 | %
16 | % This program is distributed in the hope that it will be useful,
17 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
18 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 | % GNU General Public License for more details.
20 | %
21 | % You should have received a copy of the GNU General Public License
22 | % along with this program. If not, see .
23 |
24 |
--------------------------------------------------------------------------------
/ltfat/deprecated/deprecatedinit.m:
--------------------------------------------------------------------------------
1 | status=1;
2 |
3 |
4 | %
5 | % Url: http://ltfat.sourceforge.net/doc/deprecated/deprecatedinit.php
6 |
7 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
8 | % This file is part of LTFAT version 1.4.3
9 | %
10 | % This program is free software: you can redistribute it and/or modify
11 | % it under the terms of the GNU General Public License as published by
12 | % the Free Software Foundation, either version 3 of the License, or
13 | % (at your option) any later version.
14 | %
15 | % This program is distributed in the hope that it will be useful,
16 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
17 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 | % GNU General Public License for more details.
19 | %
20 | % You should have received a copy of the GNU General Public License
21 | % along with this program. If not, see .
22 |
23 |
--------------------------------------------------------------------------------
/ltfat/filterbank/filterbankinit.m:
--------------------------------------------------------------------------------
1 | status=1;
2 |
3 |
4 | %
5 | % Url: http://ltfat.sourceforge.net/doc/filterbank/filterbankinit.php
6 |
7 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
8 | % This file is part of LTFAT version 1.4.3
9 | %
10 | % This program is free software: you can redistribute it and/or modify
11 | % it under the terms of the GNU General Public License as published by
12 | % the Free Software Foundation, either version 3 of the License, or
13 | % (at your option) any later version.
14 | %
15 | % This program is distributed in the hope that it will be useful,
16 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
17 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 | % GNU General Public License for more details.
19 | %
20 | % You should have received a copy of the GNU General Public License
21 | % along with this program. If not, see .
22 |
23 |
--------------------------------------------------------------------------------
/ltfat/fourier/fourierinit.m:
--------------------------------------------------------------------------------
1 | status=1;
2 |
3 |
4 |
5 | %
6 | % Url: http://ltfat.sourceforge.net/doc/fourier/fourierinit.php
7 |
8 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
9 | % This file is part of LTFAT version 1.4.3
10 | %
11 | % This program is free software: you can redistribute it and/or modify
12 | % it under the terms of the GNU General Public License as published by
13 | % the Free Software Foundation, either version 3 of the License, or
14 | % (at your option) any later version.
15 | %
16 | % This program is distributed in the hope that it will be useful,
17 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
18 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 | % GNU General Public License for more details.
20 | %
21 | % You should have received a copy of the GNU General Public License
22 | % along with this program. If not, see .
23 |
24 |
--------------------------------------------------------------------------------
/ltfat/frames/framesinit.m:
--------------------------------------------------------------------------------
1 | status=1;
2 |
3 | %
4 | % Url: http://ltfat.sourceforge.net/doc/frames/framesinit.php
5 |
6 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
7 | % This file is part of LTFAT version 1.4.3
8 | %
9 | % This program is free software: you can redistribute it and/or modify
10 | % it under the terms of the GNU General Public License as published by
11 | % the Free Software Foundation, either version 3 of the License, or
12 | % (at your option) any later version.
13 | %
14 | % This program is distributed in the hope that it will be useful,
15 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
16 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 | % GNU General Public License for more details.
18 | %
19 | % You should have received a copy of the GNU General Public License
20 | % along with this program. If not, see .
21 |
22 |
--------------------------------------------------------------------------------
/ltfat/gabor/gaborinit.m:
--------------------------------------------------------------------------------
1 | status=1;
2 |
3 |
4 | %
5 | % Url: http://ltfat.sourceforge.net/doc/gabor/gaborinit.php
6 |
7 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
8 | % This file is part of LTFAT version 1.4.3
9 | %
10 | % This program is free software: you can redistribute it and/or modify
11 | % it under the terms of the GNU General Public License as published by
12 | % the Free Software Foundation, either version 3 of the License, or
13 | % (at your option) any later version.
14 | %
15 | % This program is distributed in the hope that it will be useful,
16 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
17 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 | % GNU General Public License for more details.
19 | %
20 | % You should have received a copy of the GNU General Public License
21 | % along with this program. If not, see .
22 |
23 |
--------------------------------------------------------------------------------
/ltfat/ltfat_version:
--------------------------------------------------------------------------------
1 | 1.4.3
2 |
--------------------------------------------------------------------------------
/ltfat/ltfatbasepath.m:
--------------------------------------------------------------------------------
1 | function bp = ltfatbasepath;
2 | %LTFATBASEPATH The base path of the LTFAT installation
3 | % Usage: bp = ltfatbasepath;
4 | %
5 | % LTFATBASEPATH returns the top level directory in which the LTFAT
6 | % files are installed.
7 | %
8 | % See also: ltfatstart
9 | %
10 | % Url: http://ltfat.sourceforge.net/doc/ltfatbasepath.php
11 |
12 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
13 | % This file is part of LTFAT version 1.4.3
14 | %
15 | % This program is free software: you can redistribute it and/or modify
16 | % it under the terms of the GNU General Public License as published by
17 | % the Free Software Foundation, either version 3 of the License, or
18 | % (at your option) any later version.
19 | %
20 | % This program is distributed in the hope that it will be useful,
21 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
22 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
23 | % GNU General Public License for more details.
24 | %
25 | % You should have received a copy of the GNU General Public License
26 | % along with this program. If not, see .
27 |
28 | f=mfilename('fullpath');
29 |
30 | bp = f(1:end-13);
31 |
32 |
33 |
--------------------------------------------------------------------------------
/ltfat/mex/Makefile:
--------------------------------------------------------------------------------
1 | # This file does nothing, but it makes compilation on Unix work, no
2 | # clue why the existance of an empty files makes any difference for
3 | # calling default roles.
4 |
--------------------------------------------------------------------------------
/ltfat/mex/Makefile_unix:
--------------------------------------------------------------------------------
1 | # To run this makefile, you must provide the EXT and MATLABROOT
2 | # variables on the command line, i.e. as in
3 | #
4 | # make -f Makefile_unix MATLABROOT=/usr/local/MATLAB/R2011a EXT=$(mexext)
5 |
6 | ifndef MATLABROOT
7 | $(warning MATLABROOT variable is udefined. Using default MATLABROOT="/usr/local/MATLAB/R2011a/")
8 | MATLABROOT=/usr/local/MATLAB/R2011a/
9 | endif
10 |
11 | ifndef EXT
12 | $(warning EXT variable is udefined. Using default EXT=mexa64)
13 | EXT=mexa64
14 | endif
15 |
16 | CFLAGS=-shared -O3 -Wall -std=c99 -fvisibility=hidden -I../src/thirdparty -I../src -I$(MATLABROOT)/extern/include -L../lib
17 |
18 | include filedefs.mk
19 |
20 | MEXBASE = $(MEXBASESAFE) $(MEXBASEMORE)
21 | MEXS = $(addsuffix .$(EXT),$(MEXBASE))
22 |
23 | MEXLIBS=-lmex -lmx
24 |
25 | all: $(MEXS)
26 |
27 | %.$(EXT): %.c Makefile config.h ../lib/libltfat.a ../src/ltfat.h
28 | $(CC) $(CFLAGS) $(MEXCOMPFLAGS) $< -o $@ -fPIC -lltfat -lltfatf -lfftw3 -lfftw3f -lblas -llapack
29 |
30 | clean:
31 | -rm *.$(EXT)
32 |
33 | .PHONY: all clean
34 |
--------------------------------------------------------------------------------
/ltfat/mex/Makefile_unix_old:
--------------------------------------------------------------------------------
1 | # Use GNU Make to process this file.
2 |
3 | EXT = $(shell mexext)
4 | # This line gets the MEX extension for the platform. If the shell
5 | # command 'mexext' is not available on your Matlab installation,
6 | # please execute the 'mexext' command within Matlab, and put the
7 | # answer into the line below (remember to uncomment).
8 | #EXT = $(glnx86)
9 |
10 | MEXSC = $(shell ls comp_*.c)
11 | MEXSBASE = $(basename $(MEXSC))
12 | MEXS = $(addsuffix .$(EXT),$(MEXSBASE))
13 |
14 | CFLAGS= -I../thirdparty -I. -I../src -L../lib
15 |
16 |
17 | all: $(MEXS)
18 |
19 | %.$(EXT): %.c Makefile config.h ../lib/libltfat-nomem.a ../src/ltfat.h mex-memalloc.o
20 | mex $(CFLAGS) $< mex-memalloc.o -lfftw3 -lfftw3f -lblas -llapack -lltfat-nomem
21 |
22 | mex-memalloc.o: mex-memalloc.c
23 | mex $(CFLAGS) $<
24 |
25 | clean:
26 | rm *.$(EXT)
27 |
28 | .PHONY: all clean
29 |
--------------------------------------------------------------------------------
/ltfat/mex/comp_chirpzt.c:
--------------------------------------------------------------------------------
1 | #ifndef _LTFAT_MEX_FILE
2 | #define _LTFAT_MEX_FILE
3 |
4 | #define ISNARGINEQ 4
5 | #define TYPEDEPARGS 0
6 | #define SINGLEARGS
7 | #define COMPLEXINDEPENDENT
8 | //#define NOCOMPLEXFMTCHANGE
9 |
10 |
11 | #define GGA_WITH_PLAN
12 | #endif // _LTFAT_MEX_FILE - INCLUDED ONCE
13 |
14 | #define MEX_FILE __BASE_FILE__
15 | #include "ltfat_mex_template_helper.h"
16 |
17 | #if defined(LTFAT_SINGLE) || defined(LTFAT_DOUBLE)
18 |
19 |
20 |
21 | // Calling convention:
22 | // c = comp_chirpcz(f,K,deltao,o)
23 |
24 | void LTFAT_NAME(ltfatMexFnc)( int nlhs, mxArray *plhs[],int nrhs, const mxArray *prhs[] )
25 | {
26 |
27 | mwSize L = mxGetM(prhs[0]);
28 | mwSize W = mxGetN(prhs[0]);
29 | mwSize K = (mwSize) mxGetScalar(prhs[1]);
30 | double deltao = mxGetScalar(prhs[2]);
31 | double o = mxGetScalar(prhs[3]);
32 |
33 | const LTFAT_TYPE* fPtr = (const LTFAT_TYPE*) mxGetData(prhs[0]);
34 |
35 | plhs[0] = ltfatCreateMatrix(K,W,LTFAT_MX_CLASSID,mxCOMPLEX);
36 | LTFAT_REAL _Complex* cPtr = (LTFAT_REAL _Complex*) mxGetPr(plhs[0]);
37 |
38 | LTFAT_NAME(chzt)(fPtr,L,W,K,deltao,o,cPtr);
39 | //LTFAT_NAME(chzt_fact)(fPtr,L,W,K,deltao,o,cPtr);
40 |
41 | return;
42 | }
43 | #endif
44 |
--------------------------------------------------------------------------------
/ltfat/mex/comp_dct.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/ltfat/mex/comp_dct.c
--------------------------------------------------------------------------------
/ltfat/mex/comp_gabdual_long.c:
--------------------------------------------------------------------------------
1 | #ifndef _LTFAT_MEX_FILE
2 | #define _LTFAT_MEX_FILE
3 |
4 | #define ISNARGINEQ 3
5 | #define TYPEDEPARGS 0
6 | #define SINGLEARGS
7 | #define COMPLEXINDEPENDENT
8 |
9 | #endif // _LTFAT_MEX_FILE - INCLUDED ONCE
10 |
11 | #define MEX_FILE __BASE_FILE__
12 | #include "ltfat_mex_template_helper.h"
13 |
14 | #if defined(LTFAT_SINGLE) || defined(LTFAT_DOUBLE)
15 | #include "ltfat_types.h"
16 |
17 | // Calling convention:
18 | // comp_gabdual_long(g,a,M);
19 |
20 | void LTFAT_NAME(ltfatMexFnc)( int nlhs, mxArray *plhs[],int nrhs, const mxArray *prhs[] )
21 | {
22 |
23 | int L, R, a, M;
24 |
25 | // Get matrix dimensions.
26 |
27 | L=(int)mxGetM(prhs[0]);
28 | R=(int)mxGetN(prhs[0]);
29 | a=(int)mxGetScalar(prhs[1]);
30 | M=(int)mxGetScalar(prhs[2]);
31 |
32 | plhs[0] = ltfatCreateMatrix(L, R,LTFAT_MX_CLASSID,LTFAT_MX_COMPLEXITY);
33 | LTFAT_TYPE* gd_combined = (LTFAT_TYPE*) mxGetData(plhs[0]);
34 | const LTFAT_TYPE* g_combined = (const LTFAT_TYPE*) mxGetData(prhs[0]);
35 |
36 | LTFAT_NAME(gabdual_long)(g_combined, L, R, a, M, gd_combined);
37 |
38 | return;
39 | }
40 | #endif
41 |
--------------------------------------------------------------------------------
/ltfat/mex/comp_gabtight_long.c:
--------------------------------------------------------------------------------
1 | #ifndef _LTFAT_MEX_FILE
2 | #define _LTFAT_MEX_FILE
3 |
4 | #define ISNARGINEQ 3
5 | #define TYPEDEPARGS 0
6 | #define SINGLEARGS
7 | #define COMPLEXINDEPENDENT
8 |
9 | #endif // _LTFAT_MEX_FILE - INCLUDED ONCE
10 |
11 | #define MEX_FILE __BASE_FILE__
12 | #include "ltfat_mex_template_helper.h"
13 |
14 | #if defined(LTFAT_SINGLE) || defined(LTFAT_DOUBLE)
15 | #include "ltfat_types.h"
16 |
17 | // Calling convention:
18 | // comp_gabtight_long(g,a,M);
19 |
20 | void LTFAT_NAME(ltfatMexFnc)( int nlhs, mxArray *plhs[],int nrhs, const mxArray *prhs[] )
21 | {
22 |
23 | int L, R, a, M;
24 |
25 | // Get matrix dimensions.
26 |
27 | L=(int)mxGetM(prhs[0]);
28 | R=(int)mxGetN(prhs[0]);
29 | a=(int)mxGetScalar(prhs[1]);
30 | M=(int)mxGetScalar(prhs[2]);
31 |
32 | plhs[0] = ltfatCreateMatrix(L, R,LTFAT_MX_CLASSID,LTFAT_MX_COMPLEXITY);
33 | LTFAT_TYPE* gd_combined = (LTFAT_TYPE*) mxGetData(plhs[0]);
34 | const LTFAT_TYPE* g_combined = (const LTFAT_TYPE*) mxGetData(prhs[0]);
35 |
36 | LTFAT_NAME(gabtight_long)(g_combined, L, R, a, M, gd_combined);
37 |
38 | return;
39 | }
40 | #endif
41 |
42 |
--------------------------------------------------------------------------------
/ltfat/mex/comp_pchirp.c:
--------------------------------------------------------------------------------
1 | #include "math.h"
2 | #include "complex.h"
3 | #include "mex.h"
4 | #include "config.h"
5 | #include "ltfat.h"
6 |
7 | #define PI 3.1415926535897932384626433832795
8 |
9 | static inline long positiverem_long(long a,long b)
10 | {
11 | const long c = a%b;
12 | return(c<0 ? c+b : c);
13 | }
14 |
15 | /* Calling convention:
16 | * pchirp(L,n);
17 | */
18 | void mexFunction( int nlhs, mxArray *plhs[],
19 | int nrhs, const mxArray *prhs[] )
20 | {
21 | const long L=(long)mxGetScalar(prhs[0]);
22 | const long n=(long)mxGetScalar(prhs[1]);
23 |
24 | plhs[0] = mxCreateDoubleMatrix(L, 1, mxCOMPLEX);
25 | double *gr = mxGetPr(plhs[0]);
26 | double *gi = mxGetPi(plhs[0]);
27 |
28 |
29 | const long LL=2*L;
30 | const long Lponen=positiverem_long((L+1)*n,LL);
31 |
32 | for (long m=0;m
3 | #include "stddef.h"
4 |
5 | void* ltfat_malloc(size_t n)
6 | {
7 | return mxMalloc(n);
8 | }
9 |
10 | void* ltfat_calloc(size_t nmemb, size_t size)
11 | {
12 | return mxCalloc(nmemb, size);
13 | }
14 |
15 | void* ltfat_realloc(void *ptr, size_t n)
16 | {
17 | return mxRealloc(ptr, n);
18 | }
19 |
20 | void ltfat_free(void *ptr)
21 | {
22 | mxFree(ptr);
23 | }
24 |
--------------------------------------------------------------------------------
/ltfat/mex/mexinit.m:
--------------------------------------------------------------------------------
1 | if isoctave
2 | status=0;
3 | else
4 | status=2;
5 | end;
6 |
7 |
8 |
9 | %
10 | % Url: http://ltfat.sourceforge.net/doc/mex/mexinit.php
11 |
12 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
13 | % This file is part of LTFAT version 1.4.3
14 | %
15 | % This program is free software: you can redistribute it and/or modify
16 | % it under the terms of the GNU General Public License as published by
17 | % the Free Software Foundation, either version 3 of the License, or
18 | % (at your option) any later version.
19 | %
20 | % This program is distributed in the hope that it will be useful,
21 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
22 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
23 | % GNU General Public License for more details.
24 | %
25 | % You should have received a copy of the GNU General Public License
26 | % along with this program. If not, see .
27 |
28 |
--------------------------------------------------------------------------------
/ltfat/mulaclab/icons/apply.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/ltfat/mulaclab/icons/apply.png
--------------------------------------------------------------------------------
/ltfat/mulaclab/icons/colormap.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/ltfat/mulaclab/icons/colormap.png
--------------------------------------------------------------------------------
/ltfat/mulaclab/icons/difference.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/ltfat/mulaclab/icons/difference.png
--------------------------------------------------------------------------------
/ltfat/mulaclab/icons/freehand.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/ltfat/mulaclab/icons/freehand.png
--------------------------------------------------------------------------------
/ltfat/mulaclab/icons/intersection.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/ltfat/mulaclab/icons/intersection.png
--------------------------------------------------------------------------------
/ltfat/mulaclab/icons/loop.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/ltfat/mulaclab/icons/loop.png
--------------------------------------------------------------------------------
/ltfat/mulaclab/icons/magicwand.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/ltfat/mulaclab/icons/magicwand.png
--------------------------------------------------------------------------------
/ltfat/mulaclab/icons/pan.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/ltfat/mulaclab/icons/pan.png
--------------------------------------------------------------------------------
/ltfat/mulaclab/icons/play.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/ltfat/mulaclab/icons/play.png
--------------------------------------------------------------------------------
/ltfat/mulaclab/icons/resizebutton.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/ltfat/mulaclab/icons/resizebutton.png
--------------------------------------------------------------------------------
/ltfat/mulaclab/icons/showsymbol.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/ltfat/mulaclab/icons/showsymbol.png
--------------------------------------------------------------------------------
/ltfat/mulaclab/icons/stop.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/ltfat/mulaclab/icons/stop.png
--------------------------------------------------------------------------------
/ltfat/mulaclab/icons/subbandsel.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/ltfat/mulaclab/icons/subbandsel.png
--------------------------------------------------------------------------------
/ltfat/mulaclab/icons/union.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/ltfat/mulaclab/icons/union.png
--------------------------------------------------------------------------------
/ltfat/mulaclab/icons/zoomin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/ltfat/mulaclab/icons/zoomin.png
--------------------------------------------------------------------------------
/ltfat/mulaclab/icons/zoomout.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/ltfat/mulaclab/icons/zoomout.png
--------------------------------------------------------------------------------
/ltfat/nonstatgab/nonstatgabinit.m:
--------------------------------------------------------------------------------
1 | status=1;
2 |
3 |
4 | %
5 | % Url: http://ltfat.sourceforge.net/doc/nonstatgab/nonstatgabinit.php
6 |
7 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
8 | % This file is part of LTFAT version 1.4.3
9 | %
10 | % This program is free software: you can redistribute it and/or modify
11 | % it under the terms of the GNU General Public License as published by
12 | % the Free Software Foundation, either version 3 of the License, or
13 | % (at your option) any later version.
14 | %
15 | % This program is distributed in the hope that it will be useful,
16 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
17 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 | % GNU General Public License for more details.
19 | %
20 | % You should have received a copy of the GNU General Public License
21 | % along with this program. If not, see .
22 |
23 |
--------------------------------------------------------------------------------
/ltfat/oct/Makefile_mac:
--------------------------------------------------------------------------------
1 | include Makefile_unix
2 |
--------------------------------------------------------------------------------
/ltfat/oct/Makefile_unix:
--------------------------------------------------------------------------------
1 | # Use GNU Make to process this file.
2 |
3 | ifndef EXT
4 | EXT=oct
5 | endif
6 |
7 | OCTSCC = $(shell ls comp_*.cc)
8 | OCTSBASE = $(basename $(OCTSCC))
9 | OCTS = $(addsuffix .$(EXT),$(OCTSBASE))
10 |
11 | MKOCTFILE ?= mkoctfile
12 |
13 | ifndef LAPACK_LIBS
14 | LAPACK_LIBS := $(shell $(MKOCTFILE) -p LAPACK_LIBS)
15 | endif
16 | ifndef BLAS_LIBS
17 | BLAS_LIBS := $(shell $(MKOCTFILE) -p BLAS_LIBS)
18 | endif
19 | ifndef FLIBS
20 | FLIBS := $(shell $(MKOCTFILE) -p FLIBS)
21 | endif
22 | LFLAGS := $(shell $(MKOCTFILE) -p LFLAGS) $(LAPACK_LIBS) $(BLAS_LIBS) $(FLIBS)
23 |
24 | all: $(OCTS)
25 |
26 | %.$(EXT): %.cc config.h
27 | $(MKOCTFILE) -strip -Wall -I../thirdparty -I. -I../src -I../src/thirdparty -L../lib -lltfat -lltfatf $<
28 |
29 | clean:
30 | rm *.o *.$(EXT)
31 |
32 | .PHONY: all clean
33 |
--------------------------------------------------------------------------------
/ltfat/oct/comp_pchirp.cc:
--------------------------------------------------------------------------------
1 | #include
2 | #include "config.h"
3 | #include "ltfat.h"
4 |
5 | DEFUN_DLD (comp_pchirp, args, ,
6 | "This function calls the C-library\n\
7 | c=pchirp(L,n);\n")
8 | {
9 |
10 | const int L = args(0).int_value();
11 | const int n = args(1).int_value();
12 |
13 | ComplexMatrix g(L,1);
14 |
15 | pchirp_d(L, n, (double _Complex *)g.fortran_vec());
16 |
17 | return octave_value (g);
18 |
19 | }
20 |
21 |
--------------------------------------------------------------------------------
/ltfat/oct/comp_pgauss.cc:
--------------------------------------------------------------------------------
1 | #include
2 | #include "config.h"
3 | #include "ltfat.h"
4 |
5 | DEFUN_DLD (comp_pgauss, args, ,
6 | "This function calls the C-library\n\
7 | c=comp_pgauss(L,w,c_t,c_f);\n")
8 | {
9 |
10 | const int L = args(0).int_value();
11 | const double w = args(1).double_value();
12 | const double c_t = args(2).double_value();
13 | const double c_f = args(3).double_value();
14 |
15 | if (c_f==0.0)
16 | {
17 | Matrix g(L,1);
18 | pgauss_d(L, w, c_t, g.fortran_vec());
19 |
20 | return octave_value (g);
21 | }
22 | else
23 | {
24 | ComplexMatrix g(L,1);
25 | pgauss_cmplx_d(L, w, c_t, c_f, (double _Complex*)g.fortran_vec());
26 |
27 | return octave_value (g);
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/ltfat/oct/config.h:
--------------------------------------------------------------------------------
1 | /* This file should contain the configuration parameters
2 | necessary for the Oct-compilation. */
3 |
4 | #ifndef CONFIG_H
5 | #define CONFIG_H 1
6 |
7 | #include "fftw3.h"
8 | #include "ltfat.h"
9 |
10 | #define FFTW_OPTITYPE FFTW_ESTIMATE
11 |
12 | typedef fftw_complex ltfat_complex;
13 | typedef fftwf_complex ltfat_scomplex;
14 |
15 | /* Define to a macro mangling the given C identifier (in lower and upper
16 | case), which must not contain underscores, for linking with Fortran. */
17 | #define F77_FUNC(name,NAME) name ## _
18 |
19 | #endif /* CONFIG_H */
20 |
--------------------------------------------------------------------------------
/ltfat/oct/oct-memalloc.c:
--------------------------------------------------------------------------------
1 | #include
2 | #include
3 | #include "stddef.h"
4 | #include "fftw3.h"
5 |
6 | void* ltfat_malloc (size_t n)
7 | {
8 | void *outp;
9 | outp = fftw_malloc(n);
10 | if (outp == NULL)
11 | {
12 | puts("ltfat_malloc failed.");
13 | exit(1);
14 | }
15 | return outp;
16 | }
17 |
18 | void* ltfat_realloc (void *ptr, size_t n)
19 | {
20 | void *outp;
21 | outp = realloc(ptr, n);
22 | if (outp == NULL)
23 | {
24 | puts("ltfat_realloc failed.");
25 | exit(1);
26 | }
27 | return outp;
28 | }
29 |
30 | void* ltfat_calloc (size_t nmemb, size_t size)
31 | {
32 | void *outp;
33 | outp = calloc(nmemb, size);
34 | if (outp == NULL)
35 | {
36 | puts("ltfat_calloc failed.");
37 | exit(1);
38 | }
39 | return outp;
40 | }
41 |
42 | void ltfat_free(void *ptr)
43 | {
44 | fftw_free(ptr);
45 | }
46 |
47 |
--------------------------------------------------------------------------------
/ltfat/oct/octinit.m:
--------------------------------------------------------------------------------
1 | if isoctave
2 | status=2;
3 | else
4 | status=0;
5 | end;
6 |
7 |
8 |
9 | %
10 | % Url: http://ltfat.sourceforge.net/doc/oct/octinit.php
11 |
12 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
13 | % This file is part of LTFAT version 1.4.3
14 | %
15 | % This program is free software: you can redistribute it and/or modify
16 | % it under the terms of the GNU General Public License as published by
17 | % the Free Software Foundation, either version 3 of the License, or
18 | % (at your option) any later version.
19 | %
20 | % This program is distributed in the hope that it will be useful,
21 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
22 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
23 | % GNU General Public License for more details.
24 | %
25 | % You should have received a copy of the GNU General Public License
26 | % along with this program. If not, see .
27 |
28 |
--------------------------------------------------------------------------------
/ltfat/operators/operatorsinit.m:
--------------------------------------------------------------------------------
1 | status=1;
2 |
3 | %
4 | % Url: http://ltfat.sourceforge.net/doc/operators/operatorsinit.php
5 |
6 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
7 | % This file is part of LTFAT version 1.4.3
8 | %
9 | % This program is free software: you can redistribute it and/or modify
10 | % it under the terms of the GNU General Public License as published by
11 | % the Free Software Foundation, either version 3 of the License, or
12 | % (at your option) any later version.
13 | %
14 | % This program is distributed in the hope that it will be useful,
15 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
16 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 | % GNU General Public License for more details.
18 | %
19 | % You should have received a copy of the GNU General Public License
20 | % along with this program. If not, see .
21 |
22 |
--------------------------------------------------------------------------------
/ltfat/signals/Clar.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/ltfat/signals/Clar.wav
--------------------------------------------------------------------------------
/ltfat/signals/Piano2.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/ltfat/signals/Piano2.wav
--------------------------------------------------------------------------------
/ltfat/signals/cameraman.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/ltfat/signals/cameraman.png
--------------------------------------------------------------------------------
/ltfat/signals/cocktailparty.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/ltfat/signals/cocktailparty.wav
--------------------------------------------------------------------------------
/ltfat/signals/greasy.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/ltfat/signals/greasy.wav
--------------------------------------------------------------------------------
/ltfat/signals/gspi.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/ltfat/signals/gspi.wav
--------------------------------------------------------------------------------
/ltfat/signals/lichtenstein.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/ltfat/signals/lichtenstein.png
--------------------------------------------------------------------------------
/ltfat/signals/linus.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/ltfat/signals/linus.wav
--------------------------------------------------------------------------------
/ltfat/signals/ltfatlogo.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/ltfat/signals/ltfatlogo.wav
--------------------------------------------------------------------------------
/ltfat/signals/ltfattext.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/ltfat/signals/ltfattext.png
--------------------------------------------------------------------------------
/ltfat/signals/signalsinit.m:
--------------------------------------------------------------------------------
1 | status=1;
2 |
3 |
4 |
5 | %
6 | % Url: http://ltfat.sourceforge.net/doc/signals/signalsinit.php
7 |
8 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
9 | % This file is part of LTFAT version 1.4.3
10 | %
11 | % This program is free software: you can redistribute it and/or modify
12 | % it under the terms of the GNU General Public License as published by
13 | % the Free Software Foundation, either version 3 of the License, or
14 | % (at your option) any later version.
15 | %
16 | % This program is distributed in the hope that it will be useful,
17 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
18 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 | % GNU General Public License for more details.
20 | %
21 | % You should have received a copy of the GNU General Public License
22 | % along with this program. If not, see .
23 |
24 |
--------------------------------------------------------------------------------
/ltfat/signals/traindoppler.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/ltfat/signals/traindoppler.wav
--------------------------------------------------------------------------------
/ltfat/sigproc/crestfactor.m:
--------------------------------------------------------------------------------
1 | function c=crestfactor(insig)
2 | %CRESTFACTOR Crest factor of input signal in dB
3 | % Usage: c=crestfactor(insig);
4 | %
5 | % CRESTFACTOR(insig) computes the crest factor of the input signal
6 | % insig. The output is measured in dB.
7 | %
8 | % See also: rms, gaindb
9 | %
10 | % Url: http://ltfat.sourceforge.net/doc/sigproc/crestfactor.php
11 |
12 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
13 | % This file is part of LTFAT version 1.4.3
14 | %
15 | % This program is free software: you can redistribute it and/or modify
16 | % it under the terms of the GNU General Public License as published by
17 | % the Free Software Foundation, either version 3 of the License, or
18 | % (at your option) any later version.
19 | %
20 | % This program is distributed in the hope that it will be useful,
21 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
22 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
23 | % GNU General Public License for more details.
24 | %
25 | % You should have received a copy of the GNU General Public License
26 | % along with this program. If not, see .
27 |
28 | c=20*log10(norm(insig,Inf)/rms(insig));
29 |
30 |
31 |
--------------------------------------------------------------------------------
/ltfat/sigproc/sigprocinit.m:
--------------------------------------------------------------------------------
1 | status=1;
2 |
3 |
4 | %
5 | % Url: http://ltfat.sourceforge.net/doc/sigproc/sigprocinit.php
6 |
7 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
8 | % This file is part of LTFAT version 1.4.3
9 | %
10 | % This program is free software: you can redistribute it and/or modify
11 | % it under the terms of the GNU General Public License as published by
12 | % the Free Software Foundation, either version 3 of the License, or
13 | % (at your option) any later version.
14 | %
15 | % This program is distributed in the hope that it will be useful,
16 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
17 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 | % GNU General Public License for more details.
19 | %
20 | % You should have received a copy of the GNU General Public License
21 | % along with this program. If not, see .
22 |
23 |
--------------------------------------------------------------------------------
/ltfat/src/Makefile_mac:
--------------------------------------------------------------------------------
1 | include Makefile_unix
2 |
--------------------------------------------------------------------------------
/ltfat/src/Makefile_octpkg:
--------------------------------------------------------------------------------
1 | all:
2 | $(MAKE) -f Makefile_unix
3 | $(MAKE) -C ../oct -f Makefile_unix
4 | mv ../oct/*.oct .
5 | ls -1 *.oct | cut -d . -f 1 | xargs -i rm -f ../inst/comp/{}.m
6 |
--------------------------------------------------------------------------------
/ltfat/src/README:
--------------------------------------------------------------------------------
1 | This directory contains the source for the C-library.
2 |
3 | On Unix, type
4 |
5 | make
6 |
7 | to compile the C-library. The library is called libltfat.a
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/ltfat/src/bootstrap:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | autoconf
3 |
--------------------------------------------------------------------------------
/ltfat/src/ciutils.h:
--------------------------------------------------------------------------------
1 | /*
2 | Inplace friendly functions.
3 | in==out is possibe.
4 | */
5 |
6 | LTFAT_EXTERN
7 | void LTFAT_NAME(circshift)(LTFAT_TYPE *in, LTFAT_TYPE *out, const ptrdiff_t L, const ptrdiff_t shift);
8 |
9 | LTFAT_EXTERN
10 | void LTFAT_NAME(reverse_array)(LTFAT_TYPE *in, LTFAT_TYPE *out, const size_t L);
11 |
12 | LTFAT_EXTERN
13 | void LTFAT_NAME(conjugate_array)(LTFAT_TYPE *in, LTFAT_TYPE *out, const size_t L);
14 |
15 | LTFAT_EXTERN
16 | void LTFAT_NAME(array2complex)(LTFAT_TYPE *in, LTFAT_COMPLEX *out, const size_t L);
17 |
--------------------------------------------------------------------------------
/ltfat/src/config.h:
--------------------------------------------------------------------------------
1 | #ifndef CONFIG_H
2 | #define CONFIG_H 1
3 |
4 |
5 | #ifndef __cplusplus
6 | #include
7 | #endif //__cplusplus
8 |
9 | #define HAVE_BLAS 1
10 | #define HAVE_LAPACK 1
11 |
12 | #include "fftw3.h"
13 |
14 |
15 | static inline int ltfat_round(double x)
16 | {
17 | return (int)(x+.5);
18 | }
19 |
20 | static inline int positiverem(int a,int b)
21 | {
22 | const int c = a%b;
23 | return(c<0 ? c+b : c);
24 | }
25 |
26 | /* Define to a macro mangling the given C identifier (in lower and upper
27 | case), which must not contain underscores, for linking with Fortran. */
28 |
29 | #ifdef MATLABFORTRAN
30 | #define F77_FUNC(name,NAME) NAME
31 | #else
32 | #define F77_FUNC(name,NAME) name ## _
33 | #endif
34 |
35 | /* On WinXP, gcc defines __WIN32__ */
36 | /* On Linux, gcc defines __linux__ */
37 |
38 | #endif /* CONFIG_H */
39 |
--------------------------------------------------------------------------------
/ltfat/src/configure.ac:
--------------------------------------------------------------------------------
1 | AC_PREREQ([2.62])
2 | AC_INIT([LTFAT], [1.4.2], [http://ltfat.sourceforge.net/contact.php], [ltfat])
3 |
4 | AC_PROG_CC
5 | AC_PROG_CXX
6 |
7 | #AC_CONFIG_MACRO_DIR([m4/])
8 | m4_include([m4/ax_blas.m4])
9 | m4_include([m4/ax_lapack.m4])
10 |
11 | # The checks for BLAS and Lapack have been disabled because they
12 | # provoke an error about a missing install-sh
13 |
14 | #dnl Check for BLAS libraries
15 | #sinclude(ax_blas.m4)
16 | #AX_BLAS
17 | #if test "$ax_blas_ok" = "no"; then
18 | # AC_MSG_ERROR([Cannot find BLAS libraries])
19 | #fi
20 |
21 | #dnl Check for LAPACK libraries
22 | #sinclude(ax_lapack.m4)
23 | #AX_LAPACK
24 | #if test "$ax_lapack_ok" = "no"; then
25 | # AC_MSG_ERROR([Cannot find LAPACK libraries])
26 | #fi
27 |
28 | dnl Check for MKOCTFILE
29 | AC_CHECK_PROG(MKOCTFILE_CHECK,mkoctfile,"yes")
30 | if test "$MKOCTFILE_CHECK" != "yes" ; then
31 | AC_MSG_ERROR([Please install mkoctfile.])
32 | fi
33 |
34 | #AC_CHECK_HEADERS([fftw3.h],[],[AC_MSG_ERROR([fftw was not found])])
35 | # Put in check for portaudio
36 |
37 | AC_OUTPUT
38 |
--------------------------------------------------------------------------------
/ltfat/src/dgt_long.h:
--------------------------------------------------------------------------------
1 | LTFAT_EXTERN void
2 | LTFAT_NAME(dgt_long)(const LTFAT_COMPLEX *f, const LTFAT_COMPLEX *g,
3 | const int L, const int W, const int a,
4 | const int M, LTFAT_COMPLEX *cout);
5 |
6 | typedef struct
7 | {
8 | int a;
9 | int M;
10 | int L;
11 | int W;
12 | int c;
13 | int h_a;
14 | LTFAT_FFTW(plan) p_before;
15 | LTFAT_FFTW(plan) p_after;
16 | LTFAT_FFTW(plan) p_veryend;
17 | LTFAT_REAL *sbuf;
18 | const LTFAT_COMPLEX *f;
19 | LTFAT_COMPLEX *gf;
20 | LTFAT_COMPLEX *cout;
21 | LTFAT_REAL *ff, *cf;
22 |
23 | } LTFAT_NAME(dgt_long_plan);
24 |
25 |
26 | LTFAT_EXTERN LTFAT_NAME(dgt_long_plan)
27 | LTFAT_NAME(dgt_long_init)(const LTFAT_COMPLEX *f, const LTFAT_COMPLEX *g,
28 | const int L, const int W, const int a,
29 | const int M, LTFAT_COMPLEX *cout,
30 | unsigned flags);
31 |
32 | LTFAT_EXTERN void
33 | LTFAT_NAME(dgt_long_execute)(const LTFAT_NAME(dgt_long_plan) plan);
34 |
35 | LTFAT_EXTERN void
36 | LTFAT_NAME(dgt_long_done)(LTFAT_NAME(dgt_long_plan) plan);
37 |
38 |
39 | LTFAT_EXTERN void
40 | LTFAT_NAME(dgt_walnut_plan)(LTFAT_NAME(dgt_long_plan) plan);
41 |
--------------------------------------------------------------------------------
/ltfat/src/filedefs.mk:
--------------------------------------------------------------------------------
1 | files = dgt.o dgt_fac.o dgt_fb.o dgt_multi.o dgt_ola.o dgt_shear.o \
2 | dgt_walnut.o dgtreal_fac.o dwilt.o filterbank.o heapint.o \
3 | idgt_fac.o idgt_fb.o iwfac.o pfilt.o reassign.o \
4 | spread.o tfutil.o wfac.o windows.o winmanip.o ltfat_complexindependent.o \
5 | dgt_shearola.o
6 |
7 | files_blaslapack = \
8 | ltfat_blaslapack.o gabdual_fac.o gabtight_fac.o ltfat_complexindependent_bl.o
9 |
10 |
11 | files_notypechange = c-safe-memalloc.o integer_manip.o
12 |
13 |
--------------------------------------------------------------------------------
/ltfat/src/gabdual.c:
--------------------------------------------------------------------------------
1 | /* NOT PROCESSED DIRECTLY, see ltfat_complexindependent.c */
2 | #ifdef LTFAT_TYPE
3 |
4 | #include "config.h"
5 | #include "ltfat.h"
6 | #include "ltfat_types.h"
7 |
8 | LTFAT_EXTERN void
9 | LTFAT_NAME(gabdual_long)(const LTFAT_TYPE *g,
10 | const int L, const int R, const int a,
11 | const int M, LTFAT_TYPE *gd)
12 | {
13 |
14 | const int wfs = L;
15 |
16 |
17 | LTFAT_COMPLEX *gf = ltfat_malloc(wfs*R*sizeof(LTFAT_COMPLEX));
18 | LTFAT_COMPLEX *gdf = ltfat_malloc(wfs*R*sizeof(LTFAT_COMPLEX));
19 |
20 | #ifdef LTFAT_COMPLEXTYPE
21 |
22 | LTFAT_NAME(wfac)(g, L, R, a, M, gf);
23 | LTFAT_NAME_REAL(gabdual_fac)((const LTFAT_COMPLEX *)gf,L,R,a,M,gdf);
24 | LTFAT_NAME(iwfac)((const LTFAT_COMPLEX *)gdf,L,R,a,M,gd);
25 |
26 | #else
27 |
28 | LTFAT_NAME_REAL(wfacreal)(g, L, R, a, M, gf);
29 | LTFAT_NAME_REAL(gabdualreal_fac)((const LTFAT_COMPLEX *)gf,L,R,a,M,gdf);
30 | LTFAT_NAME_REAL(iwfacreal)((const LTFAT_COMPLEX *)gdf,L,R,a,M,gd);
31 |
32 | #endif
33 |
34 | ltfat_free(gdf);
35 | ltfat_free(gf);
36 |
37 | }
38 |
39 | #endif
40 |
--------------------------------------------------------------------------------
/ltfat/src/gabtight.c:
--------------------------------------------------------------------------------
1 | /* NOT PROCESSED DIRECTLY, see ltfat_complexindependent.c */
2 | #ifdef LTFAT_TYPE
3 |
4 | #include "config.h"
5 | #include "ltfat.h"
6 |
7 | LTFAT_EXTERN void
8 | LTFAT_NAME(gabtight_long)(const LTFAT_TYPE *g,
9 | const int L, const int R, const int a,
10 | const int M, LTFAT_TYPE *gd)
11 | {
12 |
13 | #ifdef LTFAT_COMPLEXTYPE
14 |
15 | LTFAT_COMPLEX *gf = ltfat_malloc(L*R*sizeof(LTFAT_COMPLEX));
16 | LTFAT_COMPLEX *gdf = ltfat_malloc(L*R*sizeof(LTFAT_COMPLEX));
17 |
18 | LTFAT_NAME(wfac)(g, L, R, a, M, gf);
19 | LTFAT_NAME_REAL(gabtight_fac)((const LTFAT_COMPLEX *)gf,L,R,a,M,gdf);
20 | LTFAT_NAME(iwfac)((const LTFAT_COMPLEX *)gdf,L,R,a,M,gd);
21 |
22 | #else
23 |
24 | const int wfs = L; /* wfacreal_size(L,a,M); */
25 |
26 | LTFAT_COMPLEX *gf = ltfat_malloc(wfs*R*sizeof(LTFAT_COMPLEX));
27 | LTFAT_COMPLEX *gdf = ltfat_malloc(wfs*R*sizeof(LTFAT_COMPLEX));
28 |
29 | LTFAT_NAME_REAL(wfacreal)(g, L, R, a, M, gf);
30 | LTFAT_NAME_REAL(gabtightreal_fac)((const LTFAT_COMPLEX *)gf,L,R,a,M,gdf);
31 | LTFAT_NAME_REAL(iwfacreal)((const LTFAT_COMPLEX *)gdf,L,R,a,M,gd);
32 |
33 | #endif
34 |
35 | ltfat_free(gdf);
36 | ltfat_free(gf);
37 |
38 |
39 | }
40 | #endif
41 |
--------------------------------------------------------------------------------
/ltfat/src/ltfat_complexindependent.c:
--------------------------------------------------------------------------------
1 | #ifdef LTFAT_COMPLEXTYPE
2 | # undef LTFAT_COMPLEXTYPE
3 | #endif // LTFAT_COMPLEXTYPE
4 |
5 | #include "config.h"
6 | #include "ltfat.h"
7 |
8 | #include "ltfat_types.h"
9 |
10 | #include "goertzel.c"
11 | #include "wavelets.c"
12 | #include "spread.c"
13 | #include "ciutils.c"
14 |
15 |
16 | #define LTFAT_COMPLEXTYPE
17 | #include "ltfat_types.h"
18 |
19 | #include "wavelets.c"
20 | #include "goertzel.c"
21 | #include "spread.c"
22 | #include "ciutils.c"
23 |
24 |
25 | #undef LTFAT_COMPLEXTYPE
26 |
27 |
28 |
--------------------------------------------------------------------------------
/ltfat/src/ltfat_complexindependent_bl.c:
--------------------------------------------------------------------------------
1 | #ifdef LTFAT_COMPLEXTYPE
2 | # undef LTFAT_COMPLEXTYPE
3 | #endif // LTFAT_COMPLEXTYPE
4 |
5 | #include "config.h"
6 | #include "ltfat.h"
7 | #include "ltfat_types.h"
8 |
9 |
10 | #include "gabdual.c"
11 | #include "gabtight.c"
12 |
13 |
14 | #define LTFAT_COMPLEXTYPE
15 | #include "ltfat_types.h"
16 |
17 | #include "gabdual.c"
18 | #include "gabtight.c"
19 |
20 |
21 | #undef LTFAT_COMPLEXTYPE
22 |
23 |
24 |
--------------------------------------------------------------------------------
/ltfat/src/ltfat_notdllexport.def:
--------------------------------------------------------------------------------
1 | EXPORTS
2 | gcd
3 | fftindex
4 | makelarger
5 | int_max
6 | int_min
7 | lcm
8 | gabimagepars
9 | wfacreal_size
10 | ltfat_malloc
11 | ltfat_calloc
12 | ltfat_realloc
13 | ltfat_free
14 | nextPow2_st
15 | nextfastfft
16 | max_st
17 | max_pt
18 | min_st
19 | min_pt
--------------------------------------------------------------------------------
/ltfat/src/ltfat_typecomplexindependent.h:
--------------------------------------------------------------------------------
1 | #include "wavelets.h"
2 | #include "goertzel.h"
3 | #include "ciutils.h"
4 |
5 | LTFAT_EXTERN void
6 | LTFAT_NAME(col2diag)(const LTFAT_TYPE *cin, const int L,
7 | LTFAT_TYPE *cout);
8 |
9 | LTFAT_EXTERN void
10 | LTFAT_NAME(gabdual_long)(const LTFAT_TYPE *g,
11 | const int L, const int R, const int a,
12 | const int M, LTFAT_TYPE *gd);
13 |
14 | LTFAT_EXTERN void
15 | LTFAT_NAME(gabtight_long)(const LTFAT_TYPE *g,
16 | const int L, const int R, const int a,
17 | const int M, LTFAT_TYPE *gd);
18 |
19 |
20 |
--------------------------------------------------------------------------------
/ltfat/src/ostools.mk:
--------------------------------------------------------------------------------
1 | #This file produces system and environment dependent tools for working with files
2 | #It sets the following variables
3 | #
4 | # RM
5 | # CP
6 |
7 | ifeq ($(OS),Windows_NT)
8 | RM = del /Q /F
9 | CP = copy /Y
10 | PS2 = \\
11 | PS = $(strip $(PS2))
12 | ifdef ComSpec
13 | SHELL := $(ComSpec)
14 | endif
15 | ifdef COMSPEC
16 | SHELL := $(COMSPEC)
17 | endif
18 | CC = gcc
19 | else
20 | #If not on Windows
21 | RM = rm -rf
22 | CP = cp -f
23 | PS = /
24 | endif
25 |
26 | CC=gcc
27 |
--------------------------------------------------------------------------------
/ltfat/src/tfutil.c:
--------------------------------------------------------------------------------
1 | #include "ltfat.h"
2 |
3 | /*
4 | int LTFAT_NAME(complexprod)(LTFAT_COMPLEX *c, const LTFAT_COMPLEX a, const LTFAT_COMPLEX b)
5 | {
6 | #ifdef HAVE_COMPLEX_H
7 | (*c)=a*b;
8 | #else
9 |
10 | (*c)[0]=a[0]*b[0]-a[1]*b[1];
11 | (*c)[1]=a[1]*b[0]+a[0]*b[1];
12 |
13 | #endif
14 | return (0);
15 | }
16 | */
17 |
18 | /* --- usefull for debugging --------
19 | void print_z(const int N, LTFAT_COMPLEX *p)
20 | {
21 | int i;
22 |
23 | for(i=0;i
5 | #include "mex.h"
6 | #include "gpc.h"
7 |
8 |
9 | /* ===========================================================================
10 | Public Function Prototypes
11 | ===========================================================================*/
12 |
13 | void gpc_read_polygon_MATLAB (const mxArray *prhs,
14 | gpc_polygon *polygon);
15 |
16 | void gpc_write_polygon_MATLAB(mxArray *plhs,
17 | gpc_polygon *polygon);
18 |
19 |
20 | #endif
21 |
--------------------------------------------------------------------------------
/ltfat/thirdparty/PolygonClip/ReadMe.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/ltfat/thirdparty/PolygonClip/ReadMe.txt
--------------------------------------------------------------------------------
/ltfat/thirdparty/thirdpartyinit.m:
--------------------------------------------------------------------------------
1 | status=2;
2 |
3 | p=[bp,'thirdparty',filesep];
4 |
5 | % PolygonClip is not distributed with the Octave-forge package
6 | %
7 | % Url: http://ltfat.sourceforge.net/doc/thirdparty/thirdpartyinit.php
8 |
9 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
10 | % This file is part of LTFAT version 1.4.3
11 | %
12 | % This program is free software: you can redistribute it and/or modify
13 | % it under the terms of the GNU General Public License as published by
14 | % the Free Software Foundation, either version 3 of the License, or
15 | % (at your option) any later version.
16 | %
17 | % This program is distributed in the hope that it will be useful,
18 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
19 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20 | % GNU General Public License for more details.
21 | %
22 | % You should have received a copy of the GNU General Public License
23 | % along with this program. If not, see .
24 | s=[p,'PolygonClip'];
25 | if exist(s)
26 | addpath(s);
27 | end;
28 |
29 | addpath([p,'Playrec']);
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/ltfat/wavelets/waveletsinit.m:
--------------------------------------------------------------------------------
1 | status = 1;
2 |
3 | p=[bp,'wavelets',filesep];
4 |
5 | addpath([p,'wfbtmanip']);
6 | %
7 | % Url: http://ltfat.sourceforge.net/doc/wavelets/waveletsinit.php
8 |
9 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
10 | % This file is part of LTFAT version 1.4.3
11 | %
12 | % This program is free software: you can redistribute it and/or modify
13 | % it under the terms of the GNU General Public License as published by
14 | % the Free Software Foundation, either version 3 of the License, or
15 | % (at your option) any later version.
16 | %
17 | % This program is distributed in the hope that it will be useful,
18 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
19 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20 | % GNU General Public License for more details.
21 | %
22 | % You should have received a copy of the GNU General Public License
23 | % along with this program. If not, see .
24 | addpath([p,'wfbtmanip']);
25 |
--------------------------------------------------------------------------------
/ltfat/wavelets/wfbtmanip/noOfSubtreeOutputs.m:
--------------------------------------------------------------------------------
1 | function noOut = noOfSubtreeOutputs(nodeNo,wt)
2 |
3 | noChildOut = noOfChildOutputs(nodeNo,wt);
4 | chan = numel(wt.nodes{nodeNo}.g);
5 | child = length(find(wt.children{nodeNo}~=0));
6 | noOut = chan -child + noChildOut;
7 | %
8 | % Url: http://ltfat.sourceforge.net/doc/wavelets/wfbtmanip/noOfSubtreeOutputs.php
9 |
10 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
11 | % This file is part of LTFAT version 1.4.3
12 | %
13 | % This program is free software: you can redistribute it and/or modify
14 | % it under the terms of the GNU General Public License as published by
15 | % the Free Software Foundation, either version 3 of the License, or
16 | % (at your option) any later version.
17 | %
18 | % This program is distributed in the hope that it will be useful,
19 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
20 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 | % GNU General Public License for more details.
22 | %
23 | % You should have received a copy of the GNU General Public License
24 | % along with this program. If not, see .
25 | noOut = chan -child + noChildOut;
26 |
--------------------------------------------------------------------------------
/ltfat/wavelets/wfbtmanip/nodePredecesors.m:
--------------------------------------------------------------------------------
1 | function pred = nodePredecesors(nodeNo,treeStruct)
2 | pred = [];
3 | tmpNodeNo = nodeNo;
4 | while treeStruct.parents(tmpNodeNo)~=0
5 | tmpNodeNo = treeStruct.parents(tmpNodeNo);
6 | pred(end+1) = tmpNodeNo;
7 | end
8 | %
9 | % Url: http://ltfat.sourceforge.net/doc/wavelets/wfbtmanip/nodePredecesors.php
10 |
11 | % Copyright (C) 2005-2013 Peter L. Søndergaard .
12 | % This file is part of LTFAT version 1.4.3
13 | %
14 | % This program is free software: you can redistribute it and/or modify
15 | % it under the terms of the GNU General Public License as published by
16 | % the Free Software Foundation, either version 3 of the License, or
17 | % (at your option) any later version.
18 | %
19 | % This program is distributed in the hope that it will be useful,
20 | % but WITHOUT ANY WARRANTY; without even the implied warranty of
21 | % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22 | % GNU General Public License for more details.
23 | %
24 | % You should have received a copy of the GNU General Public License
25 | % along with this program. If not, see .
26 | end
27 |
--------------------------------------------------------------------------------
/lyon_config.json:
--------------------------------------------------------------------------------
1 | {
2 | "features": "lyon",
3 | "wlen": 0.025,
4 | "frate": 100,
5 | "fs": 16000
6 | }
--------------------------------------------------------------------------------
/mel_config.json:
--------------------------------------------------------------------------------
1 | {
2 | "features": "mel",
3 | "alpha": 0.97,
4 | "frate": 100,
5 | "fs": 16000,
6 | "lowerf": 100,
7 | "upperf": 6855.4976,
8 | "nfft": 512,
9 | "nfilt": 13,
10 | "wlen": 0.025
11 | }
12 |
--------------------------------------------------------------------------------
/mfcc_config.json:
--------------------------------------------------------------------------------
1 | {
2 | "features": "mfcc",
3 | "alpha": 0.97,
4 | "frate": 100,
5 | "fs": 16000,
6 | "lowerf": 100,
7 | "upperf": 6855.4976,
8 | "nfft": 512,
9 | "nfilt": 40,
10 | "wlen": 0.025,
11 | "ncep": 13,
12 | "do_deltas" : true,
13 | "do_deltasdeltas" : true
14 | }
15 |
--------------------------------------------------------------------------------
/oct.m:
--------------------------------------------------------------------------------
1 | #! /usr/local/bin/octave -q -f
2 | features('test/wavs/', 'test/out', '', 'rasta_config.json')
3 |
--------------------------------------------------------------------------------
/rasta_config.json:
--------------------------------------------------------------------------------
1 | {
2 | "features": "rasta",
3 | "wlen": 0.025,
4 | "frate": 100,
5 | "fs": 16000,
6 | "dorasta": 1,
7 | "modelorder": 12
8 | }
9 |
--------------------------------------------------------------------------------
/rastamat/bark2hz.m:
--------------------------------------------------------------------------------
1 | function hz=bark2hz(z)
2 | % BARK2HZ Converts frequencies Bark to Hertz (Hz)
3 | % function hz=bark2hz(z)
4 | % Traunmueller-formula for z > 2 Bark
5 | % linear mapping for z <= 2 Bark
6 | %
7 | % Author: Kyrill, Oct. 1996
8 | % Kyrill, March 1997 (linear mapping added)
9 | %
10 |
11 | %hz_gt_2 = 1960 .* (z + 0.53) ./ (26.28 - z);
12 | %hz_le_2 = z .* 102.9;
13 | %
14 | %hz = (z>2) .* hz_gt_2 + (z<=2) .* hz_le_2;
15 |
16 | % Hynek's formula (2003-04-11 dpwe@ee.columbia.edu)
17 | % (taken from rasta/audspec.c)
18 | hz = 600 * sinh(z/6);
19 |
--------------------------------------------------------------------------------
/rastamat/deltas.m:
--------------------------------------------------------------------------------
1 | function d = deltas(x, w)
2 | % D = deltas(X,W) Calculate the deltas (derivatives) of a sequence
3 | % Use a W-point window (W odd, default 9) to calculate deltas using a
4 | % simple linear slope. This mirrors the delta calculation performed
5 | % in feacalc etc. Each row of X is filtered separately.
6 | % 2003-06-30 dpwe@ee.columbia.edu
7 |
8 | if nargin < 2
9 | w = 9;
10 | end
11 |
12 | [nr,nc] = size(x);
13 |
14 | if nc == 0
15 | % empty vector passed in; return empty vector
16 | d = x;
17 |
18 | else
19 | % actually calculate deltas
20 |
21 | % Define window shape
22 | hlen = floor(w/2);
23 | w = 2*hlen + 1;
24 | win = hlen:-1:-hlen;
25 |
26 | % pad data by repeating first and last columns
27 | xx = [repmat(x(:,1),1,hlen),x,repmat(x(:,end),1,hlen)];
28 |
29 | % Apply the delta filter
30 | d = filter(win, 1, xx, [], 2); % filter along dim 2 (rows)
31 |
32 | % Trim edges
33 | d = d(:,2*hlen + [1:nc]);
34 |
35 | end
36 |
--------------------------------------------------------------------------------
/rastamat/dolpc.m:
--------------------------------------------------------------------------------
1 | function y = dolpc(x,modelorder)
2 | %y = dolpc(x,modelorder)
3 | %
4 | % compute autoregressive model from spectral magnitude samples
5 | %
6 | % rows(x) = critical band
7 | % col(x) = frame
8 | %
9 | % row(y) = lpc a_i coeffs, scaled by gain
10 | % col(y) = frame
11 | %
12 | % modelorder is order of model, defaults to 8
13 | % 2003-04-12 dpwe@ee.columbia.edu after shire@icsi.berkeley.edu
14 |
15 | [nbands,nframes] = size(x);
16 |
17 | if nargin < 2
18 | modelorder = 8;
19 | end
20 |
21 | % Calculate autocorrelation
22 | r = real(ifft([x;x([(nbands-1):-1:2],:)]));
23 | % First half only
24 | r = r(1:nbands,:);
25 |
26 | % Find LPC coeffs by durbin
27 | [y,e] = levinson_fix(r, modelorder);
28 |
29 | % Normalize each poly by gain
30 | y = y'./repmat(e',(modelorder+1),1);
31 |
--------------------------------------------------------------------------------
/rastamat/hz2bark.m:
--------------------------------------------------------------------------------
1 | function z= hz2bark(f)
2 | % HZ2BARK Converts frequencies Hertz (Hz) to Bark
3 | % function z= hz2bark(f)
4 | % Uses
5 | % Traunmueller-formula for f > 200 Hz
6 | % linear mapping for f <= 200 Hz
7 | %
8 | % Author: Kyrill, Oct. 1996
9 | % Kyrill, March 1997 (linear mapping added)
10 | %
11 |
12 | %z_gt_200 = 26.81 .* f ./ (1960 + f) - 0.53;
13 | %z_le_200 = f ./ 102.9;
14 | %
15 | %z = (f>200) .* z_gt_200 + (f<=200) .* z_le_200;
16 |
17 | % Inverse of Hynek's formula (see bark2hz)
18 | z = 6 * asinh(f/600);
19 |
20 | % Formula used in rasta/rasta.h
21 | %z = 6 * log(f/600 + sqrt(1+ ((f/600).^2)));
22 | % They are the same!
--------------------------------------------------------------------------------
/rastamat/hz2mel.m:
--------------------------------------------------------------------------------
1 | function z = hz2mel(f,htk)
2 | % z = hz2mel(f,htk)
3 | % Convert frequencies f (in Hz) to mel 'scale'.
4 | % Optional htk = 1 uses the mel axis defined in the HTKBook
5 | % otherwise use Slaney's formula
6 | % 2005-04-19 dpwe@ee.columbia.edu
7 |
8 | if nargin < 2
9 | htk = 0;
10 | end
11 |
12 | if htk == 1
13 | z = 2595 * log10(1+f/700);
14 | else
15 | % Mel fn to match Slaney's Auditory Toolbox mfcc.m
16 |
17 | f_0 = 0; % 133.33333;
18 | f_sp = 200/3; % 66.66667;
19 | brkfrq = 1000;
20 | brkpt = (brkfrq - f_0)/f_sp; % starting mel value for log region
21 | logstep = exp(log(6.4)/27); % the magic 1.0711703 which is the ratio needed to get from 1000 Hz to 6400 Hz in 27 steps, and is *almost* the ratio between 1000 Hz and the preceding linear filter center at 933.33333 Hz (actually 1000/933.33333 = 1.07142857142857 and exp(log(6.4)/27) = 1.07117028749447)
22 |
23 | linpts = (f < brkfrq);
24 |
25 | z = 0*f;
26 |
27 | % fill in parts separately
28 | z(linpts) = (f(linpts) - f_0)/f_sp;
29 | z(~linpts) = brkpt+(log(f(~linpts)/brkfrq))./log(logstep);
30 |
31 | end
32 |
--------------------------------------------------------------------------------
/rastamat/ispecgram.m:
--------------------------------------------------------------------------------
1 | function x = ispecgram(d, ftsize, sr, win, nov)
2 | % X = ispecgram(D, F, SR, WIN, NOV) Inverse specgram
3 | % Overlap-add the inverse of the output of specgram
4 | % ftsize is implied by sizeof d, sr is ignored, nov defaults to ftsize/2
5 | % dpwe 2005may16. after istft
6 |
7 | [nspec,ncol] = size(d);
8 |
9 | if nargin < 2
10 | ftsize = 2*(nspec-1);
11 | end
12 | if nargin < 3
13 | % who cares?
14 | end
15 | if nargin < 4
16 | win = ftsize; % doesn't matter either - assume it added up OK
17 | end
18 | if nargin < 5
19 | nov = ftsize/2;
20 | end
21 |
22 | hop = win - nov;
23 |
24 | if nspec ~= (ftsize/2)+1
25 | error('number of rows should be fftsize/2+1')
26 | end
27 |
28 | xlen = ftsize + (ncol-1) * hop;
29 | x = zeros(xlen,1);
30 |
31 | halff = ftsize/2; % midpoint of win
32 |
33 | % No reconstruction win (for now...)
34 |
35 | for c = 1:ncol
36 | ft = d(:,c);
37 | ft = [ft(1:(ftsize/2+1)); conj(ft([(ftsize/2):-1:2]))];
38 |
39 | if max(imag(ifft(ft))) > 1e-5
40 | disp('imag oflow');
41 | end
42 |
43 | px = real(ifft(ft)); % no shift in specgram
44 |
45 | b = (c-1)*hop;
46 | x(b+[1:ftsize]) = x(b+[1:ftsize]) + px;
47 | end;
48 |
49 | x = x * win/ftsize; % scale amplitude
50 |
51 |
--------------------------------------------------------------------------------
/rastamat/lifter.m:
--------------------------------------------------------------------------------
1 | function y = lifter(x, lift, invs)
2 | % y = lifter(x, lift, invs)
3 | % Apply lifter to matrix of cepstra (one per column)
4 | % lift = exponent of x i^n liftering
5 | % or, as a negative integer, the length of HTK-style sin-curve liftering.
6 | % If inverse == 1 (default 0), undo the liftering.
7 | % 2005-05-19 dpwe@ee.columbia.edu
8 |
9 | if nargin < 2; lift = 0.6; end % liftering exponent
10 | if nargin < 3; invs = 0; end % flag to undo liftering
11 |
12 | [ncep, nfrm] = size(x);
13 |
14 | if lift == 0
15 | y = x;
16 | else
17 |
18 | if lift > 0
19 | if lift > 10
20 | disp(['Unlikely lift exponent of ', num2str(lift),' (did you mean -ve?)']);
21 | end
22 | liftwts = [1, ([1:(ncep-1)].^lift)];
23 | elseif lift < 0
24 | % Hack to support HTK liftering
25 | L = -lift;
26 | if (L ~= round(L))
27 | disp(['HTK liftering value ', num2str(L),' must be integer']);
28 | end
29 | liftwts = [1, (1+L/2*sin([1:(ncep-1)]*pi/L))];
30 | end
31 |
32 | if (invs)
33 | liftwts = 1./liftwts;
34 | end
35 |
36 | y = diag(liftwts)*x;
37 |
38 | end
39 |
--------------------------------------------------------------------------------
/rastamat/lpc2cep.m:
--------------------------------------------------------------------------------
1 | function features = lpc2cep(a,nout)
2 | % features = lpc2cep(lpcas,nout)
3 | % Convert the LPC 'a' coefficients in each column of lpcas
4 | % into frames of cepstra.
5 | % nout is number of cepstra to produce, defaults to size(lpcas,1)
6 | % 2003-04-11 dpwe@ee.columbia.edu
7 |
8 | [nin, ncol] = size(a);
9 |
10 | order = nin - 1;
11 |
12 | if nargin < 2
13 | nout = order + 1;
14 | end
15 |
16 | c = zeros(nout, ncol);
17 |
18 | % Code copied from HSigP.c: LPC2Cepstrum
19 |
20 | % First cep is log(Error) from Durbin
21 | c(1,:) = -log(a(1,:));
22 |
23 | % Renormalize lpc A coeffs
24 | a = a ./ repmat(a(1,:), nin, 1);
25 |
26 | for n = 2:nout
27 | sum = 0;
28 | for m = 2:n
29 | sum = sum + (n - m) * a(m,:) .* c(n - m + 1, :);
30 | end
31 | c(n,:) = -(a(n,:) + sum / (n-1));
32 | end
33 |
34 | features = c;
35 |
36 |
--------------------------------------------------------------------------------
/rastamat/lpc2spec.m:
--------------------------------------------------------------------------------
1 | function [features,F,M] = lpc2spec(lpcas, nout)
2 | % [features,F,M] = lpc2spec(lpcas,nout)
3 | % Convert LPC coeffs back into spectra
4 | % nout is number of freq channels, default 17 (i.e. for 8 kHz)
5 | % 2003-04-11 dpwe@ee.columbia.edu part of rastamat
6 |
7 | if nargin < 2
8 | nout = 17;
9 | end
10 |
11 | [rows, cols] = size(lpcas);
12 | order = rows - 1;
13 |
14 | gg = lpcas(1,:);
15 | aa = lpcas./repmat(gg,rows,1);
16 |
17 | % Calculate the actual z-plane polyvals: nout points around unit circle
18 | zz = exp((-j*[0:(nout-1)]'*pi/(nout-1))*[0:order]);
19 |
20 | % Actual polyvals, in power (mag^2)
21 | features = ((1./abs(zz*aa)).^2)./repmat(gg,nout,1);
22 |
23 | F = zeros(cols, floor(rows/2));
24 | M = F;
25 |
26 | for c = 1:cols;
27 | aaa = aa(:,c);
28 | rr = roots(aaa');
29 | ff = angle(rr');
30 | % size(ff)
31 | % size(aaa)
32 | zz = exp(j*ff'*[0:(length(aaa)-1)]);
33 | mags = sqrt(((1./abs(zz*aaa)).^2)/gg(c))';
34 |
35 | [dummy, ix] = sort(ff);
36 | keep = ff(ix) > 0;
37 | ix = ix(keep);
38 | F(c,1:length(ix)) = ff(ix);
39 | M(c,1:length(ix)) = mags(ix);
40 | end
41 |
--------------------------------------------------------------------------------
/rastamat/mel2hz.m:
--------------------------------------------------------------------------------
1 | function f = mel2hz(z, htk)
2 | % f = mel2hz(z, htk)
3 | % Convert 'mel scale' frequencies into Hz
4 | % Optional htk = 1 means use the HTK formula
5 | % else use the formula from Slaney's mfcc.m
6 | % 2005-04-19 dpwe@ee.columbia.edu
7 |
8 | if nargin < 2
9 | htk = 0;
10 | end
11 |
12 | if htk == 1
13 | f = 700*(10.^(z/2595)-1);
14 | else
15 |
16 | f_0 = 0; % 133.33333;
17 | f_sp = 200/3; % 66.66667;
18 | brkfrq = 1000;
19 | brkpt = (brkfrq - f_0)/f_sp; % starting mel value for log region
20 | logstep = exp(log(6.4)/27); % the magic 1.0711703 which is the ratio needed to get from 1000 Hz to 6400 Hz in 27 steps, and is *almost* the ratio between 1000 Hz and the preceding linear filter center at 933.33333 Hz (actually 1000/933.33333 = 1.07142857142857 and exp(log(6.4)/27) = 1.07117028749447)
21 |
22 | linpts = (z < brkpt);
23 |
24 | f = 0*z;
25 |
26 | % fill in parts separately
27 | f(linpts) = f_0 + f_sp*z(linpts);
28 | f(~linpts) = brkfrq*exp(log(logstep)*(z(~linpts)-brkpt));
29 |
30 | end
31 |
--------------------------------------------------------------------------------
/rastamat/rastafilt.m:
--------------------------------------------------------------------------------
1 | function y = rastafilt(x)
2 | % y = rastafilt(x)
3 | %
4 | % rows of x = critical bands, cols of x = frame
5 | % same for y but after filtering
6 | %
7 | % default filter is single pole at 0.94
8 |
9 | % rasta filter
10 | numer = [-2:2];
11 | numer = -numer ./ sum(numer.*numer);
12 | denom = [1 -0.94];
13 |
14 | % Initialize the state. This avoids a big spike at the beginning
15 | % resulting from the dc offset level in each band.
16 | % (this is effectively what rasta/rasta_filt.c does).
17 | % Because Matlab uses a DF2Trans implementation, we have to
18 | % specify the FIR part to get the state right (but not the IIR part)
19 | %[y,z] = filter(numer, 1, x(:,1:4)');
20 | % 2010-08-12 filter() chooses the wrong dimension for very short
21 | % signals (thanks to Benjamin K otric1@gmail.com)
22 | [y,z] = filter(numer, 1, x(:,1:4)',[],1);
23 | % .. but don't keep any of these values, just output zero at the beginning
24 | y = 0*y';
25 |
26 | % size(z)
27 | % size(x)
28 |
29 | % Apply the full filter to the rest of the signal, append it
30 | y = [y,filter(numer, denom, x(:,5:end)',z,1)'];
31 | %y = [y,filter(numer, denom, x(:,5:end)',z)'];
32 |
--------------------------------------------------------------------------------
/rastamat/sm1_cln.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/rastamat/sm1_cln.wav
--------------------------------------------------------------------------------
/requirements.txt:
--------------------------------------------------------------------------------
1 | # This file may be used to create an environment using:
2 | # $ conda create --name --file
3 | # platform: linux-64
4 | cython=0.24.1=py27_0
5 | h5py=2.6.0=np111py27_2
6 | hdf5=1.8.17=1
7 | libgfortran=3.0.0=1
8 | mkl=11.3.3=0
9 | numpy=1.11.2=py27_0
10 | openssl=1.0.2j=0
11 | pip=8.1.2=py27_0
12 | python=2.7.12=1
13 | readline=6.2=2
14 | scipy=0.18.1=np111py27_0
15 | setuptools=27.2.0=py27_0
16 | six=1.10.0=py27_0
17 | sqlite=3.13.0=0
18 | tk=8.5.18=0
19 | wheel=0.29.0=py27_0
20 | zlib=1.2.8=3
21 |
--------------------------------------------------------------------------------
/sample2frameno.m:
--------------------------------------------------------------------------------
1 | function n = sample2frameno(x, fs, wintime, steptime)
2 | % find the frame number matching the sample number, given
3 | % the sampling frequency fs, window length wintime and window
4 | % shift steptime.
5 | n = floor((x/fs)/steptime) + 1;
6 |
--------------------------------------------------------------------------------
/setup.py:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env python
2 |
3 | from setuptools import setup
4 |
5 | setup(name='features_extraction',
6 | version='1.0',
7 | description='Speech features extraction in python',
8 | author='Roland Thiolliere',
9 | author_email='rolthiolliere@gmail.com',
10 | packages=[],
11 | license='licence/LICENSE.txt',
12 | long_description=open('README.md').read(),
13 | dependency_links = ['http://github.com/bootphon/spectral/tarball/master/#egg=mwv-spectral'],
14 | install_requires=[
15 | "spectral>=0.2",
16 | "h5features",
17 | ],
18 | )
19 |
--------------------------------------------------------------------------------
/sig2drnl.m:
--------------------------------------------------------------------------------
1 | function [] = sig2drnl(sig, fs, outfile, conf)
2 |
3 | wlen = getfield(conf, 'wlen');
4 | frate = getfield(conf, 'frate');
5 | dec_factor = round((size(sig,1)/fs) / wlen);
6 |
7 | spec = drnl(sig, fs, 'jepsen2008');
8 | spec = ihcenvelope(spec, fs, 'ihc_dau');
9 |
10 | spec = spec';
11 |
12 | % decimate
13 | spec = spec(:, 1:dec_factor:size(spec,2));
14 | features = spec';
15 |
16 | duration = numel(sig)/fs;
17 | center_times = linspace(0, duration, size(features, 1));
18 | save('-7', [outfile '.mat'], 'features', 'center_times');
19 |
--------------------------------------------------------------------------------
/sig2lyon.m:
--------------------------------------------------------------------------------
1 | function [] = sig2lyon(sig, fs, outfile, conf)
2 |
3 | wlen = getfield(conf, 'wlen');
4 | frate = getfield(conf, 'frate');
5 | decimation_factor = round((size(sig,1)/fs) / wlen);
6 | spec = LyonPassiveEar(sig, fs, decimation_factor);
7 | features = spec';
8 | duration = numel(sig)/fs;
9 | center_times = linspace(0, duration, size(features, 1));
10 | save('-7', [outfile '.mat'], 'features', 'center_times');
11 |
--------------------------------------------------------------------------------
/sig2rasta.m:
--------------------------------------------------------------------------------
1 | function [] = sig2rasta(sig, fs, outfile, conf)
2 |
3 | wlen = getfield(conf, 'wlen');
4 | frate = getfield(conf, 'frate');
5 | steptime = 1 / frate;
6 | [ceps, spec] = rastaplp(sig, fs, getfield(conf, 'dorasta'), getfield(conf, 'modelorder'));%, wlen, steptime);
7 | features = spec';
8 | duration = numel(sig)/fs;
9 | center_times = linspace(0, duration, size(features, 1));
10 | save('-7', [outfile '.mat'], 'features', 'center_times');
11 |
--------------------------------------------------------------------------------
/test/wavs/s_f101_ba.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/test/wavs/s_f101_ba.wav
--------------------------------------------------------------------------------
/test/wavs/s_f101_bc.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/test/wavs/s_f101_bc.wav
--------------------------------------------------------------------------------
/test/wavs/s_f101_be.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/test/wavs/s_f101_be.wav
--------------------------------------------------------------------------------
/test/wavs/s_f101_bi.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/test/wavs/s_f101_bi.wav
--------------------------------------------------------------------------------
/test/wavs/s_f101_bo.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/test/wavs/s_f101_bo.wav
--------------------------------------------------------------------------------
/test/wavs/s_f101_bu.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/test/wavs/s_f101_bu.wav
--------------------------------------------------------------------------------
/test/wavs/s_f101_bxe.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/test/wavs/s_f101_bxe.wav
--------------------------------------------------------------------------------
/test/wavs/s_f101_bxi.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bootphon/features_extraction/e781ea0b7fa49ff67158b49114359963f985930d/test/wavs/s_f101_bxi.wav
--------------------------------------------------------------------------------