I was discussing this program with Wareya earlier in the IRC channel. I thought other people might be interested in hearing about this program. One caveat, I believe that it is Windows-only and the output is MIDI (although that can be converted or even edited afterward using other software). I would have used this during past Game Jams but it doesn't launch on my laptop (works fine here on my work PC though). It doesn't produce loops (although one could edit the output to create loops) and the instructions are not in English.
cgMusic (
http://codeminion.com/blogs/maciek/2008/05/cgmusic-computers-create-music/) is a simple program that will generate a fairly wide variety of music for you using a scripting language (angelscript) and random seeds. The generated composition can be further altered by changing settings, seeds, part order, and/or algorithms - as well as expanded by adding more parts and repeats. I highly suggest clicking the link above to read the designer's blog post about it, as well as to hear some samples of what it can produce. The download is also located at the above link.
I have a few notes and suggestions to impart to you from my fiddling with the program...
1. Changing random seeds of any algorithm can have a drastic impact on the output - if you have something that you like (or even are just partially interested in) be sure to either save or at least make a note of the seed and other settings before making other changes. I've got a text file that I use to keep track of seeds and other combos that I like.
2. Changing the arrangement and tempo after creating a song is a great way to take the same melody and song structure and make something different but still familiar. An example would be to use the "Latin" arrangement for something bright and cheerful (say, in-town scenes of a RPG), and then switch the same composition to "Piano (Boogie Woogie)" with a higher tempo to get a more frantic feeling (battle scenes?).
3. It's not immediately obvious, but the "Struc" (Structure) tab has a lot of options. If you left-click on any of the cells you can change the order of the parts, how they sound, their individual tempo (good if you want to vary it within the song between parts), their key, and even the "voice" that is used for that particular part. All those changes don't effect the individual parts which each have their own tab for changes.
4. Remember that the output can be very random and not be acceptable. The melody itself often falls into this category since that's the most difficult part to teach a computer how to compose. Like anything "procedural", not all potential compositions are good ones. But since generating them and listening to them are easy, just keep trying until you hear something you like - even just a small part that you like.
Finally, here's a .cgm attached (the save file it creates) of a Dance arrangement I created with this program a while back. There were quite a few tweaks that I did to this - it's all about experimenting! Try listening to it, and then changing the arrangement algorithm and listening again to hear how it stays similar, but how much it changes also. Cheers!