Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ubavic/wave
A very simple synthesizer
https://github.com/ubavic/wave
audio synthesizer
Last synced: 8 days 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 (about 1 year ago)
- Default Branch: master
- Last Pushed: 2023-12-13T17:38:32.000Z (about 1 year ago)
- Last Synced: 2025-01-29T01:15:13.734Z (9 days 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.
![User interface](ui.png)
## 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).