I want to return to this post later to describe some of my explorations with this new (to me) tool for composition and live coding.
Opusmodus uses OMN, which is a dialect of lisp intended for musical expression. Opusmodus is a kind of IDE for OMN. My initial explorations of it have proven it to be an immensely capable environment.
For now, I just wanted to let you know about it, so that you can follow along as I learn more.
Download here: https://opusmodus.com/index.html
There’s a 30 day trial. I’m about 3 weeks into it, and while I’m a little frustrated that I’m not further along with it (due to nothing having to do with the software itself) I’ve already made up my mind that I’ll be purchasing the software.
As you get familiar with Opusmodus, I’d be curious to hear what compositional workflows the software makes possible, or makes easier. (My own ideal workflow would include a musical notation editor - native to Ableton or closely integrated - so I could forget about the piano-roll UI.)
I would contrast the two like this (curious if you agree). Opusmodus seems to place more emphasis on structures to help you generate compositions grounded in theory, while Overtone places more emphasis on synthesis. My perception is that Opusmodus just wants to create the music and hand off to other tools for timbre. For me, this makes a lot of sense, but I can see the attraction to Overtone for it’s one-stop-shop approach.
I also happen to really enjoy Opusmodus as an IDE.
I haven’t sat down to look at Opusmodus, but Overtone definitely came out of the live coding scene. You’re right that it’s more focused on quick results and improvisation. I just thought I’d share it while talking about music Lisps. It’s fun to connect all of these environments.
From the readout above, it’s based on CCL (Clozure Common Lisp), while CLM is a package for vanilla Common Lisp. There are CLM packages for C, CL, Forth, Ruby, and Scheme. It’s very possible that Opusmodus is using elements of CLM, though!
No problem! I should also note that Snd is Linux only, specifically Fedora or CentOS (http://ccrma.stanford.edu/planetccrma/software/). My first link, Overtone, is more general. It’s just fun to point out the thread of Common Lisp running though these tools, each with a different focus.
…the speed of the notation rendering is impressive and as someone who doesn’t really read music, curiously appealing.
My initial reaction of Opusmodus is positive. It looks like a deep environment but one which doesn’t heavily overlap with tools I already have - it does seem squarely focused on composition. I very much like that the environment is self contained and visually clean.
Following this with interest. @jasonw22, what convinced you that quickly during your trial period that you’ll purchase Opusmodus? How are you planning on integrating this into your workflow?
It seems like a very quick way to work with notes. Has a lot of built-in structures for music theory. I’m also very fond of lisp and this seems like a wonderful way to use it.
I’m planning to use it to explore music theory and generative systems, but also just to generate quick little midi riffs and progression for use in larger compositions.
I’m also curious to explore its functionality for integrating with DAWs and Reaktor and such, but I’m not very knowledgeable about what’s possible there. Even if it just spit out MIDI I think it’d be worth the price of admission, but it feels like it could become the compositional center of a larger system.
In the past I’ve used Liquid Music for a similar role in my workflow, but I like the idea of having programmatic/mathematical control over tonality (rather than the menu/form based systems in Liquid Music).
Thanks for elaborating. That all makes sense to me. I guess I should spend some time with the trial version for a couple of days to see if the could get me further down a path of engaging in a more electroacoustic composition practice. It’s not a cheap piece of software, but with the current discount till end of the month I could probably swing it if I find it really adds a new dimension to what I’m currently trying to do.