Este patch hace parte de mi proyecto de tesis para el título de Master of Arts de SAE/Middlesex.
El software es capaz de reproducir una canción de forma no linear. He nombrado este tipo de canción no-lineal “Rhizong” de la combinación entre las palabras rhizoma, una estructura usada por algunas plantas (gengibre entre otras), y la palabra song del idioma inglés. La Rhizong que compuse para demostrar el concepto se llama Hard Walk.
Descargar / Download
Algunas notas para quienes quieran modificar el patch para crear sus propias Rhizongs (En inlges)
Cylcing 74’s Max 7 software was used to create the patch labeled “Rhizong Player”. The patch is designed to accommodate all operational definitions of parts and types and play them in a user generated order. The following sections offer a description of each part of the patch which will also serve as a guideline for other users that might want to follow the steps in this project and create their own rhizomatic songs by modifying the proposed patch.
At any one time only two sound files are played. This is achieved by a subpatch that works like a dual turntable system with a routing system that sends sound files either to turntable A or turntable B. Playback is handled by an sfplay object
Quantisation is provided by the metro object so that audio files are always played in time.
In order to have the different parts come in at the precise moment they need to, all the system is clocked to the song’s tempo, in our case 124 bpm. Users wanting to play their own material need to set the tempo of their song manually in the TransporMetro subpatch shown in the image.
File handling and coding
The subpacher labeled Coding holds a series of gates that set the rules for the player to work. As illustrated in the screenshot, the color squares represent each part as labeled. Within these squares, labels show options for every type. The first number to the right of the label tells the patch which file to chose as expressed by a number that represents the order in which the audio file is found within the audio folder as sorted by Max.
This means that the name each of the audio file has is vital and should not be changed. The audio files in the HW Audio folder follow the a naming scheme composed of a number, the songs abbreviated name, the name of the part and a letter that denotes the type.
The second number to the right of the label tells the patch the length each part in bars. This information is very important because the patch is always counting bars and it need to know the length of any given part in order to playback the next part.
Songs are collections of presets that represent each part. Decisions made by the user in the front end are stored in a preset that represents the choice of part, type and in the case of verses, a choice between first or second verse. A chain of patches results in a song.
Songs can be stored as JSON files using the Write button and later recalled by using the Read button. Using the Read command users can access 5 different song forms, stored in the Songs folder, including the three test songs plus two more, an extended song and an instrumental song.Timepoint Control
At the heart of the patch is the Timepoint Control subpatcher. This patch polls the current position of the song and reads from the Coding subpatcher in order to establish the next play point for the following part chosen by the user.
The patch automatically recalls the next preset one bar before it has to play it back in order to give the computer enough time to load the audio into the sfplay object.
The user interface was built to provide the best possible user experience by offering restrictions so that only logically complete instructions are stored in the pattern system as illustrated in the following screenshots:
The first screen hides the play, stop and add buttons. This forces the user to make a selection. The screen remains the same until all conditions are met, this means that for example, if a user chooses Intro but has not selected the type, the screen will not show the Add new part button.
Once all conditions have been met the Add button is presented. Clicking the Add button the part will be added to the queue.
Once the pattern system has at least two parts, the Ready to play will appear. When the user clicks on the Ready to play button the patch prepares the queue for playback and shows the next screen.
The Play button appears. It should be noted that at any given point the user can Delete and start over by clicking the appropriate button.
After pressing play the user is presented with the Stop button. Stopping can also be achieved by pressing the spacebar.