Intertnational Festival/Competition SYNC.2010 Tutorial(1)
Technology for Computer Music / Interactive Multi-Media Performance with New Interfaces
Yoichi Nagashima (SUAC/ASL)
(1) Performance, Sensor, Interaction
At first, I introduce the key concepts - "Algorithmic Composition", "Sensor", and "Interaction" briefly with Max/MSP/jitter DEMO patches.
- Max/MSP - Algorithmic Composition Environment with MIDI and audio
- Composition is "construction of interaction"
- jitter - Graphical Environment in Max/MSP
- Sensor information
(2) Why developing/using sensors in composition ?
Secondly, I will introduce the movies of my works of interactive multimedia arts using original sensors, as samples of the theme of this tutorial.
CIS (Chaotic Interaction Show)
Muromachi
Strange Attractor
Virtual Reduction
David
Asian Edge
Johnny
Brikish Heart Rock
Atom Hard Mothers
Ten Nimo Noboru Samusa Desu
Visional Legend
Bio-Cosmic Storm
Eternal Traveller
Voices of Time
Piano Prayer
Great Acoustics
Beijing Power
Wandering Highlander
Windmill (Installation and Performance) produced by my students
Visional Legend ver.2001
tegoto
BioCosmicStorm-II
Japanesque Germanium
Berlin Power
Quebec Power
Wriggle Screamer / Wriggle Screamer II
Nature System
Cyber Kendang
Resonated Vibrations
controllable untouchableness
(3) Sensors and Microcoltrollers
- MIDI
- AKI-H8
- I-Cube
- Gainer
- Arduino
- Funnel
- Propeller
(4) Treating Sensor Information in Max
Here are some sample patches which treats the sensor information in composition / performance control. This technique can be used in MSP sound programming and in jitter graphic programming.
Gating
At the front-end of the MAX patch, I set gating switch for sensor information. Thus, unexpected inputs troubles will be rejected.Cutting Period
Using sensors as trigger commander, sometimes I want to cut for a moment after an event. This simple patch realizes the Cutting Period of system senseless.Sampling
If sensor information traffic is too heavy, this patch samples with the [sampling time] period.Averaging (Filtering)
If sensor data moves too sensible or with higher frequency noises, this patch reducts the higher noisy movement. This is 5 stages moving avarage calculation, or Low Pass Filtering.Threshold Switch
This patch outputs triggered bang when input level crosses over than preset threshold.Peak Switch
This patch generate a trigger bang when input level is over the higher threshold level and under the lower threshold level within the set interval time.Level Conversion (Normalize)
Some analog sensors output the regular range voltage of A/D input of AHI-H8 (+5V - 0V), but many analog sensors cannot output this full range. For example, one sensor output range is +1.5V - +4.0V. This patch converts these narrow input voltage to full range fo MIDI (0-127). You may set the lowest voltage to [offset down], and set the gain [100 = equal gain].Inversion (Polarity)
This patch converts the direction of the value of sensors. I know many of you used this patch between MIDI Keyboard Note Number and GM module !Random Generator(1)
This patch is a very simple sample of algorithmic generator of [random music]. You can control the sliders of each parameter.Random Generator(2)
You can control the interval of each events by sensor information. This means [tempo] control in music.Random Generator(3)
You can control the ragne of rendom genaration by sensor information. This means [note range] of the part (instrument).Random Generator(4)
Normal [random] object outputs the [0-n] integer, so the scale is chromatic. You can set the multiplied value with this random integer, simplest [scale] is generated. For example, [* 1] means chromatic scale, [* 2] means the whole tone scale, [* 3] means the Diminish 7th scale, [* 4] means the Augmentd scale, [* 5] means the Sus4 scale. I like [* 2] character, so I use frequently in my work...Random Generator(5)
You can control the offset of genarated note number by sensor information. This also means [note range] of the part (instrument).CHAOS Generator(1)
This patch is the simplest demonstration of Chaos. 1-dimensional simplest chaos is calculated with the [Logistic Function]. The value (floating, not integer) [X(n)] range is 0.0 - 1.0. The chaos parameter [Myu] range is 3.0-4.0. So the calculation equation is very simple:Thus, next [X(n+1)] falls in the same range 0.0-1.0, but in the chaos zone with the parameter [Myu], the final result cannot be respected by anyone (by God!). This patch demonstrate the calculation and the behavier of the Chaos. You can [listen to] the Chaos !! X(n+1) = Myu * X(n) * { 1.0 - X(n) }
CHAOS Generator(2)
This patch controls the Chaos parameter [Myu] by sensor information. But, using this type of Chaos in music, many audience cannot feel whether [random] or [chaotic vibration]. This is deeply theme of [chaos in music], I think.Tonality Generator
This patch is a sample of [weighten-scale] method. You can control each notes[C,C#,D,.....,Bb,B] value, and this value is the possibility of random generated scale of the note. You can easily apply the sensor information to this patch, so this is your homewark.