PowerPoint Presentation - Navigable Space
Download
Report
Transcript PowerPoint Presentation - Navigable Space
Some Thoughts on
Composing a Navigable Space
Dr. Dan Hosken
Assistant Professor of Music
California State University, Northridge
Presented at:
SEAMUS 2004
San Diego, CA
March 25, 2004
Definition
Navigable Space: a real or virtual
environment that is traversed by a user
or surrogate. Aspects of that navigation
such as position, velocity, acceleration
and “effort” serve as input to an
interactive music system.
Related Work
Gerhard Eckel (esp. Camera Musica)
(http://viswiz.gmd.de/~eckel/publication
s/eckel97b/eckel97b.html)
Char Davies (esp. Osmose)
(http://www.immersence.com/)
Tod Machover’s Brain Opera (esp. the
“Harmonic Driving” game)
(http://brainop.media.mit.edu/)
Scale
Concept realizable on different scales
Videogame-style (keyboard/joystick)
Fully immersive VR environment
“Sound Space I” is currently realized on
the videogame-style scale
NavigationSound Parameter
mappings should scale
Physicality
“Character” subject to some physical
laws
Expenditure of energy is special
concern
“Physicality” implies a sense of physical
reality— not necessarily subject to literal
laws of physics.
Parameter Mapping Levels
Direct: motion directly affects aural result
(e.g., localizing a sound source to the
onscreen character)
Indirect: motion affects a higher level entity
(e.g., causes a group of tones to brighten or
distort)
Abstract: motion tendencies affect the
tendencies of higher level entities (e.g.,
sustained activity affects the pitch evolution of
the materials)
Sound Space I Technology
Macromedia’s Director multimedia
authoring software
Niels Gorisse’s CPS—patchable
realtime synthesis software (Max/MSPish) based on MPEG-4 SA (Csound-ish)
CPS is also implemented as a Director
Xtra—CPS patches can be saved as
Lingo scripts
CPS Interface
CPS Patch as Lingo script
-- Subpatch: 'RMShaper4'
-- Subpatch: 'RingModOscil'
set sinus174 to CPSgetObject("sinus")
set multiply175 to CPSgetObject("*")
set multiply176 to CPSgetObject("*")
CPSOBJConversate(multiply176,"_UP")
CPSOBJConversate(multiply176,"_UP")
CPSOBJConversate(multiply176,"_UP")
set multiply177 to CPSgetObject("*")
CPSOBJConversate(multiply177,"_UP")
CPSgetConnection(multiply175,40,sinus174,20)
CPSgetConnection(sinus174,30,multiply176,10)
CPSgetConnection(multiply176,30,multiply177,11)
Setting CPS Parameters
CPSOBJkin(polytab4,5.0,0)
CPSOBJkin(dur4,250.0,0)
CPSOBJkin(att4,50.0,0)
CPSOBJkin(dec4,50.0,0)
CPSOBJkin(sus4,1.0,0)
CPSOBJkin(rel4,100.0,0)
CPSOBJkin(numberField266,58.0,0)
CPSOBJkin(numberField267,0.88,0)
CPSOBJkin(rmfreq41,1.0,0)
CPSOBJkin(rmamp41,0.5,0)
CPSOBJkin(rmfreq42,2.0,0)
CPSOBJkin(rmamp42,0.0,0)
CPSOBJkin(rmfreq43,3.0,0)
CPSOBJkin(rmamp43,0.0,0)
CPSOBJkin(rmfreq44,3.2,0)
CPSOBJkin(rmamp44,0.0,0)
CPSOBJkin(rmfreq45,3.7,0)
CPSOBJkin(rmamp45,0.0,0)
--polynomial table
--note duration
--Attack (ms)
--Decay
--Sustain Level
--Release
--unlabeled numberfields
--Frequency factor for ring mod 1
--Amplitude of ring mod 1
--Frequency factor for ring mod 2
--etc.
Sound Space I Visual Interface
Cindercone, Lassen National Park, CA
Sound Space I Visual Interface
Invisible overlaid shapes delineate “hot” and
“cool” zones
Asteroids-style ship is controlled by arrow
keys plus a ‘F’ast key
Friction factor is applied to ship movement—
higher in hotter zones, lower in cooler zones
Doors to lead to other landscapes (future)
Invisible, moving trap doors (future)
Sound Space I Mapping: Engine
Simple phasor at nearly sub-audio run
through low-pass resonant filter
Largely “Direct” mappings
Horizontal position Pan
Speed Frequency (ca. 16 to 20 Hz)
“Effort” Filter Cutoff
Sound Space I Mapping: Shaper
Non-linear waveshaping instrument with ring
modulation
Largely “indirect” and “abstract” mappings
Note-level parameters include ASDR
envelope parameters, distortion index, and
ring modulation frequency factor
Notes are played automatically in a regular
rhythm with pitches chosen from tables
Sound Space I Mapping: Shaper
Global parameters include note
duration, inter-onset time, inter-onset
randomization amount
Pitches are chosen from tables
Transposition determined by effort level
associated with zone
Effort associated with various zones
determine most parameters
Temporal Shape: Activity Level
User actions determine much of the temporal
evolution
An “activity level” is calculated from the user’s
persistence in various zones
Currently the rate of activity level
accumulation is externally set
Activity level determines the pitch collection
“expansion” and the octave offset
Each landscape may have a different balance
of “hot” and “cool” zones
[email protected]
http://www.csun.edu/~dwh50750/