Friday, September 12, 2008

Creative Computing – Week 7 – Semester 2, 2008: “Graphical User Interface (3)”



Taking my lead from the sequencer ideas in the BoxGrid class help, I have built myself a simple drum machine. It plays back drums as they are selected in a grid according the place their grid position holds within a bar. To keep things simple I have limited the resolution to 16th notes and 16th note triplets. To make things complicated I have introduced the function of determining probability of a selected drum being played. If the probability is at 100 percent then the drum will play on its bar division each time – if it’s below this then the chance of it not playing increases.

This patch took a long time to write due to the amount of code involved, but I have reduced much of its content to variables and routine loops, so it shouldn’t be too difficult to make performance changes like tempo or note resolution for instance. I’m thinking of a computer assisted compositional concept for my major project and feel that this patch of code may be a good start. It will need more comprehensive functionality such as global setting of probability, and some easily accessible preset rhythm ideas to enable fast creation of music in a live scenario.

Click here to link to the code/samples bundle for this week (you’ll need the samples in the same path as the code doc for this patch to work).


Reference:

Haines, Christian. “Creative Computing – Week 7 – Semester 2, 2008: Graphical User Interface (3).” Lecture material provided via online correspondence through MyUni, University of Adelaide website, Thursday 11th of September 2008.

Labels:

0 Comments:

Post a Comment

<< Home