aboutsummaryrefslogtreecommitdiff
path: root/README.md
blob: 87fbaaeae627b1b630896c0db9c3d13e55f14468 (plain)
1
2
3
4
5
6
7
8
9
# yue

yue is a programmatic music library, influenced by [Bytebeat](https://dollchan.net/bytebeat). It is designed to be low-level and enable you to build your own abstractions and functions. Think of it like an assembly language for music. There are three implementations in Python (PyPy recommended for speed), Scheme, and Nim. Check out this [sample code](blend.py) and [listen to it](blend.ogg)!

## Get started

First, install [Sox](https://sox.sourceforge.net/) and clone this repo.

To run a program that uses yue, use `pypy file.py`, `guile --fresh-auto-compile file.scm`, or `nim c --mm:orc -d:release file.nim && ./file`, and pipe to `play -r 44100 -t s32 -`. If you would like to save to a file, pipe to `sox -r 44100 -t s32 - file.ogg` instead.