#music #synth

synth-music

A framework-like crate to compose and synthetisize music

4 releases

0.2.1 Feb 4, 2025
0.2.0 Nov 16, 2024
0.1.2 Nov 5, 2024
0.1.1 Oct 22, 2024
0.1.0 Oct 20, 2024

#283 in Audio

Download history 92/week @ 2024-10-23 57/week @ 2024-10-30 71/week @ 2024-11-06 103/week @ 2024-11-13 15/week @ 2024-11-20 2/week @ 2024-11-27 10/week @ 2024-12-04 4/week @ 2024-12-11 33/week @ 2025-01-29 81/week @ 2025-02-05

114 downloads per month

MIT license

145KB
3K SLoC

Synthetic Music Composer

A Rust library to synthesize sounds and to create music from scratch. There is no GUI, melodies are written out programmatically. For documentation and examples, check the crate documentation. The crate provides tools for composing music, synthetisizing sounds, and exporting the results into a WAV file.

For getting started, check the documentation front page and the "Hello" example.

Components of the library

The crate consists of three main parts:

  • Composing music
  • Defining Instruments to synthetisize sounds
  • Exporting music

Workflow

The library has been designed to be able to work without external tools. Right now, the support for external tools is very limited, but will be improved in the future.

The upside is that there's no required IDE, all of the project info is stored within the source code itself. A second advantage is that this is usually more versatile than a GUI, especially with sound synthesis.

The downside is that there's no GUI, which can e.g. display tracks in an intuitive way. As of now, music must be composed using this library, it's impossible to import a MIDI file from another program (Though, it's planned to change in the future).

Dependencies

~6–13MB
~149K SLoC