Skip to content

vdamewood/seirina

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Seirina

Copyright 2016-2019, 2023 Vincent Damewood Seirina is licensed under the terms of the Apache License 2.0.

Seirina is a project to develop code to generate audio files of synthesized music. Currently, it supports generating a single-channel stream of a single wave form with a fixed ADSR envelop.

Seirina uses Cmake for its build system. Make a directory, called build, cd into it, and run cmake .., then make, to build Seirina.

The genwave program is the main command-line interface. Use the -i argument to indicate an input file, -o to select the output file, and -w to select wave form, one of sine, square, triangle, saw, and absine (absolute value of a sinewave). Output is in the form of a wav file.

The input is a text file in a specific format. Each line is a separate note. The first letter (A-G), represents the pitch class, and it optionally followed by either a -, +, or space, to represent flat, sharp, or natural respectively. Following the pitch class, a single-digit number, represents the octave in scientific pitch notation. A440 and middle C are octave 4. A dash separates the octave from the duration, which is represented either a a single-digit number, or a fraction of single-digit numbers separated by a /. This duration is in beats, which is currently hard-coded as 18900 audio samples (resulting in 140 beats per minute).

About

Music synthesis code

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published