Difference between revisions of "Matt Rosen"

From BioV
Jump to navigation Jump to search
(Final Project - playBack (performance.drum.machine))
(Final Project - playBack (performance.drum.machine))
Line 88: Line 88:
 
=Final Project - playBack (performance.drum.machine)=
 
=Final Project - playBack (performance.drum.machine)=
  
NOTE:  The web applet posted here features all functionality except for MIDI implementation (with velocity sensitivity for enhanced performance ability!).  The full MIDI version, which should only be launched when a MIDI hardware device is connected, can be downloaded here as a stand-alone application.
+
NOTE:  The web applet posted here features all functionality except for MIDI implementation.  The browser version has also shown poor performance of the ControlP5 slider object.
  
 
*[[http://www.sfu.ca/~mrosen/_playBack/applet/ Web Applet (no MIDI)]]
 
*[[http://www.sfu.ca/~mrosen/_playBack/applet/ Web Applet (no MIDI)]]
 +
 +
Stand-alone version is available here, and is recommended for best performance.  The full MIDI version is also available here, and should only be launched when a MIDI hardware device is connected.
 +
 +
*[[http://www.sfu.ca/~mrosen/_playBack_noMIDI/ Standalone (with MIDI)]]
 
*[[http://www.sfu.ca/~mrosen/_playBack_MIDI/ Standalone (with MIDI)]]
 
*[[http://www.sfu.ca/~mrosen/_playBack_MIDI/ Standalone (with MIDI)]]

Revision as of 13:43, 13 December 2009

Assignment 1

Project 1

A simple "digital/analog" clock using three coloured arcs and numerical time. The hour arc changes colour at noon and midnight. I also added a slight irregular flicker in the center of the clock, generated from even-numbered milliseconds.

Assignment 2

  • A2_14 - Asteroids game modified to include colour change and sound effects for thrusters and missile fire.

Project 2

Part 1: Proposal

I would like to create an audio sample-playback interface based loosely on the design of the Akai MPC, which has been an essential tool in the production and performance of electronic music and hip-hop since the late 1980s. The basic structure of the machine is simple: a 4 x 4 grid of square pads which each triggers a different sound sample (traditionally drum sounds). To one side of the grid, a single slider and single rotary encoder are used for data entry and control of various parameters.

A true MPC design would also include a number of data entry buttons, a keypad and some sort of visual display (usually a small LED screen). In this case, I will focus on the essential and iconic elements of the design: the pads and slider.

For the purposes of this assignment, I will make the square pads triggered by mouse-click, and assign just one click-and-drag parameter to the slider (most likely volume, in the interest of simplicity). Audio playback will be implemented using the Minim Library.

It is my hope to develop this concept further for my final Project, as well.

Part 2:

This interface is an ongoing work in progress. The concept will be developed further for IAT-800 Final Project

Assignment 3

  • A3_01 - Create a subclass of PImage that implements a mosaic( int blockSize ) method.
  • A3_02 - Write a small app that demonstrates kinetic text.


Assignment 4 (Widgets)

  • A4 - Use a "widget set" to add control to Project 2.

NOTE: When launched in some web browsers, the app seems to not recognize the Pan and Gain slider input. However, all controls function normally when the app is launched from Processing. I am currently trouble-shooting this bug.

NOTE: I have encountered some glitches in the right audio channel during playback, which sound as though they may be related to the audio buffer size. These glitches are occurring not only with this code, but also with other audio apps (using minim) which have previously functioned normally... This leads me to believe that it may be a bug within the minim library.

Final Project - Part One (Proposal)

As indicated in my earlier proposal for Project 2, I intend to expand upon the sample playback program which I have been designing in the style of an Akai MPC:

The final version will include a full 4x4 grid of sample pads, and multiple banks of audio samples, which will be selectable from a drop-down menu. I hope to implemement this using a series of arrays (one for each sample bank), which will be selectable using a ControlP5 Group. I will most likely include a wider range of sounds in each bank (pads, atmospheres, etc). This will allow the user to layer elements to create more interesting textures than the simple drum sounds included now.

At the moment, I have been experiencing some glitches in audio output when using the minim library. Should this persist, I may have to explore other audio libraries such as SoundCipher or Ess.

Final Project - playBack (performance.drum.machine)

NOTE: The web applet posted here features all functionality except for MIDI implementation. The browser version has also shown poor performance of the ControlP5 slider object.

Stand-alone version is available here, and is recommended for best performance. The full MIDI version is also available here, and should only be launched when a MIDI hardware device is connected.