Skip to content

idsinge/hiaudio_backend

Repository files navigation

Hi-Audio Backend

About

Hi-Audio online platform is a collaborative web application for musicians and researchers in the MIR (Music Information Retrieval) domain, with a view to build a public database of music recordings from a wide variety of styles and different cultures. It allows:

  • Creating musical compositions and collections with different levels of privacy.
  • Uploading and recording audio tracks from the browser.
  • Annotating audio tracks with relevant MIR information.
  • Inviting collaborators to participate using different roles.

screenshot

This repo contains information relative to the server side or back-end, for the client side (web application) see Note 1.

Getting Started

Recommended Python version: 3.10installation guide (macOS)

Clone or download the repository

git clone --depth=1 https://github.com/idsinge/hiaudio_backend.git

cd hiaudio_backend

(Linux and macOS) Create and activate Python environment

python3 -m venv venv

. venv/bin/activate

(Windows) Create and activate Python environment

python -m venv venv

venv\Scripts\activate

Install requirements

pip install -r requirements.txt

Create .env file with the following content

# Google Values: https://console.cloud.google.com/apis/credentials
# See Note 2 for more info about Google OAuth 2.0 clients
# SECRET_KEY is independent and can be self-elected
# JWT_SECRET_KEY: https://flask-jwt-extended.readthedocs.io/en/stable/options.html#JWT_SECRET_KEY
GOOGLE_CLIENT_ID=*****
GOOGLE_CLIENT_SECRET=*****
SECRET_KEY=*****
JWT_SECRET_KEY=*****

Duplicate config.py.sample and rename it to config.py

Initialize the DB for the first time and run the app:

python initdb.py

# Run the local server
python app.py

Then open https://localhost:7007/ in your browser to verify it's running.

Notes

  1. Web App Repofrontend + backend dev instructions
  2. How to configure Google OAuth
  3. Using MySQL instead of SQLite
  4. Activate the email feature
  5. Run the audio compression module
  6. Run the audio processing module

Acknowledgments

The Hi-Audio platform is developed as part of the project Hybrid and Interpretable Deep Neural Audio Machines, funded by the European Research Council (ERC) under the European Union's Horizon Europe research and innovation programme (grant agreement No. 101052978).

European Research Council logo


How to Cite

If you use or reference the data or findings from this repository, please cite the published journal article. You may also cite the repository directly.

Gil Panal, J. M., David, A., & Richard, G. (2026). The Hi-Audio online platform for recording and distributing multi-track music datasets. Journal on Audio, Speech, and Music Processing. https://doi.org/10.1186/s13636-026-00459-0

BibTeX:

@article{GilPanal2026,
  author  = {Gil Panal, Jos{\'e} M. and David, Aur{\'e}lien and Richard, Ga{\"e}l},
  title   = {The Hi-Audio online platform for recording and distributing multi-track music datasets},
  journal = {Journal on Audio, Speech, and Music Processing},
  year    = {2026},
  issn    = {3091-4523},
  doi     = {10.1186/s13636-026-00459-0},
  url     = {https://doi.org/10.1186/s13636-026-00459-0}
}

A preprint version is also available at: https://hal.science/hal-05153739

Repository citation:

Gil Panal, J. M., David, A., & Richard, G. (2026). Hi-Audio Backend [Software repository]. GitHub. https://github.com/idsinge/hiaudio_backend

@misc{GilPanal2026backend,
  author = {Gil Panal, Jos{\'e} M. and David, Aur{\'e}lien and Richard, Ga{\"e}l},
  title  = {Hi-Audio Backend},
  year   = {2026},
  url    = {https://github.com/idsinge/hiaudio_backend}
}

License

This project is licensed under the MIT License.
Copyright (c) 2022 Hi-Audio.

About

Back-end of Hi-Audio online platform, for music creation, distribution and collaboration. This repo corresponds to the server which implements a RESTful API using the Python Flask framework

Topics

Resources

License

Stars

Watchers

Forks

Contributors