Hello, I'm a huge fan of Orca (https://github.com/hundredrabbits/Orca). Orca is just a procedural sequencer that can send inputs over MIDI, UDP or OSC protocols. My idea was to use Orca as a sequencer, SuperCollider for audio rendering and Overtone for creating instruments on SuperCollider. Do you think it's feasible?
definitely, I've used Orca with overtone before, it's a lot of fun.
this is a fork of the C (terminal) version of Orca that uses Jack for midi, which makes it easier to route the midi to overtone
Cool, thanks ❤️
I'm starting to think about my Overtone lightning talk for the conj. I had originally proposed a full length talk... This is what I had as abstract > If you've been around for a while you may know of Overtone, the sound and music live coding environment for Clojure. Chances are you tried it but immediately ran into issues and decided it wasn't for you. > > Overtone has had a number of rough years, during which the onboarding experience was often terrible. Seeing your JVM segfault does not inspire confidence. And that's a shame, because Overtone is a fantastic piece of kit, and has the potential to be timeless software. > > In 2023 the work started to make Overtone ready for the future. We adressed stability issues, and adjusted to a changing Linux desktop audio landscape. Once the most pressing issues were fixed we could start thinking about the future, and how Overtone should evolve. It's not easy to make decisions about the direction and future of a project with such history and legacy, but today Overtone is in better shape than it's been in a decade. > > In short, Overtone is ready for you, come join the fun!
Reviewer info > Sam and Jeff really created something special with Overtone, but when Sam decided to move on and do Sonic Pi instead development more or less stopped. Looking through the code base it clear that they had big ambition. It really is an impressive project. And they managed to realize much of it, enough to be a really compelling offering, but since they left maintenance has been haphazard, and there are a lot of loose ends and undocumented features. > > I have a special relationship with Overtone because it was the thing that really sucked me into Clojure and interactive programming. I also have a background in audio engineering, so I'm better equipped than most to pick up the torch. I reluctantly became the de facto maintainer in 2023. Mainly I just wanted it to work for me, but it also pained me to see all the open issues of people who clearly just wanted to do something fun and creative, and instead left in frustration because Overtone blew up in their face. > > What I want do with this talk is (re-)introduce Overtone. What does it actually do? What's in the package? There's more there than people (even active users) realize. I want to talk a bit about the history of the project. What does it mean to maintain a project that the original creators just "dropped" seven years ago? > > I will explain a bit why the out of the box experience was not great and what we've done to fix that. It really is a world of difference. As one person said on social media "It worked perfectly the first time without having to update or install anything. That's quite possibly the first time in my life that has happened with an audio app on linux". > > Finally I want to look ahead. We recently added the patterns library, which makes it much easier to create musical sequences. And since these changes have gone in we've started seeing modest activity again on the #overtone channel and mailing list. The more I get into the codebase the more I start to recognize the outline of Sam and Jeff's unfinished vision. I'd like to help the community finish what they started. SuperCollider (the sound engine Overtone is based on) is almost 30 years old, and still has an active community of coders and live performers. I think Overtone has the potential to achieve the same thing, and this is an invitation to people to be part of that. > > And of course there will be some live coding!
The thing is... now that I have 15 minutes only, what do I actually talk about or demonstrate? What will be the thing that convines most people to give Overtone a try?
Obviously I need to have some live coding in there, a bit of a performance. I'd like to show off the new patterns library, although I still need to improve it a bit to make it more suitable for live performance use. But that's already going to eat up a good bit of those fifteen minutes.
I could run through several of the demos to show the breadth of the styles and approaches you can do with overtone.
I like the idea of the tour de force of styles/approaches! And some insight into how it feels to work with overtone as a whole ⭐ consistently glad to see the state of Overtone <3
One of my favorite things about Overtone is that like with SuperCollider one can find wildly different approaches to organizing a music program, it’s really a toolbox rather than a tool; but unlike SuperCollider one has a very consistent lisp language that supports the expression of any number of ideas while preserving a magnificent REPL experience. In SuperCollider the moment a program grows and requires the creation of classes, then its REPL experience is broken. Ratios being a native data structure is really useful for developing music tools.
> What will be the thing that convines most people to give Overtone a try?
I think that showing how easy it is to set up and start making music is always good.
Showing a panorama of the possibilities can also be helpful.
And also talking about the ecosystem. For example, the fact that Quil and Overtone can share memory is really fantastic. A mention of related libraries like leipzig, and disclojure, and (shameless plug) erv and piratidal as well as yours and others I may be unaware of could be enticing.
If you decide to go the demo route an excerpt from this might be good, as it uses quil and overtone (controlling the surge synthesizer): https://youtu.be/Y_z4gSD8UP0
Additionally here’s a demo of a TidalCycles port to Clojure that leverages parts of Overtone: https://youtu.be/7qNSjhMf_HU
@plexus I always wondered about SuperCollider (having read something here and there, but not trying it out) and similar environments, and their 30 year long history: does it make sense to try to create a more modern engine as a pure library without the historic baggage of a custom language, compiler, etc. Overtone already "died", so I guess that there is not a huge legacy of music that has to be supported. Are there any newer libraries in, say, C, that offer the implementation that could connect hardware and software synths and music tools, but that could be managed through Clojure and (perhaps) Overtone in a cleaner and more efficient way?
Or perhaps my question does not make that much sense?
I'm asking because it's obvious that the computer based music production and tools came a long way in the past 30 years, from basically toys and experiments to be the default method :)
@blueberry I think it’s a good question. But in defense of Supercollider I think it’s still making it possible to bring new things to the table. Many of the latest innovations in music software like Ableton Live (tuning, algorithmic/stochastic sequencers, etc.) have been common ground and/or pioneered in different forms by people using Supercollider as their server (and often client). Plus there’s still a big and healthy community behind it. As a heavy user of Overtone and a serious musician with years of experience and who works on music on a daily basis (though it’s near impossible to make a living when working on the field of music I do), I still feel Overtone/Clojure is the best SC client.
But TBH I don’t use that many of Overtone’s features, only the core: synth definitions, MIDI, OSC and at-at; the last three can be used independently of the rest of the project to interact with synths, DAWs and interfaces (so perhaps that answers your question). I’ve mostly built my own stuff based on that. However I do think it’s been great and commendable that @plexus is taking charge of keeping Overtone fully accessible for everyone, so that clojurians can just plug in and play music without needing to learn a DAW, or a synth or pay any money.
The biggest lack of SC from my perspective is embeddability. But from a sound synthesis perspective, which is what SC ultimately is, it’s really hard to think of things it cannot do.
@plexus I’d be glad to contribute to docs, but could only do so lightly this year. However next year I’ll be much more available. I you’d like to open a thread for discussing this topics, or an issue on the repo feel free to ping me.
@swlabrtyr I don't know. I'm doing what seems to be the most sensible, the thing I need the most in the moment, or the thing I feel like doing the most, whenever I feel like allocating the time for it. I am not going to run overtone like some kind of product manager, I'm merely here as a steward for a thing I love. There are many things that need doing, including updating docs, updating the site, triaging old issues, etc. I may do bits of some of those things, but don't come to me asking if I'm going to do a certain thing. I am making zero commitments or promises. I already have a job and a half on top of the other dozen open source projects I do run. When it comes to Overtone I'm only trying to keep the lights on long enough for people to come out of the woodwork and pitch in their own two cents, and to keep it in good enough shape that I can be creative with it myself.
In other words, any question of the form "will there be $x" will be answered with "thank you so much for volunteering to do $x" :P
@plexus Is there any plan on updating the documentation? Or perhaps it has moved 🙈 Either way, I greatly appreciate your efforts here 🙏
> Overtone already "died" Oh man, someone should've told me... would've saved me a lot of effort.
I think the SuperCollider server is about as good a generic synth engine as you can wish for. It has a pretty thin well specified API. The language is really just a client side concern (and the reasone we can have overtone). The thing that can connect hardware and software synths and tools is Jack (or now, Pipewire), and it's also really good at doing that.