Sunday, May 31, 2009

WordSmith - Generalized Grammar

Today I began construction of a more generalized grammar framework - very similar to the one upon which GGrewve runs, except extended to work for melodic instruments as well as percussive ones.  I began a crucial part of this rewriting today with WordSmith - the new equivalent to GGrewveWriter.

WordSmith is a generalized grammar/dictionary synthesizer capable of taking a "training file" in MIDI form and constructing a dictionary from the file.  WordSmith, unlike GGrewveWriter, actually has a very flexible interface and of course will work for any instrument, not just drums.  In addition to the usual features of the last grammar analysis tool, WordSmith will also include extended features such as time compression and maybe even synthesis tools like hybridization and mutation for more random possibilities.

As a minor under-the-hood tweak, WordSmith will perform extensive quantitative abstract analysis on individual words (categorizing intensity and such) so that plugins like GGrewve don't have to waste valuable processing time doing analysis that can be done once up front instead of once every run.  This will also greatly increase the possibilites for such analysis, since a one-time processing cost will allow for much more extensive and in-depth analysis of the grammar. Users won't mind having to wait half a minute to create a dictionary, as long as it doesn't take the same amount of time every time the dictionary is used by a plugin.  Which it won't.  It'll only take milliseconds for the plugins to access that analysis data that will have already been created by WordSmith.

Grammatical subdivision is going full speed ahead, and I hope this promising method won't let me down.

No comments: