<CelloPi>

Godfried-Wilem Raes

1999

This composition was written within the framework of the authors real time composition program <GMT>. A PC-type computer (Intel motherboard preferred) reads and interprets the musical input received by the performer - a cello soloist in this case- and generates the music syntactically in real time. Generated sounds are both electroacoustic and sampled. The sampled sounds are made and recorded by the performer and played from the PC using its intrinsic MMX command set under the Win32Api. No midi sampler is needed nor used. Some samples have to be prepared by the performer following the instructions in the score, others are recorded and manipulated in real time based on musical actions of the performer.

The syntactical rules and the overall form -both harmonic (vertical) and in the counterpoint (horizontal) - are defined in the program. It performs pattern recognition on the cellists input and according to where it finds the performer to be in the score, takes decissions. Other then in pieces such as <Cohiba> and <Obotek>, here the performer does not have to follow a linear score. This piece is much rather conceived as a game , like chess, where the performer is free to untertake a limited set of moves at any time. All sonic output is a function of the input and calcullated using generalized serial procedures (inversions, transpositions, retrograde movement, time-shifting, .... in all combinations).

The vertical structures, confined to a set of four very sparse voices, make use of the authors generalized algorithmic harmony libraries: diminuting, augmenting, solving, morphing... and use functions that operate on the global harmonic content on any point during the performance. The composition thus much rather composes the playing possibilities and interactions, than the sonic events themselves.

oxalis functionThe title of the piece is a reference to the use of the irrational number Pi as a structuring element in the time related proportions of the piece. The time proportions make use of a variation on the Bernouilli Lemniscate function -a function producing the infamous infinity sign- , but here with 4 lobes in the complex plane. Hence we called it an Oxalis-function.

CelloPi was written between 1997 and october 1999. The composition was commissioned by cellist Arne Deforce and ought to be premiered in 2003.

The nominal duration of the piece is 754 seconds (ca. 12minutes), but this may change form performance to performance.

Technical requirements:


Setup:

Notes for performers: (Not yet available in english).

Notas voor uitvoerders:

<CelloPi> is een stuk voor cello en komputer. Een duo voor mens en machine dus. Het komputerprogramma voor <CelloPi> werkt volkomen interaktief. De partituur laat erg veel mogelijkheden voor de uitvoerder, maar toch is het beslist geen improvisatie.

Obligaat is in elk geval het spelen van de zestien muzikale patronen zo dat ze door de komputer worden herkend. Immers deze patronen vormen het syntaktisch materiaal op grond waarvan het <GMT> programma voor CelloPi kompositorische beslissingen neemt. Het is dan ook erg belangrijk dat de patronen herkend worden aangezien de opbouw van de kompositie staat of valt met een geslaagde herkenning van de patronen in datgene wat de speler speelt. <CelloPi> maakt geen gebruik van enige vorm van a priori sekwens, maar komponeert in real time in volkomen afhankelijkheid van de muzikale input van de speler. Alles wat deze binnen het tijdsbestek van het stuk (minimum 754 sekonden) speelt wordt door de komputer geregistreerd en verwerkt. Het wezen van deze volkomen non-lineaire kompositie is dan ook vervat in de formulering en uitwerking van het regulerend systeem waarvolgens de muzikale input wordt verwerkt. Het komponeren wordt in dit stuk, het ontwerpen van een spel.

Het <CelloPi> programma toont de speler op het scherm welke noten werden herkend. De speler mag zich tegenover de komputer opstellen als tegenover een soms wat hardhorige (lees:domme) leerling. Het (omspeeld) herhalen van noten tot ze herkend worden behoort heel bewust tot de retoriek van deze kompositie. Telkens een patroon met sukses werd herkent neemt het programma enkele beslissingen met betrekking tot het verder verloop van het stuk. Om dit zowel voor de speler als voor de luisteraar duidelijk te maken, worden deze momenten hoorbaar gemaakt door de komputer een vooropgenomen sample te laten afspelen. (Deze samples zijn opgeslagen in de reeks bestanden Cel1.wav tot en met Cel16.wav) die moeten aanwezig zijn binnen het subdirectory .\gmt\cellopi. Het staat de spelers vrij desgewenst een eigen reeks van 16 samples te gebruiken. Deze moeten echter wel zijn gemaakt uitgaande van de partituur en van instrumentale geluiden van de cello (zie verder). Het formaat moet 16bit stereo standaard PCM wave formaat met sampling rate 44.1kS/s zijn.

De patronen -wanneer ze uit meerdere noten bestaan- moeten niet noodzakelijk aansluitend worden gespeeld. De noten mogen worden voorzien van tussenspelen, versieringen, .... maar moeten wel op exakt de voorgeschreven toonhoogte en tijdsduur worden gespeeld. Let er echter op, dat de komputer in zo'n geval wel eens een ander patroon kan herkennen dat wat de speler zich voor ogen hield! De partituur is louter eksemplarisch en dus volstrekt niet preskriptief. Zij geeft een mogelijke realisatie van het stuk weer, niet de ideale. De herkende noten staan bij wijze van voorbeeld aangeduid binnen een omkadering. De noten/duren behorende tot eenzelfde patroon zijn in de partituur verbonden met een streepjeslijn.

Spelers mogen ook zelf een eigen partituur maken, mits dit gebeurt binnen het programma. Daarvoor moet in het cockpit window, voor het stuk wordt gestart, de Write-Seq taak (linkerkolom) worden aangeklikt. Wanneer het stuk dan is gespeeld en de speler tevreden is met het rezultaat, zal het programma onder de filename "CelloPi.seq" een file hebben aangemaakt waarin een gekodeerde partituur is vervat. Herbenoem dit bestand (dit om te vermijden dat het bij een volgende run van <CelloPi> weer wordt overschreven) en gebruik het "H2M.EXE" konversieprogramma om dit om te zetten naar een standaard midi-file. De parameters moeten zijn: MM=60, maat: 1/4, zodat de maatcijfers overeenstemmen met de kronometerweergave op het scherm achteraf. De zo aangemaakte midifile kan dan aan een standaard notatieprogramma worden aangeboden ( Finale -hoe omslachtig ook- werkt goed, Sibelius nog beter, maar ook een sequencer zoals CakeWalk kan worden gebruikt wanneer de file niet al te kompleks is).

Het eerste wat uitvoerders te doen hebben, willen zij dit stuk gerealiseerd krijgen, is het installeren van de software op hun harde schijf. Om dit te vergemakkelijken schreef ik een batch bestand 'Install.bat' , of 'Install_CelloPi.bat' op de distributie CD-Rom voor <CelloPi> en andere stukken behorende tot de interaktieve GMT-reeks. (<OboTek>,<Cohiba>,<LickStick> etc...). Deze batch-file gaat ervan uit dat de harde schijf met de letter C: wordt aangeduid. Wanneer dit niet het geval zou zijn, moeten de paths met Notepad of een andere Ascii editor eerst worden gewijzigd.

Het batch bestand maakt een directory struktuur aan alsvolgt:

C:\B\PB\GMT\

en kopieert daarheen alle nodige bestanden voor het instuderen en uitvoeren van het stuk. Het nodige databestand, evenals de *.wav file komen in een subdirectory alsvolgt:

C:\B\PB\GMT\gw_soloko\CELLOPI\

Tevens plaatst het een shortcut naar <gmt_sol> op de 'desktop' van de komputer.

Klik vervolgens op het <gmt_sol> ikoon op de desktop, waardoor het openingsscherm van <GMT> verschijnt. Ook direkt klikken op de file gmt_sol.exe in het subdirectory C:\B\PB\GMT\gmt_sol.exe werkt. Binnen dit window moeten nu eerst en vooral de midi I/O devices worden geselekteerd: Klik op 'Input devices' en een pop-up menu verschijnt waarbinnen we het item 'MIDI-Input devices' selekteren. Nu moet er een submenu verschijnen waarmee de gebruiker een keuze wordt geboden tussen een of meerdere beschikbare midi-input devices. Wanneer er slechts 1 device is, wordt het automatisch geselekteerd. Geselecteerde devices verschijnen in het grijs in het menu, en kunnen dus niet een tweede keer worden gekozen. Wanneer er een waarschuwing verschijnt over niet beschikbaarheid van een midi-IN/OUT-device, dan is het niet mogelijk deze software te laten werken. Ofwel heeft uw komputer geen midi-interface, ofwel is het reeds in gebruik, ofwel is de komputer slecht gekonfigureerd. Wanneer er meerdere devices beschikbaar zijn, kies dan bij voorkeur het standaard device dat op een voorhanden externe konnektor (5-polige din stekkerbus) beschikbaar is. ('MPU401 is goed, maar ook SB16 etc... is goed bruikbaar). Indien je deze keuze niet begrijpt, doe dan beroep op iemand die technisch vertrouwd is met de apparatuur waaraan ons tijdsgewricht zijn mogelijkheden tot voortbestaan ontleent...

Nu wordt dezelfde procedure herhaald voor de te gebruiken midi uitgangspoort. Selecteer het pop-up menu Output devices, en kies daarin 'Midi-Output devices'. Kies hier uitsluitend voor die midi-poort die extern verbonden is met de 5-polige midi-Out stekkerbus. (SB-poort, [330], MPU401, USB-device...). Andere devices selekteren alleen de interne klankmogelijkheden van de komputer. Daarmee kan 'CelloPi' niet worden gespeeld, hoewel het wel repetities in de eigen studeerkamer zonder de volledige apparatuur, kan toelaten als de klankkaart van de komputer tenminste voldoende polyfone mogelijkheden heeft. Maar, ook in dit geval blijft een mikrofoon en een pitch to midi konverter noodzakelijk.

Wanneer Midi IN en UIT met sukses zijn geselekteerd, moeten op volkomen analoge wijze de wave-in en wave out devices worden geselekteerd. Vergewis U ervan dat de mixer settings in windows korrekt ingesteld zijn om mikrofoonopname en wave-weergave mogelijk te maken. In het menu external-devices, moet vervolgens onder EMU, de Proteus2 of Proteus2XR synthesizer worden gekozen.

Daarna pas kan via het meest linkse pop-up menu (GMT_Compositions) het gewenste stuk -in dit geval dus <CelloPi> worden gekozen.

Onmiddellijk verschijnt nu reeds een tweede langwerpig venster onderaan het scherm. [We nemen aan dat U werkt met een schermresolutie van 760 x 1024 pixels of meer. Wanneer dit niet het geval is, kan het melodievenster maar nipt samen met het Cockpitvenster op het scherm worden geplaatst. Het programma herkent Uw schermresolutie automatisch en past de afmetingen van de windows aan. De minimale resolutie waarmee nog konfortabel kan worden gewerkt is 800x600 pixels]. Hierin zullen later de muzikale motieven worden weergegeven zoals ze door de komputer werden herkend. Kies nu, in het openingswindow,onder Start GMT, de keuze GMT_Main. Het openingsvenster sluit zich en het 'Cockpit' venster verrschijnt.

Interaktieve -d.w.z. aan de patroonherkenning gekoppelde- muzikale gebeurtenissen in het stuk zijn:

Het verdient aanbeveling deze patronen exact van buiten te leren spelen.

Nummer van het herkende patroon:

Number of the recognized pattern

Cockpit task labels muzikale gebeurtenis - musical event triggered
1 Detune The notes played by the cello are echoed by the computer, but with a pitch deviation in function with the sound level played by the cello. The louder cellist plays, the more the regenerated pitch will be 'out of tune'.This event toggles (ON/OFF)
2 Record Starts the recording of a sample into the computer. The duration varies in function of where you are in the piece, according to an oxalis function. 
3 InvFast Starts/Stops a delay line whereby all previously played note material (picthes only) is inverted using the most recent relevant pitch as a mirror note. The delay time will depend on the moment the element is recognized. Each new instance of a recognition, will speed up the playback speed of the delay line. Playback speed will always be faster than the original speed.
4 Delay Starts a real-time audio delay line. The duration of the delay is a function of the time proportions of the composition. The source for this recording is the signal from the cello bridge contact microphone. 
5 Pattern1

Reverse

Starts/Stops gradual subsitution pattern 1.

On a stop of the pattern, the last recorded sample will be played back, backwards.

6 Pattern2

CrossMod

Starts/Stops gradual subsitution pattern 2 .

On a stop of the pattern, the last recorded sample will be played after crossmodulation between the channels.

7 Voice 1 Starts/Stops vertical voice 1 
8 Voice 2 Starts/Stops vertical voice 2
9 Voice 3 Starts/Stops vertical voice 3 
10 Pattern3

XTimMod

Starts/Stops gradual subsitution pattern 3 

On a stop of the pattern, the last recorded sample will be played after timecrossmodulation between the channels. This is a palindrome.

11 Pattern4

VarSpeed

Starts/Stops gradual subsitution pattern 4.

On a stop of the pattern, the last recorded sample will be played subjected to a pitchshift in function of the last note played by the cello.

12 Finale Starts the finale for the piece. This should be the last pattern played for recognition. It gradually stops other active tasks/events.
13 InvBack Starts/Stops a pitch delay line that plays backwards and with inverted intervals, mirrored against the most recent played pitches.
14 BackSlow Starts/Stops a backwards delay line at a slower speed than the original timing. Pitches are preserved.
15 PlayBack

RingMod

Plays the most recently recorded audio sample either straight of ringmodulated with the pitches most recently received from the cello.
16 Voice 4 Starts/Stops vertical voice 4

De aanmaak van de samples:

De zestien samples ( *.WAV bestanden of files) moeten bij voorkeur door de speler zelf worden opgenomen en gemaakt. Het moeten geluiden zijn die te maken hebben met het het op de partituur aangegeven herkenningsmateriaal. Wel moet ernaar worden gestreefd zo extreem mogelijk - vooral naar klankkleur en temporele structurering- van het notenmateriaal af te wijken. Ook geluiden die ontstaan bij het testen en reinigen van het instrument kunnen heel goed worden gebruikt. Steeds moet worden getracht de geluiden zowel typisch te laten zijn voor het instrument als persoonlijk voor de uitvoerder. Wanneer de geluiden erg kort zijn mogen ze worden 'geloopt' (in een lus gezet) of elektronisch bewerkt. De duur van een sample mag evenwel in geen geval langer zijn dan ca. 30 sekonden. Neem als opnameformaat 44.1kS/s stereo bij 16 bit, de software ondersteund op dit ogenblik alleen dit (CD) formaat. De komputer moet uiteraard wel voldoende snel zijn om dit aan te kunnen. Ook de nodige harddiskruimte moet uiteraard voorhanden zijn. Dit kan makkelijk worden getest door de MT-speed/jitter waarde in het Cockpit venster te bekijken bij het weergeven van een sample. Deze waarde moet zoveel mogelijk 0 blijven. Wanneer deze waarde op een hoger cijfer blijft hangen -of erger nog- wanneer zij alsmaar toeneemt, dat is de gebruikte komputer beslist te traag of heeft hij te weinig geheugen om GMT te runnen. De files waarin de zestien samples zijn opgeslagen moeten Cel1.wav tot en met Cel16.wav worden genoemd opdat <CelloPi> ze zou herkennen bij uitvoeringen. De files die op de CD-Rom staan werden opgenomen door Arne Deforce en zijn er slechts bij wijze van voorbeeld. Ze mogen uiteraard worden overschreven/vervangen.

Voor verdergaande analyse is het aangewezen de inleidingen en handleidingen bij <GMT> en mijn <Harmony Library> goed te lezen, en met deze kennis de kode voor deze kompositie te bestuderen. Voor de realisatie van een uitvoering van dit stuk is dit nochtans geenzins nodig.

Het is de heel bewuste ideologische bedoeling van dit stuk -als deel van een totaal nieuwe benadering van het begrip muzikale kompositie zoals ik die poog te realiseren binnen <GMT> - een bijdrage te leveren tot de veiligstelling -via een diepgaande herbronning- en herformulering van de expressieve ambachtelijkheid van de uitvoerende musicus naar het volgende milennium toe. Niet ik als auteur druk mij uit in dit stuk, maar veeleer schep ik een instrumenteel (en dus beperkend) kader waarbinnen anderen dit kunnen doen. Ut Homo Ludens Vivat.

Het stuk kan ten allen tijde onderbroken en gestopt worden door te klikken op de <EXIT> knop. Dit is de enige veilige manier om het <GMT> programma voortijdig te verlaten.

De door mij voor dit stuk ontworpen boogmikrofoon ziet eruit als:

De specifieke voorversterkerschakeling ervoor ziet er schematisch uit als:

Voor de kontaktmikrofoon op de kam kan elk gangbaar type worden gebruikt.

PS: bij technische/muzikale problemen kunnen ook volgende gespecialiseerde musici U helpen: Arne Deforce, Kristof Lauwers, Karin De Fleyt, Joachim Brackx.

Godfried-Willem RAES


Back to Logos' main page Back to Godfried-Willem Raes personal index page Back to compositions by Godfried-Willem Raes

First published on the Web on october 8th 1999by Godfried-Willem Raes

Last Updated on 2005-01-24 by Godfried-Willem Raes