Omnizart
Omnizart: A General Toolbox for Automatic Music Transcription - Published in JOSS (2021)
https://github.com/music-and-culture-technology-lab/omnizart
Science Score: 95.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 12 DOI reference(s) in README and JOSS metadata -
✓Academic publication links
Links to: joss.theoj.org, zenodo.org -
✓Committers with academic emails
3 of 14 committers (21.4%) from academic institutions -
○Institutional organization owner
-
✓JOSS paper metadata
Published in Journal of Open Source Software
Keywords
Scientific Fields
Repository
Omniscient Mozart, being able to transcribe everything in the music, including vocal, drum, chord, beat, instruments, and more.
Basic Info
- Host: GitHub
- Owner: Music-and-Culture-Technology-Lab
- License: mit
- Language: Python
- Default Branch: master
- Homepage: https://music-and-culture-technology-lab.github.io/omnizart-doc/
- Size: 72.6 MB
Statistics
- Stars: 1,728
- Watchers: 26
- Forks: 120
- Open Issues: 26
- Releases: 14
Topics
Metadata Files
README.md
OMNIZART
Omnizart is a Python library that aims for democratizing automatic music transcription. Given polyphonic music, it is able to transcribe pitched instruments, vocal melody, chords, drum events, and beat. This is powered by the research outcomes from Music and Culture Technology (MCT) Lab. The paper has been published to Journal of Open Source Software (JOSS).
Transcribe your favorite songs now in Colab
or 
Quick start
Visit the complete document for detailed guidance.
Pip
``` bash
Install omnizart
pip install omnizart
Download the checkpoints
omnizart download-checkpoints
Transcribe your songs
omnizart drum transcribe
Docker
bash
docker pull mctlab/omnizart:latest
docker run -it mctlab/omnizart:latest bash
Conda (install from source)
``` bash git clone https://github.com/Music-and-Culture-Technology-Lab/omnizart cd omnizart
Create a new conda environment
conda env create -f environment.yml conda activate omnizart
Install omnizart
pip install . omnizart download-checkpoints ```
Supported applications
| Application | Transcription | Training | Evaluation | Description | |------------------|--------------------|--------------------|------------|--------------------------------------------------| | music | :heavycheckmark: | :heavycheckmark: | | Transcribe musical notes of pitched instruments. | | drum | :heavycheckmark: | :interrobang: | | Transcribe events of percussive instruments. | | vocal | :heavycheckmark: | :heavycheckmark: | | Transcribe note-level vocal melody. | | vocal-contour | :heavycheckmark: | :heavycheckmark: | | Transcribe frame-level vocal melody (F0). | | chord | :heavycheckmark: | :heavycheckmark: | | Transcribe chord progressions. | | beat | :heavycheckmark: | :heavycheckmark: | | Transcribe beat position. |
NOTES The current implementation for the drum model has unknown bugs, preventing loss convergence when training from scratch. Fortunately, you can still enjoy drum transcription with the provided checkpoints.
Compatibility Issue
Currently, Omnizart is incompatible for ARM-based MacOS system due to the underlying dependencies. More details can be found in the issue #38.
Citation
If you use this software in your work, please cite:
@article{Wu2021,
doi = {10.21105/joss.03391},
url = {https://doi.org/10.21105/joss.03391},
year = {2021},
publisher = {The Open Journal},
volume = {6},
number = {68},
pages = {3391},
author = {Yu-Te Wu and Yin-Jyun Luo and Tsung-Ping Chen and I-Chieh Wei and Jui-Yang Hsu and Yi-Chin Chuang and Li Su},
title = {Omnizart: A General Toolbox for Automatic Music Transcription},
journal = {Journal of Open Source Software}
}
Owner
- Name: MCTLab
- Login: Music-and-Culture-Technology-Lab
- Kind: organization
- Location: Taiwan
- Website: https://sites.google.com/view/mctl/
- Repositories: 1
- Profile: https://github.com/Music-and-Culture-Technology-Lab
JOSS Publication
Omnizart: A General Toolbox for Automatic Music Transcription
Authors
Music and Culture Technology Lab, Institute of Information Science, Academia Sinica, Taipei, Taiwan
Music and Culture Technology Lab, Institute of Information Science, Academia Sinica, Taipei, Taiwan
Music and Culture Technology Lab, Institute of Information Science, Academia Sinica, Taipei, Taiwan
Music and Culture Technology Lab, Institute of Information Science, Academia Sinica, Taipei, Taiwan
Music and Culture Technology Lab, Institute of Information Science, Academia Sinica, Taipei, Taiwan
Music and Culture Technology Lab, Institute of Information Science, Academia Sinica, Taipei, Taiwan
Music and Culture Technology Lab, Institute of Information Science, Academia Sinica, Taipei, Taiwan
Tags
automatic music transcription music information retrieval audio signal processing artificial intelligenceGitHub Events
Total
- Watch event: 99
- Issue comment event: 3
- Fork event: 22
Last Year
- Watch event: 99
- Issue comment event: 3
- Fork event: 22
Committers
Last synced: 5 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| BreezeWhite | f****r@g****m | 441 |
| yjluo | y****5@g****m | 26 |
| unknown | s****u@b****m | 22 |
| BreezeWhite | m****0@t****o | 17 |
| Felipe S. S. Schneider | s****5@g****m | 7 |
| Yin-Jyun Luo | j****o@Y****l | 7 |
| derek.wu | d****u@t****w | 6 |
| Fabian-Robert Stöter | m****l@f****m | 2 |
| Daniel S. Katz | d****z@i****g | 2 |
| Chin-Yun Yu | c****u@q****k | 2 |
| Vladislav Doster | m****r@g****m | 1 |
| Chenxi | 7****W | 1 |
| BreezeWhite | w****o@p****e | 1 |
| Andrew Olney | a****y@m****u | 1 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 4 months ago
All Time
- Total issues: 76
- Total pull requests: 37
- Average time to close issues: 2 months
- Average time to close pull requests: 17 days
- Total issue authors: 50
- Total pull request authors: 13
- Average comments per issue: 2.79
- Average comments per pull request: 0.73
- Merged pull requests: 28
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 1
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 1
- Pull request authors: 0
- Average comments per issue: 2.0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- hagenw (11)
- keunwoochoi (5)
- schneiderfelipe (4)
- MohammedMehdiTBER (4)
- FawzanIF (2)
- dianxin556 (2)
- Alx-AI (2)
- R-N (2)
- krigeta (2)
- PSCM (2)
- liufeigit (1)
- defoishugo (1)
- stunlocked1 (1)
- ycollet (1)
- faroit (1)
Pull Request Authors
- BreezeWhite (16)
- schneiderfelipe (5)
- yoyololicon (3)
- ikitcheng (2)
- Tsung-Ping (2)
- gudgud96 (2)
- yjlolo (2)
- vladdoster (2)
- aolney (1)
- chenxwh (1)
- e7mac (1)
- faroit (1)
- danielskatz (1)
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- 139 dependencies
- black ^19.10b0 develop
- flake8 ^3.8.3 develop
- numpydoc ^1.1.0 develop
- pylint ^2.5.3 develop
- pytest ^5.2 develop
- pytest-cov ^2.10.1 develop
- pytest-mock ^3.3.1 develop
- sphinx-click ^2.5.0 develop
- sphinx-press-theme ^0.5.1 develop
- sphinxcontrib-bibtex ^1.0.0 develop
- yapf ^0.30.0 develop
- click ^7.1.2
- jsonschema ^3.2.0
- librosa ^0.8.0
- madmom ^0.16.1
- mir_eval ^0.6
- pillow ^8.3.2
- pretty_midi ^0.2.9
- pyfluidsynth ^1.2.5
- python >=3.6.1,<3.9
- pyyaml ^5.3.1
- spleeter ^2.3.0
- tensorflow 2.5.0
- tqdm ^4.49.0
- urllib3 1.26.4
- vamp ^1.1.0
- absl-py ==0.15.0
- appdirs ==1.4.4
- astunparse ==1.6.3
- async-generator ==1.10
- attrs ==21.2.0
- audioread ==2.1.9
- cached-property ==1.5.2
- cachetools ==4.2.4
- certifi ==2021.10.8
- cffi ==1.15.0
- charset-normalizer ==2.0.7
- click ==7.1.2
- colorama ==0.4.4
- contextvars ==2.4
- cython ==0.29.24
- dataclasses ==0.8
- decorator ==5.1.0
- ffmpeg-python ==0.2.0
- flatbuffers ==1.12
- future ==0.18.2
- gast ==0.4.0
- google-auth ==2.3.3
- google-auth-oauthlib ==0.4.6
- google-pasta ==0.2.0
- grpcio ==1.34.1
- h11 ==0.12.0
- h2 ==4.1.0
- h5py ==3.1.0
- hpack ==4.0.0
- httpcore ==0.13.3
- httpx ==0.19.0
- hyperframe ==6.0.1
- idna ==3.3
- immutables ==0.16
- importlib-metadata ==3.10.1
- importlib-resources ==4.1.1
- joblib ==1.1.0
- jsonschema ==3.2.0
- keras-nightly ==2.5.0.dev2021032900
- keras-preprocessing ==1.1.2
- librosa ==0.8.0
- llvmlite ==0.36.0
- madmom ==0.16.1
- markdown ==3.3.4
- mido ==1.2.10
- mir-eval ==0.6
- norbert ==0.2.1
- numba ==0.53.1
- numpy ==1.19.5
- oauthlib ==3.1.1
- opt-einsum ==3.3.0
- packaging ==21.2
- pandas ==1.1.5
- pillow ==8.4.0
- pooch ==1.5.2
- pretty-midi ==0.2.9
- protobuf ==3.19.1
- pyasn1 ==0.4.8
- pyasn1-modules ==0.2.8
- pycparser ==2.21
- pyfluidsynth ==1.3.0
- pyparsing ==2.4.7
- pyrsistent ==0.18.0
- python-dateutil ==2.8.2
- pytz ==2021.3
- pyyaml ==5.4.1
- requests ==2.26.0
- requests-oauthlib ==1.3.0
- resampy ==0.2.2
- rfc3986 ==1.5.0
- rsa ==4.7.2
- scikit-learn ==0.24.2
- scipy ==1.5.4
- six ==1.15.0
- sniffio ==1.2.0
- soundfile ==0.10.3.post1
- spleeter ==2.3.0
- tensorboard ==2.7.0
- tensorboard-data-server ==0.6.1
- tensorboard-plugin-wit ==1.8.0
- tensorflow ==2.5.0
- tensorflow-estimator ==2.5.0
- termcolor ==1.1.0
- threadpoolctl ==3.0.0
- tqdm ==4.62.3
- typer ==0.3.2
- typing-extensions ==3.7.4.3
- urllib3 ==1.26.4
- vamp ==1.1.0
- werkzeug ==2.0.2
- wrapt ==1.12.1
- zipp ==3.6.0
- actions/cache v2 composite
- actions/checkout v2 composite
- actions/setup-python v2 composite
- actions/cache v2 composite
- actions/checkout v2 composite
- actions/setup-python v2 composite
- actions/checkout v2 composite
- actions/create-release v1 composite
- actions/setup-python v2 composite
- docker/login-action v1 composite
- tensorflow/tensorflow 2.5.0-gpu build
- python 3.8.*
