Science Score: 44.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
-
○Academic publication links
-
○Committers with academic emails
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (10.7%) to scientific vocabulary
Keywords
Repository
Yamaha DX7 synthesizer with JAX
Basic Info
Statistics
- Stars: 14
- Watchers: 4
- Forks: 1
- Open Issues: 1
- Releases: 0
Topics
Metadata Files
README.md
DX7-JAX
This is a work-in-progress of using JAX to batch-render Yamaha DX7 presets. We also provide a script to parse .syx files and aggregate them into a single CSV.
The Faust Libraries have an implementation of the DX7, but it lacks several features. We have improved it in several ways such as adding an LFO, but our implementation (custom_dx7.lib) is imperfect, so please use this project with caution. Pull requests are welcome.
DX7-JAX uses DawDreamer to convert the Faust code to JAX, which can then be executed on either the CPU or GPU. We hope this project can be a useful starter for research involving Faust and JAX, not necessarily involving the DX7. DawDreamer has other JAX examples, which we encourage you to check out.
Download patches
We mirror the DX7_AllTheWeb.zip (2023-08-08) from http://bobbyblues.recup.ch/yamaha_dx7/dx7_patches.html (saving them some bandwidth). Use this script to download it to the right location.
bash
python download_patches.py
Turn patches into a CSV
This will parse a limited amount of presets.
bash
python parse_dx7.py --directory dx7_patches/DX7_AllTheWeb/Atari
This will parse all presets. You probably shouldn't do this because the later rendering output will be enormous.
bash
python parse_dx7.py
If you run it on all of DX7_AllTheWeb, then 388,650 presets will be de-duplicated into 44,884.
Render an audio dataset
Render the audio with default args (python dx7_render.py --help for help)
bash
python dx7_render.py
Use our DX7 in the Faust IDE.
Go to the Faust IDE and paste the content of custom_dx7.lib into the text editor. Then at the bottom, paste
process = dx7_algorithm(1) <: _, _;
This selects the 1st of the 32 DX7 algorithms. Enable "Poly Voices" on the left hand side. Four is a good number. Then press the play button towards the top of the screen and play around with your keyboard as the controller.
Citation
@software{Braun_DX7-JAX_2023,
author = {Braun, David},
month = nov,
title = {{DX7-JAX}},
url = {https://github.com/DBraun/DX7-JAX},
version = {0.0.1},
year = {2023}
}
Owner
- Name: David Braun
- Login: DBraun
- Kind: user
- Company: DIRT Design
- Website: https://dirt.design
- Twitter: DoItRealTime
- Repositories: 37
- Profile: https://github.com/DBraun
Do It Real-Time | Audiovisual ML, Faust, TouchDesigner | alum @ccrma
Citation (CITATION.cff)
cff-version: 1.2.0 message: "If you use this software, please cite it as below." authors: - family-names: "Braun" given-names: "David" orcid: "https://orcid.org/0000-0001-8866-0756" title: "DX7-JAX" version: 0.0.1 date-released: 2023-11-25 url: "https://github.com/DBraun/DX7-JAX"
GitHub Events
Total
- Watch event: 1
- Push event: 1
Last Year
- Watch event: 1
- Push event: 1
Issues and Pull Requests
Last synced: 10 months ago
All Time
- Total issues: 1
- Total pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Total issue authors: 1
- Total pull request authors: 0
- Average comments per issue: 1.0
- Average comments per pull request: 0
- Merged pull requests: 0
- 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: 1.0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- turian (1)
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- dawdreamer *
- flax *
- pandas *
- requests *
- scipy *
- tqdm *