Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/eye-wave/wavetable-to-image
This is a command-line tool that converts WAV files into images.
https://github.com/eye-wave/wavetable-to-image
audio audio-analyser audio-processing audio-visualizer image image-processing music wavetable wavetable-synthesizer wavetable-visualizer
Last synced: about 1 month ago
JSON representation
This is a command-line tool that converts WAV files into images.
- Host: GitHub
- URL: https://github.com/eye-wave/wavetable-to-image
- Owner: eye-wave
- License: gpl-3.0
- Created: 2024-02-06T20:38:12.000Z (11 months ago)
- Default Branch: main
- Last Pushed: 2024-02-06T21:06:48.000Z (11 months ago)
- Last Synced: 2024-02-07T21:54:02.100Z (11 months ago)
- Topics: audio, audio-analyser, audio-processing, audio-visualizer, image, image-processing, music, wavetable, wavetable-synthesizer, wavetable-visualizer
- Language: Rust
- Homepage:
- Size: 2.26 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Wavetable to Image Converter
![Static Badge](https://img.shields.io/badge/rust-000?style=for-the-badge&logo=rust&logoColor=fff)## Description
*[Serum](https://xferrecords.com/products/serum/) can turn images into wavetables, but how would wavetables look as images?* ~ someone probablyThis is a command-line tool that converts WAV files into images. It's useful for generating wavetable images for synths like [Serum](https://xferrecords.com/products/serum/). It generates them based on samples, not spectrum data.
*Maybe i'll expand this cli in the future* so you could import images to synths like [Harmor](https://www.image-line.com/fl-studio-news/introducing-harmor/) too...
### Examples
![](./assets/fm-sine-sine.png)![](./assets/hyperwave.png)
## Builting from source
Make sure you have cargo and make installed. Clone this repository and run:
```sh
make build
```To uninstall, remove `wavetable-to-image` from ~/.local/bin
```sh
rm ~/.local/bin/wavetable-to-image
```## Usage
```sh
wavetable-to-image --input --output -n
```- `--input `: Path to the input WAV file.
- `--output `: Path to save the output image file.
- `-n `: Number of sample skips per iteration. Adjust this to control the length of the output image.## Example
```sh
wavetable-to-image --input test.wav --output test.png -n 32
```This command converts `test.wav` into `test.png`, skipping 32 samples per iteration.
### Batch Conversion
*(temporary workaround)*
```sh
find -type f -name '*.wav' | while read f
do
wavetable-to-image $f "/$(basename "${f%.wav}.png")" 16
done
```## Roadmap
- use wgpu library
- image to audio conversion## License
This project is licensed under the GPL 3.0 License. See the [LICENSE](LICENSE) file for details.