Professional Documents
Culture Documents
d'Informatique
Musicale
Captation, Transformation, Sonification
21 au 23 mai 2014
Bourges
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
Sessions et confrences______________________________________________________11
Session 1, Notations
Session 2, Langages
3
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
Olivier Blanger
Cecilia 5, la bote outils du traitement audio-numrique___________________________64
Pierre Guillot
Une nouvelle approche des objets graphiques et interfaces utilisateurs dans pure data____71
Tho de La Hogue, Myriam D. Catherine, Pascal Baltazar, Jaime Chao et Clment Bossut
OSSIA : Open Scenario System for Interactive Applications_________________________78
Jonatas Manzolli
From Concept to Sound: Transformation through Live Interactive Composition_________87
Fernando Iazzetta
Experimenting with transformation_____________________________________________89
Roger Cochini
Dpartement de musique lectroacoustique et de cration, Conservatoire de musique et de
danse de Bourges___________________________________________________________91
Vittorio Montalti
Conservatoire de Tours______________________________________________________93
Session 5, Analyse
Didier Guigue
Vers un modle pour l'analyse de l'orchestration : rapport de recherche en cours________95
Raed Belhassen
Structures modales et ornementations dans la musique arabe : modlisations et prsentation
dune bibliothque dobjets dans Csound_______________________________________102
4
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
Laurent David, Mathieu Giraud, Richard Groult, Florence Lev et Corentin Louboutin
Vers une analyse automatique des formes sonates________________________________113
Session 7, Composition
Daniel Puig,
Systemic Thinking and Circular Feedback Chains in A Live-Eletronics Algorithm For "Gosto
De Terra" _______________________________________________________________147
Table
Ronde,
Avec la participation de Anne Sdes, Myriam Desainte-Catherine, Yann Orlarey, Laurent
Pottier, Alain Bonardi, Pierre Michaud et Julien Rabin.
Bilan et perspectives de la revue francophone dinformatique musicale_______________153
5
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
Annexes
________________________________________________________________________155
Peter Sinclair,
Sonification And Art, Rsum tendu__________________________________________157
6
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
Le son a une place particulire dans la vie de tous les jours et son utilisation dans un
environnement scientifique, comme vecteur de prsentation des donnes, est de plus en plus
rpandue. Nous consacrons ainsi, lors des Journes dInformatique Musicale Bourges, une
journe cette prsentation de la connaissance sous forme sonore - Journe Sonification. Elle
prend sa place aux cts des journes ddies au geste - Journe Captation - et au traitement
du signal - Journe Transformation.
Cest en sinspirant de ces sources historiques que MusInfo, avec le soutien de lAssociation
Franaise dInformatique Musicale et en collaboration avec lENSA et lIUT de Bourges,
reprend la relve et organise les Journes dInformatique Musicale Bourges, accompagnes
de la premire dition des Journes Art & Science en Rgion Centre avec un nouveau
Concours de composition lectroacoustique. Nous souhaitons ainsi ouvrir une nouvelle page
dans lhistoire de la musique lectroacoustique et de la recherche en informatique musicale au
centre de la France.
Alexander Mihali
Prsident de MusInfo
7
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
8
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
Comit
dorganisation
Administration
Alexander Mihalic, IMRA Marseille / IRCAM Paris
Communication
Fabien Cothenet, Mmoire Magntique, Imphy
Scientifique
Mikhail Malt, IRCAM, IReMus, MINT OMF, Sorbonne, Paris
Artistique
Robert Rudolf, France Musique Radio France / Conservatoire de Noisy-le-Sec
Comit
scientifique
Karim Barkati, Ircam, France ; Olivier Baudouin, MINT-OMF, Paris-Sorbonne, France ; Gregory Beller, Ircam,
France ; Didier Guige, University of Paraiba, Brsil ; Alain Bonardi, Ircam, France ; Bruno Bossis, APP
Universit Rennes 2 OMF MINT Paris Sorbonne, France ; Jean Bresson, UMR STMS: IRCAM-
CNRS-UPMC, France ; Claude Cadoz, Lab. ICA, Grenoble Inst. of Techn. /ACROE, Min. de la Culture et de la
Communication, France ; Thierry Coduys, Le Hub, France ; Arshia Cont, Ircam, France ; Pierre Couprie
IReMus, Paris-Sorbonne University ESPE, France ; Eric Daubresse, Ircam, France ; Myriam Desainte-
Catherine, LaBRI, Universit de Bordeaux, France ; Frdric Dufeu, CeReNeM University of Huddersfield,
Royaume Uni ; Franois-Xavier Fron, LaBRI CNRS (UMR 5800), France ; Jean-Louis Giavitto, Ircam
UMR STMS 9912 CNRS, France ; Karim Haddad, Ircam, France ; Fernando Iazzetta, University of Sao Paulo,
Brsil ; Florent Jacquemard, INRIA Ircam, France ; Emmanuel Jourdan, Ircam, France Cycling74, E.U. ;
Serge Lemouton, Ircam, France ; Marco Liuni, Ircam CNRS STMS, Analysis/Synthesis Team, France ;
Universit di Firenze, Dip. di Matematica U. Dini , Italie ; Grgoire Lorieux, Ircam, France ; Mikhail Malt,
Ircam IreMus MINT OMF, Sorbonne, France ; Jnatas Manzolli, University of Campinas NICS, Brsil ;
Tom Mays, CNSMD de Paris, CICM Paris VIII, France ; Nicolas Viel, Paris IV Sorbonne, France ; Geoffroy
Peeters, Ircam, France ; Laurent Pottier, UJM-CIEREC, France ; Julien Rabin, GMEA, France ; Jean-Michel
Raczinski, Arkamys, France ; Geber Ramalho, Universidade do Pernanbuco, Brsil ; Patrick Sanchez, CNRS
LMA Equipe SONS, France ; Stephan Schaub, University of Campinas NICS, Brsil ; Anne Sedes, Paris
VIII, France ; Peter Sinclair, Locus Sonus, France ; Benjamin Thigpen Musicien indpendant ; Vincent Tiffon,
Univ. de Lille-Nord de France, CEAC EDESAC IRCAM-CNRS, France ; Todor Todoroff,
UMONS/TCTS/ARTeM, BElgique
9
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
10
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
11
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
12
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
Journe Captation
mercredi, 21 mai 2014
13
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
14
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
Movements and gestures are an integral part of music performance. Musicians playing acoustic
instruments or digital musical instruments make a variety of movements that are either essential or
ancillary to the production of sound, contributing to the experience of the performer as well as to
the way and audience perceives the music.
In this talk I will discuss various research projects at the Input Devices and Music Interaction
Laboratory (IDMIL) at McGill University dealing with the measurement of movement in music
performances, focusing on motion capture of a variety of instruments (e.g. clarinet, violin, timpani)
as a means to a) quantify the movements present in performance with acoustic and digital musical
instruments, b) evaluate the repeatability of ancillary performer movements, c) create pedagogical
tools to improve the learning of musical instruments, and d) provide control data for the synthesis of
a virtual musician (timpanist).
Examples will be provided to illustrate the benefits (and limitations) of this approach.
15
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
16
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
17
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
E XEMPLE
[
a&& \alter<-1.5>(a) a& \alter<-0.5>(a)
a \alter<0.5>(a) a# \alter<1.5>(a)
\alter<1.8>(a)
]
18
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
E XEMPLE
[
Figure 6. Clusters : interactions avec dautres tags \fBeam(a/16 a a a/32) \fBeam(a/64 a a a a/16)
]
3.5. Glissando xxx xxx xxx xxx xxx xxx xxx xxx xx
& X X X X xX xX xX xX xX
Le glissando se prsente classiquement comme une li-
gne joignant deux notes dcales dans le temps (figure 7),
indiquant ainsi un glissement, continu ou non suivant le
type dinstrument, dune hauteur une autre. Figure 8. Feathered beams plus complexes
La syntaxe choisie a t la suivante :
19
PDF Editor
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
(i.e \fBeamBegin et \fBeamEnd), permettant alors, non les dures de dpart et darrive qui dfinissent las-
seulement de chaner deux beams par une note (figure 9), pect graphique du feathered beam.
mais aussi de les faire se chevaucher sur plusieurs notes.
Ces diffrents niveaux de description nous poussent
faire une claire distinction entre laspect temporel et las-
E XEMPLE pect graphique de notre groupe de notes. Il a t dcid
[ de laisser au compositeur la libert de donner son fea-
\fBeamBegin:1 c/8 d e/16 thered beam laspect graphique quil dsire, indpendam-
\fBeamBegin:2 f/32 \fBeamEnd:1 ment des dures internes de ses notes. Il pourra ainsi jouer
e/16 d/8 c \fBeamEnd:2 sur les espacements entre notes, sur le nombre de notes,
]
et sur la dure totale de manire "classique" en imposant
chaque note une dure, et en veillant ce que la somme
xx xx xx xx de toutes les notes corresponde la dure totale souhaite.
x xx x
& _Xxx xXx xX Xx xX Xx _Xxx
Cette dure totale peut tre indique sur la partition grce
au paramtre drawDuration (figure 11).
E XEMPLE
Figure 9. Feathered beams chans [ \fBeam<drawDuration="true"> (
a/8 a a/16 a a a/32 a )]
On remarque que, mme dans un ouvrage tel que celui
dE. Gould [4], peu de dtails sont donns sur cette nota- 1/2
tion, et on se heurte rapidement des incohrences telles xxXx xx xx xx xx xx xx
que celle de la figure 10 tire de ce mme ouvrage : on
& Xx Xx Xx Xx Xx Xx
veut faire tenir en un temps une croche et quatre notes de
dures infrieures la croche mais suprieures la triple-
croche.
TM Figure 11. Reprsentation de la dure
PDF Editor
Sans plus dindication de sa part, laspect graphique
suivra les dures relles des notes et prendra comme points
de dpart et darrive les dures des premire et dernire
notes. Cest le cas de la figure 11.
En revanche, le param durations pourra lui permettre
Figure 10. Exemple dincohrence entre la dure totale et dimposer un aspect graphique tout autre, lui donnant ainsi
les dures individuelles des notes dun groupe li (Behind la possibilit dindiquer linterprte un changement de TM
PDF Editor
hrent avec les dures intrinsques des notes, mais ayant
Ce manque dune exacte cohrence entre tempo et as- du sens dans linterprtation (figure 12).
pect graphique est galement soulign par Kurt Stone [16] :
"Besides, the gradual increase or decrease in the num- E XEMPLE
ber of beams makes exact indications of beat-units impos- [ \fBeam<durations="1/16, 1/64",
sible" (p. 124). drawDuration="true">(
a/8 a/16 a a a/32 a )]
Ainsi on voit limportance des choix de design de ce
symbole, sur la manire de le dcrire textuellement, de le
dessiner en particulier dans le cas de plusieurs voix si- 3/8
multanes, et de manire gnrale sur la libert laisse xxXx xxXx xxXx xxxxX xxx xxx
lutilisateur. & Xx Xx
Concernant les possibilits de description donnes
lutilisateur, nous avons pu voir que plusieurs critres, par-
fois incohrents entre eux, pouvaient intervenir dans la Figure 12. Aspect graphique impos par lutilisateur
description et devaient pouvoir tre imposs par lutilisa-
En rsum, la syntaxe gnrique est la suivante :
teur :
\fBeam<params>(notes)
le nombre de notes dans le groupe ; params :
leurs dures individuelles et intrinsques qui dfi- - durations = "firstDur", "lastDur" :
nissent galement leur espacement ; dure des premire et dernire notes
la dure totale du groupe, directement dpendante - drawDuration : TM
PDF Editor
20
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
3.7. Tags \staffOff et \staffOn jpg ou bmp. Les paramtres de contrle permettent dajus-
ter la taille et la position de limage dans la partition.
Les tags \staffOff et \staffOn permettent de faire
Sa syntaxe est la suivante :
disparatre et apparatre des parties de la partition, en par-
ticulier pour cacher une voix muette pendant un certain 1) \symbol<params>
temps (figure 13). 2) \symbol<params>(notes)
Son usage est gnralis tous les lments et toutes params :
les voix de la partition et permet des montages plus com- - filePath : chemin du fichier
- position = [top | mid | bot] :
plexes (figure 14).
position de limage
- size : taille de limage
- w/h : largeur/hauteur de limage
21
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
[ \staffFormat<lineThickness=0.5>
PDF Editor
\decresc<thickness=0.8> (g d e f) si celle-ci provient dune note plus longue dcoupe au-
] tomatiquement, mais de sarrter normalement la pro-
} chaine note si la liaison a t explicite par lutilisateur,
qui pourra alors dcider de rpter le trille sur cette autre
&X x xX
3
xX note, ou non. (figure 18)
22 TM
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
xxXx xxx xxXx Figure 21. Glissandi entre accords et clusters avec param
XxXx de remplissage
& xX xXx
de la figure 20. Il est alors possible de faire appel une se- principale commune (figure 22).
conde voix, et au tag \staff<numro de porte> qui
pourra crer sur une mme porte dautres glissandi en
parallle et indpendants des premiers (figure 20).
TM
[
PDF Editor
E XEMPLE
E XEMPLE
PDF Editor \beam(
\fBeam(c/8 e d f g/32)
\fBeam(a/16 f e d c/64)
)
[ \glissando(e {d,f,a} g) b ]
]
xxx xxXx xx
& xxX XXxXx hXhh xx xxx xxx xx xx xxX xx xx xxx xx
& _Xxxx xX Xx xX Xx xX xXx xxX
_Xxx
{
[ \glissando(e {d,f}) empty b ],
[ \staff<1> empty \glissando(a g) empty ] Figure 22. Feathered beams englobs dans un plus grand
}
PDF Editor
sando (empty reprsente une note invisible.)
PDF Editor
ner la possibilit de remplir lespace entre ces glissandi tes prcdemment. Elles ont t ralises principalement
grce un param fill. Une certaine flexibilit peut tre la demande de compositeurs et au service de crations
trouve dans le dessin grce aux params graphiques dx1, TM
en cours. Elles sintgrent dans le moteur existant dans
dx2, dy1, dy2, ainsi que thickness qui permettent de le respect des diffrentes combinaisons du langage. Leur
PDF Editor
modifier laspect du glissando (figure 21). implmentation a soulev des problmes de design qui ont
23
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
t rsolus en laissant lutilisateur le choix entre les dif- [13] G. Read. Music notation : a manual of modern prac-
frentes possibilits. Elles sont disponibles avec la version tice. Crescendo book. Allyn and Bacon, 1969.
1.52 de la librairie G UIDO. Le projet G UIDO est un projet [14] Kai Renz. Algorithms and Data Structures for a
open source hberg sur Sourceforge 1 . Music Notation System based on GUIDO Music No-
tation. PhD thesis, Technischen Universitt Darm-
6. REFERENCES stadt, 2002.
[15] E. Selfridge-Field. DARMS, Its Dialiects, and Its
[1] C. Daudin, Dominique Fober, Stephane Letz, and
Uses. In Beyond MIDI, The handbook of Musical
Yann Orlarey. La librairie guido une boite outils
Codes., pages 163174. MIT Press, 1997.
pour le rendu de partitions musicales. In ACROE,
editor, Actes des Journes dInformatique Musicale [16] K. Stone. Music Notation in the Twentieth Century :
JIM09 Grenoble, pages 5964, 2009. A Practical Guidebook. W W Norton & Company
Incorporated, 1980.
[2] Dominique Fober, Yann Orlarey, and Stephane Letz.
Inscore an environment for the design of live mu-
sic scores. In Proceedings of the Linux Audio Confe-
rence LAC 2012, pages 4754, 2012.
[3] M. Good. MusicXML for Notation and Analysis. In
W. B. Hewlett and E. Selfridge-Field, editors, The
Virtual Score, pages 113124. MIT Press, 2001.
[4] E. Gould. Behind Bars : The Definitive Guide to
Music Notation. Faber Edition Series. Faber Music
Limited, 2011.
[5] Walter B. Hewlett. MuseData : Multipurpose Re-
presentation. In Selfridge-Field E., editor, Beyond
MIDI, The handbook of Musical Codes., pages 402
447. MIT Press, 1997.
[6] Richard Hoadley. Calders violin : Real-time nota-
tion and performance through musically expressive
algorithms. In ICMA, editor, Proceedings of Inter-
national Computer Music Conference, pages 188
193, 2012.
[7] H. Hoos, K. Hamel, K. Renz, and J. Kilian. The
GUIDO Music Notation Format - a Novel Approach
for Adequately Representing Score-level Music. In
Proceedings of the International Computer Music
Conference, pages 451454. ICMA, 1998.
[8] H. H. Hoos and K. A. Hamel. The GUIDO Mu-
sic Notation Format Specification - version 1.0, part
1 : Basic GUIDO. Technical report TI 20/97, Tech-
nische Universitat Darmstadt, 1997.
[9] David Huron. Humdrum and Kern : Selective Fea-
ture Encoding. In Selfridge-Field E., editor, Beyond
MIDI, The handbook of Musical Codes., pages 376
401. MIT Press, 1997.
[10] Smith Leland. SCORE. In Beyond MIDI, The hand-
book of Musical Codes., pages 252280. MIT Press,
1997.
[11] Han-Wen Nienhuys. Lilypond, automated music for-
matting and the art of shipping. In Forum Interna-
cional Software Livre 2006 (FISL7.0), 2006.
[12] Han-Wen Nienhuys and Jan Nieuwenhuizen. Lily-
Pond, a system for automated music engraving. In
Proceedings of the XIV Colloquium on Musical In-
formatics (XIV CIM 2003), May 2003.
1 . http://guidolib.sf.net
24
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
Camilo Rueda
Jaime Arias, Myriam Desainte-Catherine, Sylvain Salvati
Departamento de Electrnica y
Univ. Bordeaux, LaBRI, Bordeaux, F-33000, France
Ciencias de la Computacin
CNRS, UMR 5800, Bordeaux, F-33000, France
Pontificia Universidad Javeriana
IPB, LaBRI, Bordeaux, F-33000, France
Cali, Colombia
{jaime.arias, myriam, sylvain.salvati}@labri.fr
crueda@javerianacali.edu.co
25
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
the R EACTIVE ML programming language. In Section 3 In Figure 1 we illustrate an interactive scenario with all
we describe the implementation in R EACTIVE ML of the its temporal relations. Here, the horizontal axis represents
new interpreter of interactive scores. Next, in Section 4 we time and the vertical axis has no meaning. Additionally,
present the improved visualization system in INS CORE. the start and end of boxes are partially defined by tempo-
Finally, in Section 5 we present related work, conclusions, ral relations that are represented as solid (rigid relation)
and ideas for future work. and dashed (flexible relation) arrows. Moreover, tabs rep-
resent the interactions points of boxes.
2. PRELIMINARIES
0
3
In this section we present the I - SCORE system and the nec- r1 r3
1
r5
essary notions of R EACTIVE ML language. 4
r7
2.1. I- SCORE
r6
r2 r4 5
2
I - SCORE [3, 17] is a software for composing and execut-
ing interactive multimedia scenarios [2]. It consists of two
sides: authoring and performance. In the authoring side,
the composer designs the multimedia scenario while in the 6
26
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
Box 4 starts 2 seconds after the start of its parent of logical instants. Additionally, parallel processes are ex-
(i.e., box 3). Its duration is the interval [3, 6], then ecuted synchronously (lock step) and they communicate
the box may be stopped after 3 seconds of its start- with each other in zero time. This communication is made
ing by triggering the interaction point. It is impor- by broadcasting signals that are characterized by a status
tant to know that the box will stop when it reaches defined at every logical instance: present or absent. In
its maximum duration (i.e., 6 seconds) if the inter- contrast to E STEREL [7], the reaction to absence of sig-
action point is not triggered before. nals is delayed, then the programs are causal by construc-
tion (i.e., a signal cannot be present and absent during the
Box 5 starts 3 seconds after the start of the box 3. same instant). Moreover, the reactive model provides dy-
Its duration is 1 second. namic features such as dynamic creation of processes. In-
The scenario finishes when the box 6 finishes and 4 deed, R EACTIVE ML provides a toplevel [15] to dynami-
seconds have elapsed after the end of the box 3. cally write, load and execute programs.
In R EACTIVE ML, regular OC AML functions are in-
Following [17], we translated the score into its equiva- stantaneous (i.e., the output is returned in the same in-
lent HTSPN structure (Figure 2). For the sake of simplic- stant) whereas processes (process keyword) can be exe-
ity, we do not show the time interval on the arcs. Note that cuted through several instants. Next, we use the program
transitions with double stroke are those with an interaction shown in Figure 3 to describe the basic expressions of R E -
point. ACTIVE ML.
start(4) end(4)
1 let process killable_p p s =
start(1) end(1) 2 do
3 run p
end(3)
start(3) 4 until s done
start(0)
5
start(5) end(5)
start(2) end(2)
end(0) 6 let process wait tic dur =
7 for i=1 to dur do await tic done
8
start(6) end(6)
9 let process emit_tic period tic =
10 let start = Unix. gettimeofday () in
11 let next = ref ( start +. period ) in
12 loop
13 let current = Unix. gettimeofday () in
14 if ( current >= !next) then begin
15 emit tic ();
16 next := !next +. period
Figure 2. HTSPN structure of the scenario specified in 17 end;
Example 1. 18 pause
19 end
27
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
min
Box 3
r6 r7
r5 Box 5
r3
Box 1 min max
r1 r4
r2 Box 6
Box 2
time
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
Figure 4. Execution of Example 1 where only the interaction point of the box 3 is triggered.
function Unix.gettimeofday from the Unix module, and tempo (in beats) and the physical time (in ms). This mod-
emits the signal tic (line 15) whenever the period of time ule is based on the work of Baudart et al. [4, 5]. The mod-
expires (line 14). The pause (line 18) keyword awaits for ule Motor interprets the interactive score and interacts with
the next instant. The construction loop e end iterates in- the environment by listening external events and trigger-
finitely e. ing external multimedia processes. The implementation
R EACTIVE ML also provides valued signals. They can fulfills the operational semantics of interactive scores [10].
be emitted (emit s value) and awaited to get the associ- In the following, we describe the above modules.
ated value (await s (pattern)in expression). Differ-
ent values can be emitted during an instant (multi-emission).
3.1. Modelling Time
In this case, it is necessary to define how the emitted val-
ues will be combined during the same instant (signal R EACTIVE ML, like other synchronous languages, pro-
name default value gather function in expression). vides the notion of a global logical time. Then, time is
The value obtained is available at the following instant in viewed as a sequence of logical instants. The process
order to avoid causality problems. For example, the pro- emit_tic (Figure 3), explained in Section 2.2, is the in-
cess add (Figure 5) declares the local signal num (line 2) terface between the physical time and the logical time. Its
with an initial value 0 and a function which adds two in- purpose is to generate the clock of the system by emitting
tegers. The process gen (line 3) generates a set of values a signal in a periodic time. Therefore, from this signal of
that are emitted through the signal num at the same instant. clock, we can define a process to express delays by wait-
The process print (line 6) awaits for the signal num, and ing a specific number of ticks (process wait in Figure 3).
then it prints the value in n. Note that n contains the sum
of all values generated by the process gen.
3.2. Execution of Interactive Scores
1 let process add max = Interactive scores [10] are basically composed of: boxes
2 signal num default 0 gather fun x y -> x+y in
3 let process gen = that represent multimedia processes; temporal relations
4 (for i=1 to max do emit num i done) that define the temporal organization of the score (i.e.,
5 in
6 let process print = the start and the end of boxes); and interaction points that
7 await num (n) in transform a static score into dynamic by allowing the per-
8 print_endline ( string_of_int n)
9 in former to modify the temporal relations during the execu-
10 run gen || run print tion. In the following, we present the implementation of
the above elements in R EACTIVE ML.
Figure 5. Example of multi-emission of signals.
3.2.1. Temporal relations
3. SYNCHRONOUS MODEL OF INTERACTIVE Temporal relations partially define the temporal organiza-
SCORES tion of the scenario. They represent delays that allow to
specify the start and the duration of boxes. Relations can
In this section, we present a new execution model of in- be either rigid or flexible. In a rigid relation, the duration
teractive scores using the reactive programming language of the delay is fixed whereas in a flexible relation, the du-
R EACTIVE ML. The implementation of the interpreter is ration of the delay is partially defined by an interval of
divided into two main modules: Time and Motor. The time. This interval can be modified by triggering an inter-
module Time interfaces the abstract time relative to the action point during the execution.
28
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
Hence, we define two types of intervals in order to rep- duration. The following example illustrates the represen-
resent temporal relations. The fixed interval represents a tation of boxes and relations in R EACTIVE ML.
rigid relation and the interactive interval represents a flex-
Example 2. Consider the hierarchical box shown in Fig-
ible relation with an attached interaction point (Figure 6).
ure 7a. This box, identified with the number 2, has a pro-
The interaction point allows to stop the interval during the
cess box as child and an interaction point at the end. The
defined interval of time (i.e., between the minimum and
duration of the hierarchical box is the interval [2, ]. The
the maximum duration) by triggering a specific event.
process box, identified with the number 1, starts 2 seconds
after the starting of its parent and its duration is 2 seconds.
We show the specification in R EACTIVE ML of Exam-
fixed interval
duration ple 2 in Figure 7b.
interaction point
enabled
interactive interval
minimum duration 2
maximum duration
r1 r2
time 1
29
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
stopped. In the following we describe the processes that 1 let process run_h_box h_box =
decode each type of box. 2 let (ident , boxes , relations , interval ) = h_box in
3 signal stop_box_h in
4 signal kill_m in
5 do (await immediate stop_f ; emit stop_box_h ) until
1 let rec process run_generic box w_rels s_rels stop_f kill_m done ||
id_box = 6 ((( do
2 (* .. *) 7 run ( run_intervals [ interval ]) ||
3 run ( killable_p ( wait_intervals w_rels id_box ) 8 (run ( wait_intervals [ interval ] ident );
stop_f ); 9 begin
4 run ( run_box box); 10 match interval with
5 run ( killable_p ( run_intervals s_rels ) stop_f ) 11 | Fixed _ -> ()
12 | Interactive _ -> emit stop_box_h
13 end
Figure 8. Process that executes a box. 14 ) ||
15 run ( run_intervals ( get_intervals ident relations
From)) ||
A process box, implemented in the process run_p_box 16 run ( wait_intervals ( get_intervals ident relations
To) ident )
(Figure 9), first gets its identifier (ident), the interval that 17 until stop_box_h done); emit stop_box_h ) ||
defines its duration (interval), and the OSC messages 18 run ( run_boxes_par boxes relations stop_box_h ));
emit kill_m
to start (start_m) and stop (end_m) the external process
(line 2). Then, it starts the external process by sending the
corresponding OSC message (line 4). Next, it runs the Figure 10. Process that executes a hierarchical box.
interval of its duration (line 5) and waits until it ends (line
6). Finally, once the box stops, it immediately sends the
corresponding OSC message to stop the external process box will start when one of its preceding relations has fin-
(line 7). The box and its external process finish suddenly ished, and the interaction point will be enabled when they
if the signal stop_f is emitted (do/until construction) by have reached their minimum duration (Figure 11b). In the
its parent. second case, the box will start when all its preceding rela-
tions have finished (Figure 11a). As noted, we can merge
a set of intervals into one that follows the behaviour de-
1 let process run_p_box p_box =
2 let (ident , interval ,star_m ,end_m) = p_box in scribed above. Next, we describe the processes to handle
3 do intervals.
4 emit output ( star_m );
5 (run ( run_intervals [ interval ]) ||
6 run ( wait_intervals [ interval ] ident));
7 emit output (end_m); interaction point
8 until stop_f -> emit output (end_m) done enabled
min max
Figure 9. Process that executes a process box. fix interval 1 interactive interval 1
fix interval 2 min max
interactive interval 2
merge fixed (1,2)
min max
merge interactive (1,2)
On the other hand, a hierarchical box is executed by
time time
the process run_h_box (Figure 10). It first gets the param-
eters of the box (line 2): its identifier (ident); its chil- (a) Fixed intervals. (b) Interactive intervals.
dren (boxes); the temporal relations of the sub-scenario
(relations); and the interval that defines its duration (interval Figure 11. Merging a set of intervals.
). Then, it executes in parallel: a monitor that emits the
signal stop_box_h when the parent of the box finishes sud- The process run_intervals (Figure 12) runs in parallel
denly (line 5); the interval that defines its duration (line 7); a list of intervals (line 3). Each interval emits a specific
a monitor that emits the signal stop_box_h when the box signal when it reaches its duration (line 7). In the case of
stops because of an interaction point (line 12); the rela- an interactive interval, a different signal will be emitted
tions that describe the temporal organization of the sub- when it reaches its minimum and maximum duration (line
scenario (line 15); a monitor that waits for the relations 12 and 14). Following the semantics described above, if
defining its end (line 16); and its children with their pre- a box has several preceding intervals, it will start when
ceding and succeeding intervals (line 18). Hence, the hi- one of them finishes (do/until construction). We use the
erarchical box and its children will finish abruptly when process iterator Rml_list.par_iter to execute in parallel
the signals stop_box_h or stop_f are emitted. Otherwise, a list of processes.
the hierarchical box will finish when its duration and all The process wait_intervals (Figure 13) waits for a
internal relations have finished. set of intervals are satisfied. Then, in the case that all in-
tervals are fixed, it waits until all intervals end (line 5 and
3.2.3. Synchronization 7). Otherwise, it first waits until all reach their minimum
duration (line 5), and then it begins to listen the external
Boxes can have one or more preceding and succeeding re- events (line 13) until one interval reaches its maximum du-
lations. In I- SCORE, all preceding relations of a box with ration (do/until construction) or the event associated to
an interaction point are flexible (interactive intervals). Oth- the interaction point is triggered (line 14). The emission
erwise, all are rigid (fixed intervals). In the first case, the of the signal max_s also will stop all intervals.
30
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
31
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
min
Box 3
r6 r7
min max
Box 4
r5 Box 5
min max
merge (r3,r4)
min max
r3
Box 1 min max
r1 r4
r2 Box 6
Box 2
time
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
Figure 16. Execution of Example 1 where both interaction points of the box 3 are triggered.
32
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
33) because it has not stopped and its end date has elapsed 5. CONCLUDING REMARKS
(i.e., the end date of the box is delayed). In addition, it
examines if the interaction point at the end of the box is In this work, we presented a synchronous interpreter of
enabled. If that is true, the box changes its border to dotted multimedia interactive scores. It was implemented in the
(line 39). synchronous programming language R EACTIVE ML [16].
Once the box stops (i.e., the interpreter emitted the stop We showed that the implementation is simple and small
event of the box), it returns to its original colour (line 43) thanks to the synchronous model and high-order program-
and border (line 44). Finally, the process verifies if the ming provided by R EACTIVE ML. Contrary to the Petri
box stopped before its end date (line 46). In that case, the Net model presented in [17], our approach allows to model
box is resized to the current position in the execution of precisely the hierarchical behaviour of boxes.
the score (line 47). The box with identifier 0 is not resized We explored the use of INS CORE to develop a graphi-
because we do not want to resize the scenario. cal interface that provides a real-time visualization of the
execution of the score. In this sense, it improves the cur-
1 let process box b =
rent graphical interface of I - SCORE. We took advantage
2 draw_box id_b (! width *. dx) (get_x !pos_x) pos_y of the OSC protocol to communicate our interpreter with
height ip_start ip_end ;
3
external applications such as P URE DATA and INS CORE.
4 (* waiting the start *) We believe that our implementation provides many ad-
5 do
6 loop vantages for the composition and execution of interac-
7 await immediate clock; tive scores. For instance, as shown in [5], we can pro-
8 if (! pos_x < current ) then begin
9 pos_x := !pos_x +. 1.0; totype new features easily and execute living code using
10 List.iter the toplevel of R EACTIVE ML [15]. Moreover, our ap-
11 (fun i -> move_box i dx; emit dx_s .(i) 1.0)
12 (id_b :: children ) proach would allow to execute dynamic processes unlike
13 end; Petri Nets.
14 pause
15 end || Related work. The work in [4, 5] embeds the A NTES -
16 (await immediate start_ip .( id_b); change_border FOCO language [9] and presents how to program mixed
id_b "dash ")
17 until start_s .( id_b) done; music in R EACTIVE ML. A NTESFOCO is a score follow-
18
ing system that synchronizes in real-time electronic music
19 (* box started *)
20 change_color id_b r g b ; scores with a live musician. The approach defines a syn-
21 change_border id_b "solid "; chronous semantics of the core language of A NTESFOCO,
22 if (! pos_x > current ) then begin
23 let new_x = current -. !pos_x in and then it is implemented in R EACTIVE ML. Therefore,
24 List.iter composers can prototype new constructs and take advan-
25 (fun i -> move_box i (new_x *. dx); emit dx_s .(i
) new_x) tage of the expressiveness of synchronous model and the
26 (id_b :: children ) power of functional programming. For example, recur-
27 end;
28 sion, high order programming, type induction, among oth-
29 (* waiting the end *) ers.
30 do
31 loop Future work. Multimedia interactive scores have a
32 await immediate clock;
33 if ( current >= (! pos_x +. !width)) then begin
wide range of applications such as video games and mu-
34 width := !width +. 1.0; seum installations. Therefore, in some cases, it is highly
35 resize_box id_b (! width *. dx)
36 end;
necessary to use conditions and loops in order to model
37 pause the dynamics of the score easier and correctly. However,
38 end ||
39 (await immediate start_ip .( id_b); change_border
these constructions are not supported by the current model
id_b "dot ") of I - SCORE. For this reason, we plan to take advantage of
40 until end_s .( id_b) done;
41
the features of R EACTIVE ML to prototype these new con-
42 (* box stopped *) structions.
43 change_color id_b 238 238 238 ;
44 change_border id_b "solid "; Nowadays, composers have increasingly needed to ma-
45 let new_dy = ( current -. !pos_x) in nipulate streams in their multimedia scenarios. Then, we
46 width := if new_dy > 0.0 then new_dy else 0.0;
47 if (id_b <> 0) then resize_box id_b (! width *. dx); plan to examine the data-flow programming language L U -
CID S YNCHRONE [18] in order to handle streams in real-
time. This programming language combines the synchronous
Figure 18. Process that encodes the behaviour of a box in
model of L USTRE [12] with the features of ML languages.
the graphical interface.
In addition, we plan to perform tests to verify that the new
solutions are more efficient than the current implementa-
Hence, each box shown in the graphical interface (i.e., tions.
INS CORE score) represents a process box that is running We intend to increase the usability of our interpreter by
concurrently and interacting with other boxes of the graph- developing a compiler that translates automatically sce-
ical interface. Therefore, our visualization system allows narios designed in I - SCORE into the syntax of the inter-
performers to observe the current state of the execution of preter. Additionally, we plan to improve the graphical in-
the score. terface in INS CORE in order to provide an environment
33
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
where the user can directly design and visualize the exe- [9] Cont, A., ANTESCOFO: Anticipatory synchro-
cution of a scenario. nization and control of interactive parameters in
Finally, we intend to verify properties of scenarios [14]. computer music , Proceedings of International
For instance, we are interested in knowing the maximum Computer Music Conference, Belfast, Ireland, 2008.
number of processes that can be executed in parallel dur-
[10] Desainte-Catherine, M., Allombert, A., and As-
ing all possible executions of the scenario.
sayag, G., Towards a hybrid temporal paradigm
Acknowledgements. We thank the anonymous review-
for musical composition and performance: The case
ers for their detailed comments that helped us to improve
of musical interpretation , Computer Music Jour-
this paper. Also, we would like to thank Louis Mandel for
nal, MIT Press, vol. 37 (2), Cambridge, MA, USA,
his valuable remarks about the implementation. This work
2013, p. 6172.
has been supported by the OSSIA (ANR-12-CORD-0024)
project and SCRIME 6 . [11] Fober, D., Orlarey, Y., and Letz, S., An environ-
ment for the design of live music scores , Proceed-
ings of the Linux Audio Conference, CCRMA, Stan-
6. REFERENCES
ford University, California, US, 2012, p. 4754.
[1] Allen, J., Maintaining knowledge about temporal [12] Halbwachs, N., Caspi, P., Raymond, P., and Pilaud,
intervals , Communications of the ACM, ACM, vol. D., The synchronous dataflow programming lan-
26 (11), New York, NY, USA, 1983, p. 832843. guage LUSTRE , Proceedings of the IEEE, IEEE,
vol. 79 (9), 1991, p. 13051320.
[2] Allombert, A., Aspects temporels dun systme de
partitions musicales interactives pour la composition [13] Halbwachs, N., Lagnier, F., and Raymond, P., Syn-
et lexcution , Ph.D. Thesis, Bordeaux, France, chronous observers and the verification of reactive
2009. systems , Proceedings of the Third International
Conference on Methodology and Software Technol-
[3] Allombert, A., Desainte-Catherine, M., and As- ogy, Springer-Verlag, London, UK, 1994, p. 8396.
sayag, G., Iscore: A system for writing interac-
[14] Halbwachs, N., and Raymond, P., Validation of
tion , Proceedings of the Third International Con-
synchronous reactive systems: From formal verifica-
ference on Digital Interactive Media in Entertain-
tion to automatic testing , Proceedings of the Fifth
ment and Arts, ACM, New York, NY, USA, 2008, p.
Asian Computing Science Conference on Advances
360367.
in Computing Science, Springer-Verlag, 1999, p. 1
[4] Baudart, G., Jacquemard, F., Mandel, L., and Pouzet, 12.
M., A synchronous embedding of Antescofo, a [15] Mandel, L., and Plateau, F., Interactive program-
domain-specific language for interactive mixed mu- ming of reactive systems , Electronic Notes in The-
sic , Proceedings of the Thirteen International Con- oretical Computer Science, Elsevier, vol. 238 (1),
ference on Embedded Software, Montreal, Canada, Amsterdam, The Netherlands, 2009, p. 2136.
2013.
[16] Mandel, L., and Pouzet, M., ReactiveML, a reac-
[5] Baudart, G., Mandel, L., and Pouzet, M., Program- tive extension to ML , Proceedings of the Seventh
ming mixed music in ReactiveML , Proceedings of ACM SIGPLAN International Symposium on Princi-
the First ACM SIGPLAN Workshop on Functional ples and Practice of Declarative Programming, Lis-
Art, Music, Modeling, Boston, USA, 2013. bon, Portugal, 2005.
[6] Benveniste, A., Caspi, P., Edwards, S., Halbwachs, [17] Marczak, R., Desainte-Catherine, M., and Al-
N., Le Guernic, P., and De Simone, R., The syn- lombert, A., Real-time temporal control of musical
chronous languages 12 years later , Proceedings of processes , The Third International Conferences on
the IEEE, IEEE, vol. 91 (1), 2003, p. 6483. Advances in Multimedia, Budapest, Hungary, 2011,
p. 1217.
[7] Berry, G., and Gonthier, G., The Esterel syn-
[18] Pouzet, M., Lucid Synchrone, version 3. Tu-
chronous programming language, design, semantics,
torial and reference manual , http://www.
implementation , Science of Computer Program-
di.ens.fr/~pouzet/lucid-synchrone/
ming, Elsevier, vol. 19 (2), Amsterdam, The Nether-
lucid-synchrone-3.0-manual.pdf .
lands, 1992, p. 87152.
[19] Snac, P., De Saqui-Sannes, P., and Willrich, R.,
[8] Boussinot, F., and De Simone, R., The SL syn- Hierarchical Time Stream Petri Net: A model for
chronous language , IEEE Transactions on Soft- hypermedia systems , Proceedings of the Sixteenth
ware Engineering, IEEE Press, vol. 22 (4), Piscat- International Conference on Application and Theory
away, USA, 1996, p. 256266. of Petri Nets, Springer, Turin, Italy, 1995, p. 451
6 470.
http://scrime.labri.fr
34
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
35
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
36
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
37
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
38
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
3. SINGULARITES
3.2. Intentions
39
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
40
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
4. CONCLUSION ANNEXE
Les partitions rtroactives ont t envisages dans Code de la partition rtroactive stable pour n cercles
IanniX depuis quelques annes. Elles permettent un
function makeWithScript () {
auto-contrle de la partition allant du simple vnement run("clear");
rtroactif (trigger qui arrte la partition ou saute un
var iMax = 2;
timecode prcis) jusqu la mise en oscillation complexe for(var i = 0 ; i < iMax ; i++) {
des lments constitutifs de la partition. run("add curve " + (100+i));
run("setPos current 3 3 0");
Au dpart mal comprises, les partitions rtroactives run("setEquation current polar radius, TWO_PI*t,
constituent pour lquipe de recherche IanniX une theta");
formidable opportunit de trouver de nouvelles run("setEquationParam current radius " + (1+i));
run("setEquationParam current theta 0");
approches dans la composition, mme si lcriture de run("setColorHue current " + map(i, 0, iMax, 0, 255)
telles partitions reste encore difficile apprhender. + " 255 128 255");
41
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
42
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
43
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
Cette section dcrit les conventions utilises pour C/C++ API URI segment cible
passer de lAPI C/C++ lAPI HTTP. Elle est suivie GuidoGetPageCount pagescount partition
de plusieurs exemples concrets dinteractions avec le GuidoGetVoiceCount voicescount partition
serveur. GuidoDuration duration partition
GuidoFindPageAt pageat partition
GuidoGetPageDate pagedate partition
4.1. Cl SHA-1 comme reprsentation de partition GuidoGetPageMap pagemap partition
La section 3.1 a dcrit comment la cl SHA-1 rem- GuidoGetSystemMap systemmap partition
GuidoGetStaffMap staffmap partition
place du code GMN dans les URIs envoys au ser-
GuidoGetVoiceMap voicemap partition
veur. Cette cl peut-tre vue comme lquivalent dun
GuidoGetTimeMap timemap partition
pointeur sur une partition, en loccurrence un handler
GuidoAR2MIDIFile midi partition
sur une reprsentation abstraite (GAR) de la partition GuidoGetVersionStr version moteur
pour la librairie Guido. GuidoGetLineSpace linespace moteur
4.2. Fonction comme segment dURI Table 1. Reprsentation des fonctions de lAPI Guido
comme segments dURI.
Un segment dURI dans lAPI HTTP correspond
une fonction dans lAPI C/C++. Par exemple, la
fonction GuidoGetPageCount dans lAPI C/C++ cor- http://guido.grame.fr:8000/<key>/staffmap?staff=1
respond au segment pagescount dans une URI.
Pour permettre aux URIs incomplets ou mal-forms
Les fonctions de lAPI Guido peuvent tre classes
dtre traits, tous les arguments passs aux fonctions
en deux catgories :
ont des valeurs par dfaut pour le serveur. Ces va-
fonctions qui fournissent de linformation sur leurs sont parfois indiques dans lAPI et sinon cor-
la librairie. respondent des valeurs qui auraient du sens pour
fonctions qui fournissent de linformation sur la plupart de partitions.
une partition.
Pour lAPI C/C++ de la librairie, les fonctions qui
sadressent une partition prennent comme argu- 4.4. Options de mise en page et formatage
ment une handler sur la partition, qui peut tre vu Le serveur Guido permet le contrle de la mise
comme un pointeur sur la reprsentation interne de en page et le formattage de la partition grce des
la partition. Avec lAPI HTTP, la cl SHA-1 remplace paires cl-valeur indiqus de manire similaire aux
ce handler dans lURI et permet de dfinir la partition arguments des fonctions dcris ci-dessus. Ces para-
cible de la requte : mtres sont utiliss de diffrentes manires selon leur
les requtes adresses une partition sont pr- fonction dans lAPI C/C++ Guido . Certains para-
fixes par la cl SHA-1, mtres, comme topmargin, font partie dune struc-
les requtes adresses au moteur de rendu ne ture GuidoPageFormat qui est utilise pour contrler
sont pas prfixes. la taille globale dune page. Dautres, comme resize,
Par exemple, dclenchent un appel une fonction. Le paramtre
http://guido.grame.fr:8000/version width est utilis plusieurs fois dans le processus de
compilation selon le format de sortie choisi.
renvoie la version de la librairie.
Par ailleurs, lURI : Toutes les options de mise en page et de forma-
tage sont spcifies dans lURI, afin de fournir toutes
http://guido.grame.fr:8000/<key>/voicescount
les informations ncessaires au rendu de la partition
ou <key> est la cl SHA-1
sans grer dtats et de satisfaire ainsi aux recom-
expose la fonction GuidoCountVoices par le biais du
mendations RESTful.
segment voicescount, adress la partition identi-
fie par <key>, et renvoie le nombre de voix de la
partition. 4.5. Valeurs de retour
La table 1 prsente une liste de fonctions de lAPI
Guido et les segments dURI correspondants dans les Les paquets renvoys par le serveur sont consti-
requtes au serveur. tus dune enveloppe et dun contenu. Lenveloppe
indique un code de retour et un type MIME pour le
contenu associ. Les types renvoys sont parmi :
4.3. Arguments comme paires cl-valeur
image/[jpeg | png | svg+xml] pour une repr-
Pour les fonctions qui prennent des arguments, sentation graphique de la partition au format
ceux-ci sont dclins en paires cl-valeur dans lURI. jpeg, png ou svg,
Par exemple, la fonction GuidoGetStaffMap prend
un argument staff qui permet de prciser la staff audio/midi pour une reprsentation MIDI de la
(porte) cible de la requte. partition,
44
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
application/json pour des informations struc- un tempo) o 1 reprsente la ronde. La requte cor-
tures sur la partition. respond la fonction GuidoGetStaffMap de lAPI
JSON est utilis de manire consistante pour toutes Guido.
les demandes informations. Pour les fonctions qui LURI :
http://guido.grame.fr:8000/<key>/staffmap?staff=1
renvoient des structures de donnes, les donnes ren-
produit la rponse suivante du serveur (abrge pour
voyes par le serveur sont types et structures de
des raison de commodit) :
manire quivalente en JSON. Par exemple, la struc- {
ture Time2GraphicMap contient une liste de paires "<key>": {
o chaque paire contient la dure dun vnement "staffmap": [
(TimeSegment) et les coordonnes du rectangle en- {
globant lvnement dans la la page (FloatRect). "graph": {
TimeSegment et FloatRect sont elles mmes des struc- "left": 916.18,
tures qui contiennent dautres donnes. Ces struc- "top": 497.803,
tures peuvent tre articules comme une hirarchie "right": 1323.23,
de dictionnaires JSON, comme dans lexemple fourni "bottom": 838.64
dans la section 4.6.3 o time correspond un },
TimeSegment et graph correspond un FloatRect. "time": {
"start": "0/1",
4.6. Exemples "end": "1/4"
}
4.6.1. voicescount
},
La requte voicescount demande le nombre de .
voix dans une partition. Elle correspond la fonction .
GuidoCountVoices de lAPI Guido . LURI : .
http://guido.grame.fr:8000/<key>/voicescount {
produit la rponse suivante du serveur : "graph": {
"left": 2137.33,
{
"top": 497.803,
"<key>": {
"right": 2595.51,
"voicescount": 1
"bottom": 838.64
}
},
}
"time": {
o <key> est la cl SHA-1. "start": "3/4",
"end": "1/1"
4.6.2. pageat }
}
La requte pageat demande la page contenant la
]
date passe en argument, o date correspond
}
une date de la partition. Elle correspond la fonction
}
GuidoFindPageAt de lAPI Guido . LURI :
http://guido.grame.fr:8000/<key>/pageat?date=1/4
5. CONCLUSION
produit la rponse suivante du serveur :
{ Le serveur Guido repose sur une architecture ar-
"<key>": { chitecture RESTful afin dexposer lAPI C/C++ de la
"page": 1, librairie Guido travers une API HTTP. La spcifi-
"date": "1/4" cation cette API permet de traiter les requtes sans
} grer dtats successifs, dans la mesure o toutes les
} informations ncessaires une requte sont conte-
nues dans son URI. La disponibilit de ce service
4.6.3. staffmap sur Internet ouvre de nouvelles perspectives dans
le dveloppement dapplications Web qui souhaitent
La requte staffmap demande la description des incorporer la notation musicale symbolique, que ce
relations entre espace graphique et temporel de la soit pour visualiser des partitions ou encore pour ex-
partition. Elle renvoie une liste de paires associant ploiter des donnes sur ces partitions.
un espace graphique dcrit comme un rectangle, et Le projet Guido est un projet open source hberg
un espace temporel dcrit comme un intervalle born sur sourceforge (http://guidolib.sf.net). Le serveur
par deux dates. Les dates sont indiques par des est actuellement accessible ladresse
rationels exprimant du temps musical (i.e. relatif http://guidoservice.grame.fr/.
45
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
46
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
La modlisation par tuilage spatio-temporel. rel, implicite, allant du pass, gauche, vers le futur,
Dans la continuit des propositions existantes pour la droite. Parfois produites par des programmes, ces
programmation musicale [1, 25, 10], comme dans la structures peuvent tre de dure infinie.
continuit des approches en musicologie formelle [24], Les oprations naturellement associes ces flux
la modlisation par tuilage permet dunifier les no- mdia temporiss sont : la composition squentielle
tions de compositions squentielles et parallles.
m1 :+: m2
Plus prcisment, en nous appuyant sur le concept
de flux media temporiss [8, 9] enrichi par des mar- qui modlise le lancement de deux flux mdia tem-
queurs de synchronisation [3], nous obtenons une no- poriss lun aprs lautre, le premier tant ncessaire-
tion de flux media temporels tuils. Le produit associ, ment fini, et, la composition parallle
appel produit tuil, apparat tout la fois comme un
oprateur squentiel et un oprateur parallle. m1 :=: m2
En pratique, la composition tuile sinspire de tra-
vaux dj anciens. Le produit de tuilage ne fait quof- qui modlise le lancement de deux flux mdia tem-
frir une alternative la notion de barre de mesure en poriss en mme temps. Ces notions sont illustrs Fi-
musique. Il permet par exemple de modliser la no- gure 2.
tion musicale danacrouse [15]. Le produit tuil ap-
m1 m2
parat dj implicitement dans le langage LOCO [6],
une adaptation du langage Logo la manipulation de m1
flux musicaux. m2
La formalisation du produit tuil, nous a conduit
proposer une algbre ddie la synchronisation des Figure 2. Composition squentielle m1 :+:m2 et com-
flux musicaux [3]. Deux outils de manipulations de position parallle m1 :=: m2 des flux m1 et m2 .
flux audio tuils, la librairie libTuiles et linterface li-
veTuiles [22], drivent de cette approche. In fine, une Il apparait que ces deux oprations sont des cas
proposition abstraite : le T-Calcul [21], propose din- particuliers dune opration plus gnrale : le produit
tgrer ces concepts un langage de programmation. synchronis ou produit tuil.
En thorie, le produit de tuilage apparat aussi
dans les monodes inversifs [23]. Son usage comme 2.2. Flux media temporiss tuils
outil de modlisation pour les systmes informatiss
semble prometteur [20]. Le produit tuil, tel que nous Un flux media temporis tuil est dfinit comme
proposons de le manipuler en vue dapplications musi- un flux media temporis m enrichi de deux marqueurs
cales, est donc une construction particulirement bien de synchronisation pre et post qui sont dfinis par la
fonde au cur dune thorie mathmatique dont la distance, mesure en temps, qui les spare du dbut
robustesse nest plus dmontrer. du flux. Autrement dit, un flux media tuil t peut
simplement tre cod comme un triplet
Nous dcrivons ici comment les flux media tuils avec pre et post dfinit comme deux rationnels posi-
peuvent tre construit partir des flux media en les tifs et m un flux media. Un tel flux tuil est illustr
enrichissant simplement de deux marqueurs de syn- Figure 3.
chronisation. Cette construction peut tre vue comme
une abstraction des notions de synchronisation et de pre
mixage telle quelle sont couramment mise en uvre m
dans les langages de programmation musicale comme post
dans les studios de montage audio.
figure le dbut du flux musical rsultant provient de o mDelay est la fonction dfinit par :
la premire tuile. Cest l un cas particulier comme on mDelay d m = case signum d of
peut le vrifier sur un autre example, dcrit Figure 5. 1 rest d :+: m
0m
3. IMPLMENTATION EN HASKELL 1 m :+: rest (d)
Limplmentation en Haskell/Euterpea des flux me- Dans ce codage, la fonction mDelay assure la phase
dia tuils et du produit tuil ne fait que mettre en de synchronisation, le produit parallle :=: assure la
uvre les schmas ci-dessus. Les oprateurs qui peuvent phase de fusion. Implicitement, du silence est insr
driver de ces structures sont dcrits par la suite, de part et dautre des flux musicaux sous-jaent afin
la fois par leur implmentation en Haskell et par le de permettre cette composition parallle.
schma correspondant. Selon la position des marqueurs de synchronisa-
tion, le dbut de la musique peut provenir de la pre-
mire tuile, comme dans le cas de la Figure 4 ou bien
3.1. Le type tuile de la seconde tuile, comme dans le cas de la Figure 5.
Le type de donne Tile a est cod de la faon sui-
vante partir du type Music a, qui est une instance pre 1
particulire du type Temporal a :
m1
data Tile a = Tile {preT :: Dur, pre 2 post 1
postT :: Dur, m2
musT :: Music a }
pre post 2
silence m1 silence
avec type Dur = Rational. On utilise ici le type m2
Rational afin dviter les erreurs dapproximation qui post
pourraient rsulter, par exemple, de lutilisation du
type Float.
Une fonction durT permet de calculer la dure de Figure 5. Une autre instance de produit synchronis
synchronisation dun flux tuil, cest dire, le temps
relatif entre la marque de synchronisation pre et la
marque de synchronisation post.
3.3. Reset, co-reset et inverses
1 . Fusion qui dpendra du media considr : mixage pour
de laudio, union pour de la musique, superposition pour de la Trois fonctions sur les tuiles : le reset, le co-reset
vido, etc. et linverse, dcoulent de ces dfinitions. Elles sont,
49
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
comme on le verra, lies les unes aux autres. o les fonctions Euterpea takeM et dropM sur les
objets de type Music permettent de supprimer ou ex-
re, co, inv :: Tile a Tile a traire, comme sur les listes, des sous-squences musi-
re (Tile pre post m) = Tile pre pre m cales selon le paramtre de dure pass en argument.
co (Tile pre post m) = Tile post post m La musique code dans une tuile peut alors tre
inv (Tile pre post m) = Tile post pre m joue par composition :
Leur effet sur une tuile t est dcrit Figure 6. playT = play tToM
En particulier, pour toute tuile t et toute dure s, on 5.4. Exemple : croisements temporels
constate quon a :
Pour illustrer la puissance de la mtaphore du tui-
resync s t t %r s lage au sein dun langage de programmation complet
coresync s t r s%t tel que Haskell, on propose ci-dessous le codage dune
fonction crossing qui simule, par rptitions et dca-
Elles sont aussi duales lune de lautre au sens des lages successifs, le croisement de deux flux musicaux
quivalences suivantes : tuils.
resync a (inv t) (inv (coresync a t)) crossing :: Dur Tile a Tile a Tile a
coresync a (inv t) (inv (resync a t)) crossing o t1 t2 =
if ((centerT (t1 ) > 0)
Enfin, leur comportement vis vis du produit tuil (centerT (t2 ) > 0)) then
est dcrit par les quivalences observationnelles sui- let v1 = (resync o t1 )
vantes. Pour tout flux musical tuil t1 et t2 et tout v2 = (resync (o) t2 )
offset de dure a, on a aussi : in (t1 % t2 % (crossing o v1 v2 ))
else (t1 % t2 )
resync a (t1 % t2 ) (resync a t1 ) % t2
coresync a (t1 % t2 ) t1 % (coresync t2 )
Cette fonction est alors mis en oeuvre dans lexemple
musicale suivant.
5.3. Fonctions drives
train1 = liftT (instrument RhodesPiano)
Des exemples de fonctions drives des fonctions
(r en % t a 3 en % t c 4 en % t e 4 en
de resynchronisation sont les fonctions insertions de
% t d 4 en % r (3 en))
tuiles. Elles sont de deux sortes.
train2 = liftT (instrument RhodesPiano)
La premie, fait un fork parallle dune tuile t2
(t e 4 en % t g 3 en % t a 3 en
dans une tuile t1 la position d depuis lentre de
% t a 3 en % r (4 en))
synchronisation pre.
crossL = crossing (en) train1 train2
insertT :: Dur Tile a Tile a Tile a
insertT d t1 t2 = coresync (d) (re t2 % coresync d t1 )
Laudition de lensemble se fait en executant la com-
De faon duale, la seconde, co insertion fait un join. mande playT crossL. Une ligne de percussion rgu-
lire percL telle que dcrite ci-dessous lance en pa-
rallle par la commande playT ((re percL) % crossL),
coinsertT :: Dur Tile a Tile a Tile a permettra dentendre les phnomnes de dcalage de
coinsertT d t1 t2 = resync (d) (resync d t1 % co t2 ) la ligne crossL.
Le comportement de ces fonctions est dcrit Figure 8.
6. CONTRACTIONS ET EXPANSIONS
des tuiles rcursives. On trouvera ci-dessous, une pre- peut maintenant tre type par Haskell. Le type de
mire discussion sur les dfinitions rcursives tuils. la tuile x est bien le type de la tuile t. En effet, lan-
Une discussion plus pouss sur cette problmatique ticipation induite par (re x) a t supprime dans le
dlicate pourra tre trouv dans [12]. produit restreint et sa dure de synchronisation est
nulle grace au reset. Les marqueurs dentre pre et de
7. TUILES RCURSIVES sortie post de toute solution sont donc uniquement
dtermins par ceux de la tuile t. Une gnralisation
Dans les exemples ci-dessus, nous avons vu com- de ce codage, plus souple, est propose dans [12].
ment les structures de contrle classique des langages
de programmation permettent de dfinir algorithmi- 8. CONCLUSION
quement des flux tuils finis complexes.
Le langage Haskell, reposant sur un principe dva- Le T -calcul en Euterpea apparait clairement, via
luation paresseuse, permet aussi de dfinir des objets les nombreuses proprits algbriques quil satisfait,
potentiellement infinis qui sont valus la demande. comme un formalisme particulirement robuste pour
Nous souhaiterions pouvoir utiliser cette caractris- une description hirarchique de la structure tempo-
tique pour dfinir des tuiles potentiellement infinies. relle des flux media temporiss. Son exprimentation
Par exemple, tant donn une tuile finie t, on sou- pour la modlisation musicale est en cours.
haiterait pouvoir dfinir une tuile x de support musi- Bien entendu, limplmentation propose ici ne traite
cal infini, via une equation de la forme que des flux musicaux symboliques. Une intgration
des flux audio tuils reste mettre en oeuvre. Elle
x = t % (re x)
pourrait sappuyer sur la libTuiles dj ralise [2, 22].
Dans une telle equation, lappel rcursif se fait sur le Une telle extension offrirait sans doute un gain de
reset de la variable x afin de produire une tuile dont productivit important pour la cration et la produc-
la distance de synchronisation serait celle de la tuile tion de musique lectroacoustique. Une bonne partie
t. Pourtant, malgr cette prcaution, lvaluation de du mixage, parfois fastidieux et rptitif, peut en ef-
cette quation en Haskell boucle ! fet tre factorise grace la mtaphore du tuilage :
En effet, le modle des flux tuils est ainsi fait que chaque tuile audio intgre une fois pour toute, dans
les superpositions en amont du point de synchronisa- ses points de synchronisation, toute linformation ne-
tion pre peuvent provenir de tuiles situes arbitraire- cessaire pour positionner, avant ou bien aprs, les
ment en aval dans une suite de produit synchronis. autres tuiles audio.
Notre implmentation boucle donc sur une telle qua- Remarquons aussi que le langage propos ici nest
tion car elle doit drouler toute les rptitions de x destin qu une manipulation hors temps des
pour en connaitre les anticipations : le typage de la structures musicales. Bien sur, en toute gnralit, on
tuile x ainsi dfinit par quation choue tre calcul ne peut dcider de la terminaison de ces programmes.
par Haskell. Remarquons cependant que, ds lors quun flux tuils
Dans [21], des conditions ncessaires et suffisantes, est typ, il est de dure de synchronisation fini. La
calculables, sont dcrites pour rsoudre cette rcur- fonction playT de lecture de ce flux terminera donc
sion. Nanmoins, elles sont proposes dans une dfi- puisquelle ne parcourt les flux quentre les marqueurs
nition de T-calcul pure, particulirement limite. Il de synchronisation Pre et Post.
ne contient pas de structure de contrle telle que les On peut mentioner enfin quune thorie des lan-
conditionnelles. Dans limplmentation du T-calcul gages adapte la description et la manipulation de
propose ici, qui hrite de toute lexpressivit dHas- sous-ensembles de monodes inversifs est actuellement
kell, le calcul du type dun flux tuil dfinit par qua- en cours de dveloppement. Elle offre des outils tra-
tion est, en toute gnralit, indcidable. ditionnels de manipulation des langages, quils soient
Pour remdier cela, nous proposons un nouveau logiques [17], algbriques [14, 16] ou quils sappuient
produit synchrone, partiel, qui rsout ce calcul de sur la thorie des automates [19, 18, 16]. Autrement
type potentiellement cyclique en coupant les anti- dit, en sappuyant sur cette thorie, il sera possible
cipations qui y conduisent. Plus prcisment, on d- de dvelopper les outils de spcification, danalyse et
finit le produit restreint %\ suivant : de validations qui pourront accompagner efficacement
les outils de modlisations par tuilage.
(%\) :: Tile a Tile a Tile a
Tile pr 1 po1 m1 %\ (Tile pr 2 po2 m2 ) = 9. REFERENCES
Tile pr 1 po1 (m1 :=: mDelay po1 (dropM pr 2 m2 ))
Remarque. Le dans cette dfinition est une techni- [1] C. Agon, J. Bresson, and G.Assayag. The OM
cit qui permet de gouverner lvaluation paresseuse. composers Book, Vol.1 & Vol.2. Collection Mu-
On vrifie facilement quune quation de la forme sique/Sciences. Ircam/Delatour, 2006.
[2] F. Berthaut, D. Janin, and M. DeSainteCatherine.
x = t %\ (re x) libTuile : un moteur dexcution multi-chelle de pro-
55
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
cessus musicaux hirarchiss. In Actes des Journes Comp. Science (SOFSEM), volume 8327 of LNCS,
dinformatique Musicale (JIM), 2013. pages 720. Springer, 2014.
[3] F. Berthaut, D. Janin, and B. Martin. Advanced syn- [19] D. Janin, F. Berthaut, M. DeSainte-Catherine,
chronization of audio or symbolic musical patterns : Y. Orlarey, and S. Salvati. The T-calculus : towards a
an algebraic approach. International Journal of Se- structured programming of (musical) time and space.
mantic Computing, 6(4) :409427, 2012. In ACM Workshop on Functional Art, Music, Mode-
[4] J. Bresson, C. Agon, and G. Assayag. Visual Lisp ling and Design (FARM), pages 2334. ACM Press,
/ CLOS programming in OpenMusic. Higher-Order 2013.
and Symbolic Computation, 22(1), 2009. [20] D. Janin, F. Berthaut, and M. DeSainteCatherine.
[5] P. Desain and H. Honing. LOCO : a composi- Multi-scale design of interactive music systems : the
tion microworld in Logo. Computer Music Journal, libTuiles experiment. In Sound and Music Compu-
12(3) :3042, 1988. ting (SMC), 2013.
[6] A. Dicky and D. Janin. Embedding finite and infinite [21] M. V. Lawson. Inverse Semigroups : The theory of
words into overlapping tiles. Research report RR- partial symmetries. World Scientific, 1998.
1475-13, LaBRI, Universit de Bordeaux, 2013. [22] F. Lerdahl and R. Jackendoff. A generative theory
[7] P. Hudak. An algebraic theory of polymorphic tem- of tonal music. MIT Press series on cognitive theory
poral media. In Proceedings of PADL04 : 6th In- and mental representation. MIT Press, 1983.
ternational Workshop on Practical Aspects of Decla- [23] S. Letz, Y. Orlarey, and D. Fober. Real-time compo-
rative Languages, pages 115. Springer Verlag LNCS sition in Elody. In Proceedings of the International
3057, June 2004. Computer Music Conference, pages 336339. ICMA,
[8] P. Hudak. A sound and complete axiomatization of 2000.
polymorphic temporal media. Technical Report RR- [24] D. Perrin and J.-E. Pin. Infinite Words : Automata,
1259, Department of Computer Science, Yale Univer- Semigroups, Logic and Games, volume 141 of Pure
sity, 2008. and Applied Mathematics. Elsevier, 2004.
[9] P. Hudak. The Haskell School of Music : From si-
gnals to Symphonies. Yale University, Department of
Computer Science, 2013.
[10] P. Hudak and D. Janin. Tiled polymorphic temporal
media. Research report RR-1478-14, LaBRI, Univer-
sit de Bordeaux, 2014.
[11] P. Hudak, T. Makucevich, S. Gadde, and B. Whong.
Haskore music notation an algebra of music. Jour-
nal of Functional Programming, 6(3) :465483, May
1996.
[12] D. Janin. Quasi-recognizable vs MSO definable lan-
guages of one-dimensional overlapping tiles. In Ma-
thematical Found. of Comp. Science (MFCS), vo-
lume 7464 of LNCS, pages 516528, 2012.
[13] D. Janin. Vers une modlisation combinatoire des
structures rythmiques simples de la musique. Re-
vue Francophone dInformatique Musicale (RFIM),
2, 2012.
[14] D. Janin. Algebras, automata and logic for languages
of labeled birooted trees. In Int. Col. on Aut., Lang.
and Programming (ICALP), volume 7966 of LNCS,
pages 318329. Springer, 2013.
[15] D. Janin. On languages of one-dimensional over-
lapping tiles. In Int. Conf. on Current Trends in
Theo. and Prac. of Comp. Science (SOFSEM), vo-
lume 7741 of LNCS, pages 244256. Springer, 2013.
[16] D. Janin. Overlaping tile automata. In 8th In-
ternational Computer Science Symposium in Russia
(CSR), volume 7913 of LNCS, pages 431443. Sprin-
ger, 2013.
[17] D. Janin. Walking automata in the free inverse mo-
noid. Research report RR-1464-12, LaBRI, Univer-
sit de Bordeaux, 2013.
[18] D. Janin. Towards a higher dimensional string theory
for the modeling of computerized systems. In Int.
Conf. on Current Trends in Theo. and Prac. of
56
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
FAUSTLIVE
UN COMPILATEUR LA VOLE POUR FAUST
... ET BIEN PLUS ENCORE
R SUM te, est bien plus long pour un compilateur que pour un
interprteur. Pour un artiste en situation de cration, lex-
FaustLive est une application qui, grce son compila- primentation rapide est indispensable. Un long cycle de
teur Faust embarqu, se propose de runir le confort dun compilation peut donc tre un frein. Dautre part, le code
langage interprt avec lefficacit dun langage compil. binaire nest pas compatible entre diffrentes plateformes
Base sur libfaust, une librairie qui offre une chane de et systmes dexploitation.
compilation complte en mmoire, FaustLive ne requiert FaustLive essaie de runir le confort dun langage in-
aucun outil externe (compilateur, diteur de lien, ...) pour terpret autonome avec lefficacit dun langage compil.
traduire du code FAUST en code machine excutable. Par Grce libfaust, une librairie qui offre une chane de com-
lintermdiaire de cette technologie, FaustLive offre de pilation complte en mmoire, FaustLive ne requiert au-
multiples fonctionnalits. Par exemple, il est possible de cun outil externe pour traduire du code FAUST en code
glisser un nouveau fichier DSP sur une application FAUST machine, et lexcuter. Grce son cycle de dveloppe-
en fonctionnement pour remplacer son comportement et ment trs court, FaustLive se comporte sur de nombreux
ce, sans interruption du son. Il est aussi possible de trans- points comme un interprteur FAUST (se rapprochant des
frer une application qui fonctionne en local, sur une autre environnements modernes LISP compils, ou de lapproche
machine, mme si celle-ci utilise un systme dexploita- prsente par A. Graef avec Pure dans [1]).
tion diffrent. Bas sur ce court cycle de dveloppement, FaustLive
prsente des fonctionnalits avances. Il est, par exemple,
1. INTRODUCTION possible dditer le code source pendant quune applica-
tion FAUST tourne. Le code est alors recompil dynami-
FAUST [Functional Audio Stream] [5] est un langage quement, sans interruption du son. Si cette application uti-
fonctionnel, ddi spcifiquement la synthse et au trai- lise JACK comme driver, toutes les connexions sont main-
tement du signal en temps rel. Comparativement autres tenues. FaustLive offre donc une certaine flexibilit pour
langages existants comme Max, PD, Supercollider, Csound, le prototypage des applications FAUST. Dautre part, lors-
Chuck etc, loriginalit de FAUST est de crer des pro- que FaustLive fonctionne sur un rseau, il est possible de
grammes non pas interprts mais entirement compils 1 . transfrer les calculs audio dune application sur une ma-
Il offre ainsi une alternative au C/C++ pour limplmenta- chine distante, mme si celle-ci utilise un systme dex-
tion dalgorithmes DSP travaillant efficacement lchan- ploitation diffrent.
tillon prs. Les applications FAUST peuvent aussi tre contrles
Alors que les compilateurs ont lavantage de leffica- distance, en utilisant les protocoles HTTP ou OSC. En-
cit, ils prsentent certains dsavantages par rapport des fin, FaustLive peut se connecter FaustWeb, un service
interprteurs. Dabord, les compilateurs traditionnels ont de compilation distant pour exporter une application en
besoin dune chaine complte doutils (compilateurs, di- un binaire traditionnel pour lun des systmes dexploita-
teurs de liens, librairies de dveloppement, ...). Pour des tion et une des architectures supportes par la distribution
"non-programmeurs", linstallation de ces outils peut tre FAUST.
assez complexe. De plus, le cycle de dveloppement, de-
puis ldition du code source jusqu lapplication excu- 2. LE COMPILATEUR FAUST
1 . Les langages interprts ont souvent recours une phase de tra- Le compilateur FAUST traduit un programme FAUST
duction, parfois appele compilation, permettant de traduire le pro-
gramme en une reprsentation interne, par exemple du bytecode, plus en son quivalent dans un langage impratif (C, C++, Java,
efficace pour linterprtation. Dans le domaine audio, les langages in- etc), soccupant de gnrer du code efficace. La distri-
terprts ont galement recours une autre technique, le groupage des bution FAUST inclut de nombreux fichiers darchitecture,
chantillons par vecteur, de faon amortir davantage le cot de linter-
faisant la liaison entre le code gnr et le monde extrieur
prtation. Nanmoins ces techniques ne permettent pas datteindre leffi-
cacit dun programme vritablement compil en code machine, comme (drivers audio, interfaces de contrle, ...).
cest le cas pour les programmes FAUST. La version officielle du compilateur FAUST transforme
57
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
le code DSP en une classe C++, insre ensuite dans une back-end FAUST-LLVM, pour finalement produire du code
architecture. Le fichier C++ rsultant est finalement com- excutable grce au compilateur LLVM-JIT. Toutes les
pil avec un compilateur standard pour produire une ap- tapes sont ralises en mmoire. Des pointeurs sur les
plication ou un plugin (Figure 1). fonctions excutables sont ensuite accessibles dans le mo-
Lapplication finale est alors structure de la manire dule LLVM rsultant, et leurs codes pourront tre appels
suivante : le DSP est reprsent sous forme dun module avec les paramtres appropris.
de calcul alors que larchitecture joue le rle de lien vers Dans la branche de dveloppement faust2, le compila-
le driver audio et vers linterface graphique (Figure 2). teur FAUST a t compil sous forme dune librairie em-
barquable, libfaust, publie avec une API associe, [2].
Cette API imite le concept des langages orients objet,
comme le C++. Ltape de compilation, habituellement
ralise par GCC, est accessible au travers de la fonction
createDSPFactory. partir du code FAUST sous forme de
string ou de fichier, la chaine de compilation embarque
(FAUST + LLVM-JIT) gnre le prototype de la classe,
appele llvm-dsp-factory. Puis, la fonction createDSPIns-
tance, correspondant un new nomClasse du langage
C++, permet dinstancier un llvm-dsp. Linstance peut en-
suite tre utilise comme nimporte quel objet, fonction-
ner et tre contrle travers son/ses interfaces.
3. FAUSTLIVE - UTILISATION
Figure 2. Structure dune application FAUST
FaustLive est un logiciel bas sur QT 2 , qui permet de
lancer des applications FAUST partir de leur code source,
sans avoir les prcompiler. La figure 4 prsente donc
2.1. LLVM la transformation des fichiers source FAUST baa.dsp et
foo.dsp en applications JACK-QT, une fois dposs dans
LLVM (anciennement "Low Level Virtual Machine") FaustLive.
est une infrastructure de compilateur. Elle est conue pour
compiler, diter les liens et optimiser des programmes crits
dans un langage arbitraire. Le code excutable est pro-
duit dynamiquement par un compilateur la vole, partir
dune reprsentation spcifique appele LLVM IR (Repr-
sentation Intermdiaire). Clang, le compilateur natif LLVM
pour le C/C++/Objective-C est un front-end pour le com-
pilateur LLVM. Il peut, par exemple, convertir un fichier
C en code LLVM IR (Figure 3).
Les langages spcialiss, comme FAUST, peuvent faci-
lement produire du code LLVM IR. Un back-end spci-
fique FAUST vers LLVM IR a t ajout au compilateur
FAUST pour gnrer ce code, [4].
58
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
59
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
ou le plugin demand.
60
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
61
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
fique FaustLive. Le serveur, dmarr par FaustLive, est envoy est indpendant et pourra tre correctement com-
capable de crer une page HTML qui encapsule les in- pil du ct serveur. La remote-dsp-factory peut ensuite
terfaces de contrle. Les interactions de cette page sont tre instancie pour crer des remote-dsp instances, qui
gres avec Javascript. Le service rsultant (interface de peuvent tre lances dans larchitecture audio et visuelle
contrle + glisser/dposer de DSP) a ladresse suivante : choisie, ici FaustLive (Figure 14).
http ://adresseIP :portServiceGlisserDposer/portInterface- Pour tre capable de crer linterface localement, le ser-
Controle (Figure 13). veur renvoie une interface encode en JSON 8 . De cette
manire, la fonction buildUserInterface peut tre recre
!
pour donner limpression quun remote-dsp fonctionne de
!
la mme manire quun dsp local.
De plus, les calculs audio sont redirigs travers une
connexion NetJack. Les donnes audio sont envoyes la
"#$%&#!'(%))*+,!-(#-! "#$%&#!.%+&(%/!*+&#(0-.#!
machine distante qui traite les donnes avant de renvoyer
ses rsultats. Outre le flux audio standard, un port midi est
utilis pour transfrer les valeurs des contrleurs. Lint-
rt de cette solution est de transmettre les buffers audio
et les contrleurs, synchroniss dans la mme connexion.
Dautre part, les chantillons audio peuvent tre encods
12//!3&$/!)-,#!
en employant les diffrents types de donnes audio : float,
integer et audio compress 9 .
Figure 13. Interface HTML avec le service de glis-
ser/dposer
62
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
Ce service est accessible depuis un navigateur mais n- Pour rduire le temps de compilation dun DSP, la sor-
cessite plusieurs requtes. travers FaustLive, lexport tie du compilateur FAUST (le code LLVM IR optimis)
des applications est facilit. Un menu est construit dyna- est enregistre. Lorsquune application est recharge, la
miquement avec les plateformes et les architectures dispo- phase de compilation FAUST du code DSP au code LLVM
nibles, encodes sous forme de JSON . Tandis que luti- IR est alors conomise, ainsi que la phase doptimisation
lisateur fait le choix dexporter son application, le code du code LLVM IR. Pour des programmes couteux, le gain
FAUST correspondant est envoy au serveur. Ce dernier est notable. On peut passer de quelques secondes de com-
vrifie la syntaxe FAUST. Une cl SHA1 unique corres- pilation une excution instantane.
pondant ce DSP est gnre pour faire ensuite les re-
qutes de diffrents binaires. La seconde tape est la com- 4.7. Limites
pilation, utilisant la chane de compilation "statique" rali-
se cot serveur, pour renvoyer enfin lapplication choisie Certains aspects techniques limitent louverture dun
par lutilisateur (Figure 15). Pour raliser les requtes au nombre indfini de fentres FaustLive.
!
service FaustWeb, FaustLive utilise la librairie NetWork Dabord, pour pouvoir synchroniser la recompilation
du framework QT. avec lenregistrement du fichier source, un moniteur est
plac sur le fichier, ce qui consomme des ressources sys-
!"#$%&'()* !"#$%+),* tmes. Selon la plateforme utilise, cette limite est plus ou
moins grande. De plus, il existe une limitation du nombre
de liaisons OSC parallles. Enfin, le nombre de clients
123! JACK est limit.
43$%/#.0! Pour toutes ces raisons, un maximum de soixante ap-
"#$%&'!()%!!
$*$+,$-,#!.$%/#.0! plications FAUST peuvent tre ouvertes paralllement.
5+0.!)(!
.$%/#.0!
5. CONCLUSION
!
89:;! FaustLive runit le confort dun langage interprt au-
<6-7!&%=#! "#$%&%'()%*+!*&!! tonome et lefficacit dun langage compil. FaustLive offre
&(,-)!-.+)(/! actuellement le cycle de dveloppement le plus rapide pour
-2(345#.! ! des applications FAUST, fournissant un outil modulaire
0$#()%*+!*&! pour le prototypage dapplications FAUST. Elle intgre
,+%1,#!-2(345#.! aussi des fonctionnalits avances de calcul distribu et de
&*$!)2#!6-7! contrle distance pour des applications audio temps-rel.
! De plus, FaustLive met disposition, travers sa fonction
?@;!
<5#.<7=()&*$>! dexport, un front-end confortable pour FaustWeb, le ser-
<($'2%)#'),$#! 0*>7%=()%*+!&*$! vice de compilation web.
'2*-#+! Ce projet est open-source et disponible sur SourceForge
A%+($.!&%=#! ($'2%)#'),$#! [3]. Il fonctionne sur Linux, OS X et Windows.
63
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
Olivier Blanger
iACT (institut Arts Cultures et Technologies)
Universit de Montral, Facult de Musique
64
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
Figure 1. Fentre principale de linterface graphique de Cecilia 5. On y retrouve diffrentes sections. En haut gauche : le
panneau de transport. Au centre gauche : le panneau de contrle avec les commandes dentre, de sortie et de sauvegarde
des pr-rglages. En bas gauche : la section des menus et boutons. Au centre de linterface : le grapheur o sont dites
les automations de paramtres. Sous le grapheur : la section ddie aux potentiomtres.
outils de contrle, permettait de manipuler le processus les techniques proposes pour moduler les paramtres au
audio en temps rel. Les modules de traitement audio de cours du temps et quelques utilitaires favorisant une exp-
la version 5 tant crit avec le langage python, il a t d- rience crative avec Cecilia.
cid dallger la structure du logiciel en retirant lditeur
de texte. Il existe dj une grande quantit dditeurs de
texte gratuits et multi-plateformes, o le langage python
est automatiquement reconnu, pouvant servir lcriture 2.1. Source sonore
des modules. Olivier Blanger est maintenant le dvelop-
peur principal de Cecilia 5, alors que Jean Pich demeure La porte dentre du logiciel est la source sonore mo-
le pre spirituel du projet. Jean-Michel Dumas a grande- difier. Traditionnellement, Cecilia tait conu pour traiter
ment contribu la traduction des modules Csound (de la un fichier son lu en boucle par lapplication. Au fil des
version 4) en modules pyo pour la version 5. versions, la lecture en boucle du son a t grandement bo-
nifie, au point de devenir un lment important en tant
que traitement audio dans le module. Divers modes de jeu,
2. UTILISATION DU LOGICIEL
permettant notamment laccs aux signaux provenant de
la carte de son, ont aussi t ajouts. Ces fonctionnalits,
Lobjectif de base de lapplication consiste fournir un
accessibles en cliquant sur licne la droite du menu,
environnement simple et efficace afin dexplorer les ef-
font de Cecilia un environnement de traitement en temps
fets audio-numriques sur le son. Une bibliothque de mo-
rel simple dapproche et versatile. La configuration du
dules, couvrant un large ventail de traitements, est four-
mode de jeu et le choix de la source sonore seffectue
nie avec le logiciel. Lutilisateur, aprs avoir charg un son
laide de la section Input du panneau de contrle.
dans le module choisi, peut manipuler et automatiser les
diffrents paramtres du processus laide des lments
dinterface graphique. Diffrentes fonctions denregistre-
ment permettent de sauvegarder le rsultat sonore sur le
disque dur.
Dans cette section seront dcrits les principaux l-
ments de linterface graphique (Figure 1) et les possibi-
lits de cration quils offrent lutilisateur. Nous y re-
Figure 2. Panneau de configuration de la source sonore.
trouverons les diffrents types de sources sonores trai-
ter, les modes denregistrement du rendu sur le disque dur,
65
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
2.1.1. Lecteur de son en boucle 2.1.4. mode 3 : Entre micro et lecteur en boucle
Lorsquun son est charg en mmoire dans le lecteur, Le troisime mode de jeu (icne de micro accompagn
la fentre de contrle de la boucle peut tre affiche en du chiffre 1) permet lutilisateur denregistrer le signal
cliquant sur le petit triangle horizontal, dernier icne de la dentre dans la mmoire du lecteur en boucle. La dure
bote doutils droite du menu (Figure 2). de la mmoire est spcifie dans la fentre de contrle
de la boucle. Ce mode est utile pour manipuler un signal
rel, qui na pas t pralablement enregistr sur le disque
dur, tout en bnficiant des fonctionnalits du lecteur en
boucle.
2.1.3. mode 2 : Entre micro Divers modes dcoute et de sauvegarde sont dispo-
nibles pour rendre le travail dans lenvironnement effi-
Le deuxime mode de jeu (icne de micro) permet duti- cace.
liser le signal en provenance des entres de la carte de son
comme source sonore modifier. Configur ainsi, Cecilia
2.2.1. Panneau de transport
devient un environnement de traitement en temps rel la
fois simple dutilisation et possdant des contrles sophis- Le panneau de transport (Figure 5) est situ dans le coin
tiqus. suprieur gauche de linterface. Il permet dactiver la per-
66
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
formance, laide du bouton play, pour la dure totale des paramtres dont lautomation est active se verra sou-
spcifie dans la section Ouptut . Le bouton denre- mis la trajectoire qui lui est associe dans le grapheur.
gistrement, en plus dactiver la performance, enregistre en
temps rel le signal de sortie sur le disque dur. Lorsque
la performance est lance en temps rel, le curseur situ
au-dessus du grapheur entreprendra sa course et toutes
les manipulations effectues dans linterface (menus, bou-
tons, potentiomtres, lignes de graphe) auront des rper-
cutions immdiates sur le signal de sortie.
67
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
68
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
69
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
Interface = [
csampler(name="snd"),
cgraph(name="env", label="Overall Amplitude", 4. CONCLUSION
func=[(0,1),(1,1)], col="blue1"),
cslider(name="drv", label="Drive", min=0, max=1,
init=0.5, col="purple1"),
Grce son large ventail de modules de traitement de
cslider(name="lp", label="LP F", min=20, max=15000, signal et son interface graphique simple et versatile, Ce-
rel="log", init=5000, unit="Hz", col="green1"),
cslider(name="q", label="LP Q", min=0.5, max=5,
cilia constitue un environnement de travail idal pour lex-
init=1, col="green2"), ploration et la production sonore. Les nouveaux modes de
cpoly()
]
jeu, permettant dinjecter dans le module le signal en pro-
venance de la carte de son, allis au contrle des para-
Ces quelques lignes de code suffisent produire lin- mtres via des interfaces externes (MIDI ou OSC), font
terface graphique suivante : de Cecilia un environnement de traitement en temps rel
aux multiples possibilits. La simplicit de lAPI de Ce-
cilia en fait un outil pdagogique motivant pour lappren-
tissage de la programmation musicale et devrait favoriser,
dans un futur rapproch, la cration de modules deffets
audio-numrique originaux.
5. REFERENCES
70
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
Pierre Guillot
CICM - EA1572,
Universit
Paris 8, MSH Paris Nord,
Labex Arts H2H
Guillotpierre6@gmail.com
1. INTRODUCTION
71
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
traitements pour de multiples plateformes logicielles, rapidement encombrer les codes et rendre difficile leur
cependant cette version est plus adapte une utilisation lecture. Bien quil nous paraisse prfrable de ne pas se
fixe quaux exprimentations9 que nous souhaitons servir de ce langage au sein du code dun objet, son
raliser avec la version HOA spcifique Pure Data. utilisation semble invitable, du moins dans une
Afin de rpondre ces contraintes et de faciliter la mise premire approche.
en uvre des objets graphiques, nous avons ralis une
bibliothque en C et Tcl/Tk10 sous la forme dune API11 : Lun des lments gnants de ce langage dans notre
le CICM Wrapper12. Cet ensemble de codes permet de contexte est le systme de tag. Il est, en effet, possible
proposer de nouvelles fonctionnalits et de faciliter la dattribuer des noms de rfrence aux lments dessins
mise en uvre dobjets. Loin dtre restreinte notre permettant par la suite de pouvoir les modifier ou les
contexte dinterfaces pour la spatialisation ambisonique supprimer, oprations ncessaires dans toute mise en
et nos problmatiques initiales, ce travail sest ouvert uvre. Ainsi, cette proprit du langage se rapproche des
de nombreuses utilisations et a permis notamment de systmes de calques, que nous avons suggr
raliser un ensemble dinterfaces graphiques dans Pure prcdemment. Cependant, la formulation nest ici pas
Data au fort potentiel ergonomique. des plus adaptes. Il est souvent ncessaire de dfinir des
noms spcifiques certains lments, des noms gnraux
Dans cet article, nous revenons, dans un premier des groupes dlments et un nom global lensemble
temps, sur les problmes que nous avons rencontrs lors des lments dun mme objet ce qui complexifie le
de la mise en uvre dobjets dans Pure Data et code. Notons encore qutant donn que ces noms ont un
prsentons par la suite les solutions que nous proposons champ daction pour lensemble dun canvas, il faut que
via le CICM Wrapper. Il sagit de permettre aux les noms contiennent un lment unique relatif chaque
utilisateurs de comprendre les modifications opres par instance dun objet afin que les changements ne
notre approche et les changements par rapports aux sappliquent qu un objet spcifique et non lensemble
prcdentes interfaces graphiques. Nous esprons ainsi des objets dune mme classe qui se trouvent dans ce
offrir aux dveloppeurs la possibilit de prendre en main canvas.
cette API, afin quils puissent offrir de nouveaux outils
qui nous lesprons rpondront aux besoins de la
communaut dutilisateurs de Pure Data [4].
9
Le langage FAUST ne permet pas de mettre en uvre des objets Dans lobjet hoa.map, par exemple, il est possible de
avec un nombre de canaux dynamiques ou des interfaces graphiques, il dplacer des cercles, reprsentant des sources sonores,
est ainsi peu adapt une phase dexprimentation dans ce contexte de au del des bordures de lobjet parce que linterface ne
lambisonie bien quoffrant des avantages certains tant sur le plan du
dploiement multi-plateforme que sur celui des optimisations.
reprsente quune partie focalise de lespace
10
Tcl (Tool Command Language) est un langage de dinteraction. Dans un tel cas, il est ncessaire dans le
programmation et Tk est une bibliothque logicielle pour la cration code de vrifier si les cercles sont dans les limites ou non
dinterfaces graphiques, http://www.tcl.tk/. de la bote afin de les dessiner ou de les effacer (Figure
11
Application programming interface ou interface de
programmation
3). Cette opration se complexifie lorsque le cercle
12
Le CICM Wrapper est disponible sur le rpertoire Git du CICM, chevauche les limites o lutilisateur est en attente dun
https://github.com/CICM/CicmWrapper.
72
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
cercle partiellement cach ; or cette opration est La cration dune fentre de proprits nous a sembl
complexe mettre en uvre, ncessite de nombreux aussi tre un problme rcurrent. Il est, en effet,
calculs et amne immanquablement un manque de clart ncessaire de raliser une nouvelle interface en Tcl/Tk
dans le code. pour chaque objet affichant les diffrentes valeurs des
proprits telles que la taille de lobjet, la police ou
encore les couleurs. A cela, il faut ajouter une srie de
mthodes permettant de recevoir et envoyer ces valeurs
afin de communiquer entre lobjet et la fentre de
proprits. De plus, les fentres de proprits ne diffrent
dun objet un autre que par leur nombre, mais les types
de variables (donnes numriques ou donnes textuelles)
et leurs reprsentation (zone de texte, slecteur de
couleur, bote nombre, etc.) se retrouvent dun objet un
autre. Ainsi, cette opration est, encore ici, redondante et
ne fait que diminuer la clart du code. Il nous aurait donc
sembl prfrable de pouvoir gnrer automatiquement
cette fentre de proprit, sans avoir ncessairement
rcrire lensemble du script, et d'accder et modifier ces
Figure 3. Lobjet hoa.map o une source sonore, valeurs exclusivement partir du code source C de
reprsente par le cercle rouge, est dplace en lobjet. Notons encore que ces proprits sont, dans les
dehors des limites de lobjet. usages, des variables que lutilisateur souhaite
sauvegarder et retrouver la mme valeur louverture
Enfin une dernire caractristique drangeante, lie dun patch. L encore, il revient au programmeur de
au dessin dans Pure Data, est le fait que le programmeur raliser la sauvegarde des proprits lenregistrement
doive lui mme dessiner le contour de sa bote ainsi que du patch et leur rcupration et initialisation
les entres et les sorties alors que les canvas dfinissent louverture. En somme, le programmeur peut, ici aussi,
quel endroit lutilisateur doit cliquer afin de crer des souhaiter faire appel des fonctions usuelles, tel que
lignes et de raccorder les objets. En somme, il revient au proposes dans le systme dattributs prsent dans le
programmeur de redfinir cette formule, qui rpond en SDK du logiciel Max.
grande partie de fins rajustements, permettant de
calculer lemplacement des entres et sorties afin de les De manire plus gnrale, un ensemble de fonctions
dessiner aux endroits quil convient. Opration ou doutils usuels, pouvant grandement faciliter la
redondante qui, l encore, complexifie le code. cration dobjets dans Pure Data, nous semblait manquer
[4]. Le prsent contexte ne permet pas, comme nous
Sur le plan des interactions, lAPI de Pure Data est lavons dit, de tous les numrer mais nous nous
encore ici relativement restreignant. Les canvas sont intressons plus particulirement deux dentre eux.
rattachs via Tcl/Tk un certain nombre dvnements Dune part la gestion des fonctions du traitement du
desquels ils reoivent des informations, comme les signal qui devient complexe mettre en uvre ds lors
coordonnes de la souris lors de son dplacement ou les que lon souhaite un nombre dentres et de sorties
touches du clavier actives, quils renvoient par la suite dynamique ou lorsque les vecteurs dentres et sorties
aux objets lorsque ceux-ci possdent les mthodes doivent tre diffrents (afin de raliser des traitements du
adquates. Larchitecture peut sembler tout fait valable signal out-of-place) et dautre part, un systme de type
mais le problme rside dans le manque de varit des proxy pour les entres permettant, par exemple, davoir
vnements auxquels un objet peut tre rattach. Ceux-ci plusieurs entres pouvant recevoir tous types de donnes
sont seulement au nombre de deux pour les vnements mais offrant la possibilit dobtenir lindex de lentre
lis la souris, son dplacement et le clic de la souris par laquelle chaque message arrive.
potentiellement associs deux touches : Alt et Shift.
Dans lobjet hoa.map, le comportement de lobjet diffre
non seulement selon la combinaison des touches mais 3. RESOLUTION DES PROBLEMES
offre, de plus, la possibilit de faire apparatre un menu Notre travail a t orient par certaines ncessits.
contextuel lorsque lutilisateur effectue un clic droit sur Cette bibliothque se doit de fonctionner sur lensemble
linterface ; or cet vnement est exclusivement rattach des systmes dexploitations auxquels est destin Pure
au menu contextuel natif de Pure Data (permettant Data notamment Linux, Mac OS et Windows, cest
d'accder laide ou aux proprits de lobjet) ainsi, il pourquoi notre choix sest trs rapidement port sur
est impossible den tre notifi et de modifier ce lutilisation seule des dpendances internes Pure Data.
comportement. Aussi, il nous a trs rapidement sembl
Ainsi, il nous a paru prfrable, malgr les problmes
que la varit des vnements auxquels nous avons accs
rencontrs, de proposer une version utilisant uniquement
dans Pure Data est trop limite en comparaison de
Tcl/Tk. Il sagissait aussi de ne pas limiter les
lensemble des vnements usuellement offerts dans les
possibilits de programmation donc de laisser ouverte
interfaces utilisateurs [5]. lutilisation des fonctions natives et aussi de pouvoir tre
73
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
13 14
Lobjet entry et popup font parti de la bibliothque flatgui Systme permettant de remplacer un indicateur, sous forme de
dvelopp par Ben Bogart pour Pure Data Extented. texte, par un texte.
74
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
soccupent de mettre en forme et denvoyer le script Les interactions de lutilisateur sont prsent trs
Tcl/Tk et qui grent notamment le systme de tag vitant varies et font appel plusieurs mthodes selon les
ainsi toute erreur de syntaxe ; notons nanmoins quil est actions : entrer dans lobjet, sortir de lobjet, survoler
toujours possible de passer outre ce systme si besoin15. lobjet, cliquer, traner , relcher, utiliser la molette et
En plus des fonctions de dessin usuelles telles que la double cliquer, presser une touche clavier quelconque,
cration de forme gomtriques simples ou lcriture de presser une touche clavier spcifique (Tab,
texte, nous offrons un systme de matrices permettant de Supprimer, Espace, etc.). Ces mthodes relatives aux
raliser des rotations et des translations. Il est aussi vnements de la souris transmettent la position de la
possible de dfinir les couleurs utiliser dans les formats souris relative lobjet mais aussi les clefs Shift, Maj,
RGB, HSL ou en hexadcimal, offrant plus de flexibilit. Ctrl et Atl. En somme, il est prsent possible de
Cette mthode de dessin est appele soit de manire raliser un objet au fonctionnement labor et aux
opaque chaque fois quil est ncessaire de redessiner dessins complexes sans pour autant rencontrer de
lobjet, lorsque lobjet bouge ou quun attribut li au grandes difficults de programmation.
graphisme est chang par exemple, soit de manire
transparente dans le code de lobjet. Il est ainsi possible Notons encore que les objets offrent prsent un
au programmeur, selon le contexte, dinvalider un calque systme de proxy pour les entres trs facile mettre en
spcifique ; seulement ce calque-l sera alors redessin uvre ainsi quun nouveau formatage des fonctions DSP
lappel de la mthode paint afin dallger le processus et des fonctions perfom similaires celles offertes dans
(Figure 6). Enfin le dessin des bordures, des entres et lAPI de Max. A cela se rajoutent de nombreuses petites
sorties est ralis de faon automatique. amliorations dont, entre autres, des mthodes facilitant
la lecture et lcriture de fichiers externes, la mise en
place dun systme de prrglages, une fonction
renvoyant la position globale de la souris ou relative au
canvas ou encore un systme de notifications16.
75
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
fixes arbitrairement ou dpendre de la taille de la police identiques au bang et toggle. Dautres proposent de trs
tel que dfinie dans lobjet c.number. Afin doffrir des lgres amliorations comme les objets c.slider qui
patchs plus lisibles, les entres et sorties des objets ne deviennent verticaux ou horizontaux selon que la hauteur
sont visibles quen mode dition, nous avons aussi fait le soit plus grande que la largeur, lobjet c.number qui
choix de leurs attribuer les couleurs syntaxiques par permet dincrmenter des valeurs numriques avec une
dfaut de Pure Data Extented permettant de facilement prcision qui dpend de la position de la souris lorsque
reprer le type de messages quils peuvent recevoir ou lutilisateur clique sur lobjet (Figure 9), lobjet
envoyer. c.number~ qui consiste en une combinaison de lobjet
boite nombre et dun snapshot~, lobjet c.meter~ qui, de
manire identique, peut tre compar une combinaison
de lobjet vu et de lobjet pvu~ ou encore lobjet c.radio
qui offre en plus, par rapport lobjet radio, un mode de
type check-list. Dautres interfaces sont des adaptations
de certaines bibliothques prsentes dans Pure Data
Extended mais qui, suite des mises jours ou du fait de
la complexit de leur cration, sont difficiles utiliser,
possdent certains dysfonctionnements ou noffrent pas
certaines fonctionnalits essentielles. Cest le cas des
objets c.scope~, un oscilloscope uni ou bidimensionnel,
lobjet c.colorpanel, un slecteur de couleur sous forme
de matrice taille variable, lobjet c.blackbloard, un
tableau permettant de dessiner la souris et par script,
dcrire du texte et dafficher des images au format GIF,
lobjet c.knob, un bouton rotatif avec un mode circulaire
et un mode sans fin ou encore lobjet c.menu, qui permet
dafficher un menu droulant. Enfin certains objets
Figure 8. Fentre de la fentre de proprit de possdent seulement leurs quivalents dans le logiciel
lobjet c.tab. Max et nous semblent des plus pratiques : c.function qui
permet de crer une fonction par suite de points avec
Tous les objets possdent des proprits communes diffrents modes dinterpolations, c.incdec qui permet
(ou attributs) : la taille de lobjet (hauteur et largeur), le dincrmenter ou dcrmenter une boite nombre sans
nom, le poids, linclinaison et la taille de la police stack overflow, lobjet c.plane qui permet de dplacer un
utilise par lobjet, la couleur darrire plan et la couleur point sur un plan bidimensionnel, lobjet c.tab qui offre
de la bordure, auxquelles viennent se rajouter les une sries de boutons texte, lobjet c.gain~ qui permet
proprits spcifiques de chaque objet. Enfin, ils de contrler le volume sonore avec une glissire
possdent aussi un symbole denvoi et un symbole de curseur, lobjet c.rslider qui permet de dfinir une plage
rception, de manire analogue aux interfaces natives de grce une glissire double curseur et enfin lobjet
Pure Data (Figure 8). Ces proprits peuvent, bien sr, c.spectrum~ qui permet dafficher le spectre dun signal
tre modifies de manire dynamique par des messages sonore. Notons nanmoins que lensemble de ces objets
envoys lobjet et sont aussi accessibles via la fentre a t ralis afin de rpondre des attentes personnelles,
de proprits qui facilite leur dition en offrant un champ ainsi leur fonctionnement peut lgrement varier vis
de saisie textuel ou numrique, avec un systme vis de leurs homologues natifs de Pure Data ou de Max.
permettant dincrmenter ou dcrmenter des valeurs
numriques ou lindex dun menu, un bouton de type Enfin, nous offrons un objet c.preset. Lensemble des
interrupteur ou encore un slecteur de couleur selon le objets possdant une mthode preset, possde un attribut
type de valeurs attendues. Notons enfin que lensemble permettant de leurs attribuer un nom qui sert de
des caractristiques des proprits des objets peut tre rfrence lobjet afin denregistrer ltat actuel de
affich dans la console en envoyant le message lobjet et revenir cet tat. Ce systme est, en somme,
attrprint lobjet, permettant de connatre les trs similaire celui propos dans le logiciel Max la
messages attendus par lobjet pour dfinir ses proprits. diffrence notable quil est possible de raliser des
interpolations. Ce systme vise, en outre, tre complt
par une srie dinterfaces permettant dditer les
prrglages de manire plus simple tel que le systme de
Figure 9. Reprsentation de linteraction permettant pattrstorage de Max mais, ici aussi, ayant accs
dincrmenter la valeur de lobjet c.number. lensemble des mthodes et fonctionnalits des objets,
nous pouvons envisager un systme diffrent rpondant
Certains objets sont donc trs similaires leurs plus nos attentes.
homologues natifs de Pure Data. Cest le cas des objets
c.bang et c.toggle, qui hormis les amliorations gnrales
lensemble des objets, offrent des fonctionnements
76
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
6. REFERENCES
18
http://www.juce.com/.
77
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
78
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
79
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
3
4.2. Lexique
www.jamoma.org propose des solutions fondes sur les
besoins issus des pratiques de la cration artistique. En premier lieu il est ncessaire d'tablir un lexique
4
github.com/OSSIA pour dcrire les lments constitutifs d'un scnario
5
github.com/OSSIA/API
6 interactif :
titre d'exemple les environnements Live, Modul8 et
Unity3D font l'objet d'un effort particulier pour tre rendu interop-
rable en vue d'une utilisation lors des chantiers d'exprimentation.
80
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
81
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
8
https://github.com/OSSIA/Score
82
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
cess : Intervalle et Automation. Nous prvoyons le Par la suite un processus intervalle, symbolis par
dveloppement d'un plugin de mapping, de gnra- une barre horizontale (Figure 7.), peut tre insr entre
teurs et le systme permet d'envisager le dveloppe- une paire d'vnements ; dclarant par l mme une
ment de plugins ddis la lecture de mdia. relation de prcdence entre eux et ainsi une contrainte
lors du dplacement de l'un des deux. A priori la dure
5.4 La classe TimeContainer est fixe (a) mais si une interaction est insre sur
lvnement de fin, la dure devient souple et
La classe TimeContainer hrite de TimeProcess. La linteraction sera possible nimporte quand ds que
classe dfinie une interface pour l'ajout, la suppression lvnement de dbut sera pass (b). Afin de prciser
et la supervision d'actions sur des listes de TimeEvent, une priode dinteraction, il est possible de faire appa-
TimeCondition et TimeProcess. raitre une fourchette de rglage. La borne gauche de la
Il existe pour l'instant un seul plugin de TimeCon- fourchette permet de prciser partir de quand l'inte-
tainer : Scenario qui offre un gestionnaire de con- raction peut arriver (c, d). La borne droite de la four-
trainte pour conserver les relations de prcdence entre chette permet de prciser quand linteraction devra
vnements lors de l'dition et compile un rseau de tre dclenche si elle n'arrivait pas (d) ; l'absence de
Petri pour en vrifier l'excution. borne droite signifiant que linteraction peut tre at-
tendue indfiniment (c).
IMPLEMENTATION DANS I-SCORE
Figure 8. TimeBox
83
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
REFERENCES
Avec un moteur ddition et dexcution de scna- [6] Toro, M., Desainte-Catherine, M., Concurrent
rio interactifs non dpendant des interfaces graphiques Constraint Conditional Branching Interactive
d'autres reprsentations que celle di-score sont imagi- Scores , p270-273, Proceedings of Sound and
nables selon les contextes d'utilisation et habitudes de Music Computing, Barcelone, Espagne, Juillet
travail : une reprsentation par cuelist peut tre plus 2010.
approprie dans un contexte de spectacle vivant, un [7] Arias, J., Desainte-Catherine, M., Salvati, S.,
accs purement logique tre souhait dans un contexte Rueda, C., Executing Hierarchical Interactive
musographique tandis que certains outils de dvelop- Scores in Reactive ML , Journes d'Informatique
pement de jeux vidos adopte une reprsentations spa- Musicale, Bourges, Mai 2014, en soumission.
tiales pour des scnarisations non-linaires. Cette in-
dpendance permet aussi denvisager quune fois crit, [8] Desainte-Catherine, M., Allombert, A., Assayag,
un scnario interactif puisse tre excut sur une plate- G. Towards a Hybrid Temporal Paradigm for
forme plus lgre sans soucier de sa reprsentation. Musical Composition and Performance : The Case
C'est pour toutes ces raisons que le projet OSSIA of Musical Interpretation , p61-72, Vol. 37, No.
s'attache rendre le formalisme de Score ouvert d'un 2, Computer Music Journal Summer, 2013.
point de vue logiciel en proposant une architecture de [9] Marczak, R., Desainte-Catherine, M., Allombert,
plugin pour les processus et les contenant temporel et A. Real-Time Temporal Control of Musical
quune API est en cours de rdaction. Grce un for- Processes , in Proceedings of the Third
malisme partag et expriment dans des contextes de International Conferences on Advances in
dveloppements varis10 tels que les jeux-vidos, le Multimedia, Budapest, Hongrie, Avril 2011.
spectacle vivant ou la musographie, nous esprons
proposer une librairie unifie, gnrique et suffisam- [10] Allombert, A., Marczak, R., Desainte-Catherine,
ment souple pour rpondre aux besoins spcifiques des M., Baltazar, P., Garnier, L. Virage : Designing
critures intermdias. an interactive intermedia sequencer from users
requirements and the background , International
Computer Music Conference, New York, USA,
Juin 2010.
10
Une implmentation de Score dans Max est prvue. Nous
esprons ainsi permettre de crer rapidement des moteurs d'critures
spcifiques.
84
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
Journe Transformation
jeudi, 22 mai 2014
85
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
86
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
Jnatas Manzolli
Interdisciplinary Nucleus for Sound Studies (NICS)
Art Institute, Music Department
University of Campinas (UNICAMP) - Brazil
jonatas@nics.unicamp.br
No one knows exactly what went through the mind of pre-historic man when he first struck two
rough stones together in order to produce sounds and rhythms. To what extent did the resulting
reverberations captivate him? To what extent was he already projecting his own ideas in order to
transform what he was doing? As the millenniums passed, he continued polishing his stones,
producing more and more sophisticated instruments. In the era of digital sound generation, real time
interactions and virtually unbounded possibilities, the computer has become our new stone with
which we project and transform our ideas into sounds.
Music composition has evolved from symbolic notated pitches to expressions of the internal
organization of sound. This can be observed in the extended instrumental techniques developed
from the 1940s onwards up to the more recent compositional strategies that have emerged from the
new interfaces for musical expression. The dynamic organization of sound material in real
time, however, adds new dimensions to musical information and to its symbolic representations.
This talk will explore the convergence between ideas developed as a result of live interactive
composition and ideas that have emerged in an interdisciplinary framework involving mathematical
modeling, computer and data processing and models for real time interaction. We will introduce the
interdisciplinary research activities developed at NICS/Unicamp Brazil, and will discuss a
conceptual view point anchored in the development of systems that produce sound material in real
time, through the iteration of simple rules and independent of symbolic notation.
With the advent of new technologies that have emphasized interaction and novel music interfaces,
alternative forms and modes of interactive media have been realized. These developments raise
fundamental questions regarding the role of embodiment as well as the environment and interaction
in live interactive composition focusing on our understanding of the man-machine interplay. In
addition, it emphasizes a more situated and externalist view.
The study that we are developing at NICS is to integrate algorithmic composition and interactive
narratives with scientific sonification and visualization. It is possible to conceive new methods of
combining music interface technologies within a theoretical approach driven towards shaping
human sensory experiences through new forms of enhanced perception and action through interplay
with music performance. For example, new interactive technologies such as interactive
environments can function as a laboratory setting where we can test computational models and
interactive musical behavior. Aligned with this perspective, we are working with multimodal
87
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
The structural foundation of this endeavor is not a written score or textual narrative, but rather the
concept of recursion used as a way of constructing musical meaning, or, more specifically, the
interaction between human agents and machines that produced recurring changes in the physical
world. Our aim is to experience the ways in which internal and external representations of the world
can be joined together in a performance to create sound and video.
These experiences raise a fundamental question: Is a universal, even basic, structure underlying
human auditory and visual experiences that is based on a single cognitive function in the brain, as
opposed to one that is fragmented along a number of modality-specific properties? This invariant
function could be equated with the brain's drive to find meaning in events organized in time, or to
define a narrative structure for multimodal experiences to which it is exposed.
To illustrate our research trajectory, we will present a number of musical systems and works
develop at NICS that have emerged from the concepts expressed during this lecture. In short, these
works illustrate that the aesthetic experience can be at least partially obtained from the emergence
of structures produced as a result of the interaction between humans and interactive systems.
88
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
Fernando Iazzetta
Universidade de So Paulo - Brazil
iazzetta@usp.br
Transformation: to change the form of something, to cross the borders of one state to reach another
one. That is exactly what we do when we use technologies in creative processes. Transformation is
one of main leading ideas that guide the activities of NuSom - Ncleo de Pesquisas em Sonologia
(Research Centre on Sonology) at the University of So Paulo. In the last ten years a group of artists
and researchers related to NuSom have been working on the interfaces between academic research
and artistic creation, exploring local conditions and facilities to transform the artistic experience of
its members and audiences. Most of our work is guided by the concept of experimentation. The
term is taken here in a double sense: as an empirical method to test something; and as an attitude of
exploring what is not yet established or finalized, sometimes by transgressing or reinventing artistic
boundaries. In this talk I'll briefly present some initiatives at NuSom in the direction of
transforming technologies, practices and concepts within a creative framework. These initiatives
will be assembled in four thematic fields:
1) transforming spaces: extrapolating the ideas of sound projection and sound localization
often recalled when one think about spatiality in music, we present a few projects that
explore space as a musical parameter, among them, a series of network concerts and
installation projects;
2) transforming context: leaving the concert hall to explore other social spaces can lead to very
rich experiences in terms of reallocating the roles of artists and audiences; part of our works
focus on the incorporation of contextual situations as the material for music creation;
4) transforming actions: the "classic" issues of music interaction and gesture are taken into
consideration in an experimental perspective to construct new instruments and performative
instances.
For each of these four fields we will provide a couple of examples among the works created by the
NuSom in the last years and will point out a few issues related to the use of music technology in a
creative way.
89
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
90
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
91
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
4. CONCERTS
5. CONCLUSION.
92
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
Vittorio Montalti
e-mail: vittoriomontalti@gmail.com
93
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
Le jeudi 7 novembre 2013 l'ATMUSICA de Tours des lves de composition d'Alessandro Solbiati.
a propos une programme avec une tryptique de
Daniel D'Adamo (Lips, your lips, Keep your furies,
Air li; synthse de ses tudes sur le souffle, 5. Conclusion
l'mission du son, la dynamique ) et des pices
amplifi de Helmut Lachenmann (Pression) et Le studio de Tours est quip avec des matriaux
George Crumb (Vox balanae). de haute qualit et se prte des productions
La musique a t joue par Isabel Soccoja professionnelles et des concerts dans des petits
(mezzo-soprano), Nicolas Vallette (fltes), Agns espaces.
Bonjean (piano), Delphine Biron (violoncelle) et
Charles Bascou (ralisateur en informatique On espre que le studio soit utilis de plus en
musicale). plus non seulement pour l'activit pedagogique
mais aussi pour des production de musique
Enfin les materiaux du studio ont t utiliss lectronique des tudiants et des compositeurs
pour enregistrer le concert du premiere ann invit.
94
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
Didier Guigue
UBPB Mus3 CNPQ
didierguigue@gmail.com
95
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
1
Je reviens sur la notion de complexit relative plus
avant.
2
A propos de cet aspect de l'orchestration de Webern, cf.
[17, 18, 21].
96
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
3
C'est aussi par ce moyen que l'on pourra analyser
divergences entre enregistrements diffrents de la mme
Figure 6. Histogramme de l'volution de la complexit oeuvre.
4
relative des Local Sonic Setup dans l'extrait de Audiosculpt n'est bien sr pas le seul logiciel sur le
Beethoven. Les donnes sont tiquetes par le numro de march proposer une gnration automatique de
mesure. marqueurs. Mais ce sont les fonctionalits
complmentaires auxquelles je fais appel qui le rendent
prfrable pour mon projet.
97
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
98
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
99
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
implemente dans OpenMusic (Figure 10) de manire tudier si cette rectification traduit mieux la ralit de
faciliter son inclusion dans le modle d'analyse de la perception des timbres orchestraux.
l'orchestration10. Cette inclusion implique entre autres
une normalisation sur le vecteur de complexit relative,
pour laquelle il est ncessaire de fixer une valeur
paradigmatique maximum. Pour celle-ci, j'ai adopt la
Formant Centroid d'un bruit blanc (10.922,781 Hz), que
l'on peut considrer comme le son le plus complexe
dans ce domaine. On obtient alors, par factorisation, la
Relative Formant Centroid (RFC) de chaque setup.
4. CONCLUSION
100
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
101
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
Raed BELHASSEN
CICM- Centre de recherche en Informatique et Cration Musicale -EA 1572
Universit Paris 8
MSH Paris Nord
brmusique80@yahoo.fr
102
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
2.1. Structure modale des langages musicaux arabes 2.2.1. Intervalles musicaux jusquau XIIIe sicle
Les langages musicaux arabes sont caractriss par Les thoriciens arabes ont dfini les intervalles en
leurs aspects monodique, monophonique et fonction de lemplacement des doigts sur le manche des
htrophonique, rgis par le systme modal arabe instruments. Nous ne possdons pas de documents crits
[10]. antrieurs ceux dAl Farabi4 [13]. Nonobstant, nous
savons que jusquau Xe sicle, il existe bel et bien au
2.1.1. Le maqm moins deux systmes acoustiques diffrents : Le
premier repose sur une division de lchelle de deux
Le terme mode nous renvoie vers le mot maqm, ce octaves en quarante parties gales (), tandis que le
qui signifie lieu en arabe, devenu au XVIIIe sicle la deuxime systme comporte les intervalles de limma, de
signification dun emplacement sur le manche dun ton majeur, de tierce mineure, de tierce majeure, de
instrument de musique et il dsigne une succession quarte juste et de quinte juste (Figure 3) [10]. Les
dintervalles. Poch dfinit le maqm comme une ligatures sur le manche de linstrument nous donnent une
srie dintervalles qui, selon les cultures, seront indication sur les intervalles musicaux, Al kawarezmi [6]
regroups en genre ou en famille (jins) [28]. nous informe que la premire ligature (ligature de
lancien mdius) se place environ autour du quart entre
2.1.2. Le jins la ligature de lindex et celle de lannulaire, la deuxime
est celle du mdius perse et se place en leur milieu
Genre en franais, le terme jins (pluriel-ajnas) environ et la troisime est celle de Zalzal5, aux trois
dsigne une distribution de cellules mlodiques, quart entre les deux ligatures peu prs. Lassimilation
intrinsques au maqms, en tricorde, ttracorde et de la musique arabe lintervalle qui correspond au
pentacorde3 [28], excuts selon un enchainement mdius de Zalzal, appel tierce neutre, est devenu
dintervalles donn. symbole de la diffrence entre la thorie musicale
A titre dexemple, nous prsentons le maqm Bayati, occidentale et la musique arabe [25], en repoussant le
ses cellules mlodiques endognes ainsi que ses dualisme traditionnel de tierces majeures et mineures
variantes (Figure 1). Le genre Bayati en R est une [14], un intervalle exprim en rapport numrique
cellule fondamentale qui sert de point de retour chaque (27/22) (Figure 3) [10]. Au XIIIe sicle, Saffiyu al-Din
exploration modale. Lorsque la deuxime cellule est un Al Urmawi crit son livre Kitab al-Adwar-Le livre des
jins Hijaz, le mode change daspect et sappellera cycles, qui se fonde sur un systme bas sur le cycle
dsormais Bayati Churi. des quintes, qui tait dj connu. Mais son organisation
des intervalles et des cycles, en donnant leur nom utilis
dans la pratique, en fait un ouvrage exceptionnel [25].
Les crits de Saffiyu al-Din nous donnent une ide
prcise des cycles de son poque avec une approche
certes globale mais explicite, des modes qui prennent
appui sur les cellules mlodiques basiques que sont les
genres ttracordaux et pentacordaux, partir desquels se
construisent des structures modales (heptacordales et
octacordales) plus complexes [2]. Nous reprsentons
ci-dessous un exemple de cycle musical dcrit par Al
Urmawi ainsi que ses intervalles en rapports numriques
[9-23] (Figure 2).
Figure 1. Le maqm Bayati, ses jins et ses
variantes.
4
Philosophe, musicien et musicologue du Xe sicle ; il est galement
lauteur du livre Kitab al Musiqa al Kabir (Le grand livre de la
3
Un maqm (tba en Tunisie) peut tre compos de plusieurs musique).
5
jins crant des regroupements qui peuvent tre assembls, Musicien et instrumentiste trs dou de la cours abbaside la fin du
dsassembls ou imbriqus [15]. VIIIe sicle.
103
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
Figure 3. Les chelles intervalliques respectives du IXe/Xe sicles, tierce persane/tierce neutre de Zalzal et de
Safiyu al-Din-XIII. [10]
(), linterprte est libre de privilgier certaines
dterminations mlodiques () la varit de ces patrons
2.2.2. La gamme arabe dans la conjoncture musicale mlodico-rythmiques caractrise le style propre de
actuelle chaque interprte, mais elle dpend surtout de ses
capacits dimprovisation . Cette libert dans
La musique arabe a subi une transformation linterprtation est lessence mme de la musique arabe :
spectaculaire, rsultat dun phnomne acculturatif6 linstrumentiste, non seulement, explore un espace
allochtone et exogne, ou indigne mme, due aux sonore modal donn, mais il suit un processus opratoire
diffrentes pratiques musicales imprgnes des personnel formulant des variations de texture sonore, de
rpertoires divers tout en gardant leur essence, leur lien timbre, dintensit et dornementations7.
avec la tradition [116]. Les idiosyncrasies musicales
autochtones dans le monde arabo-irano-turque au dbut 2.3.2. Les ornementations
du XXe sicle ont cr un vritable besoin identitaire. Le
congrs de musique du Caire de 1932 a engendr une Peu dtudes sintressent aux ornementations dans les
vritable dichotomie esthtique entre la musique musiques arabes8, pourtant, elles sont considres
traditionnelle et les pratiques nouvelles, y compris comme tant un procd de composition et non un
ladoption dune chelle tempre de 24 quarts de tons artifice dexcution 9 [29]. AL Faruqi [5] crit propos
[27]. : Pour lartiste arabe, lornementation nest donc pas
un additif, un lment superflu ou amovible de son art.
2.3. Attitudes compositionnelles et interprtatives Cest le matriau mme partir duquel il faonne des
substantielles formes linfini (). Lornementation peut comporter
des additions mlodiques (). Une grande partie de ces
additions sont comparables celles que lon rencontre
2.3.1. Limprovisation instrumentale dans la musique occidentale (fioritures, trilles, mordants,
etc) . A partir de ce constat, nous savons quune
Grce un schma prtabli bas sur un matriau broderie est au cur de plusieurs ornements, tel quun
modal, linstrumentiste explore les aspects formels du trille qui est une suite de broderies rapides, le mordant
maqm en suivant un trac hirarchique sinscrivant correspond une broderie suprieure ou infrieure ainsi
dans une certaine temporalit dynamique avec un
dploiement mlodico-rythmique instantan. Ayari [10]
crit propos du taqsim (improvisation instrumentale 7
Abou Mrad distingue trois types dimprovisations : monomodulaire,
explorant le maqm en exploitant beaucoup de plurimodulaire caractre cantillatoire et plurimodulaire
possibilits techniques) : En tenant compte du grand dinterpolation. Nous citons propos des ornementations :
limprovisation monomodulaire consiste en la formulation de
ventail de possibilits que propose la tradition, variations autour dun phras prcompos et mesur. Ces variations
linterprte prvoit les conduites mlodiques et organise sont le plus souvent ornementales [1].
8
subtilement lvolution des progressions temporelles Nous pouvons citer titre dexemple le travail de Zouari dans sa
thse de doctorat o elle propose une notation base sur une
symbolisation des ornementations en musique arabe en passant par une
6
phase danalyse dun rendu sonore (enregistrement sonore de la troupe
Sur le plan musical, nous avons opt pour le terme acculturation au tunisienne pendant le congrs du Caire en 1932). [31]
9
sein dune mme culture arabo-islamique gnrale, o les rpertoires Viret souligne le rle fondamental que les ornementations jouent en
artistiques se diffrent selon les pratiques musicales locales [19]. grgorien comme dans toutes les musiques modales. [29]
104
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
Echapp
Sur-marche et Sous-
marche
Gruppetto
Appoggiatures
Broderies
11
Le terme improvisation ou improvis dans la musique arabe
nous renvoie vers deux significations qui mritent dtre soulignes :
limprovisation au sens conventionnel du terme, et dun autre cot au
sens inhrent une musique de tradition orale, o chaque
10
Nous engageons ici une approche adapte la musique arabe grce rinterprtation dune mme uvre possde des caractristiques
une recherche slective dans les quatre rfrences cites ci dessus. diffrentes, connue comme une sorte de libert dinterprtation propre
Nous opterons pour les mmes dfinitions que celles dfinies par Fron chacun, qui dpend dun schma cognitif inextricable. Nous
concernant le trmolo : fluctuations rgulires de lamplitude lappellerons improvisation sous-jacente .
12
sonore , le trille : alternance entre deux hauteurs distinctes . En ce Pour plus dinformation concernant la notion dactualisation dun
qui concerne la Sur-marche et la Sous-marche, nous empruntons ces matriau musical pendant une interprtation/improvisation, son
termes Zouari, inspirs par lanalyse schenkrienne [17]. inscription dans une directionalit/temporalit, voir [21].
105
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
2.3.3. Subtilits interprtatives substantielles diverses le reproduire via Csound en sinscrivant dans une
perspective danalyse/synthse voire mme mulation15.
En plus des ornementations, les instrumentistes
arabes produisent des variations trs semblables aux
techniques dinterprtation musicale occidentale :
nuances, phrass, intonations, caractres, articulations
etc. Dans notre dmarche de modlisation, nous
mettrons laccent sur le vibrato, le glissando, le legato et
les effets lis aux variations de lintensit. Ci-aprs nous
visualisons les spectres respectifs de lenregistrement de
lorchestre tunisien au congrs du Caire en 1932
(Qacida tab Husseini) et une improvisation ralise par
un violoniste gyptien13. Le premier sinscrit dans une
perspective traditionnaliste et le deuxime, il sagit
dune improvisation moderne : la saillance des
variations de hauteurs est frappante dans les deux
exemples (Figure 6). Figure 7. Modle informatique dans Csound.
Notre dmarche de modlisation des fins de
construction dun espace composable en ce qui concerne
la musique arabe16, sengage dans une perspective,
dabord analytique, empirique, dun point de vue
musicologique/ethnomusicologique (premire section de
cet article), base sur lobservation pour arriver une
traduction formalise, ensuite dans une logique de
synthse, de cration et dmulation. En effet, une
Figure 6. Reprsentations spectrales de deux simplification globale pendant la reprsentation du
exemples sonores : ancien et moderne. modle musical, la plus fidle possible, permet une
caractrisation significative qui prend en compte
Nous remarquons facilement la prsence des glissandos plusieurs aspects inclus dans le systme musical modal
dans le premier exemple et des vibratos plusieurs arabe complexe, y compris les ornementations et les
reprises dans le deuxime : ceci dmontre formellement subtilits dinterprtation.
que lexcution musicale arabe, quelle sinscrive dans
une optique musicale moderniste ou conservatrice, ne
dpend pas seulement de la structure modale et des 3.1. Prendre en compte laspect homophonique de la
ornementations, mais aussi des techniques de jeux musique dans Csound
multiples propres chaque instrumentiste. La cration sonore dans Csound passe par deux
phases : partir des instruments de lorchestre, gnrs
3. MODELISATION INFORMATIQUE : UNE par des codes doprations (Opcodes), et suivant des
BIBLIOTHEQUE DOBJETS DANS CSOUND vnements dans une partition appele score. Afin
dillustrer le plus explicitement possible notre
Arom [8] dfinit le modle comme une reprsentation dmarche, nous avons choisi de travailler avec lOpcode
la fois globale et simplifie de lobjet , il ajoute, pluck qui produit un son de corde pince dcroissance
dans les musiques de tradition orale, la modlisation naturelle, bas sur lalgorithme de Karplus-Strong, pour
peut tre obtenue, soit par lmergence cest--dire la ses qualits dissipatives, utiles pour une reprsentation
matrialisation du modle, soit par une srie de formelle du rendu sonore des musiques arabes. Prendre
dductions successives . Un modle ontologique ou une en compte le caractre homophonique dune musique,
ontologie informatique est un outil de reprsentation revient crer des vnements successifs17, sinscrivant
dun ensemble de connaissances ou de concepts sous une
forme utilisable par un ordinateur14. Le modle que nous
prsentons dans cette section nous permettra non
seulement de comprendre les mcanismes de 15
Nous pouvons non seulement envisager la simulation de
fonctionnement du systme musical arabe, mais aussi de linterprtation musicale arabe, mais aussi la possibilit dune
mulation au sens propos par Berthoz [18], dans un but de recrer ou
de transformer. La notion dmulation est reprise et adapte par le
groupe de travail AFIM -visualisation du son, dans un sens artistique :
mulation artistique du son . Voir le rapport dactivit propos par
Anne Sedes au (consult le 5 janvier 2014) :
gtv.mshparisnord.org/IMG/pdf/rapportGTVisualisation.pdf
13 16
Mahmoud Serour, premier prix du meilleur violoniste du monde Lespace composable en tant que procdures opratoires, lensemble
arabe en 1996. de traitements et de variables dfinis auparavant et avec lesquels nous
14
Gruber dfinit lontologie comme une spcification explicite de la composons. Voir [20].
17
conceptualisation dun domaine : An ontology is an explicit En ce qui concerne Csound, nous entendrons par vnement tout
specification of a conceptualization [26]. dclenchement dun son.
106
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
dans une perspective dcriture horizontale. Nous Voici le code dun exemple parlant du maqm Husayni
dtaillerons ce point ci-aprs. bas sur lchelle du Saffiyu al-Din (Figure 2) :
107
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
lignes de code, recherches minutieuses de chaque classe event "i", 2, ktime2, .07, kampl, p5+p13,
p6+p13, p7, p8, p9, .1
de hauteur, calcul de la dure, sans oublier les autres kampl = p4-1
aspects dinterprtation tels que les variations dans les ktime2 = ktime2 + .07
nuances ou dans lamplitude. Ces nombreuses rflexions event "i", 2, ktime2, .07, kampl, p5, p6, p7,
p8, p9, .1
nous ont amen repenser lespace composable dans kampl = p4-1
Csound dans ce cadre prcis. ktime2 = ktime2 + .07
event "i", 2, ktime2, .51, p4, p5+p12, p6+p12,
p7, p8, p9, p10
3.3.2. UDO et Opcode event endop
Placs dans lentte de lorchestre, les UDO (User- LUDO macroonment2 possde neuf entres,
Defined Opcodes ou Opcodes dfinis par lutilisateur) correspondantes aux champs p4, p5, p6, p7, p8, p9, p10,
nous permettent de crer des Opcodes adapts une p12, p13 de la partition et zro sortie : il dclenche les
problmatique donne. Nous avons mis en place une vnements sonores en envoyant de nouvelles valeurs
stratgie de traitement des micro/macro-ornements avec linstrument contrl.
lOpcode event [30], qui permet de gnrer un Le code dans la partition, contrlant son tour
vnement de partition depuis un instrument de lUDO en question, est le suivant (p-champs en haut,
lorchestre, que nous appelons linstrument de code en bas) :
contrle . La syntaxe de lOpcode event est la
suivante : ;p1 p2 p3 p4 p5 p6 p7 p8
;p9 p10 p11 p12 p13
event "scorechar", kinsnum, kdelay, kdur, [, i1 1 1 80 8.05 8.05 12.09 3 4
kp4] [, kp5] [, ...] 0 2 .02 -.015
108
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
109
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
klegato = p10
endif instr 2
;transposabilit kvib lfo p8, p9, 3
kfrequencerep table 0, p14 kgliss linseg cpspch(p5), p3/3,cpspch(p6)
if kfrequencerep > p5 then kenv linen ampdb(p4),p3*p10 , p3, p3/4
koctave = int(kfrequencerep)-int(p5) kgliss=kgliss + kvib
kintable = kfrequencerep - int(kfrequencerep) + asig pluck kenv, kgliss, cpspch(p7), 0, 1
(0.12 * koctave) out asig
kintp = p5 - int(p5) endin
ktone = kintable - kintp
kdiff = -ktone*100
ktranspose = semitone(kdiff) Les traitements de hauteurs reposent sur kvib et kgliss,
elseif kfrequencerep < p5 then avec un oscillateur basse frquence pour reproduire des
koctave = int(p5) - int(kfrequencerep)
kintable = kfrequencerep - int(kfrequencerep)
fluctuations23 et des glissandos avec le traage dune
kintp = p5 - int(p5) + (0.12 * koctave) suite de segments de droite entre les points spcifis. Les
ktone = kintp - kintable effets de phras sont reproduits avec une enveloppe qui
kdiff = ktone*100 applique un motif dune attaque et dune chute en
ktranspose = semitone(kdiff)
else segments de droite, obtenus avec lOpcode linen.
ktranspose = 1 Lvnement dans la partition envoie les paramtres de
endif contrle soit, vers linstrument de contrle qui les
kcycle = cpspch(kfrequence)*ktranspose
kcycle1 = octcps(kcycle) transfre par la suite vers la bibliothque dobjets qui les
kcycle2 = pchoct(kcycle1) actualise et les rachemine vers linstrument contrl
;gnration de lvnement pour les interprter avec ces nouvelles donnes, soit
event "i", 2, 0, .06, kamplitude, kcycle2,
kcycle2, p7, p8, p9, klegato
directement vers ce dernier pour reproduire le
endif phnomne sonore (Figure 12).
endop
instr 1
ktrigger init p11
if (ktrigger == 1) then
macroornement1 p4, p5, p6, p7, p8, p9, p10,
p12, p13
ktrigger = 0
elseif (ktrigger == 2) then
macroornement2 p4, p5, p6, p7, p8, p9, p10,
p12, p13
ktrigger = 0
;etc
elseif (ktrigger == 14) then
macroornement14 p4, p5, p7, p8, p9, p10, p14
endif
endin
110
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
111
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
[18] Berthoz, A. La dcision, Odile Jacob, Paris, 2003. [31] Zouari, H. Les ornementations dans le tba rast el
dhil : lexemple du Congrs du Caire de 1932, Thse de
[19] Camilleri, C., Cohen-Emerique, M. Collectif. Chocs doctorat, Universit de Paris Sorbonne, 2012.
des cultures ; concepts et enjeux pratiques de
linterculturel, LHarmattan, Paris, 1989.
[20] Carvalho, G. Formaliser la forme , Actes des
journes dinformatique musicale, Saint Denis, France,
version internet, 2005. Consult le 11/02/2014. URL :
http://jim2005.mshparisnord.org/download/GCarvalho.p
df
[21] Dahan, K., Lalibert, M., Rflexions autour de la
question dinterprtation de la musique
lectroacoustique, Actes des Journes dinformatique
musicale, Albi, France, version internet, 2008. Consult
le 8/01/2014. URL :
http://www.gmea.net/upload/09_KAHAN_JIM2008-
final.pdf
[22] During, J., Dufourt, H., Fauquet, J.-M., Hurard, F.,
Systmes acoustiques et systmes mtaphysiques dans
les traditions orientales , Lesprit de la musique,
Klinsieck, p. 177-184, 1992.
[23] Erlanger D, R. La musique arabe. Libraire
orientaliste Paul Geuthner, Tome III, Paris, 1938.
[24] Fron, F.X., Les variations dans la vibration :
vibratos, trmolos et trilles dans la Trilogie Les trois
stades de lhomme (1956 1965) pour violoncelle seul
de Giacinto Scelsi , Filigrane Musique, esthtique,
sciences, socit, n 15, version internet, 2014. Consult
le 8/01/2014. URL :
http://revues.mshparisnord.org/filigrane/index.php?id=5
16
[25] Ghrab, A. Commentaire anonyme du kitab al-
Adwar Edition critique, traduction et prsentation des
lectures arabes de luvre de Safi al-Din al-Urmawi,
Thse de doctorat, Universit de Paris Sorbonne, 2009.
[26] Gruber, T.R. A translation approach to portable
ontology specifications , knowledge acquisition, n 5, p.
199-220, 1993.
[27] Lambert, J. Retour sur le congrs de musique
arabe du Caire de 1932. Identit, diversit,
acculturation : les prmisses dune mondialisation ,
Congrs des musiques dans le monde de lislam, Maison
des cultures du monde, Assilah, Maroc, p. 1-6, 2007.
[28] Poch, C. Le tronc commun des maqms ,
Colloque Maqm et cration, Asnires-sur-Oise, France,
p. 7-15, 2006.
[29] Viret, J. Le chant grgorien et la tradition
grgorienne. Lge dhomme, Lausanne, 2001.
[30] Yi, S. Control flow - Part I et II, Csound
journal, Vol. 1, Issues 3 et 4, version internet, 2006.
Consult le 19 janvier 2014.URL :
http://www.csounds.com/journal/
112
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
Laurent David 1,3 Mathieu Giraud 1 Richard Groult 2 Florence Lev 1,2 Corentin Louboutin 1,4
1
LIFL (UMR 8022 CNRS, Universits Lille 1 et Lille 3)
2
MIS (Universit de Picardie Jules Verne, Amiens)
3
ENSEA (Cergy-Pontoise)
4
ENS Rennes
{laurent, mathieu, richard, florence, corentin}@algomus.fr
113
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
Figure 1. Structure densemble dune forme sonate, schma et notations tirs du livre de Hepokoski et Darcy [12, page 17].
La forme sonate est construite sur un thme (ou une zone thmatique) principal (P), un thme secondaire (S) et une
conclusion (C). Entre les deux thmes, la transition (TR) se termine par la csure mdiane (medial caesura) (MC). la fin
du thme secondaire se trouve une cadence parfaite, dnomme EEC (Essential Expositional Closure) dans lexposition
et ESC (Essential Structural Closure) dans la rexposition (recapitulation).
Figure 2. Analyse structurelle de lAllegretto de la sonatine Op. 55, no. 2 de Kuhlau, pour piano, en utilisant les conven-
tions de [12]. Les cadences (fin de phrases) sont indiques par les termes HC (Half Cadence, demi-cadence) et PAC
(Perfect Authentic Cadence, cadence parfaite), prcds de la tonalit de cette cadence (ici I et V). Les termes EEC et
ESC dsignent les fins de sections (voir figure 1). Cette sonatine est trs simple, avec un dveloppement trs court (Dev.),
et pratiquement aucune transition entre les zones thmatiques P et S. Le groupe thmatique P dure 8 mesures lors de
lexposition et 11 lors de la rexposition, ce qui renforce la stabilisation de la tonique dans la rexposition. Le thme S et
la conclusion C sont exactement transposs entre lexposition et la rexposition.
114
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
dtail, notamment par Marx [17] et Czerny [4]. tonal. Il serait galement intressant de trouver quels l-
ments thmatiques de lexposition sont utiliss et sous quelle
Plus rcemment, de nouvelles thories systmatiques forme ils sont repris, la difficult tant quil peut sagir
sur les formes sonates ont t proposes [2, 3, 16, 18, de trs courts motifs mlodiques ou rythmiques ou quils
22, 24]. Le travail dHepokoski et al. [10, 11], culminant peuvent prsenter des variations consquentes.
dans le livre [12], est aujourdhui une bonne rfrence.
Enfin, on trouve certaines analyses en profondeur de cor- Toute approche automatise doit tre conue en gar-
pus spcifiques : pour les oeuvres Beethoven on se rf- dant lesprit les limites que nous avons voques sur la
rera [9, 21] pour les quatuors cordes et louvrage de subjectivit de toute analyse cependant, certains points
D. Tovey [25] pour les sonates pour piano. simples danalyse peuvent faire consensus et permettre
dvaluer les algorithmes.
Comme toute analyse humaine, lanalyse des formes
sonates nobit pas un ensemble de rgles figes, mais
dpend de choix analytiques subjectifs qui ne font pas tou-
2. PISTES POUR UNE ANALYSE
jours consensus. De plus, certaines pices portent des am-
INFORMATIQUE
biguts structurelles. En particulier, il est souvent dlicat
de dterminer prcisment la fin du premier thme de la
transition, surtout lorsque plusieurs motifs transitionnels Nous dcrivons ici quelques expriences sur lanalyse
ou thmatiques se rptent dans lexposition et la rexpo- informatique de formes sonates, en partant de partitions
sition comme dans le quatuor K. 155 no 2 de Mozart. En- sous forme de donnes symboliques. Nous partons de fi-
fin, de telles analyses peuvent sembler anachroniques, la chiers .krn [13], qui encodent les partitions plus prcis-
forme sonate nexistant pas en tant que telle pour les com- ment que des fichiers .midi (avec notamment les infor-
positeurs de lpoque. Ces analyses peuvent tout de mme mations denharmoniques), mais nous nous limitons dans
tre pertinentes en clairant quelques principes composi- cette tude aux informations de hauteur et de dure. Est-
tionnels avec un certain recul vis--vis du rpertoire. il possible de retrouver avec ces informations la structure
exposition/rexposition et dtudier le dveloppement ?
1.3. Analyser informatiquement la forme sonate ? Pour ces expriences, nous nous sommes limits des
quatuors cordes, ce qui facilite lanalyse tant donn
La communuaut MIR (Music Information Retrieval) que les pices sont spares en quatre voix (premier et
sintresse lanalyse musicale dans son ensemble, par- deuxime violon, alto, violoncelle). Nous avons ainsi ras-
tir de donnes audio ou symboliques. Bien que lanalyse sembl 11 premiers mouvements de quatuors de Mozart,
structurelle soit au cur de ces thmatiques, ce jour, peu Haydn et Schubert (figure 4).
de travaux en MIR se concentrent sur les formes sonates. Afin dvaluer nos algorithmes, nous avons manuelle-
Mme si les formes sonates servent de support lex- ment identifi pour chacun de ces mouvements le couple
traction de motifs (voir par exemple [20]), leur analyse exposition/rexposition, en nous appuyant sur les analyses
grande chelle est peu aborde. Dans un article rcent, de Hepokoski et Darcy [12] ainsi que sur notre propre ana-
Jiang et Mller effectuent des comparaisons de signaux lyse.
audio pour retrouver le couple exposition/rexposition sur
les premiers mouvements dans 28 sonates pour piano de
Beethoven [14]. Ils proposent aussi de suivre les change-
2.1. Dtection du couple Exposition/Rexposition
ments harmoniques lintrieur des diffrentes parties.
La donne symbolique de la partition devrait permettre La figure 3 montre une analyse obtenue sur le quatuor
dtre bien plus prcis dans lanalyse. Nous pensons que K. 157 no 4 de Mozart avec les oprations suivantes :
lanalyse des formes sonates est un dfi intressant pour la
recherche en informatique musicale symbolique, deman- recherche de cadences parfaites (V vers I en position
dant de combiner des aspects locaux (motif et thmes, ca- fondamentale, avec arrive sur la tonique la voix
dences...) avec des aspects globaux (plan tonal, structure suprieure) [5] ;
densemble). recherche de fins potentielles de phrases par une sim-
ple dtection rythmique (notes plus longues que leur
Le premier dfi est dans la dtection de la structure entourage ou suivies de silences) ;
gnrale : couple exposition/rexposition, avec des mar-
queurs prcis lorsquils existent, formant la structure to- recherche des zones P/S, par un algorithme de Mon-
nale grande chelle. geau-Sankoff qui calcule, par programmation dyna-
mique, les similarits entre deux mlodies en mini-
Le second est de retrouver la structure tonale et moti- misant une distance ddition [19]. Nous utilisons
vique du dveloppement. Le dveloppement montrant sou- une fonction de score qui favorise les similarits dia-
vent une grande instabilit des tonalits, il serait intres- toniques [7]. Cette recherche concerne uniquement
sant de pouvoir dcrire de manire cohrente ce parcours la voix suprieure (premier violon).
115
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
Figure 3. Recherche du couple exposition/rexposition dans le premier mouvement du quatuor cordes K. 157 no 4 de
W. A. Mozart comprenant 126 mesures. Le schma du haut montre une analyse possible (faite par nos soins) avec cadences
et marqueurs structurels en utilisant les notations de [12] (voir figure 2). Le schma du bas reprsente ce qui est trouv
par le programme. Les traits fins verticaux dans lexposition montrent des fins de phrases potentielles, et les traits gras
des cadences potentielles (majuscule : majeur, minuscule : mineur). Le couple exposition/rexposition est retrouv, mais
la zone S prdite est dtecte en amont de la zone relle S, la fin de la transition entre P et S tant dj transpose la
dominante dans lexposition. De plus, la zone S prdite stend aussi sur la conclusion C.
` Analyses P S
Haydn 90m P C P C +
op. 33 no 2 4/4 P S P S
Haydn 167m P S C P S C = +8
op. 33 no 3 4/4 P S P S
Haydn 305m P S C P SC O + +3
op. 33 no 5 2/4 P S P S
Haydn 189m P S C P C O = +13
op. 54 no 3 2/2 P S P S
Haydn 99m P S C P C
op. 64 no 4 4/4 P P
Mozart 68m P SC P SC +4
K. 80 no 1 3/4 S
Mozart 119m P S C P S C O + +3
K. 155 no 2 4/4 P S P S
Mozart 184m P S C P S C + 0
K. 156 no 3 3/8 P SP P S
Mozart 126m P S C P S C + 2
K. 157 no 4 4/4 P S P S
Mozart 170m P S C P S C = 6
K. 387 no 14 4/4 P P S P P S
Schubert 255m P TR S C P TR S C + 23
op. 125 no 1 2/2 P S S P S
Figure 4. Recherche du couple exposition/rexposition sur 11 premiers mouvements de quatuors cordes en forme sonate.
Pour chaque pice, la colonne ` indique la longueur en mesures ainsi que le mtre. La colonne Analyses indique,
en haut, quelques lments de notre analyse manuelle pour lexposition comme pour la rexposition (P : zones thmatique
principale, ventuellement suivie dune transition, S : zone thmatique secondaire, C : conclusion, O : coda), et, en bas,
lanalyse effectue informatiquement. La colonne P indique si le thme est trouv exactement (+), avec quelques
mesures de dcalage dues la prsence dune introduction (=) ou mal ou non trouv (). Lorsque le second thme est
trouv, la colonne S indique le dcalage, en mesures, entre cette prdiction et le vrai second thme. Notons que le
quatuor op. 33 no 2 de Haydn est monothmatique, les deux zones P et S tant construites sur le mme matriau mlodique.
De plus, dans les quatuors op. 54 et 64 de Haydn, il ny a pas de rexposition pour S.
116
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
La zone P est recherche du dpart une fin de phrase, chelle). Pour progresser vers une analyse automatise de
sans transposition. La zone S est recherche galement telles formes, plusieurs pistes nous semblent importantes :
aprs la zone P, sous la contrainte dune transposition de
la dominante vers la tonique (V vers I). Dans ce mouve- un objectif serait didentifier prcisment (lorsque
ment du quatuor K. 157, on voit que la stratgie met en cest possible) la fin du premier thme et le dbut du
vidence le couple exposition/rexposition. second, en sappuyant sur la csure mdiane (lors-
quelle existe) [11, 12] ;
La figure 4 montre les rsultats sur les 11 pices. Le d- plus gnralement, on pourrait dvelopper des m-
but de P, marquant le dbut du couple exposition/rexpo- thodes rassemblant plusieurs lments analytiques
sition, est retrouv 9 fois la position correcte, dont 7 fois isols (motifs, tonalits et cadences, marches harmo-
de manire unique. Dans 8 de ces 9 cas, une deuxime niques...) dans une analyse globalisante, que ce soit
zone (S) est identifie avec une transposition de V vers I, pour le dveloppement ou pour la forme dans son
dans la plupart des cas moins de 10 mesures du dbut ensemble ;
rel du thme S : de plus, ces mthodes devraient aussi pouvoir traiter
la fin de la transition entre P et S peut tre identique directement du matriau polyphonique afin de per-
(mais transpose) entre lexposition et la rexposi- mettre ltude des pices pour piano.
tion (prdiction de S avant le S rel) ;
Enfin, pour valuer et talonner ces mthodes, il serait
le thme S peut tre transform ou repris une autre
souhaitable de raliser des fichiers de vrit tels que ceux
voix (prdiction de S aprs le S rel).
raliss sur les fugues [5]. Ces fichiers devraient sappuyer
Certains thmes ne sont pas identifis ou dtects sur des analyses de rfrence, comme par exemple, pour
des positions incorrectes (2 thmes P et 3 thmes S). Par les oeuvres de Beethoven, celles de Helm, Radcliffe ou
exemple, dans le quatuor K. 80, on ne trouve pas le thme Tovey [9, 21, 25]. Ils contiendraient, pour un corpus va-
P car seule la fin est reprise dans la rexposition. Dans le ri, la position et la longueur des diffrents thmes dans
quatuor K. 387, le thme S est jou par le deuxime vio- lexposition et la rexposition, des motifs dans le dve-
lon, ce qui empche sa dtection correcte. loppement, les cadences et le plan tonal global de chaque
pice. Ces fichiers devraient aussi permettre de coder les
ambiguts possibles danalyse [1].
2.2. Vers une analyse du dveloppement
La figure 5 montre quelques pistes danalyse du dve- Remerciements. Nous remercions Maxime Joos et Marc
loppement dans le premier mouvement du quatuor op. 33 Rigaudire pour leurs discussions fructueuses.
no 5 de Haydn, sur le plan tonal ou pour la recherche dl-
ments thmatiques prsents dans lexposition :
117
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
Figure 5. Exprimentation dans lanalyse de dveloppement applique au premier mouvement du quatuor op. 33 no 5 de
Haydn (mesures 95 181). La premire ligne montre une dtection de cadences parfaites. Les lignes suivantes dcrivent la
dtection dlments constitutifs des thmes P et S dans le dveloppement. Les deux dernires lignes montrent la dtection
de marches harmoniques.
[7] Mathieu Giraud, Richard Groult, and Florence Lev. [17] Adolph Bernhard Marx. Die Lehre von der musika-
Subject and counter-subject detection for analysis of lischen Komposition (vol. 2 and 3). Leipzig, 1838,
the well-tempered clavier fugues. In Mitsuko Ara- 1845.
maki, Mathieu Barthet, Richard Kronland-Martinet, [18] Jan Miyake. The Role of Multiple New-key Themes
and Slvi Ystad, editors, CMMR, volume 7900 of in Selected Sonata-form Exposition. PhD thesis,
Lecture Notes in Computer Science, pages 422438. Univ. of New York, 2004.
Springer, 2012.
[19] Marcel Mongeau and David Sankoff. Comparison of
[8] Fabien Gouyon, Perfecto Herrera, Luis Gustavo Musical Sequences. Computers and the Humanities,
Martins, and Meinard Mller, editors. Proceedings 24(3) :161175, 1990.
of the 13th International Society for Music Infor-
[20] Oriol Nieto and Morwaread M. Farbood. Percep-
mation Retrieval Conference, ISMIR 2012, Mosteiro
tual evaluation of automatically extracted musical
S.Bento Da Vitria, Porto, Portugal, October 8-12,
motives. In Proceedings of the 12th Internatio-
2012. FEUP Edies, 2012.
nal Conference on Music Perception and Cognition,
[9] Theodor Helm. Beethovens Streichquartette : Ver- pages 723727, 2012.
such einer technischen Analyse dieser Werke im Zu-
[21] Phillip Radcliffe. Beethovens String Quartets. E. P.
sammenhange mit ihren geistigen Gehalt. Leipzig,
Dutton, 1965.
1885.
[22] Leonard Ratner. Classical Music : Expression,
[10] James Hepokoski. Beyond the sonata principle. J. Form, and Style. Schirmer, 1980.
of the American Musicological Society, 55(2) :91,
2002. [23] Anton Reicha. Trait de haute composition musicale
(volume 2). Paris, 1826.
[11] James Hepokoski and Warren Darcy. The medial
[24] Charles Rosen. Sonata Forms. W. W. Norton, 1980.
caesura and its role in the eighteenth-century sonata
exposition. Music Theory Spectrum, 19(2) :115 [25] Donald Francis Tovey. A Companion to Beethovens
154, 1997. Pianoforte Sonatas : Complete Analyses. AMS Press
(reedited in 1998), 1931.
[12] James Hepokoski and Warren Darcy. Elements of
Sonata Theory : Norms, Types, and Deformations in
the Late-Eighteenth-Century Sonata. Oxford Uni-
versity Press, 2006.
[13] David Huron. Music information processing using
the Humdrum toolkit : Concepts, examples, and les-
sons. Computer Music J., 26(2) :1126, 2002.
[14] Nanzhu Jiang and Meinard Mller. Automated me-
thods for analyzing music recordings in sonata form.
In Alceu de Souza Britto Jr., Fabien Gouyon, and Si-
mon Dixon, editors, ISMIR, pages 595600, 2013.
[15] Heinrich Christoph Koch. Versuch einer Einleitung
zur Composition (volume 3). Leipzig, 1793.
[16] Steve Larson. Recapitulation recomposition in the
sonata-form first movements of Haydns string quar-
tets : Style change and compositional technique. Mu-
sic Analysis, 22(1-2) :139177, 2003.
118
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
RSUM
Les Digital performances, dont le dveloppement 1. INTRODUCTION
commence dans les annes 1960, comprennent de
Lessor de llectronique puis de linformatique ont
nombreuses uvres musicales ou du moins une
entran des bouleversements esthtiques majeurs dans
composante sonore importante. Du fait de
les arts de la scne partir des annes 1960 :
lobsolescence rapide des technologies, les Digital
tlprsence, acteurs et danseurs dots de capteurs et
performances, sont non seulement phmres comme
autres prothses, interaction en temps rel entre les
toute uvre scnique mais engendrent galement des
performeurs, l'image et le son Parmi les artistes
traces de plus en plus phmres. Il devient ainsi trs
reprsentatifs de ce mouvement, dsign parfois sous le
difficile non seulement de documenter les uvres et
nom de "digital performance" ou "thtres virtuels",
leurs processus de cration, mais galement de les
citons Merce Cunningham, Trisha Brown, Denis
reprendre, voire de les insrer dans un rpertoire. Dans
Marleau, Dumb Type, Myriam Gourfink, Marcel.l
le domaine des digital performances, le modle de la
Antez Roca, Michle Noiret, Caden Manson, Laurie
partition musicale, ou celui dun systme de notation,
Anderson, Troika Ranch, Palindrome, Blast Theory
qui a t avanc par plusieurs chercheurs, est loin de
Les digital performances stendent galement tout un
rsoudre les problmes de documentation ncessaires
pan de la cration musicale contemporaine, dont laspect
la reprise des uvres. Par ailleurs, plusieurs initiatives
scnique devient parfois un lment essentiel, avec
ont t menes pour documenter trs prcisment une
notamment la prsence dimages projetes ou de
uvre sans dvelopper pour autant de proposition
lumires affectes en temps rel par la musique.
gnrale qui pourrait sappliquer un ensemble
Les composantes technologiques des digital
duvres, voire aux arts de la scne de manire
performances, quelles interviennent pendant le
gnrale. Plutt que de dvelopper un systme de
processus de cration (captations vido
notation, nous proposons de dvelopper un outil
dimprovisations, simulations de mise en scne et de
dannotation qui puisse tre utilis dans un trs grand
scnographies sur divers logiciels), ou pendant la
nombre de cas, quil sagisse de chorgraphie, de thtre
reprsentation (capteurs, dispositifs de tlprsence,
ou de musique. Rekall est un environnement open
images et sons modifis en temps rel), renouvellent
source pour documenter, analyser les processus de
la question de la documentation des arts de la scne :
cration et faciliter la reprise des uvres scniques.
quelle est la nature des nouveaux documents produits
Cest un logiciel qui permet de documenter les digital
par/pour ces spectacles, comment les analyser, faut-il
performances, en prenant en compte le processus de
conserver les programmes informatiques spcifiquement
cration, la rception et les diffrentes formes dun
conus et les rendre accessibles (lisibles) en fonction de
spectacle. Il sadresse la fois aux artistes, aux
lvolution des programmes et du matriel, dans quelle
techniciens, aux chercheurs et au grand public. Rekall
mesure le hardware et le software doivent-ils tre
est une rponse aux problmatiques de documentation et
documents, comment effectuer une captation de ces
de conservation des arts composante technologique,
uvres ?
ainsi quaux difficults rencontres par les artistes lors
Non seulement les digital performances sont des
de la reprise dun spectacle dont les technologies sont
uvres phmres, comme toute reprsentation
devenues obsoltes, tout en tant au plus prs de la
scnique, mais lon peut faire le mme constat pour les
dmarche propre chaque artiste, chaque compagnie.
documentations techniques. En effet, les technologies
Il permet la fois de rendre compte des technologies
sont rapidement obsoltes, qu'il s'agisse du support de
utilises dans le spectacle et den offrir une description
conservation, du hardware ou encore du software. De
pour ventuellement proposer une alternative avec
plus, bien souvent, les compagnies dveloppent leurs
dautres composantes. Le fonctionnement de Rekall
propres instruments. Si elles ne documentent pas elles-
sarticule essentiellement autour des documents de
mmes leur dveloppement, les diffrentes versions des
cration et propose une prservation active des digital
logiciels propres, ou encore les configurations du
performances.
119
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
systme, il y a trs peu de chance de pouvoir analyser et absence doutil permettant aux quipes
conserver les composantes technologiques spcifiques techniques une prise de note rapide pendant les
une production. Dans ce contexte, la reprise d'un rptitions sur les dispositifs technologiques et
spectacle quelques annes de distance savre trs un rassemblement de tous les documents
difficile. De plus, comme le soulignent Alain Bonardi et techniques. Les diffrentes rgies sont spares,
Jrme Barthlmy propos de la musique chacun (clairagiste, rgisseur gnral, vidaste,
lectroacoustique [4], comment considrer que les ingnieur) a son propre systme de
rsultats dune nouvelle implmentation dun traitement documentation sous format numrique ou papier,
numrique sont conformes aux intentions originales du plus ou moins structur. Cest au fur et mesure
compositeur ? .1 cette question, lune des rponses des expriences professionnelles que chaque
les plus souvent apportes est la suivante : il est intervenant dfinit sa propre mthode de travail,
fondamental de collaborer avec les artistes afin de runir son propre guide de bonnes pratiques , trs
une documentation la plus dtaille possible. Ils sont de souvent empirique. Ceci pose de nombreux
fait les premiers conservateurs de leurs uvres. problmes : fiabilit de la prise de notes (il est
Aujourdhui, toutes les rgies techniques sont souvent difficile de se souvenir de la
numriques, et une partie du processus de cration a signification de notes jetes rapidement dune
largement lieu via les ordinateurs et les rseaux : rsidence de travail lautre ces rsidences
changes de mails, traitements de texte, rendez-vous pouvant tre espaces de plusieurs mois) ;
distance via des dispositifs de tlprsence (voix sur IP), capacit transmettre une rgie un autre
images et vidos numriques pour rassembler des ides, technicien pour les tournes ou suite un
des pistes de travail, usage des rseaux de partages changement dquipe ; communication et
dimages pour mettre disposition des documents interoprabilit entre les diffrents corps de
visuels pour lensemble de la compagnie, croquis mtier.
effectus sur tablette numrique, etc. Dans ce contexte, absence doutil permettant aux quipes de
lobsolescence rapide des technologies devient reprendre un spectacle quelques mois ou
extrmement problmatique, la fois pour les artistes quelques annes de distance tout en respectant au
qui doivent pouvoir continuer faire tourner leurs plus prs les intentions artistiques initiales. Or
spectacles, et pour les chercheurs qui souhaitent en ceci est indispensable dans le cas des digital
analyser les processus de cration. Les documents performances du fait de lobsolescence rapide et
numriques que nous avons mentionn plus haut sont programme des technologies : il faut
alors des traces essentielles pour retracer lhistoire des constamment adapter ces dernires pendant la
arts de la scne lpoque contemporaine. tourne du spectacle. Qui plus est lorsque
lquipe de cration nest pas celle de la tourne,
Dans un premier temps, nous reviendrons sur les une documentation de ces spectacles est
principales problmatiques engendres par lusage du ncessaire et doit tre rigoureuse.
numrique dans les arts de la scne. Puis nous absence doutil permettant au lieu daccueil de
examinerons deux dmarches : la notation et ces spectacles de rassembler les diffrents
lannotation. Enfin, nous prsenterons ltat actuel du documents ncessaires leur diffusion : revue de
dveloppement du logiciel Rekall. presse, fiches techniques, biographies,
programme, captation vido, etc. Aujourdhui,
2. PROBLEMATIQUES LIEES A tous ces documents arrivent de manire plus ou
LUTILISATION DES TECHNOLOGIES moins parpille.
NUMERIQUES DANS LES ARTS DE LA SCENE perte de mmoire : les digital performances sont
trs peu documentes. Il devient difficile den
Rekall est n dune prise de conscience de diffrents retracer lhistoire, dautant plus que les
acteurs (artistes, techniciens, programmateurs, documents quelles suscitent sont eux-mmes
chercheurs) concernant les difficults lies aux phmres. Or il existe une vraie demande du
technologies numriques employes dans les arts de la public pour avoir accs des informations
scne (notons que face des problmatiques similaires, techniques, esthtiques, historiques,
le champ de la musique contemporaine a tent conomiques, etc. sur ces uvres.
dapporter des rponses, par exemple via les La captation vido des spectacles est aujourdhui
programmes Mustica et Caspar). Ceux-ci sont une pratique trs rpandue, avec des rsultats
confronts plusieurs problmes, que lon peut rsumer ingaux quant la qualit de sa ralisation.
ainsi : Ralise et produite le plus souvent par la
compagnie elle-mme (pour des fins de
1 promotion), elle nen demeure pas moins lune
Bonardi Alain et Barthlmy Jrme, Le Patch comme document
numrique : support de cration et de constitution de connaissances des traces les plus importantes de luvre. Dans
pour les arts de la performance , in Le Document numrique dans le le cas des digital performances, parmi diverses
monde de la science et de la recherche, Actes du 10me Colloque difficults, ce document a tendance rendre
International sur le Document Numrique (CIDE), INIST, Nancy,
illisible linteractivit en temps rel : comment
2007, p. 168.
120
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
diffrencier sur une bande vido ce qui relve de (MANS), prsent en 2007 dans la revue Leonardo [18].
linteractivit temps rel (par exemple un geste Un complment MANS ddi aux arts de la scne et
dclenchant un son ou modifiant une image), de intitul Performance Art Documentation Structure
la synchronisation dun danseur avec des mdias (PADS) a t dvelopp par la suite par Stephen Gray
diffuss en temps diffr ? [10].
Lorsque certains (rares) spectacles de ce type MANS est une ontologie qui permet la fois de
sont documents (cf. par exemple les travaux dcrire une uvre de manire abstraite (son
autour de 9 Evenings cits plus bas), il sagit comportement, les interactions, etc.) et concrte. En
dune interface cre spcifiquement. Elle nest effet, dune part la partition permet thoriquement
pas gnralisable dautres spectacles et nest de re-crer luvre avec des composants matriels et
pas conue comme telle. Il sagit dune logiciels compltement nouveaux (du moment quils
application et non dun logiciel. respectent cette partition). Cette recration est alors
considre comme une interprtation, de la mme
3. DE LA NOTATION manire que tout concert est une interprtation dune
partition crite. Dautre part, des lments de MANS
Comme le rappelle Pip Laurenson [13], lauthenticit (comme Part ou Resource ) permettent de dcrire
dune uvre dart est traditionnellement value dans le ces interprtations, ces occurrences de luvre, voire
domaine de la conservation des arts plastiques en den conserver certains lments (fichiers,
fonction de son intgrit physique, de son identit programmes) et de donner des indications quant aux
matrielle. La prservation consiste alors maintenir modes de prservation requis en sappuyant sur la
luvreobjet dans son tat originel, ou du moins dans typologie des mdias variables [5].
un tat stable. Tout changement est alors considr Rinehart constate que les institutions culturelles, les
comme une perte ou une altration. Pip Laurenson centres dart, les fonds darchives, les bibliothques,
constate que du fait du caractre phmre et temporel etc., nont pas toujours les moyens de dvelopper un
des uvres composante technologique, la notion systme de catalogage. De plus, lorsque des catalogues
dauthenticit doit voluer, et avec elle les mesures de sont dvelopps, ils le sont pour des institutions, voire
prservation envisages. Elle propose de substituer la des collections spcifiques, mais aucune solution
notion dtat celle didentit, en sappuyant sur le gnralisable toutes les collections et institutions nest
modle musical fond sur la partition, laquelle introduit disponible un cot modique. Do le dveloppement
la notion dinterprtation. La seule prservation de dun systme de catalogage, le Digital Asset
luvre, au sens traditionnel du terme, cest--dire dans Management Database (DAMD) , compatible avec les
ses composantes matrielles, ne saurait tre suffisante : normes internationales, comme OAIS, et indpendant
il faut aussi mettre en place une stratgie de des pratiques spcifiques de telle ou telle organisation.
documentation qui puisse permettre linterprtation et La conformit avec les normes internationales est la
ladaptation un nouveau contexte technologique. Tout garantie que ce systme, tlchargeable gratuitement sur
comme dans la proposition rcente de Richard Rinehart, Internet, puisse tre utilis par diffrentes communauts
cest la notion de partition (et la rfrence la musique) et ensuite adapt en fonction des besoins spcifiques de
qui devient le paradigme pour prserver les uvres dart chacune.
composante technologique. Il faudrait donc crer un Dans le domaine des arts de la scne, le modle de la
systme de notation universel de ces uvres qui partition musicale, ou dun systme de notation des
permette de les interprter avec diffrentes technologies. uvres, est loin de rsoudre les problmes de
Richard Rinehart a dirig le programme de recherche documentation : dune part la partition musicale ne
Archiving the Avant Garde : Documenting and permet pas dannoter la musique lectroacoustique par
Preserving Variable Media Art , lequel regroupe exemple et lutilisation de diagrammes ou de patches ;
diffrentes institutions amricaines (Les universits du dautre part, les outils de notation dvelopps pour la
Maine et de Californie, Rhizome.org, les archives de danse (par exemple les notations Laban et Benesh) ne
Franklin Furnace performance, New Langton Arts, et le sont pas aussi gnraliss que la notation musicale, et ne
Muse Whitney). comprennent pas doutils descriptifs permettant de
Pour Rinehart, lart numrique est autant focalis sur rendre compte des dispositifs technologiques.
le processus et le comportement que sur lartefact, ce
qui le rapproche de la musique et des arts de la scne. 4. A LANNOTATION
Cest pourquoi il propose le modle de la partition, Plutt que de dvelopper un systme de notation,
autrement dit un systme de notation libr de nous proposons de dvelopper un outil dannotation.
lenvironnement matriel de luvre elle-mme (y Devant la multiplicit des documents (parfois plusieurs
compris du code informatique) un systme quil centaines de fichiers, sans parler du hardware), il est
souhaite aussi labor que la notation musicale. Lun bien sr impossible de tout annoter. Dans un premier
des dfis de ce systme est de pouvoir dcrire une uvre temps, il nous a sembl que deux stratgies taient
non seulement comme un objet, mais aussi comme un complmentaires : dune part la cration de liens entre
vnement. Rinehart propose un nouveau modle
conceptuel et descriptif : le Media Art Notation System
121
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
de multiples documents offre dj la possibilit dun mieux percevoir certains dtails), et danimations
commentaire et dun clairage des documents entre eux interactives des diagrammes (Figure 1).
(cration de bases de donnes relationnelles) ; dautre
part identifier le document principal qui serait lpine
dorsale partir de laquelle tous les autres documents
viendraient sorganiser. Lannotation, loin de sopposer
la notation, permet de concilier la fois la
prservation des documents originaux (sous rserve que
lon puisse continuer avoir accs au contenu de ces
documents, problme qui est loin dtre rsolu) et
lapproche descriptive.
Une premire exprience, antrieure ce projet, a t
mene par Clarisse Bardiot : la cration dun
documentaire enrichi partir des archives de 9
Evenings, Theatre & Engineering pour la fondation
Daniel Langlois Montral [1]. Figure 1. 9 Evenings, Theatre & Engineering, site
9 Evenings, Theatre & Engineering est une internet, capture dcran.
manifestation organise par E.A.T. en 1966 New
York. Evnement majeur dans l'histoire des relations Le cas de 9 Evenings nest pas isol. Le numrique
entre thtre et technologie, comme dans l'histoire des combin aux rseaux offre la possibilit de sapproprier
nouveaux mdia, 9 Evenings repose sur la collaboration les archives : des outils spcifiques mis disposition sur
de dix artistes (David Tudor, John Cage, Yvonne des plateformes en ligne permettent de les analyser, de
Rainer, Alex Hay, Deborah Hay, Robert Rauschenberg, les confronter, de tisser des liens smantiques entre de
Oyvind Fahlstrom, Steve Paxton, Robert Whitman, multiples documents. Cet aspect est au cur dun
Lucinda Childs) et d'une trentaine d'ingnieurs de Bell programme europen, ECLAP, e-library for
Labs. performing arts [7]. ECLAP runit de nombreuses
La recherche mene considre les diffrents aspects institutions europennes consacres aux arts de la scne
de la relation entre artistes et ingnieurs, ainsi que les au sens large, contribue la numrisation de leurs fonds
technologies utilises dans la manifestation. Elle (aujourdhui plus dun millions de documents, relis la
sarticule autour des diagrammes publis dans le bibliothque numrique en ligne Europeana) et propose
programme. Lanalyse de ces diagrammes, confronte une srie doutils qui permettent chacun denregistrer
des documents visuels (dont les captations tournes par son propre parcours et dannoter les documents
Alfons Schilling), des tmoignages (interviews slectionns via lapplication MyStoryPlayer (Figure 2).
dYvonne Rainer, Robert Whitman, Deborah Hay et
changes avec des participants de 9 Evenings), et
diffrents fonds darchives (dont le fond John Cage la
New York Public Library for the Performing Arts et les
archives de la Judson Church la NYU), permet de
comprendre la conception qua chaque artiste de la
technologie. Cette analyse permet aussi de mettre en
vidence comment la combinaison de mmes lments
na pas impos une esthtique identique pour toutes les
performances. Enfin, elle permet de considrer 9
Evenings comme lune des toutes premires expriences
qui applique des principes informatiques (bien que les
technologies utilises soient analogiques) dans le
contexte du spectacle vivant. Cette manifestation est le
prcurseur des digital performances daujourdhui.
La Fondation Daniel Langlois publie les rsultats des
recherches sur son site Internet, avec numrisation de Figure 2. MyStoryPlayer, capture dcran.
certains de ses documents darchive. La publication sur
le web tait loccasion dexplorer une criture Une autre initiative, en Angleterre, propose de crer
spcifique pour ce support. Fragmentaire et discursive, des carnets de notes personnaliss partir dun fonds
ayant le dsir de sintgrer dans la structure de la base darchives disponible sur internet. Le Digital Dance
de donnes sur laquelle repose le site Internet de la Archives runit diffrentes collections du National
Fondation Daniel Langlois, cette criture est une Resource Centre for Dance (NRCD) [6], dont la
tentative darticulation et de tissage de textes courts, de collection Laban, ainsi que le fonds darchives de la
documents darchives numriss, dimages, dont de chorgraphe Siobhan Davies. Des vidos, mais aussi des
nombreuses captures dcran issues des archives photographies, des dessins, etc. sont accessibles au
filmiques (autant darrts sur images qui permettent de
122
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
public. Les documents retenus par chaque personne Forsythe) permet dannoter textuellement les captations
peuvent tre annots, classs et partags (Figure 3). vido de rptitions ou de spectacles. Une version
adapte, PM2GO, est disponible en bta depuis janvier
2014 (Figure 4). Cette solution (qui en est encore ses
balbutiements) a pour but dannoter les vidos de
rptitions, en plaant des commentaires des moments
prcis. Cest un outil qui rpond un certain nombre de
problmatiques spcifiques, malheureusement
essentiellement lies aux mthodes de travail de la
compagnie de William Forsythe et donc trop fermes
pour pouvoir convenir beaucoup dautres cas dusages.
123
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
de rendre compte des technologies utilises dans le exploitation, critique, etc.). Connaissant la nature de
spectacle et den offrir une description pour chaque document, Rekall permet de configurer
ventuellement proposer une alternative avec dautres simplement ces exports, qui auront galement le mrite
composantes. Il nous semble en effet primordial de de valoriser l'uvre (documents jour, prsentation
garder la trace la plus prcise possible des composantes soigne, etc.).
technologiques, parce quelles sont galement porteuses La prservation passive d'une uvre d'art
de dimensions esthtiques et historiques, tout en offrant composante technologique est dans la plupart des cas
la possibilit de dcrire les effets de ces mmes malheureusement irralisable. Tout comme nous
composantes, dans la ligne de la rflexion sur les remplaons ou renouvelons les lments prissables
mdias variables [5]. essentiels certaines uvres dart plastique, il est
Le fonctionnement de Rekall sarticule indispensable de prserver activement les uvres d'art
essentiellement autour des documents de cration : composante technologique. Mme si Rekall rpond en
croquis de scnographies, commentaires audio, partie au problme d'obsolescence des technologies
description dlments techniques, vidos, textes, (nomenclatures claires, mises jour des outils
carnets de notes, conduites techniques, patches, captures embarqus, etc.), il est indispensable que certaines
dcran de logiciels spcifiques, partitions, actions de prservation soient ralises par lutilisateur.
photographies, mails Il permet galement darticuler Rekall simplifie cette prservation active en alertant par
plusieurs strates temporelles : celle du processus de exemple lorsque la prennit dun document est mise en
cration (clairer par exemple les recherches menes danger par la dernire mise jour de son logiciel
pour tel aspect du spectacle), de la reprsentation elle- dexploitation.
mme (voire de ses diffrentes versions dans le cas dun Les captures dcran qui suivent sont issues dune
work in progress), et de sa rception (par exemple en tude de cas en cours sur le projet Re :Walden cr par
ajoutant des commentaires audio de la compagnie sur le metteur en scne Jean-Franois Peyret et qui prend
son propre travail, ou bien de spectateurs, ou encore la diffrentes formes de 2009 2014 (workshops,
revue de presse). installations, spectacles, concert) [15].
Laccumulation des documents est un lment cl
pour lefficacit de fonctionnement de Rekall. En effet, 5.1. Projet et documents
cest en analysant ces documents, en les mettant en
relation les uns avec les autres et en les plaant dans des Une uvre dans sa globalit (cration, rptitions,
contextes soigneusement choisis (multidimensionnels, reprsentations, performances, itrations, rgie, etc.) est
temporels ou non) que Rekall parvient peu peu structure sous la forme dun projet Rekall, constitu
rvler des caractristiques spcifiques une uvre par lensemble des documents qui ont t ncessaires
donne. la fabrication de luvre. Les documents peuvent tre
Afin de recueillir tous ces documents de travail, il est de quatre natures diffrentes (Figure 5) :
essentiel que Rekall se trouve au cur du processus de un fichier (patch, texte, vido, audio),
cration. La majeure partie des documents doivent tre une URI (lien web, site internet, fichier online,
naturellement implments sans reprsenter une charge ressource logicielle),
de travail supplmentaire pour les artistes. C'est un acteur du projet (auteur, artiste, rgisseur,
pourquoi une grande partie de Rekall est ddie ralisateur informatique musicale),
l'organisation des documents de cration pendant le un cue ou marqueur (un timecode prcis associ
processus cratif. Il permet tous les protagonistes une fonction dans luvre).
intervenant au cours du processus de cration de
travailler sur une plateforme commune et
compartimente.
Cette structure ouvre alors un spectre de possibilits
analytiques extrmement important. En partant du
principe quun processus de cration peut tre analys
en grande partie par les documents de cration collects
(devenus documents d'exploitation pour certains),
Rekall se base sur les mtadonnes prsentes dans
chacun de ces documents pour en extraire des
informations cruciales (auteur, date de cration, lieu de
cration, etc.) qui seront ensuite utilises par les outils
danalyse et de reprsentation de linformation, pour
rvler des comportements cratifs, des usages ou
dautres informations insouponnes.
Au vu de la masse d'informations que vhicule une Figure 5. Polymorphisme des documents
uvre, il apparat vident qu'une solution d'export cibl
est ncessaire afin de n'inclure dans diffrents packages Ces documents sont systmatiquement transcods
que les documents utiles l'usage souhait (pdagogie, dans le format le plus prenne disponible et connu par le
124
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
logiciel : PDF pour les documents, H264 pour les Figure 7. Processus danalyse des documents
vidos, etc. Aussi, dans la mesure du possible, un aperu
du document (vignettes pour les images et PDF, lajout ou modification dun document, Rekall
pellicules pour les vidos, formes dondes pour laudio) enregistre aussi des mtadonnes contextuelles telle que
est gnr. Ces oprations sont effectues laide des lauteur de limport ou de la modification, lhorodatage,
outils open source cross platform ffmpeg [1] et lame les caractristiques techniques de lordinateur et la
[12]. golocalisation. Ces informations seront trs utiles pour
la reprise de luvre en cas dincompatibilit technique
5.2. Versions et mtadonnes ( sur quelle version de Mac OS travaillait-on ? ), de
perte de fichier ( qui a fait la dernire mise jour du
Chaque document peut possder plusieurs versions fichier ? ), de configuration technique oublie ( sur
qui reprsentent le travail itratif dun acteur du projet. quelle machine tournait le patch ? ), etc. (Figure 8).
laide des mcanismes offerts par les systmes
dexploitation, Rekall est capable danalyser en temps
rel les modifications des documents quil surveille,
sans ralentissement pendant le travail. Sauf demande
explicite de lutilisateur, le logiciel ne cre pas de copie
physique des versions des documents mais enregistre
simplement le nom de la personne qui la modifi
associe un horodatage (Figure 6).
125
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
Une fois lensemble des documents analyss et Au del de la reprsentation isole de chaque
enrichis de leurs mtadonnes, Rekall propose un document, il est possible de constituer un groupe
mcanisme extrmement simple mais puissant de graphique de documents suivant les mmes critres cits
reprsentation de linformation : chaque document est prcdemment. On peut ainsi rvler lvolution dun
visualis dans un espace 3D, sous la forme dune barre mot-clef, dun acteur du projet, dun concept, etc. au fil
dont la visibilit, la position, la couleur, le texte et du temps (Figure 12).
lenveloppe sont entirement fonction des mtadonnes
du document quelle reprsente ; il sagit du mapping
des mtadonnes sur des paramtres graphiques (Figure
10).
126
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
5.5. Rgie
127
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
visualiser en temps rel les documents de cration Rekall est distribu sous licence GPL3 et son code
pendant le visionnage dune uvre, mais aussi de source est maintenu sur un repository public [17].
conserver un regard sur sa globalit.
6. CONCLUSION PROVISOIRE
Rekall est actuellement en version alpha. La bta est
prvue pour avril/mai 2014. La collaboration avec des
quipes artistiques dans cette phase dexprimentation
est essentielle. En effet, le logiciel est conu pour les
artistes et leurs quipes techniques afin quils soient
mme de documenter leur propre processus de cration
et les uvres cres. Cest pourquoi nous nous
appuyons sur la collaboration de deux quipes
artistiques, en thtre (Jean-Franois Peyret [15]) et en
danse (Mylne Benoit [3]), en rsidence respectivement
au Fresnoy et au phnix scne nationale Valenciennes.
Ces quipes sont dune part associes la conception du
Figure 20. Documentaire augment logiciel et dautre part les premiers utilisateurs. Des
runions de travail avec les diffrents intervenants
Rekall est capable de lire plusieurs mdias (techniciens, rgisseurs, metteur en scne, chorgraphe,
simultanment, ce qui permet entre autres de comparer clairagiste, vidaste) font partie du processus de
plusieurs versions dun uvre, plusieurs reprsentations conception et dveloppement de Rekall, afin dajuster
ou encore dajouter des mdias narratifs (commentaires rgulirement le cahier des charges et les spcifications
de lartiste, explication de linterprte). Lutilisateur aux besoins des futurs utilisateurs. Plusieurs workshops
peut tout moment activer ou dsactiver la vido et avec diffrents types dutilisateurs (artistes, techniciens,
laudio indpendamment, ajuster le volume et naviguer chercheurs) sont galement prvus afin dvaluer et
dans la timeline (Figure 21). ventuellement corriger certains aspects
mthodologiques, comme le tracking des actions des
diffrents contributeurs une uvre, ou encore le choix
dun modle qui puisse sadapter de nombreuses
uvres. En effet, il nous semble que Rekall, conu
lorigine pour des uvres scniques, peut galement tre
utilis pour des installations plastiques. Concernant les
uvres musicales, lintgration dun suivi de partition
doit galement tre tudi. Enfin, nous valuons le
dveloppement dune version simplifie online pour des
usages simples ou des contextes lgrement diffrents,
comme la critique artistique ou encore la phase de
Figure 21. Visionnage simultan de deux conception et dcriture des uvres.
reprsentations associes
une bande son supplmentaire 7. REFERENCES
Enfin, un mode multi-moniteurs permet galement un [1] Bardiot C. 9 Evenings, Theatre & Engineering, site
confort de travail et danalyse en dportant la vido en Internet de la Fondation Daniel Langlois, mai
plein cran sur un ou plusieurs crans secondaires. 2006, http://www.fondation-
langlois.org/flash/f/index.php?NumPage=571
Consult le 01/04/2014.
5.7. Choix techniques
[2] Bardiot C. Une autre mmoire : la chorgraphie
Rekall est dvelopp avec le framework de des donnes. propos des objets numriques
dveloppement Qt. Ce choix a t fait pour les raisons dvelopps par William Forsythe (Improvisation
suivantes : Technologies, Synchronous objects et Motion
framework open source, compatible avec des Bank) , in Documenter, recrer... Mmoires et
modles de licences types GPL ; Transmissions des uvres performatives et
cross-platform, qui peut sexcuter sur les trois chorgraphiques contemporaines, Les Presses du
principaux systmes dexploitation Linux, rel, paratre.
Mac OS et Windows ;
intgration native dOpenGL, pour le rendu 2D [3] Benoit Mylne, site internet de la compagnie
et 3D de manire fluide et interactive ; Contour Progressif, http://www.contour-
interfaces graphiques riches avec une exprience progressif.net/ Consult le 01/04/2014.
utilisateur intuitive, lgante et efficiente.
128
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
129
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
130
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
par quatre chanteursStphanie Lessard (soprano), Marie- logiques dans le contexte de la technique du cours dac-
Annick Bliveau (alto), Michiel Schrey (tnor), Pierre- tion. Theureau les prsente en rapport plusieurs autres
tienne Bergeron (basse). Les concerts de cration sin- tendances dans les techniques denqutes plus ou moins
crivaient dans la srie organise par le Centre Interdisci- lies aux traces de lactivit, notamment le travail de Ver-
plinaire de Recherche en Musique, Mdias et Technologie mersch [20] sur les entretiens dexplicitation et le tra-
(CIRMMT), intitule live@CIRMMT, et se sont drouls vail de Clot [8] sur les autoconfrontation croises. Cha-
les 15 et le 16 mai 2013 dans la salle du MMR de luniver- cune de ces mthodologies se base sur des systmes de
sit McGill. Ces concerts ont t prcds dune longue contraintes diffrents qui requirent notamment une im-
phase de production dont lun des hauts points fut un ate- plication plus ou moins importante du chercheur dans la
lier sur la spatialisation luniversit McGill, suivant une direction de la production de donnes. Comment consi-
phase de travail entre compositeurs et instrumentistes et gner une exprience, quels sont les partis pris ontologiques
aboutissant une performance des uvres en ltat le 20 et pistmologiques ? Toutes ces questions sont hrites
dcembre 2012. Ces conditions de production, dcrites des disciplines mises contribution, que ce soit lergono-
par les trois compositeurs comme fondamentales, ont per- mie [18], la linguistique [7] ou la psychologie [8].
mis davoir accs un niveau important de traces de lac- Le projet DiP-CoRE tant orient sur cette consignation
tivit collective de production dune uvre ncessaire la des expriences et de transmission entre experts, il tait in-
mise en uvre de nouvelles mthodes de documentation, tressant de sinscrire principalement dans une approche
de dissmination et par voie de consquence de prserva- permettant lexpertise mme dtre le cadre de rfrence,
tion du rpertoire des musiques mixtes. cest--dire de fournir le systme de contraintes. Comme
Les donnes brutes dobservation audio et vido fournis- le dit Goasdou [11], dans un cadre rduit par rapport au
sant la base la partie mthodologique de la documen- projet DiP-CoRE, [...] il nappartient pas aux scienti-
tation discute dans cet article ont t recueillies depuis fiques de dterminer ce quest une bonne interprtation
latelier du 20 dcembre 2012 jusquau deux concerts des (p. 91). Comment donc intgrer la pratique dans la mtho-
15 et le 16 mai 2013. dologie de collecte de donnes sans trahir lexpertise ? Sil
faut se baser sur lexpertise pour consigner les connais-
sances en jeu et la tradition orale qui participe la construc-
3. MTHODE tion des objets que sont les musiques mixtes, alors il de-
vient ncessaire dtablir des mthodes qui permettent de
La prservation des musiques mixtes est une probl- refaire surgir cette construction experte dans les mthodes
matique interdisciplinaire et lon peut la prsenter de mul- de documentations sans rduire ces connaissances un
tiples faons, ainsi que les diffrentes tendances dans chaque cadre formel dfini a priori. Dans ce contexte, les auto-
axe, sans la trahir. Une possibilit est de distinguer les confrontations croises proposes par Clot et leur corol-
approches dans leur rapport la technologie, cest--dire laire dans un cadre organisationnel multi-expertise, c.--d.
entre des approches technocentriques (la technologie la la mthode des dialogical mediated inquiries propose
rescousse de la technologieLa technologie est ici com- par Lorino et al. [13], permettaient au mieux de rpondre
prise comme technique fonde sur le savoir scientifique, aux objectifs du projet et lobjet de recherche, le tout
elle nest donc pas entendue comme simple implmenta- autour du cadre thorique fourni par ce que Boutard [5]
tion) et des approches sociotechniques (prise en compte nomme mixed methods digital curation, cest--dire une
des agencements entre humains et objets techniques). Une faon denvisager la conservation des objets numriques
autre possibilit est de mettre en parallle la vision tra- du point de vue pragmatique de la mise en commun de
ditionnelle de la prservation axe autour de lorganolo- plusieurs mthodes aux postulats pistmologiques diff-
gie, la pratique et la partition, et la vision divergente axe rents.
autour de la documentation des uvres et des processus Le travail de Clot et Fata [9] prend comme fondement
cratifs dans leur singularit. Cest dans cette deuxime la notion dpaisseur de lactivit, cest--dire le fait que
dmarche que sinscrit le projet DiP-CoRE sans toutefois [...] lactivit nest plus limite ce qui se fait. Ce qui
considrer la premire vision comme fondamentalement ne sest pas fait, ce quon voudrait faire, ce quil faudrait
invalide dans le contexte des musiques mixtes, mais plu- faire, ce quon aurait pu faire, ce qui est refaire et mme
tt complmentaire. ce quon fait sans vouloir le faire est accueilli dans lana-
Le point important est que chacune de ces visions est sous- lyse de lactivit en clairant ses conflits (p. 35). Dans
tendue par un systme de contraintes diffrentes. Si dans le cadre multi-expertise de la production des musiques
la vision traditionnelle les systmes de contraintes que mixtes tel que prsent notamment par Berweck [3], nous
sont lorganologie, la pratique et la partition sont lori- avons donc inclus dans le recueil de donnes non seule-
gine dcrits nombreux, ce nest que plus rcemment que ment les compositeurs et les instrumentistes, mais aussi
les cadres de collectes de donnes en rapports avec les les ingnieurs du son et ralisateurs en informatique mu-
processus cratifs ont t lobjet de discussions mtho- sicale.
dologiques. Ces discussions se sont dveloppes en liai- La segmentation des donnes tait rgie par le travail tho-
son avec certaines tendances en musicologie empirique, rique de Boutard [5] et plus prcisment les cadres concep-
on prendra comme exemple le travail de thorisation de tuels fournis par Boutard et Guastavino [6], cadres tou-
Theureau [18] qui nous prsente ces contraintes mthodo-
131
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
132
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
133
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
dans un contexte plus large qui inclut les disciplines des [6] Boutard, G. and C. Guastavino. Following gesture
sciences de linformation, de larchivistique, de lingnie- following : Grounding the documentation of a multi-
rie et tout spcifiquement dans leur relation la conserva- agent creation process , Computer Music Journal,
tion et la prservation des objets numriques. Le modle vol. 36 (4), 2012, p. 5980.
gnral de prservation et de dissmination, conceptua- [7] Cance, C., H. Genevois, and D. Dubois, What
lis par Boutard [5] et sur lequel se base cette recherche, is instrumentality in new digital musical devices ? a
requiert de pousser maintenant cette pratique des dispo- contribution from cognitive linguistics and psycho-
sitifs plus larges : dans la ligne de ce que rclamait dj logy , La Musique et ses instruments, Delatour, Pa-
Moore [15], cela ncessite de sappuyer les cadres tho- ris, 2013, p. 283298.
riques et pratiques de prservation des objets numriques
que fournissent communment les dpts numriques, no- [8] Clot, Y., Travail et pouvoir dagir, Presses Univer-
tamment dans le milieu universitaire. Par le modle des sitaires de France, Paris, 2008.
Mixed Methods Digital Curation [5], nous avons mainte- [9] Clot, Y. and D. Fata, Genres et styles en analyse
nant les moyens de mettre en relation les pratiques docu- du travail : Concepts et mthodes , Travailler, vol.
mentaires, principalement qualitatives, tablies par le pro- 4, 2000, p. 742.
jet DiP-CoRE et la thorie de la prservation des objets [10] Donin, N. and J. Theureau, Theoretical and metho-
numriques, sappuyant sur des modles principalement dological issues related to long term creative cogni-
quantitatifs. Pour cela il est ncessaire de mettre en place tion : the case of musical composition , Cognition,
des plateformes de diffusiondont les principes mtho- Technology & Work, vol. 9 (4), 2007, p. 233251.
dologiques ont t mis en lumire par le projet DiP-CoRE
[11] Goasdou, D., Lart du violon, aperu his-
ancres sur des dpts numriques. Une volont politique
torique dune pratique raisonne , Technolo-
au niveau institutionnel est cependant ncessaire et im-
gies/Idologies/Pratiques - Revue dAnthropologie
plique sans doute, en plus des universits, des acteurs comme
des connaissances, vol. 14 (2), 2002, p. 6993.
ceux identifis par Berweck [3], notamment les diteurs,
dans un rapport la fois collaboratif et fond sur des moyens [12] Leroux, P., . . . phraser le monde : continuit, geste
pragmatiques, qui bnficierait toute la communaut des et nergie dans loeuvre musicale , Circuit : mu-
musiques mixtes. siques contemporaines, vol. 21 (2), 2011, p. 2948.
[13] Lorino, P., B. Tricard, and Y. Clot, Research me-
6. REMERCIEMENTS thods for non-representational approaches to orga-
nizational complexity : The dialogical mediated in-
Le projet DiP-CoRE est financ par le Conseil de re- quiry , Organization Studies, vol. 32 (6), 2011, p.
cherches en sciences humaines (CRSH) du Canada : pro- 769801.
gramme Connexion attribu aux deux auteurs. Le premier [14] Marandola, F. and G. Boutard, Des puces et des
auteur est financ par une bourse postdoctorale du Fonds drums, DVD , empreintes DIGITALes, venir.
qubcois de la recherche sur la socit et la culture (FQRSC).
[15] Moore, A., History and archival : the pitfalls of
Ce projet a reu le soutien du Centre Interdisciplinaire de
storage , Colloque Informatique musicale : utopies
Recherche en Musique, Mdias et Technologie.
et ralits, November 2009.
[16] Orcalli, A., Rflexions sur la restitution des uvres
7. REFERENCES musicales lectroniques , Actes des Journes din-
formatique musicale, Saint-Etienne, France, 2011.
[1] Baudouin, O., Les premires musiques synth-
tises par ordinateur : prservation et exploitation [17] Polfreman, R., D. Sheppard, and I. Dearden, Time
dune mmoire , Actes des Journes dinformatique to re-wire ? problems and strategies for the mainte-
musicale, Saint-Etienne, France, 2011. nance of live electronics , Organised Sound, vol.
11 (3), 2006, p. 229242.
[2] Bernardini, N. and A. Vidolin, Sustainable live
electro-acoustic music , Proceedings of Sound and [18] Theureau, J., Les entretiens dautoconfrontation
Music Computing 2005, Salerno, Italy, 2005. et de remise en situation par les traces matrielles et
le programme de recherche cours daction , Re-
[3] Berweck, S., It worked yesterday : On (re-
vue danthropologie des connaissances, 4(2), 2010,
)performing electroacoustic music, Doctoral thesis,
p. 287322.
University of Huddersfield, 2012.
[19] Tiffon, V., Les musiques mixtes : entre prennit
[4] Born, G., Rationalizing Culture : IRCAM, Boulez,
et obsolescence , Musurgia, vol. 12 (3), 2005, p.
and the Institutionalization of the Musical Avant-
2345.
Garde, University of California Press, Berkeley and
Los Angeles, California, 1995. [20] Vermersch, P., Lentretien dexplicitation. ESF, Issy-
les-Moulineaux, 7 edition, 2011.
[5] Boutard, G., Towards mixed methods digital cu-
ration : Facing specific adaptation in the artistic do-
main , Archival Science, in press.
134
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
Journe Sonification
vendredi, 23 mai 2014
135
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
136
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
Peter Sinclair
Locus Sonus ESAA
petesinc@nujus.net
After a brief definition of sonification I will discuss two creative approaches that of Sound design
and that of conceptual art. I will attempt to see how these differ and converge in their goals and
methods particularly in the context of what we might call musical sonification. I will describe some
examples of key sonification artworks and the aesthetic strategies they employ. Finally I will
describe RoadMusic a project that I have been working on for some time, and the practice to which
I apply my ideas concerning sonification.
After a brief definition of sonification I will discuss two creative approaches that of Sound design
and that of conceptual art. I will attempt to see how these differ and converge in their goals and
methods particularly in the context of what we might call musical sonification. I will describe some
examples of key sonification artworks and the aesthetic strategies they employ. Finally I will
describe RoadMusic a project that I have been working on for some time, and the practice to which
I apply my ideas concerning sonification.
It has been suggested in the past that sonification as a term should exclude artistic and musical
usage of sound. I am referring here to an article by Sonification expert: Thomas Hermann that can
be found in the 2008 ICAD proceedings. In a special edition of AI&Society dedicated to artistic
sonification that I guest edited, several artists and composers contradicted this position and
Hermann himself has revised his point of view since contribution to the review which he co-signs
starts with: Sonification today is an interdisciplinary practice ranging from scientific applications
to sound art and composition.
137
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
138
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
Thomas A. Hummel
conTimbre
Beethovenstr.30
D79100 Freiburg
th@contimbre.com
139
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
This rule applies typically to the glockenspiel, but playing modes with preparations on strings may not
also to other instruments like piano and marimbaphone. be mixed with playing modes without any preparation -
It means, that the instrument can play a certain number at least for the same string.
of sounds at same time, but they should be of the same
playing mode. The number of sounds to be played in
parallel depends on the instrument, and also the pitch 3.2.4. All instruments
ambitus of the chord to be played. E.g., a marimbaphone
can play up to 4 pitches at same time using a set of 4 Playing techniques with a dismembered instrument
beaters in two hands. cannot not be mixed with playing techniques using the
normal instrument.
140
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
141
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
3. COMPOSITION DE LA LIBRAIRIE
142
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
143
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
144
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
145
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
5. REMERCIEMENTS
146
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
Daniel Puig
Universitt der Knste (UdK-Berlin)
Universidade Federal do Rio de Janeiro (UFRJ)
Universidade Federal do Estado do Rio de Janeiro (UNIRIO)
danielpuig@me.com
RSUM
! 1. INTRODUCTION
La formalisation de certains prsupposs de la pense This text focuses on the formalization of some
systmique dans un algorithme live-lectronique presuppositions in systemic thinking, in live-electronics
l'intrieur dun patch de Max/MSP 6, fait partie de ma algorithms within a Max/MSP 6 patch. They are part of
pice gosto de terra, pour piano et live-lectronique. my piece gosto de terra, for piano and live-electronics.
Cela montre une possibilit de traiter des concepts The composition was finished in august 2013 and
comme diffrence, information, numro, quantit et revised after the first performance, together with the
peut-tre pattern, la programmation dans un contexte pianist Adam Marks, to whom it was written for. It deals
musical qui intgre linterprte, linstrument, l'espace with different concepts included in the discussions
acoustique et lalgorithme dans sa conceptualisation. A presented in my doctoral dissertation.1
partir des ides de Gregory Bateson sur ces concepts, le
patch tente de recueillir des informations sur la
performance, par des diffrences de second ordre, en 2. PRESUPPOSITIONS
comparant les diffrences entre les quantits dans le The dissertation deals, among other discussions, with
temps. Ceci est fait en comparant leur flux selon un concepts stemming from Gregory Batesons systemic
seuil, qui tablit un contrle de "sensibilit". Le rsultat thinking. In his book Mind And Nature: a necessary
de l'algorithme peut tre utilis pour dclencher d'autres unity [1], he sets out to explain and exemplify a series of
algorithmes dans le patch, ce qui entrane un presuppositions that form the basis not only of further
fonctionnement du live-lectronique suivant les ideas developed in the text, but also of his whole
caractristiques prvues de la performance live.
! ABSTRACT
systemic approach. The book was written by the end of
his life, and according to his daughter Mary Catherine
Bateson, co-author of some of his texts, it represents the
The formalization of some presuppositions stemming real synthesis of his work and the first of his books
from systemic thinking in a live-electronics algorithm composed to communicate with the nonspecialist
within a Max/MSP 6 patch, is part of my piece gosto de reader [3]. Ramage and Shipp summarize some of his
terra for piano and live-electronics. It shows one main contributions as a systems thinker and note that the
possibility of dealing with concepts as difference, whole pattern of his work is still in the process of being
information, number, quantity and possibly pattern in understood and appreciated [8].
programming within a musical context that integrates Bateson was concerned with mental process and how
performer, instrument, acoustic space and the algorithm looking at it from a very different perspective could
in its conceptualization. Following Gregory Batesons shed some light on different complex processes in
ideas on these concepts, the patch tries to gather nature. Apart from discussing his ideas in relation to
information about the performance, through second musical composition with open forms, with its
order differences, by comparing differences between consequences for the construction of graphical scores
quantities in time. This is done comparing their flow (those that use non-traditional musical notation) and the
against a threshold, that sets a sensibility control. The understanding of musical performance situations that
result of the algorithm may be used to trigger other imply improvisation by the performers, I have tried to
algorithms in the patch, resulting in a functioning of the implement them as the basis for interactive processes in
live-electronics that follows the intended characteristics live-electronics. This approach draws its perspective
of the live performance. from holism, which in Batesons definition is: The
tendency in nature to produce from the ordered grouping
1 My doctoral research has been kindly supported by a scholarship from the German Academic Exchange Service (DAAD), that enabled an
internship at the Universitt der Knste (UdK-Berlin, under Prof. Dr. Drte Schmidt). This has been a joint effort with the Brazilian Government,
through my leave at Universidade Federal do Rio de Janeiro (UFRJ) and my doctorate at Universidade Federal do Estado do Rio de Janeiro
(UNIRIO, under Prof. Dr. Carole Gubernikoff and Prof. Dr. Vania Dantas Leite).
147
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
of parts complex wholes with properties that are not involved parts. It is a second order difference, which can
present in or predictable from the separate parts [3]. M. only make sense if regarded in its context. And that, for
C. Bateson notes that Gregory frequently used the term Bateson, change can be seen as a difference which
and its adjective holistic to refer to modes of acting occurs across time [2].
and observing that are attentive to holistic properties.
These wholes have characteristics of self-organization, 2.2. Number and quantity
that are intimately linked to the presence of circular
feedback chains, responsible for the dynamical self- Another presupposition that Bateson points out in
regulation of the system. That is, different interacting Mind and Nature refers to the difference between
components mutually affecting each other show number and quantity. What matters to him in this
emergent properties and characteristics that are difference are not really their names, the way we
sustained by their interaction [6]. The idea of describe these categories in wordsnumber and
emergence, in this sense, presupposes the understanding quantity, but the fact that the formal ideas behind
that that which emerges is: irreversible, can only be them are immanent in the processes observed. For him,
studied taking time into account and cannot be number is of the world of pattern, gestalt, and digital
replicated; and irreducible, it resists a study through the computation; quantity is of the world of analogic and
reduction to its smaller parts. For Morin, what is probabilistic computation [1].
important in emergence is the fact that it is indeductible Drawing from examples coming from organic life to
from the qualities of the parts, and thus irreducible; it explain the concept, he refers to a flower that has five
appears only parting from the organization of the petals and many stamens. The number of petals will stay
whole [7]. Demo stresses that complex phenomena the same from one individual to another, but the number
produce modes of being that are always of becoming as of stamens will vary enormously. Bateson tries to
well. They behave in a reconstructive way: they do not explain that it seems clear in biological terms that the
reproduce themselves linearly, they reconstruct pattern differences of smaller numbers, like three and
themselves non-linearly [5].2 five for example, are drastic and form even important
For complexity studies, the whole is more than the taxonomic criteria. On the other hand, after a certain
sum of its parts, but it is, at the same time, less than the size of number, they become quantity, meaning that for
sum of its parts, whose qualities and properties can be the organism there is a different process going on for
inhibited by the organization of the whole. As Di Scipio that part of its growing form: numbers can conceivably
puts it, once the whole has emerged, it can reduce or be accurate because there is a discontinuity between
inhibit the action of specific individual components. each integer and the next. Between two and three, there
Take, for instance, a large-scale social organization: is a jump. In the case of quantity, there is no such jump
however complex, varied and efficient in its [1]. He asserts that this difference is basic for theoretical
performance, the whole organization can never be as thought in behavioral science, since it reveals two very
rich and complex as each single human being different ways of conceiving the relation between parts
participating in it. It induces simplified, typified of organism or between parts of processes in nature. For
behaviors that are functional to the whole, but him, numbers are the product of counting and quantities
detrimental to the individual [6]. of measurement, and therefore always approximate.
Looking for complex behavior in the construction of
the live-electronics algorithm in gosto de terra, I have
focused in four of Bateson's presuppositions regarding 2.3. Digital and analogic
different aspects of the functioning of circular feedback Extending that concept to the difference between
chains in mental process. digital and analogic systems, he writes: digital systems
more closely resemble systems containing number;
2.1. Difference and information whereas analogic systems seem to be dependent more
on quantity and goes on to clarify that in digital
First, for Bateson information consists of differences systems there is a discontinuity between response and
that make a difference and difference is a non- no response, yes and no, on and off [1], 1 and 0. Its
substantial phenomenon not located in space or time. parts function like a switch.
He stresses that to produce news of difference, i.e., Looking at a switch from the point of view of the
information, there must be a relationship between two circuit, it does not exist when it is turned on, since in
different parts of a system, or the same part in two that case it is not different from the rest of the
different moments, such that the difference between conducting wire. Similarly, when the switch is off, it
them can be immanent in their mutual relationship and also doesnt exist from the point of view of the circuit,
the whole process be such that news of that difference since the conductors themselves only exist as
can be represented inside an information-processing conductors when the switch is on. In other words, the
entity, such as a brain, an ecosystem or a computer [1]. switch is not except at the moments of its change of
To better clarify, it is important to understand that the setting, and the concept switch has thus a special
difference that makes up information is a class of some relation to time. It is related to the notion change rather
sort of differences, immanent in the relationship of the than to the notion object [1].
2 () produzem modo de ser que so sempre tambm de vir a ser. Comportam-se de maneira reconstrutiva: no se reproduzem linearmente,
reconstroem-se no linearmente.
148
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
2.4. Quantity and pattern given quantity in time, then quantities could be
compared and a ratio between them may show an
In trying to explain what he understood as pattern, emergent pattern.
Bateson points out the phenomenon of moir among
other examples, which can be explained by looking at
Fig.1, where a third pattern emerges (to the right) from 3. FORMALIZATION IN LIVE-ELECTRONICS
the superposition of the other two. Moir phenomena The patch3 for gosto de terra tries to implement these
are actually a classical example of emergence and to ideas in a live-electronics setting, understanding it as
truly comprehend its implications, one has to try the part of a system.
superposition (e.g., with two sheets of transparent paper
with the pattern to the center printed on them) and see
how a slight change in the rotation angle can yield a 3.1. The system, of parts and their interrelationships
drastic change in the resulting pattern.
! Bateson clarifies that the basic rule of systems theory
is that, if you want to understand some phenomenon or
appearance, you must consider that phenomenon within
the context of all completed circuits which are relevant
to it and that a system is any unit containing feedback
structure and therefore competent to process
information [4]. Following the model drawn from
systemic thinking, that a system is constituted by its
parts and the interrelationships between them, the
! algorithm presupposes that this system is formed not
only by the algorithm and its formalization in a Max/
Figure 1. Moir phenomenon: a third pattern
MSP patch, but also by the piano itself, with the
emerges from the superposition of other two.
sounding result of the interaction between the performer
(Source: Wikimedia Commons, Moir_grid.svg,
and the instrument, in a given acoustic space. The
modified for the purposes of this text.)
!
For him: First, any two patterns may, if
interactions between these four parts of the system
(algorithm, performer, instrument and acoustic space), in
turn, are dependent on the interface between: a given
appropriately combined, generate a third. Second, any
way of capturing digital data from the live performance
two of these three patterns could serve as base for a
and of returning the result of the algorithm to the
description of the third. Third, the whole problem of
acoustic space, i.e., to both the performer and the sound
defining what is meant by the word pattern can be
response of the instrument. In this case: a microphone is
approached through these phenomena. What triggered
used to transduce typical aspects measured from sound
the solutions used in the constructed algorithm, was
(frequency and amplitude) and make them available as
Batesons observation that a ratio between two
numbers to the digital system through FFT (Fast Fourier
quantities is already the beginning of pattern [1]. So, if
Transform); and loudspeakers that project sound back to
it would be possible to measure quantities in a digital
the acoustic space, yielding possible sound responses of
system and gather information about differences in a
149
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
the instrument, by acoustically exciting vibration of the goes through a series of approximations, so as to be
strings, but also responses of the performer that is useful for the comparison between numbers representing
encouraged to listen and respond musically to the sound the flow of data in time. That is to say that the algorithm
result of all parts involved. presupposes an amount of coarseness as necessary, or
the jump to quantities wouldnt be possible from a flow
3.2. The stable? and unstable? algorithm: a of numbers. This, on the other hand, gives a certain
jump between number and quantity organic characteristic to the result, that mirrors
something like the overall characteristics of moments
of the performance and not the accurate numeric details.
Typically, a digital system following the flow of data
of a live performance in time returns a flow of numbers, !
but doesnt tell much about quantities in that flow. To
bridge that gap, the algorithm compares the flow of
numbers in time. Comparing a measurement of numbers
in a given moment of the flow to the same measurement
on a immediately subsequent moment, it returns equality
(1) or inequality (0) of these measurements. This
information is gathered for a relatively much longer time
span and taken as a set of results. This set is then
compared to a threshold, and the algorithm programmed
to return the state of the set according to that threshold:
if the quantity of equalities is above or below the
threshold.
For example, analyzing the subpatch shown in Fig.3
from top to bottom, as this is the direction of the data
flow in the patch, we have the following steps:
1) The flow of frequencies captured by the
microphone, expressed as real numbers (floats), is
analyzed and the result passed around every ten
milliseconds (speedlim object). The mean value of
about the last hundred values is rounded to a natural
number.
2) Two subsequent results in time are fed through
the bucket object to the = = (exactly equal to)
object, which compares them and returns one (1) for
an equality or zero (0) for an inequality. The second
zl stream object gathers these results into a list.
3) The list of ones and zeros is shown in a message
box, for a visualization of the set of results in time.
4) The quantity of ones in the set (zl sum object) is
compared to the threshold through the > (greater
than) object, which returns one (1) if it fulfills the
condition or zero (0), if it doesnt.
!In other words, the algorithm returns if frequencies
are stable (not changing) in the performance, at any
time. If instead of greater than (>) a smaller than (<)
comparison to the threshold would be used, the same
algorithm would return the information that the
frequencies are unstable (changing in time). The result,
one (1) or zero (0) according to the fulfillment or not of !
the given condition for the comparison to the threshold, Figure 3. One instance of the subpatch stable?
is shown in a toggle object, that goes on and off (seen in the patch of gosto de terra: 1) data is treated;
right below the first outlet of the patch, in Fig.3). This 2) compared in time; 3) visualized as a set of
change of state triggers other algorithms in the live- results; and 4) compared to a threshold.
electronics.
An information about the performance is gathered
!
A control of the number given as threshold can be
from a difference in quantity, according to a threshold. seen as a control of the sensibility of the algorithm: a
This difference is the result of a series of differences smaller number as threshold, makes the algorithm react
gathered from the flow of numbers in time, it is a second to a lesser quantity of differences (more sensible), and a
order difference, that tells something about the musical bigger, to a grater (less sensible). The value of the
discourse, as it happens. sensibility control, seen at the lefthand side of the user
Since the accuracy of numbers does not matter much interface in Fig.2, is sent to the algorithm via the receive
for the gathering of information about quantity, the flow object named r sense, highlighted in Fig.3.
150
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
3.3. Triggering other instances of the patch through the performer, acoustic responses of the performance
the algorithm: the use of a third order difference space and so on.
Circular feedback chains are created, where the live-
Following this, a second instance of the same electronics influences itself, but is also influenced by the
algorithm is applied to the same flow of data in the patch performers intentions, through listening and playing,
(see Fig.2, p stable?freq5 and p stable?freq7), but responding to the whole sound space created. On the
with a different time span. In Fig.3, the time span is other hand, the performer has a certain control of the
given by the highlighted speedlim object with the response of the algorithm through the performance
argument 503 (five hundred and three), which means itself. It feels possible to control the electronics by the
that the result of the comparison with the threshold, from very playing of the instrument. The patch helps the
the > (greater than) object, will pass only about every process, showing to the performer in written text, but
half a second (five hundred and three milliseconds). In also visually, what is happening in the algorithm.
the second instance mentioned here, this argument is set In that way, one interesting result that may be the
to 701 (seven hundred and one) milliseconds. The results indication of the pattern that emerges from the
of both instances are then coupled, and the big toggle compared differences in quantity, is the small window
object shown in Fig.2 at the center of the patch, right with vertical lines to the right side of the big toggle (Fig.
above the window that shows a wave form, where a 2). Every vertical line is the representation of a 1 (one)
written information is given: when stable: record, from the set of ones and zeros gathered by the algorithm
will only change its state if the value (1 or 0) of both in the message box linked to step 3) of the description of
instances coincide at any point in time. A third order the algorithm in 3.2 and Fig.3. These lines move from
difference is achieved through another comparison or right to left when the sound processing of the patch is
ratio between quantities. The information about the on. When frequencies are stable, many ones are
stability or instability of frequencies in the performance generated by the two instances of the algorithm, and
is double-checked in different time spans. As indicated more lines move in the small window, with more density
by the written information in the user interface, if both in time, emulating a flux that gives a hint of when the
instances return an equal result, at any point in time, the recording will be triggered or not.
recording is on, if unequal, the recording is off: the patch In the same way, the piano becomes active in the
starts recording the performance when the algorithms system when there are sympathetic vibrations of the
detect any stable frequency that comes through the strings, as does the acoustic space, resounding with its
microphone for about half a second. The waveform of particular acoustic response what is fed to it by the
the recording is shown in the window below the toggle performance. The piece adapts itself to all this factors
and, of course, changes during the performance. without loosing a certain identity: there is a recognizable
The systematic use of prime numbers as time spans or sound characteristic of the whole process, tied to what
number of elements in sets of numbers that refer to the score defines as the musical content to be sought,
quantities, is a way of trying to avoid temporal and dependent and independent, at the same time, of all
constraints in the functioning of the algorithm (and, in parts of the system and their interrelationships.
fact, of the whole live-electronics system for gosto de
terra) that would resemble an idea of time as isometric.
The characteristic of prime numbers, i.e. their property 4. CONCLUSIONS
of only being divided by themselves or one, increases the The described algorithm is, of course, only one way
possibility that there will not be any co-incidence of looking at the formalization of these presuppositions
(literally understood) of events in time, reinforcing non- in systemic thinking. Dealing with concepts as
linearity a characteristic also found in organic systems difference, number and quantity in such a way, seems to
and, in that way, the feeling of organicity implied point to the possibility of developing further
above when referring to coarseness. formalizations that may be responsible for the
emergence of complex patterns, specially if ratios
3.4. Circular feedback chains between quantities could be formalized in such a way
that they themselves yield second, third and maybe
It is interesting to note, that the microphone is used in higher order information.
the system not only to record sound from the live
performance, but also as a kind of sensor. It is used for
its capacity to sensor differences in time, transduce them 5. REFERENCES
and make them available to the algorithm described. [1] Bateson, G. Mind And Nature: A Necessary Unity.
The recorded excerpts of the performance are used in Hampton Press, Cresskill, 2002.
a special convolution process with the sound result of
the piano, i.e., of what is being played live by the [2] Bateson, G. Steps to an ecology of mind. University
performer. When the recording is triggered by the of Chicago Press, Chicago, 2000.
algorithm, it will obviously record anything that comes
[3] Bateson, G., M. C. Bateson, Angels Fear: Towards
through the microphone, feeding the convolution with
an Epistemology of the Sacred. Hampton Press,
chunks of sound that have stable frequencies, but that
Cresskill, 2005.
also carry with them any musical content sounding at
that moment, including sympathetic vibration of the
strings, sounds in the piano body, anything played by
151
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
152
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
TABLE RONDE
Sous lgide de lAFIM, la Revue francophone dinformatique musicale1 publie des articles thoriques et
exprimentaux originaux, des rapports de recherches et des travaux de synthse en relation avec les domaines lis
linformatique et la cration musicales. La revue est annuelle, voire bisannuelle et tudie tout au long de lanne les
propositions de publication aprs soumission au comit de lecture. Une large place est donne aux travaux des
doctorants et jeunes chercheurs.
La revue choisit, sans exclusive, des thmatiques mergeant des journes dinformatique musicale (JIM), ou des
Sound and Music Computing (SMC), ou plus gnralement de lactualit scientifique et artistique.
Depuis 2010, trois numros annuels sont parus, un quatrime numro est en cours de prparation.
Le numro 1 concernait la thmatique de la mixit et du live electronic (actes dune journe dtude consacre ce sujet
en mars 2011 la MSH Paris Nord) ainsi que des travaux de jeunes chercheurs2.
Le numro 2 a donn une large place la prservation des uvres utilisant les technologies numriques,
approfondissant ainsi la thmatique principale des journes dinformatique musicale 2011 qui avaient eu lieu au Cierec
Saint-tienne3.
Le numro 3 a abord la mise en espace du son, la musicologie des pratiques lectroacoustiques employant des
dispositifs numriques, le geste sensible li la musique interactive dans une approche somatique ainsi que lexprience
de linterprte crateur duvres mixtes4.
Les jim 2014 seront loccasion de faire un premier bilan de la revue, aprs trois annes dexistence, de prsenter le
projet de numro pour lanne 2014, et puisque lAFIM souvre la francophonie, suite aux JIM 2012 Mons, et dans
la perspective des JIM2015 Montral, de questionner lusage de la langue franaise dans notre communaut
pluridisciplinaire de chercheurs et crateurs.
1
revues.mshparisnord.org/rfim /
2
http://revues.mshparisnord.org/rfim/index.php?id=69
3
http://revues.mshparisnord.org/rfim/index.php?id=183
4
http://revues.mshparisnord.org/rfim/index.php?id=243
153
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
154
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
Annexes
155
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
156
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
Peter Sinclair
Locus Sonus ESAA
petesinc@nujus.net
157
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
directly and played through a loud speaker as an with the advent of recording and electronically produced
audio signal. It is also a technique exploited by sounds. Until then at least for a long chapter in the
several artists (myself included) often because it history of western music a composer would right notes
is perceived as being as close as possible to the (data) to be interpreted by musicians.
physical reality of captured phenomena.
158
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
same source) even when the sounds are variable and the these are in a conceptual continuum with the ideas and
precise score or mix is unknown in advance. Since ASA techniques developed by composers of the mid twentieth
mechanisms are pre-cultural using them as a basis for century who sought the emancipation of (their) music in
organizing sonification is arguably less risky than a more regards to (their) expression. I am thinking here in
traditional musical approach that might be misinterpreted particular of John Cage his inclusion of the everyday
by part of the population and since it allows for variation into the compositional process and his definition of
it is possibly richer and less annoying than auditory experimental music as a being of a kind which the
icons. This last point is important I argue against the composer discovers at the same time as the other
use of recorded samples in sonification applications auditors [5] but also of Stockhausen, Xenakis and the
since (personally) I find repeating sounds rapidly serialist composers who gave process a dominant role in
become annoying and if they have the advantage of composition. Moving on in time I would also include
being unambiguous they are of limited scope in terms of Murray Schafer [19] and others involved in soundscape
the information they can carry. This might seem to be an listening and sound installation, which tend to shift the
argument in favour of audification as a technique and to focus away from the composers imaginary projection
a certain extent it is however several non-treated and towards a decision making process that includes
(noisy) audifications might become difficult to real-time and real-place. Digital technology makes this
distinguish and at the very least require a lot of training emancipation all the more feasible since it can mediate
or experience to become interpretable. the everyday, render audible the imperceptible or anchor
artistic form in real-time and in real-place.
In the recent symposium I organized on audio mobility
Gatan Parseihian, researcher at CNRS-LMA, described
his research into The process of sonification design in 3.1. Beyond Expression
the case of guiding tasks [17]. The processes use
parameter-based sonification and synthesis to provide There is a recurring idea in sonification artworks, that by
feedback information gained via visual capture for externalising some of the expression in the work; by
(among others) blind people. Gatan apologetically allocating a responsibility to data, there is a shift of
explained that blind people where reticent to use the sensibility away from the individual artist or musician,
system since a/ in encumbered their (normal) audio creator of the work, and towards the environment being
perception and b/ they found they the sounds un-subtle sonified; the artist adopts a different position. This is a
and disagreeable. I must admit that I sympathize, for trend, which can be noted in much digital art, where
instance I found the sound attached to the reversing artists see themselves as an element in (as opposed to the
sensor on the car I was driving last week, efficiently author of) a process. There is also a strong ecological
understandable but insultingly oversimplified and presence in sound art, manifested through practices such
disagreeable in its texture. I would argue that while there as field recording and sound walking considered as being
is a case to be made for the clear transmission of less dominant or imposing forms than traditional
information through sonification and that it is important composing and in some cases sonification can be seen as
to be able to distinguish between different sound a continuation of this idea.
sources, it is arguably not always useful to oversimplify
and over filter incoming data, and that in certain cases at Andrea Polli for example uses sonification to render
least alternatives to auditory icons, earcons or public significant but normally imperceptible data. Her
rudimentary mapping based sonification can be intentions are overtly political; she compares sonification
preferable. There are undoubtedly different ways to to soundscape listening and sound-walking, which she
approach this problem, I will return to the solutions that I considers as essentially socially engaged activities [18].
have adopted later. For Polli, audification can readily be considered as an
extension to soundscape, since it is the simple translation
of non-audible vibration into audible vibration. In
3. ARTISTIC PROJECTS comparison, mapping-based sonification (more
specifically geosonification 2 ) potentially poses other
Up until this point I have been discussing questions problems, since the translation involves higher levels of
related to sonification design; that is to say the art of human intervention and therein a danger of over-
crafting sounds for a certain purpose or to mediate simplification; an inevitable subjectivity appears through
certain data in an appropriate way. However there is a the choices involved in the mapping process.
different approach possible to the art of sonification,
which involves considering the holistic artistic approach
that evolves when projects, rather than responding to a
design problem, adopt sonification as the means to
artistic ends. In these situations, often it is the source of
the data itself that becomes significant and the
relationship between that source, the situation and the 2
artists mediation that makes the art work. In many cases, Geosonification: the sonification of data from the
natural world inspired by the soundscape.
159
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
160
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
161
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
As the quantity intensity and diversity of these parasites Figure 5. RoadMusic running under Android (Photo F.
increased along with the proliferation of electronic Hartmann).
apparatus, she became aware of the artistic potential of
visiting this invisible and normally inaudible universe.
4.1. How it works
She constructed special headphones equipped with
induction coils, which allow the auditor to hear the The sensors gather information about movement
electromagnetic waves emitted by different devices: (accelerometers on x, y, and z axes): vibrations from the
car body and the road surface; and on a larger scale
Light systems, transformers, anti-theft security bends, bumps, accelerations and braking. The camera
devices, surveillance cameras, cell phones, gathers information about the visual field: moving
computers, elevators, streetcar cables, antennae, objects and colour.
navigation systems, automated teller machines,
neon advertising, electric devices, etc. [11] Possibly the single most important (sonic and
conceptual) feature of the RoadMusic program, is that at
Members of the visiting public are invited to don these the outset there is no pre-recorded audio in the system7.
headphones (see Figure 4-3) and discover the hitherto It does not use playlists or samples; rather audio
unperceived but ubiquitous and pervasive dimension of synthesis is based upon the incoming raw data the
electromagnetic waves. This work is a notable exception forms of the road and the cars movements. This data is
to the idea that data is necessarily exposed as the written into wavetables 8 and read at audio speeds,
conceptual basis of the artwork. I would argue that in meaning that the sounds evolve as data updates.
this case the artwork is potentially self explicit and
autonomous. Christina Kubisch offers maps to her public
that indicate spots of particular interest, however, I
propose that if one where to wear the headphones
without prior knowledge of their usage, one would
rapidly comprehend their functionality and ultimately be
in a position to appreciate the artistic intention. For this
to be the case though, the user must move around and
arguably it is this mobility that generates the actual
content of the piece.
This idea that if mobilized, a sonification can potentially Figure 7. RoadMusic wavetable
make sense by itself is the basis of my project
RoadMusic which I will now describe in more detail.
This might immediately conjure up the idea something
very noisy in the auditory imagination of the reader,
however since this is just the starting point of the
synthesis (the wavetable is then read by oscillators and
6 7
Earlier installations use induction headphones to capture There is an exception to this: a recorded voice which gives
deliberately transmitted sounds as the visitor navigates in a feedback information about user navigation.
8
designated space. Indexed memory or array of values used in computer music.
162
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
numerous other processes are applied to it), it essentially the
car
goes
round
bends
or
over
bumps,
can
effects the sound on a micro-sonic scale, modifying be
mapped
to
change
pitch,
level
or
timbre or texture. The influence of this on the end result harmonic
spectrum.
is subtle and not necessarily consciously quantifiable to Events
are
detected
within
these
same
the untrained ear but it eliminates the monotonous nature streams
by
measuring
difference
against
of many synthesised sounds and importantly is the audio time,
so
it
is
possible
to
discern
a
bump,
a
imprint of the journey itself. bend,
an
acceleration
or
a
deceleration.
These
events
are
used
to
trigger
sounds
directly,
to
introduce
or
remove
notes
from
melodies,
or
to
switch
signal
processes
on
or
off.
These
events
are
also
used
to
calculate
statistics
about
the
road
measures
of
bumpiness,
bendiness,
stops
and
starts
that
in
turn
produce
new
streams
of
data
(moving
frame
averages).
Like
the
rescaled
data,
these
can
be
mapped
to
any
parameter
of
any
instrument,
causing
slower
variations
that
mediate
the
drive
on
a
macroscopic
scale.
A
last
level
of
analysis
applies
threshold
values
to
the
statistical
data,
producing
a
new
set
of
events
which
are
typically
used
to
orchestrate
the
ensemble
switching
different
instruments
on
and
off
according
to
the
type
of
road,
for
example:
straight,
some
curves,
winding;
flat,
bumpy,
very
bumpy.
Figure 6. Schema of RoadMusic analysis and audio
processing
4.1.3. The Landscape
4.1.1. Instruments Or Streams A camera captures the visual field of the road ahead.
This capture is analysed in two ways:
At the next level of complexity up from the wavetables Blob
tracking
is
used
to
distinguish
large
described above, audio synthesis is accomplished by a moving
objects,
most
often
cars
in
the
number of modules generating what will be described opposite
lane.
An
object
detected
in
the
video
later in this thesis as multiple streams9 separate audio frame
is
translated
as
coordinates:
horizontal
identities, which for the moment are most easily thought and
vertical
position
and
size.
As
with
data
of as instruments. Each of these instruments has basic from
accelerometers,
these
can
be
mapped
to
parameters that can be varied in real-time such as pitch, sound
parameters.
In
practice,
they
are
amplitude and pan and some have more distinctive employed
to
create
the
impression
that
a
qualities such as frequency spectrum (tone filter), echo,
sound
is
moving
correlation
with
an
object
delay, and Doppler10 effects that can simulate physical
outside
the
car
by
using
psycho-acoustic
cues
space or movement depending on the instrument.
(phase
difference,
amplitude
and
Doppler
shift).
Colour
of
the
overall
scene
is
analysed
by
4.1.2. Data Analysis And Mapping extracting
varying
RGB
(red,
green,
blue)
component
levels,
typically
used
to
vary
Data from the accelerometers is processed in different
harmonic
elements
in
an
instrument.
Here
ways:
too
an
event
is
extracted
when
there
is
a
Each
data
stream
is
rescaled
and
smoothed
change
in
the
dominant
colour
of
the
so
that
it
can
be
used
as
a
continuous
landscape
and
used
to
bring
about
changes
in
controller
by
any
parameter
of
any
the
music.
instrument.
For
example,
the
varying
force
of
acceleration
and
deceleration
or
g-force
as
4.1.4. Global Inactive
9
See Chapter 3.3 : Auditory Scene Analysis. A last but important detection is the non-event: the
10
Phenomena whereby, when a sound source is moving rapidly program provides a signal when no event has occurred
towards or away from an auditor (for example a siren or train for a few seconds, typically when the vehicle marks a
horn) the perceived pitch is modified.
163
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
stop (there is a mechanism which prevents this from Edited by S. Ystad et al. Auditory Display: 6th
recurring more than once per minute to cater for traffic International Symposium, CMMR/ICAD 2009.
jams and suchlike). This is used to define parameters of Berlin: Springer , 2009. 408-421.
a new piece, for example, to re-generate melodic and [3] Brand, Jens. GP4. http://www.g-turns.com/.
rhythmical patterns. The compositional process, once the 2004.
actual code for instruments has been completed, consists [4] Bregman, Albert S. Auditory Scene Analysis -
of deciding which input parameters are to be routed to The Perceptual Organization of Sound. The
which instrument parameters. MIT Press, 1994.
[5] Cage, John. Silence lectures & writings.
RoadMusics aim is not one of (stricto senso) informing London: Marion Boyars, 1971.
the driver about the road. However there is an intention [6] Eacott, John. Flood Tide.
to create an audio environment (although musical in its http://www.informal.org/. 2009.
form) that puts the driver and passengers in contact with [7] Gena, Peter. Apropos Sonification: a broad
the situation of driving, the road, the car and the view of data as music and sound - Sonification
environment. Where it might be argued normal - What Where How Why. AI&Society
listening in a car tends to a large extend to exclude these. (Springer), 2011.
Modern (in particular electric or hybrid) cars are isolated [8] Gena, Peter. DNA Music.
from the environment they traverse (even with the http://www.petergena.com/DNAmus.html.
windows open at anything beyond minimal speeds 1995.
turbulence will cover any sounds in the landscape) and [9] Grond, Florian, and Thomas Hermann.
car manufacturers do there best to eliminate and Aesthetic Strategies in Sonification. AI &
mechanical noise. Thus the car HiFi, and has become the Society (springer), 2011.
by-default audio source, and in most cases unless giving [10] Hermann, Thomas. Taxonomy and
traffic information it is disassociated from the situation. Definitions For Sonification And Auditory
So in a sense RoadMusic applies design principals to a Display. Proceedings of the 14th International
problem solving process. To this end I use the principals Conference on Auditory Display, Paris, France
of Auditory Scene Analysis described earlier, in order to June 24 - 27, 2008. Paris, 2008.
compose through routines or programs where the [11] Kubisch, Christina. Works with
absolute result is unknown (the sound of RoadMusic is Electromagnetic Induction. Christina Kubisch.
never the same). By thinking of the Auditory scene in http://www.christinakubisch.de/english/klangu
terms of streams with identities and characteristics that ndlicht_frs.htm (accessed december 10, 2011).
separate or approach them it becomes possible to create [12] Kubisch, Christina. Electrical Walks.
compositions without knowing where they will start or Kunsthalle Bremen. Christina Kubisch,
end and what they will encounter in between. In this I Electrical Drawings, Works 1974-2008. Kehrer
also rejoin with John Cages experimental music since Verlag Heidelberg, 2008.
the composer discovers the piece as it occurs and I [13] Kepler, Johannes. Harmonices mundi (The
would propose that the fact that all the music is Harmony of the Worlds). 1619.
generated from audification of the sensor data gives a [14] Khan, Hazrat-Inyat. The Mysticism of Sound
live quality to the experience (something akin to acoustic and Music. Shambhala, 1996.
sound). Finally I am also aligned to a certain extent with [15] Kramer, G et al. Sonication report: Status of
the cosmological camp at least in the sense that one of the eld and research agenda. ICAD 1997.
the aspects of this approach that interests me, is that ICAD, 1997.
rather than creating a fixed art work or a performance, [16] Quinn, Marty. "WALK ON THE SUN" - An
the process is one of cybernetic inclusion. By this I Interactive Image Sonification Exibit.
mean that the driver the car the program and the AI&Society (Springer), 2011.
environment play together and the limits of such a [17] Parsehian, Gaetan. Locusonus symposium #8
system are arguably unlimitedly extendable. Audio Mobility. Locusonus symposium #8
Audio Mobility. Locusonus, 2014.
[18] Polli, Andrea. Soundscape, Sonification and
5. BIBLIOGRAPHY Sound Activism . AI& Society - Sonification -
What Where How Why (Springer), 2011.
[1] Abenavoli, Lorella. Le Souffle de la terre, [19] Schafer, R Murray. The Tuning of The World.
tude n 5. Fondation Daniel Langlois. New York: Alfred Knopf, 1977.
http://www.fondation- [20] Sinclair, Peter. Living With Alarms. AI &
langlois.org/html/f/page.php?NumPage=268. Society - Sonification How Why What Where
2004. (Springer), 2011.
[2] Aramaki, Mitsuko, Charles Gondre, Richard [21] Sinclair, Peter, ed. Sonification - What Where
Kronland-Martinet, Thierry Voinier, and Solvi How Why. AI & Society (Springer) 27, no. 2
Ystad. Imagine the Sounds: An Intuitive (05 2012).
Control of an Impact Sound Synthesizer.
164
JIM2014 - Journes d'Informatique Musicales, 21-23 mai 2014, Bourges, France
165