A lot of generative music

Started by
18 comments, last by Ken Zyma 11 years, 5 months ago
Hello!

I have improved my generative music system and added some proper voice leading and structure.

EDIT: ...Another Youtube video with some filter effects

EDIT: ...Youtube video playlist with some handpicked songs

Here are 40 songs that the system generated with a single seed as input:

1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40

Yes, they sound a bit similar sometimes and the mixing is sometimes terrible (the melody drowns in other stuff) but it is still kind of cool I think smile.png
Advertisement
Pernyblom,
Interesting. If this is all generated, then your system has some very cool features! I agree that "it is ... kind of cool!" :).
Do you have any links to papers that discuss what you're doing?

That said, I have a suggestion.
Stop using General MIDI sounds. In fact, never use GM again :). To be brutally frank, the quality of the sound samples in your demos are so poor that your listeners will be completely put off by the bad production values of the music.

Can you take exactly the same data but use a real sample library (eg East West, etc).

Because as it stands, no matter how good the generative algorithms you have are, your music will be judged as "oh--that sounds like early 1990-era General MIDI music". And no one will want to see past that.

Brian Schmidt
Register now for GameSoundCon 2012, San Francisco
October 24-25
www.GameSoundCon.com

Brian Schmidt

Executive Director, GameSoundCon:

GameSoundCon 2016:September 27-28, Los Angeles, CA

Founder, Brian Schmidt Studios, LLC

Music Composition & Sound Design

Audio Technology Consultant

At work so can't listen now ... but was wondering if your system is still Java-based? I think that's what you said a while ago...
<br />In fact, never use GM again :)


Yeah, it doesn't sound great :)
I am thinking about hiring someone who can do this well. Also, I need a good composer that can help me improve the system and choose at least one specific musical style to target.

At work so can't listen now ... but was wondering if your system is still Java-based? I think that's what you said a while ago...


No, it is currently all Javascript. This is a completely new system that was originally intented for web client use, and therefore JS was selected.
What's the difference between this system and your last system?

What's the difference between this system and your last system?


This system uses constraint solving/optimization and planning for almost everything which means that it supports proper voice leading, adaptive figuration and "smarter" harmony planning.
The previous system used none of that. It used patterns for everything without any lookahead. The previous system was however reactive and could change the music according to real-time inputs. The current is a lot more static but can support that eventually.
<br />Do you have any links to papers that discuss what you're doing?<br />


I don't have any links but it is a mix of several techniques:
* Constraint-based voice leading (four-part)
* Maximum likelihood harmony planning and figuration
* A lot of tricks to divide the large problems into smaller ones

I once read a thesis about using constraint solvers for voice leading, but I decided to use soft constraints and optimization instead since it is more flexible, but also more expensive.

Most of the techniques/constraints are just directly translated from standard harmony books (harmony, voice leading, phrase structure etc.). I used to be an AI researcher so I know a lot of tricks for translating problems into a computer-understandable form :)

Thanks for giving me good advice about the sound and for your time!
Thanks for the info..
Java explains the MIDI implementation..

Can you have it spit out a level 0 midi file? Then you could pass it off to an orchestrator/recorder, though to be fair you would have to tell them not to change the MIDI file in any way.

Have you looked at how musical phrasing would create subtle (or not so subtle) changes in key velocity (affecting both volume and timbre). I think starting to deal intelligently with velocity as you currently do with note value would make even the GM performances sound massively more 'real'.

Brian Schmidt

Executive Director, GameSoundCon:

GameSoundCon 2016:September 27-28, Los Angeles, CA

Founder, Brian Schmidt Studios, LLC

Music Composition & Sound Design

Audio Technology Consultant



Can you have it spit out a level 0 midi file? Then you could pass it off to an orchestrator/recorder, though to be fair you would have to tell them not to change the MIDI file in any way.

Have you looked at how musical phrasing would create subtle (or not so subtle) changes in key velocity (affecting both volume and timbre). I think starting to deal intelligently with velocity as you currently do with note value would make even the GM performances sound massively more 'real'.


I can output MIDI files. Those MP3s are actually rendered MIDI files where I tried to use a reasonably good soundfont, but as you say, it doesn't sound good :)

When you speak about note velocity, do you mean the strong/weak distribution between beats/subbeats and measures/hypermeasures? I have dealt with that in one of my previous system but haven't implemented it yet in this new one.

Another thing I'm working on is local tempo changes (ritardantos etc.) and also adding random position offsets which can also make it sound more real.

I also forgot to mention that I have been inspired by the material at harmony.org.uk/, the static/dynamic harmony syntax part.

This topic is closed to new replies.

Advertisement