aca-code

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

https://github.com/alexanderlerch/aca-code

Science Score: 67.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 3 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (7.9%) to scientific vocabulary

Keywords

audio-content-analysis audio-features audio-processing music-informatics music-information-retrieval signal-processing
Last synced: 6 months ago · JSON representation ·

Repository

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

Basic Info
  • Host: GitHub
  • Owner: alexanderlerch
  • License: mit
  • Language: MATLAB
  • Default Branch: master
  • Homepage:
  • Size: 541 KB
Statistics
  • Stars: 86
  • Watchers: 10
  • Forks: 22
  • Open Issues: 1
  • Releases: 2
Topics
audio-content-analysis audio-features audio-processing music-informatics music-information-retrieval signal-processing
Created over 10 years ago · Last pushed 9 months ago
Metadata Files
Readme Funding License Citation

README.md

View ACA-Code on File Exchange DOI 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.

All implementations are also available in: * Python: pyACA * C++: libACA

functionality

The top-level functions are (alphabetical):

The names of the additional functions follow the following conventions:

The auto-generated documentation can be found here.

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 source code in this repository is matched with corresponding source code in the Python repository. C++ implementations with identical functionality can be found in the C++ 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

documentation

The documentation can be found at https://alexanderlerch.github.io/ACA-Code/.

getting started

example 1: computation and plot of the Spectral Centroid

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

% compute SpectralCentroid [vsc, t] = ComputeFeature('SpectralCentroid', x, fs);

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

Owner

  • Name: Alexander Lerch
  • Login: alexanderlerch
  • Kind: user
  • Location: Atlanta
  • Company: Georgia Institute of Technology

Music Information Retrieval and Audio Content Analysis

Citation (citation.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
- family-names: "Lerch"
  given-names: "Alexander"
  orcid: "0000-0001-6319-578X"
title: "ACA-Code for Audio Content Analysis"
version: v0.3.2
doi: 10.5281/zenodo.6478813
date-released: 2022-04-23
url: "https://github.com/alexanderlerch/ACA-Code"
preferred-citation:
  type: article
  authors:
  - family-names: "Lerch"
    given-names: "Alexander"
    orcid: "0000-0001-6319-578X"
  doi: "10.1016/j.simpa.2022.100349"
  journal: "Software Impacts"
  start: 100349
  title: "libACA, pyACA, and ACA-Code: Audio content analysis in 3 languages"
  year: 2022

GitHub Events

Total
  • Push event: 2
Last Year
  • Push event: 2

Packages

  • Total packages: 2
  • Total downloads: unknown
  • Total dependent packages: 0
    (may contain duplicates)
  • Total dependent repositories: 0
    (may contain duplicates)
  • Total versions: 6
proxy.golang.org: github.com/alexanderlerch/aca-code
  • Versions: 3
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent packages count: 5.6%
Average: 5.8%
Dependent repos count: 6.0%
Last synced: 6 months ago
proxy.golang.org: github.com/alexanderlerch/ACA-Code
  • Versions: 3
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent packages count: 5.6%
Average: 5.8%
Dependent repos count: 6.0%
Last synced: 6 months ago