Thursday, May 21, 2009

GGrewve Fill Dictionaries

Today was yet another huge leap forward for GGrewve.  I coded a second dictionary loading into the program so that it now keeps two dictionaries in memory: one for the main style, and one for fills.  Basically, a fill dictionary looks and functions exactly like a normal dictionary.  I wrote a small MIDI file that contained several nice fills and then passed it through GGrewveWriter, yielding a fill dictionary.  Along the way I had to do a lot of bugfixing on GGrewveWriter, which threw a fit because the fill patterns were a bit different from normal patterns.

At any rate, after everything was said and done, GGrewve was intelligently using a fill dictionary to make entrances as well as highlight fourth-measures.  The result?  Awesome.  Simply awesome.  It sounds great - it sounds real.  Even more impressive, GGrewve displays great inventiveness in using the fills.  As I explained the process of grammatical subdivision before, GGrewve basically chops up the MIDI files I give it and recombines them using intelligent analysis.  Not only were many of the fills very inventive (I wouldn't have thought to make them), they were coherent and well-placed!  I wasn't just hearing a repeat of the file I had fed into GGrewveWriter.  I was hearing an elaboration on those files - the same style, but not the same pattern.  GGrewve was not mimicking my speech, it was mimicking my ideas with its own speech (to use a linguistic metaphor).

GGrewve is by far my most impressive plugin so far, and with a solid drum plugin to depend on, I know it can only get better from here.

No comments: