Generative Music

Has anyone looked into generative music?

These slides are very interesting:

https://teropa.info/loop/#/title

This article is interesting too:

The recorded track “2/1” on Ambient 1 is but a short sample of the output from a system Eno built which generated the music. A similar system using the three intervals quoted above would not repeat itself for almost 27 days

https://medium.com/@metalex9/introduction-to-generative-music-91e00e4dba11

I’ve only skimmed this one, but it talks about some things people are experimenting with:

https://medium.com/artists-and-machine-intelligence/neural-nets-for-generating-music-f46dffac21c0

Tutorials

A long guide using Tone.js:

https://tonejs.github.io/

Some ideas:

This one uses the free VCV Rack software mentioned in the analog synths thread:

Here’s a generative ambient music player:

Edit: another tool: Elementary Audio

1 Like

This is cool. I was listening to some ambient sounds while working the other day and I noticed when the track restarted. It was one of those really long 10 hr ambient sound tracks but the audio actually loops multiple times. So I started thinking if it would be possible to take an audio sample, convert it into something machine readable, and then generate minor randomizations around that so that it never repeats itself. The generative music idea seems to be going even further.

1 Like

very cool, I’ve explored this just in terms of writing music, but coding it in the browser would be a great project. thanks for sharing

1 Like

Check out some of these “live” ambient streams:
https://www.youtube.com/results?search_query=ambient+music&sp=EgJAAQ%3D%3D

I’ve wondered if some of them are automated. This one has been playing since 2018:

The videos might be repeating, but the music is simple enough that it seems possible for someone to have coded them. It would be fun to try to do it, even if the music isn’t very good. :slight_smile:

1 Like

I wonder how hard it would be to code AI that can improvise with other AI. One AI plays a chord, and the other one figures out the key and starts playing notes that fit. After a while it could start to predict the changes.

Normally, you buy a backing track and practice soloing over it, but this could be the reverse — you play the backing track part and the computer solos over it. :thinking:

1 Like

Making improvisational AIs would be a fun project. That reminds me of this “metal band” that was trained on metal music data sets and now just plays infinitely on YouTube.

I made this project with collaborators called Dear Diary that I might have showed you before. It uses NLP and AI tools from Google’s Magenta team to create changing music that blends between melodies I composed.

2 Likes

That’s pretty interesting. I wonder what it would sound like if trained on 80s pop music. :thinking:

found this python library: GitHub - luvsound/pippi: computer music with python

will play around with it a bit

1 Like

very interesting, could potentially be a cooperative reinforcement learning game. I just wonder how to efficiently determine whether or not notes fit?

1 Like

I don’t know how to do it with machine learning, but it might be possible to do it using music theory rules and general guidelines for melodies.

Miles Davis’ advice could be useful:

“It’s not the note you play that’s the wrong note – it’s the note you play afterwards that makes it right or wrong.”

I wonder if code could scan through all the chords and inversions between the background chord and the “wrong note” so that the computer could choose a next note that “corrects” the first note.

Melodic phrasing could be based on old public domain music.

1 Like

Here’s another free cross-platform synth.

It isn’t open-source, but there’s an interesting software synth called Pigments that I was experimenting with last night.

More resources:

There’s a discussion about VCV Rack here:
https://news.ycombinator.com/item?id=29703014

I started tinkering with the trial version of Phase Plant while watching this, and it’s pretty interesting how it works.

This program isn’t free, but it looks interesting:
https://nodalmusic.com/

I also found one called Orca:

Orca is a two-dimensional esoteric programming language in which every letter of the alphabet is an operator, where lowercase letters operate on bang, uppercase letters operate each frame.

The application is not a synthesiser, but a flexible livecoding environment capable of sending MIDI, OSC & UDP to your audio interface, like Ableton, Renoise, VCV Rack or SuperCollider.

https://100r.co/site/orca.html

Orca YouTube tutorial

and Midinous:

Hello

I appreciate you sharing all this here
Pls, tell me, are there any other similar programming languages like Orca? I guess it’s a good fit for me. And if there are no other options, i’ll take orca training

I’m not sure what you’re looking for, but check out SuperCollider:

and OpusModus (Lisp):
https://opusmodus.com/

Pure Data is graphical:
https://puredata.info/

Also Max MSP:

It isn’t a programming language, but I got an interesting node-based app called Senode recently.

Oh, I haven’t tried this.

But it’s cool you mentioned it here. My friend told me about this language

1 Like

i’m here to say thank you for the link to msp programming course!

1 Like