Product Overview: AcousticBrainz
Introduction
AcousticBrainz is a collaborative project aimed at crowdsourcing and providing comprehensive acoustic information about music recordings. This initiative was a joint effort between the Music Technology Group at Universitat Pompeu Fabra in Barcelona and the MusicBrainz project.
What it Does
AcousticBrainz analyzes music recordings to extract detailed acoustic characteristics. This includes low-level spectral information, as well as data on genres, moods, keys, and scales. The primary goal was to create a vast, publicly available database that could be utilized by music technology researchers, developers, and enthusiasts to drive innovation in music analysis and recommendation systems.
Key Features
Automatic Music Analysis
At the heart of AcousticBrainz lies the Essentia toolkit, an open-source software developed by the Music Technology Group. Essentia enables the automatic analysis of music files, extracting a wide range of acoustic features without altering the original files.
Data Organization
The data collected by AcousticBrainz is organized on a recording basis, indexed by the MusicBrainz ID (MBID) for each recording. This allows users to easily retrieve specific data sets using the MBID.
Public Access and Licensing
All data contained in AcousticBrainz is licensed under the CC0 license, placing it in the public domain. This ensures that the data is freely accessible and usable by anyone.
API and Data Retrieval
AcousticBrainz provides a Web API that allows users to retrieve and submit data. The API supports various endpoints, such as fetching low-level data submissions, counting the number of submissions for a recording, and submitting new analyses. The API is rate-limited to manage traffic, with specific headers indicating the number of requests allowed within a given time window.
Client Tools
Users can contribute to the database by using the AcousticBrainz client, which analyzes music files and submits the extracted features to the server. The client does not upload or store the actual audio files, ensuring privacy and efficiency.
Functionality
Data Submission
Users can submit their own analyses using the provided client tools. The process is automated, requiring only the setup and installation of the client. This helps in expanding the database with diverse music recordings.
Data Retrieval
The API allows users to fetch specific data documents based on the MBID of a recording. It also supports browsing through multiple submissions for a single MBID by using offset parameters.
Rate Limiting
To manage server load, the API implements rate limiting, allowing a specified number of requests within a certain time window. This is communicated through HTTP response headers, ensuring clients can adjust their request rates accordingly.
Current Status
As of 2022, the project has stopped collecting new data, but the website and API remain available for accessing and utilizing the existing database. This ensures that the wealth of acoustic information already gathered continues to be a valuable resource for the music technology community.