https://github.com/ubavic/wave
A very simple synthesizer
https://github.com/ubavic/wave
audio synthesizer
Last synced: 6 months ago
JSON representation
A very simple synthesizer
- Host: GitHub
- URL: https://github.com/ubavic/wave
- Owner: ubavic
- License: mit
- Created: 2023-12-06T22:50:57.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2023-12-13T17:38:32.000Z (over 1 year ago)
- Last Synced: 2025-01-29T01:15:13.734Z (6 months ago)
- Topics: audio, synthesizer
- Language: Go
- Homepage:
- Size: 112 KB
- Stars: 42
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Microwave
*MICROWAVE* (pronounced me-crow-wa-vè) is a simple signal generator written in Golang. It is capable of generating sine wave, as well as families of triangular and rectangular waves. This tool has been developed for electronics workshops held at [Decentrala](https://dmz.rs/en/index) where is used instead proper signal generator.

## Compile
Ensure you have the [Go compiler](https://go.dev/) and the [Fyne library dependencies](https://developer.fyne.io/started/#prerequisites) installed. In the root of the repository, run:
```bash
go mod download
go build
```The application should work on Linux, Windows, and OSX. It is only tested on Linux.
## Todo
- [ ] Fix bugs with phase.
- [ ] Implement a log scale slider for frequency and pitch input (e.g., `A#2` or `C4`)
- [ ] Create a custom slider
- [ ] Add functionality for saving and loading setups
- [ ] Implement a waveform graph
- [ ] Reduce latency. Check why pipewire doesn't allow shorter buffers.## License
The code is released under the [MIT license](LICENSE).
The font is distributed under the [SIL Open Font License](OFL).