https://github.com/solarliner/latentwt
Generate wavetables, with AI.
https://github.com/solarliner/latentwt
autoencoder deep-learning wavetables
Last synced: 3 months ago
JSON representation
Generate wavetables, with AI.
- Host: GitHub
- URL: https://github.com/solarliner/latentwt
- Owner: SolarLiner
- License: mit
- Created: 2022-09-16T21:38:18.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2022-09-20T15:50:58.000Z (over 3 years ago)
- Last Synced: 2025-02-12T13:55:23.950Z (over 1 year ago)
- Topics: autoencoder, deep-learning, wavetables
- Language: Vue
- Homepage: https://latentwt.netlify.app
- Size: 6.41 MB
- Stars: 8
- Watchers: 4
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# [Latent Wavetables](https://latentwt.netlify.app)
An autoencoder for wavetables
This project aims to create a latent space of wavetables, such that exploring them is as easy as hovering over a 2D graph. You can generate wavetable sequences from dragging around the graph.
The model is provided at `public/latentwt.onnx` in ONNX format, and runs in the browser.
## Wavetable licences
The wavetables from the web frontend are from [WaveEdit Online](https://waveeditonline.com/), which are CC0 - any wavetable generated from this tool is also CC0.
## Training
To train the model, you'll need a corpus of wavetable sequences to feed to the model. This project feeds from the [WaveEdit Online](https://waveeditonline.com/), but should be flexible enough to be trained on any other wavetable sequences that you may have.
The `model.py` is a runnable script with a CLI interface that allows you to train and save the model with your own wavetables.
```
usage: model.py [-h] -w WAVETABLES [-W WIDTH] [-d {cuda,cpu}] [-e EPOCHS] output
positional arguments:
output Output ONNX model
options:
-h, --help show this help message and exit
-w WAVETABLES, --wavetables WAVETABLES
Path to the folder containing wavetable sequence wav files
-W WIDTH, --width WIDTH
Wavetable width (default: 256)
-d {cuda,cpu}, --device {cuda,cpu}
Use CPU/GPU to compute the model (default is detected)
-e EPOCHS, --epochs EPOCHS
Number of training epochs (default: 50)
```