With this toolbox, we provide an easy way of accessing and interacting with the ChoraleBricks dataset.
For an overview of the dataset, please visit our demo website:
https://audiolabs-erlangen.de/resources/MIR/2025-ChoraleBricks
If you use ChoraleBricks in your academic work, please cite this article:
📘 Stefan Balke, Axel Berndt, and Meinard Müller ChoraleBricks: A Modular Multitrack Dataset for Wind Music Research Transactions of the International Society for Music Information Retrieval, 2025.
@article{BalkeBM24_ChoraleBricks,
author = {Stefan Balke and Axel Berndt and Meinard M{\"u}ller},
title = {{ChoraleBricks}: A Modular Multitrack Dataset for Wind Music Research},
journal = {Transactions of the International Society for Music Information Retrieval},
volume = {8},
number = {1},
pages = {39--54},
year = {2025},
doi = {10.5334/tismir.252}
}Warning
This repository currently supports parsing ChoraleBricks v1.1 and ChoraleWind v1.0, it is not backwards compatible. If you want to use this repo with ChoraleBricks v1.0.x, please use an older version tag in GitHub.
Clone repository, then:
pip install uv
uv syncDownload the corresponding audio files from Zenodo:
https://zenodo.org/records/15463260
To use the full dataset, set a dataset root_dir directory
cbdb = SongDB(root_dir="/path/to/ChoraleBricks")where root_dir is the path to the ChoraleDB dataset folder.
The root_dir can also be overridden using a system environment variable.
For example:
# bash / zsh
export CHORALEDB_PATH=/path/to/ChoraleBricksIn that case no arguments would need to passed to SongDB().
Further example scripts for different standard scenarios can be found in the examples/ folder.
As a starting point, we provide example code in the examples/ folder.
These require slightly more dependencies. Use:
uv sync --extra examplesfor setup.
song
In this dataset, it groups all tracks of a certain chorale together.
track
A single track in a multi-track recording.
voice
Each chorale consists of 4 voices sometimes referred to sopran, alt, tenor, and bass (SATB).
ensemble
An ensemble is in the context of ChoraleBricks a set of four tracks (S, A, T, B).
ChoraleDB is a community focused project, we therefore encourage the community to submit bug-fixes and requests for technical support through GitHub issues.
This project is licensed under the MIT License - see the LICENSE file for details.
This work was funded by the Deutsche Forschungsgemeinschaft (DFG, German Research Foundation) under grant number 500643750 (MU 2686/15-1) and under Grant No. 555525568 (MU 2686/18-1). The International Audio Laboratories Erlangen are a joint institution of the Friedrich-Alexander-Universität Erlangen-Nürnberg (FAU) and Fraunhofer Institute for Integrated Circuits IIS.
