Montevideo is designed to be used from the REPL.
Start it by running cabal repl
from <project root>/mtv/
(that is, probably, mtv/mtv/
).
Then, from within the resulting REPL,
run :s .ghci
to make the code available.
Before using any of the sound-generating code, start JACK,
and then start SuperCollider on UDP channel 57110 (Vivid
requires that).
Those are done from outside the REPL.
I use qjackctl
to start JACK,
and the ./sc-start
script in this project to start SuperCollider,
but there are other ways.
Once upon a time,
NixOS did not offer a native package for installing sc3-plugins,
and Cabal did not fetch the latest version of Vivid.
Today those problems have been corrected, so all should be good.
But should that ever stop being the case,
you might need to re-enable some of the commented-out code in
sc-start.sh
and/or cabal.project
,
and make sure the rest of your system corresponds to the code enabled therein.
It can be used for:
mtv-lang
: live-codingmtv-monome
: playing via a monomemtv-earTrain
: ear trainingmtv-ji
: Music theory, with a big focus on just intonation, and on approximating just intonation via EDOs (equal divisions of the octave).
The above are all independent projects -- you don't need a monome to use the language, you don't need the language to use a monome, you don't even need SuperCollider installed to use the music theory piece. (The other three projects generate sound, hence rely on SuperCollider.)
The first two projects have dedicated README files (linked above). I haven't documented the ear training and music theory modules well, but if I see evidence that anybody else wants to use them, I could.
I'm not sure how helpful they are, but my own notes on montevideo can be found at my public org-roam knowledge graph, at https://github.com/JeffreyBenjaminBrown/notes-in-org-format-on-tech/blob/master/montevideo.org You don't need to use org-roam to read them; they are ordinary .org-formatted notes.
It's a mashup of "monome", "Tidal(Cycles)" and "Vivid".