Skip to content

Matlab scripts accompanying the book "An Introduction to Audio Content Analysis" (www.AudioContentAnalysis.org)

License

Notifications You must be signed in to change notification settings

Achilleasein/ACA-Code

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

View ACA-Code on File Exchange GitHub GitHub top language GitHub issues

ACA-Code

Matlab scripts accompanying the book "An Introduction to Audio Content Analysis" (www.AudioContentAnalysis.org). The source code shows example implementations of basic approaches, features, and algorithms for music audio content analysis.

functionality

The top-level functions are (alphabetical):

The names of the additional functions follow the following conventions:

design principles

Please note that the provided code examples are only intended to showcase algorithmic principles – they are not entirely suitable for practical usage without parameter optimization and additional algorithmic tuning. Rather, they intend to show how to implement audio analysis solutions and to facilitate algorithmic understanding to enable the reader to design and implement their own analysis approaches.

minimal dependencies

The required dependencies are reduced to a minimum, more specifically to only the signal processing toolbox, for the following reasons:

  • accessibility, i.e., clear algorithmic implementation from scratch without obfuscation by using 3rd party implementations,
  • maintainability through independence of 3rd party code.

readability

Consistent variable naming and formatting, as well as the choice for simple implementations allow for easier parsing. The readability of the source code will sometimes come at the cost of lower performance.

cross-language comparability

All code is matched exactly with Python implementations and the equations in the book. This also means that the code might violate typical style conventions in order to be consistent.

related repositories and links

The python source code in this repository is matched with corresponding source code in the Python repository.

Other, related repositories are

  • ACA-Slides: slide decks for teaching and learning audio content analysis
  • ACA-Plots: Matlab scripts for generating all plots in the book and slides

The main entry point to all book-related information is AudioContentAnalysis.org

getting started

example 1: computation and plot of the Spectral Centroid

% read audio file from cWavePath
[x, f_s] = audioread(cWavePath);

% compute SpectralCentroid
[v_sc, t] = ComputeFeature('SpectralCentroid', x, f_s);

% plot result
plot(t, v_sc), grid on, xlabel('t'), ylabel('v_sc')

About

Matlab scripts accompanying the book "An Introduction to Audio Content Analysis" (www.AudioContentAnalysis.org)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • MATLAB 100.0%