Main Page   Packages   Class Hierarchy   Compound List   File List   Compound Members  

composers.HMMComposer Class Reference

Inheritance diagram for composers.HMMComposer:

Inheritance graph
Collaboration diagram for composers.HMMComposer:

Collaboration graph
List of all members.

Detailed Description

Program that learns a simple fully connected hidden Markov model from a FeatFile and generates chunk sequences from it.

This doesn't produce very compelling compositions because the markov assumption (that the currect chunk only depends on the previous chunk) is not at all valid for most music which has a more complex structure. Later versions will support more constrained HMM topologies that should make for more interesting compositions.

All about HMMs:

Ron Weiss (

Definition at line 58 of file

Public Methods

void printUsageAndExit ()
EDLFile compose ()
 Compose an EDLFile.

Static Public Methods

void main (String[] args)

Static Public Attributes

String description = "HMMComposer uses a features file to train a simple statistical model of a song and uses it to randomly generate a new sequence of chunks. This works best when used with chunks created by the beat detector."

Member Function Documentation

EDLFile composers.HMMComposer.compose   [inline, virtual]

Compose an EDLFile.

This is where the magic happens.

Reimplemented from composers.VQComposer.

Definition at line 233 of file

References composers.VQComposer.learnCodebook().

The documentation for this class was generated from the following file:
Generated on Tue Feb 6 19:02:32 2007 for MEAPsoft by doxygen1.2.18