tabula rasa Exploring sound/gesture typo-morphology for enactive - - PowerPoint PPT Presentation

tabula rasa
SMART_READER_LITE
LIVE PREVIEW

tabula rasa Exploring sound/gesture typo-morphology for enactive - - PowerPoint PPT Presentation

tabula rasa Exploring sound/gesture typo-morphology for enactive computer music performance IRCAM Musical Research Residency 2011 Thomas Grill http://grrrr.org Contents Introduction concepts Implementation current status


slide-1
SLIDE 1

tabula rasa

Exploring sound/gesture typo-morphology for enactive computer music performance IRCAM Musical Research Residency 2011 Thomas Grill http://grrrr.org

slide-2
SLIDE 2

Contents

  • Introduction – concepts
  • Implementation – current status
  • Implications – outlook
slide-3
SLIDE 3

Enactive musical performance with recorded sounds

  • Make sampled sounds within a corpus

accessible in an intuitive manner, e.g. for live performance

  • Resulting sound should preserve bonding to

source material

slide-4
SLIDE 4

Enactive musical performance with recorded sounds

  • Organization – by which criteria?
  • Interfacing – visual, haptic, auditory?
  • Controlling and synthesizing –

how to preserve qualities of corpus elements / achieve a predictable stream of sound?

slide-5
SLIDE 5

Enactive musical performance with recorded sounds

  • Design the interface in a way that it is

immediately self-explaining ➔ enactivity

  • Use principles of cross-modality ➔ embodiment
  • Associate perceptual characteristics in corpus

sounds to characteristics of interaction

slide-6
SLIDE 6

In the mines of matter / 2ex (2010)

slide-7
SLIDE 7
slide-8
SLIDE 8

Enactive musical performance with recorded sounds

  • Analyze hand gestures and surface interaction

sounds

  • Associate interaction traces with elements in

sound corpus (spectral and temporal)

  • Synthesize audio stream, corresponding to both

the corpus and the real-time gestures

slide-9
SLIDE 9
slide-10
SLIDE 10
  • Expressive (sonic complexity)
  • Withstand and process large dynamic range

(very soft to brute force)

  • High resolution ("analog" feel)
  • No obstruction between performer & audience
  • Portable & stage compatible (lighting, beer)

Musical interface

slide-11
SLIDE 11
slide-12
SLIDE 12
  • Use different (exchangeable / modular) surfaces
  • Tile surfaces for larger area
  • Augment interaction using preparation –
  • bjects to interact with
  • Use interaction position for selection of sound

material

Musical interface – bonus

slide-13
SLIDE 13

Musical interface

30cm contact mics 40-50cm polyacrylic interaction surface flexible, microstructured (<1mm)

]

foam spacing (~10mm) foam rubber antislip (2mm) MDF base (3mm)

[

force sensitive sensors Arduino board (ADC) mic pre-amps and ADC

slide-14
SLIDE 14

Musical interface – Sensorics –

  • 4x pickup microphones provide rich sonic trace
  • f surface interaction
  • Matrix of force sensors provides additional data
  • n interaction strength
  • Combined: data on interaction position
slide-15
SLIDE 15

Musical interface

slide-16
SLIDE 16

Musical interface – Force sensors –

  • 4x4 sensors – Arduino Mega has 16 ADCs

(10 bits @ max 10kHz)

  • FSR sensor range ~100g – 10kg

(resolution 10g)

  • 2D interpolation (e.g. with peak picking)

should allow position detection

slide-17
SLIDE 17

Musical interface – Contact microphones –

  • Piezo discs exhibit large tolerances in their

resonance modes

  • Larger piezo discs have lower fundamental

resonances and are more sensitive

  • Background noise / hum
  • 2D position detection through amplitudes
  • Alternative: more expensive contact mics
slide-18
SLIDE 18

Gesture segmentation

  • GestureFollower follows corpus phrases

always from the start

  • Necessity for meaningful segmentation
  • The interaction sound is very noisy

material + background noise / hum

  • Use combination of onset detection and

statistical segmentation

slide-19
SLIDE 19

Gesture segmentation

  • Onset detection (Jean-Philippe Lambert):
  • Statistical segmentation (~Arnaud Dessein):

DKL

past lookahead Gaussians (diagonal covariances) Kullback-Leibler divergence

  • i

log(melbandi) − log(melbandi) ≥ threshold

slide-20
SLIDE 20

Gesture segmentation

slide-21
SLIDE 21

Gesture tracing

  • GestureFollower can process ~100 parallel

phrases at a time

  • A typical sound corpus consists of 1000s of

sample segments

  • Phrase length of interaction data and

corpus don't match – what to do when corpus phrase ends before the interaction gesture is finished?

slide-22
SLIDE 22

Anticipation

  • We need heuristics to reduce the number of

parallel phrases taken into account by GF

  • We need to be able to (reasonably) continue

a prematurely ended corpus phrase

  • Employ classification of whole segments to

predict possibly following segments (Markov Model)

slide-23
SLIDE 23

Analysis – interaction sound

Interaction sound Segmentation Feature analysis Whitening Transition probabilities Front GMM Posteriors Back GMM Posteriors

slide-24
SLIDE 24

Segmented audio Features Posteriors Gaussian mixture model

slide-25
SLIDE 25

Segment backs Transition probabilities

following preceding

Segment fronts

slide-26
SLIDE 26

Analysis – sound corpus

Corpus sound Segmentation Feature analysis Whitening Front Posteriors Transition probabilities Front GMM Posteriors Back GMM Posteriors

slide-27
SLIDE 27

Analysis – sound corpus

Corpus sound Segmentation Feature analysis Whitening Front Posteriors Gesture learning Downsampling Transition probabilities iors Back GMM Posteriors

slide-28
SLIDE 28

Live – gesture following

Transition probabilities iors Back GMM Posteriors

Transition probabilities

* *

Candidate segments Gesture following Downsampling Interaction Sound Segmentation Feature analysis Whitening Back Posteriors Corpus posteriors

slide-29
SLIDE 29

Live – sound synthesis

  • Candidate segments come along with individual

probabilities

  • List can be ordered resp. probabilities used to

seed GestureFollower

  • Thresholds can be used for covered total

probability or maximum number of candidates

slide-30
SLIDE 30

Live – gesture following

Transition probabilities

* *

Corpus sound Candidate segments Gesture following Gesture synthesis Downsampling Interaction Sound Segmentation Feature analysis Whitening Back Posteriors Corpus posteriors

slide-31
SLIDE 31

Live – sound synthesis

  • GestureFollower delivers (for each input frame)

individual phrase likelihoods, time positions and speed estimates

  • We need to take into account varying tracing

speeds for synthesis

  • Use some speed-variable (granular) synthesis

technique

slide-32
SLIDE 32

Implementation

  • Whole system based on Max
  • Feature analysis and segmentation is done using FTM
  • Model data (GMMs, transition matrix),

corpus data (segmentation and posteriors) and GestureFollower data is stored using mubu

  • Clustering and anticipation is done using Python /

numpy / scikits.learn by means of py/pyext

slide-33
SLIDE 33

What is missing?

  • Speed-variable sample playing
  • Integrate force sensor data

e.g. for material selection (position) and dynamics processing (strength)

  • Finish interface hardware
slide-34
SLIDE 34

Future improvements – software –

  • Use higher-level (perceptual) features to describe

sound characteristics

  • Tune segmentation algorithm
  • Evaluate anticipation strategy (clustering method,

front/back model, probability thresholds)

  • Find out feasible feature rate for GestureFollower
  • Seed GestureFollower with candidate probabilities
slide-35
SLIDE 35

Future improvements – hardware –

  • Use clamp-frame mechanism to allow exchangeable

surfaces (if possible)

  • Explore drum-skin-like surfaces (not damped)
  • Tactile feedback (potential cooperation with ISIR

haptics lab at Paris 6)

  • Visual feedback (projection on surface)
slide-36
SLIDE 36

Artistic implications

  • Staging / ways to interact (novel instrument)
  • How to radiate sound?
  • Linking performance concepts to sound, using

additional objects and respective sound corpus

slide-37
SLIDE 37

Thanks!

See you!