Posts In:

Excellent Results

September 10, 2009 General News, Plugins 0 Comments

Tonight's work, which consisted of implementing the Gaussian distributed random function for Fraccut, as well as implementing octave and interval settings in Fraccut, resulted in some fantastic compositions.

The new Gaussian random generator pulled everything together and really helped coherence.  The octave settings differentiated the Fraccut parts and allowed three simultaneous Fraccut plugins to sound distinct and harmonious because of octave separation.  Interval settings really fleshed out the sound; harmonies can now be heard quite clearly.

It was a great night for compositions.  I'll post a sample or two from tonight's batch tomorrow.  As usual, I am astounded with Fraccut's capabilities.

Fraccut: Gaussian Distributed Randomness

September 9, 2009 General News, Plugins 0 Comments

I'm finally getting more detailed in my design of "randomness" in mGen.  Fraccut is one of the first plugins to feature a handy "randomize all" button, which should eventually be a component of all plugins.  Unfortunately, perfectly-linear random distributions aren't very interesting.  They don't sound good either.  When I left settings up to Fraccut, the results were generally wild and unpredictable, straying far from "normal" settings.

Having done a little research on Gaussian distributions and the Box-Muller transform for a random input stream, I implemented a random Gaussian function in Fraccut.  Now the settings have the potential to stray far from the conventional, but do so with low probability, just as one would expect.

I have yet to see how Fraccut arrangements sound with this added order to the randomness of mGen.  I'm also trying to implement octave and interval settings before I make the next batch of mGen compositions.

The Birth of fxGen

September 7, 2009 General News 0 Comments

Since the conception of mGen, I have viewed the program as distinctly broken into two parts: a composition interface, and a production interface.  Strictly speaking, the part that I refer to as mGen, is really only the composition interface.  It deals with rendering MIDI data.  I also had a basic production interface working with the third-generation mGen interface that took the MIDI and rendered it in FL Studio using virtual instruments.  With the birth of the fourth-generation interface (Interface 2.0 or I2), the production interface became unusable as I didn't implement a connection between I2 and the production interface.

Back to the two-part design, I conceived not only of having a program that would generate random music, but also explore new sounds and instrumentations in order to really achieve a completely unique, random sound.  I wanted the program to pioneer new mixing effects, new arrangements, and even new instruments.  In this way, I would truly not be able to recognize any aspect of the rendered output: it would be 100% the work of the program.

I have finished coding the first interface for the second part of the program, which will be (tentatively) referred to as fxGen.  The interface is an FPC (FL Studio drum VST) exploration interface.  Basically, it assembles random drum kits and saves the presets as well as previews for each.  So I can tell it to create 100 random drum kits, leave it running for half an hour, then come back and run the rating program.  It will play previews of each kit to me and I tell it whether to keep or trash the kit, depending on whether or not I like the sound.  Playing around with it today I have already saved 20 random kits that I like.

This is really just the tip of the iceberg.  Random drum kit making is only a tiny part of what fxGen will do in the future.  It will explore new mixing effects and all sorts of new instruments outside of percussion.  In the end, fxGen will provide mGen with a huge variety of mediums for expressing new musical ideas.

The End of an Era

September 1, 2009 General News 0 Comments

Looking back through the saved projects from mGen, it occurs to me that the last assisted composition dates back to more than a month ago.  Moreover, there have been more "pure" compositions (i.e. not assisted) in the last month than in all other previous months combined.  It looks like the end of an era has come; assisted compositions are of a dying breed.

It is in a very positive light that I must observe the extinction of assisted compositions.  The very notion of an assisted composition implies a lack of competance on the part of the program.  It means that, without the help of a user, the program can't produce adequate results and needs the user to take the output a few steps further to obtain a decent composition.  Over the past month, however, with the rapid development and amazing success of Fraccut, coupled with some major improvements in structural techniques, mGen has demonstrated great capability in composing without any help.

I always became excited when I looked back through my archive of assisted compositions.  It wasn't hard to see the trend: each month, the compositions required less and less work from me to raise them to a level of appropriate quality.  The only conclusion to draw from that trend is that which is now evident: a day would come when the program would require zero help from the composer.  Indeed, this day has arrived.

Of course, I do stretch the truth slightly.  While I do not help the program write the score anymore, I still choose appropriate virtual instruments and mixing effects to render a good composition.  This is due to the fact that, since the upgrade to the fourth-generation interface, mGen is incapable of using the "Producer" program that automates the rendering task.  I've neglected it because it seems rather unimportant compared to the authoring of good plugins like Fraccut.  When I get around to fixing the production interface, however, mGen will truly be capable of composing with zero help.

My goal has always been "from one click of a button all the way to a rendered mp3" for mGen.  No stopping at MIDI, no stopping at a dry-render from a sequencer.  The process must include MIDI conversion, sequencing, virtual instrument loading, appropriate choices of mixing effects, appropriate automation, and whatever else the composition should require.

When it's finished, it really will be the ultimate source of infinite music.  Personally, I can't wait.