Matlab scripts accompanying the book "An Introduction to Audio Content Analysis" (www.AudioContentAnlysis.org)
Matlab
Switch branches/tags
Nothing to show
Clone or download
Permalink
Failed to load latest commit information.
ComputeBeatHisto.m - initial checkin for matlab code in the public repo Jun 22, 2015
ComputeFeature.m - appended zeros to the input signal to avoid throwing away the last … Aug 16, 2016
ComputeKey.m - initial checkin for matlab code in the public repo Jun 22, 2015
ComputeNoveltyFunction.m - initial checkin for matlab code in the public repo Jun 22, 2015
ComputePitch.m - initial checkin for matlab code in the public repo Jun 22, 2015
FeatureSpectralCentroid.m - initial checkin for matlab code in the public repo Jun 22, 2015
FeatureSpectralCrestFactor.m - function renaming for consistency Jul 3, 2015
FeatureSpectralDecrease.m - initial checkin for matlab code in the public repo Jun 22, 2015
FeatureSpectralFlatness.m - initial checkin for matlab code in the public repo Jun 22, 2015
FeatureSpectralFlux.m - initial checkin for matlab code in the public repo Jun 22, 2015
FeatureSpectralKurtosis.m - minor fixes and modifications Jun 9, 2017
FeatureSpectralMfccs.m revert of last change (folder confusion) Jul 31, 2015
FeatureSpectralPitchChroma.m - changed variable name iFftLength to iSpecLength Feb 2, 2018
FeatureSpectralRolloff.m - initial checkin for matlab code in the public repo Jun 22, 2015
FeatureSpectralSkewness.m - initial checkin for matlab code in the public repo Jun 22, 2015
FeatureSpectralSlope.m - initial checkin for matlab code in the public repo Jun 22, 2015
FeatureSpectralSpread.m - initial checkin for matlab code in the public repo Jun 22, 2015
FeatureSpectralTonalPowerRatio.m - fixes indexing issue in TonalPowerRatio for zero blocks Mar 23, 2018
FeatureTimeAcfCoeff.m - minor fix in case of zero input Aug 16, 2016
FeatureTimeMaxAcf.m - UNTESTED fix to avoid calling max() with an empty variable argument Feb 21, 2018
FeatureTimePeakEnvelope.m fix: forgot to take the absolute value! Sep 2, 2015
FeatureTimePredictivityRatio.m - initial checkin for matlab code in the public repo Jun 22, 2015
FeatureTimeRms.m - initial checkin for matlab code in the public repo Jun 22, 2015
FeatureTimeStd.m - initial checkin for matlab code in the public repo Jun 22, 2015
FeatureTimeZeroCrossingRate.m - initial checkin for matlab code in the public repo Jun 22, 2015
LICENSE Initial commit Jun 22, 2015
NoveltyFlux.m - initial checkin for matlab code in the public repo Jun 22, 2015
NoveltyHainsworth.m - initial checkin for matlab code in the public repo Jun 22, 2015
NoveltyLaroche.m - initial checkin for matlab code in the public repo Jun 22, 2015
PitchSpectralAcf.m - initial checkin for matlab code in the public repo Jun 22, 2015
PitchSpectralHps.m - initial checkin for matlab code in the public repo Jun 22, 2015
PitchTimeAcf.m - initial checkin for matlab code in the public repo Jun 22, 2015
PitchTimeAmdf.m - initial checkin for matlab code in the public repo Jun 22, 2015
PitchTimeAuditory.m - initial checkin for matlab code in the public repo Jun 22, 2015
PitchTimeZeroCrossings.m - initial checkin for matlab code in the public repo Jun 22, 2015
README.txt - initial checkin for matlab code in the public repo Jun 22, 2015
TestGammaToneFb.m - initial checkin for matlab code in the public repo Jun 22, 2015
ToolFreq2Bark.m cosmetic fixes and dependency checking Jul 31, 2015
ToolFreq2Mel.m - initial checkin for matlab code in the public repo Jun 22, 2015
ToolFreq2Midi.m - initial checkin for matlab code in the public repo Jun 22, 2015
ToolGammatoneFb.m - initial checkin for matlab code in the public repo Jun 22, 2015
ToolMfccFb.m - moved script-internal function to m-file Jul 22, 2015
ToolMidi2Freq.m - initial checkin for matlab code in the public repo Jun 22, 2015
ToolSimpleDtw.m - initial checkin for matlab code in the public repo Jun 22, 2015

README.txt

Matlab sources accompanying the book
An Introduction to Audio Content Analysis - 
Applications in Signal Processing and Music Informatics
by Alexander Lerch, lerch@zplane.de

Please note that the provided code examples as matlab 
functions are only intended to showcase algorithmic 
principles – they are not suited to be used without 
parameter optimization and additional algorithmic tuning.

The majority of these matlab sources require the Matlab 
Signal Processing Toolbox installed. Several scripts 
(such as MFCCs and Gammatone filters) are based on 
implementations in Slaney’s Auditory Toolbox.

Please feel free to visit 
http://www.audiocontentanalysis.org/code/
to find the latest versions of this code or to submit 
comments or code that fixes, improves and adds 
functionality.

The top-level functions are:
- ComputeFeature: calculates instantaneous features 
- ComputePitch: calculates a fundamental frequency estimate
- ComputeKey: calculates a simple key estimate
- ComputeNoveltyFunction: simple onset detection
- ComputeBeatHisto: calculates a simple beat histogram

The names of the additional functions follow the following 
conventions:
- Feature*: instantaneous features
- Pitch*: pitch tracking approach
- Novelty*: novelty function computation
- Tool*: additional help functions such as frequency scale 
conversion, dynamic time warping, gammatone filterbank, ...

Example: Compute and plot of the Spectral Centroid

[afAudioData, fs] = wavread(cWavePath);
[v_sc,t] = ComputeFeature('SpectralCentroid', afAudioData, fs);
plot(t,v)
grid on, xlabel('t'),ylabel('v_sc')