Skip to content

JeffreyBenjaminBrown/montevideo

 
 

Repository files navigation

How to run it

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.

In case of problems with SuperCollider / sc3-plugins / NixOS

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.

Montevideo is some music tools

It can be used for:

  • mtv-lang: live-coding
  • mtv-monome: playing via a monome
  • mtv-earTrain: ear training
  • mtv-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.

Hacking it

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.

Why the name

It's a mashup of "monome", "Tidal(Cycles)" and "Vivid".

About

Live-code music in Haskell!

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Haskell 99.8%
  • Other 0.2%