2025-09-03 16:30:44 -06:00
2025-09-03 16:30:44 -06:00
2025-09-03 16:30:44 -06:00
2025-09-03 16:30:44 -06:00
2025-09-03 16:30:44 -06:00
2025-09-03 16:30:44 -06:00
2025-09-03 16:30:44 -06:00
2025-09-03 16:30:44 -06:00
2025-09-03 16:30:44 -06:00
2025-09-03 19:42:08 +00:00
2025-09-03 16:30:44 -06:00

Muse - A Go-based Music Generator

Muse is my attempt at a digital music generator written in pure Go. Its is VERY experimental and is not intended for production use. Enjoy!

Features

  • Define songs using a YAML file
  • Multiple wave types (sine, square, saw, triangle)
  • Built-in effects (reverb, delay, filter)
  • Pattern-based sequencing
  • Real-time audio generation
  • Export to WAV format

Usage

./muse -input examples/example_song.yaml -output ./output

Project Structure

muse/
├── bin/
│   └── muse           # Compiled binary
├── cmd/
│   └── muse/          # Main application
│       └── main.go
├── lib/
│   ├── audio/         # Audio generation and processing
│   │   ├── effects.go     # Audio effects
│   │   ├── generator.go   # Audio generation
│   │   ├── notes.go       # Note to frequency conversion
│   │   └── oscillator.go  # Waveform generation
│   └── config/        # Configuration and YAML parsing
│       └── parser.go
├── examples/          # Example songs
│   └── example.yaml
└── schema/            # Data schema
    └── song_schema.go

License

This project is licensed under the AGPL 3.0 License - see the LICENSE file for details.

Description
TOML-based digital music generator written in pure Go
Readme AGPL-3.0 7.9 MiB
2025-09-03 18:38:28 -06:00
Languages
Go 84.7%
Makefile 11.3%
Nix 4%