UPISketch Version
3.0 - Desktop: OSX / Windows
(14 Feb 2022)
User Manual
UPISketch is a sound
composition tool, which is based on drawing: the user can sketch
and design sound gestures by defining their melodic contour, as in
the case of a conventional score. Pitches are, nevertheless, drawn
directly at specific time points, without requiring any knowledge
of solfege. UPISketch is intended to be simple and intuitive.
The main work area is a page, on which the user produces a
composition by assembling different sound gestures.
The material of a gesture comprises an existing sound, which was
either pre-recorded by the user or selected from the default
database of sounds. We create a gesture by drawing directly on the
page, which imposes a melodic contour to the sound source. It is
therefore recommended that the basic material is made up of
monophonic sounds of which the pitch is clearly defined, otherwise
the results may be unpredictable.
Gestures created on the page can be processed in different ways:
displaced in time, transposed, as well as stretched/compressed by
adjusting the double vertical bar.
LISTS
GROUPS
COPIES
ENVELOPE
VST PLUGINS
SOUND SYNTHESIS
EVENT GENERATION
Description of functions /
buttons :
Switch between general purpose buttons (Open, Save, Settings...)
and tool buttons.
Select a gesture on the
page, or a gesture or a source-sound in the lists on the
left-side.
Can be used to reassign another source-sound to an already created
gesture.
Draw a gesture from a selected sound.
This is a button with options : keep the mouse down until these
pop up, then choose between pen and straight lines.
For straight lines , each click on the page adds one
point, the line is finished by double-clicking for the last point.
Horizontal lines can be achieved by pressing
the shift key before adding a point.
Navigate in the page:
Dragging the mouse will pan.
Zooming is achieved by keeping CTRL key down while moving the
mouse,
or simply with the mouse wheel if available.
On dragging rightwards, it will zoom.
On dragging leftwards, it will unzoom.
Delete the selected
gesture. Double-click deletes all the page contents. (shortcut:
backspace key)
Undo the last action.
Redo the last action.
Restore the default view
from the first to the last sound.
Open a UPISketch project.
Save a UPISketch project.
Look for source sounds or
gestures. Divided in three parts:
Factory Sounds,
User Sound, Gestures.
General considerations
about created files:
UPISketch OSX and Windows
creates files in your User's Documents directory.
To use your own sound files
:
In the finder, you can
populate the UPISketchDocuments subfolder, UserRecordedSounds,
with these sound files.
Beware: if your UPISketch
project uses one of these sounds, the sound will have to be kept
in that place for proper reopening of the session.
Modify display settings:
Display :
- all the graphics, or naked (only the pitch curves, no gestures
names)
- show / hide the grid
Units :
- Pitch: In english notation (C4 = C between bass and treble
clefs), or in midics (60 = C4, 69 = A4), or in Hertz (69 = 440 Hz).
- Lowest and highest pitch
and time that are displayed by default.
- How many vertical lines
per second: sets the accuracy of the temporal grid.
- How many horizontal lines
per octave: sets the accuracy of the pitch grid.
The settings page also
includes the audio interface settings.
Export the whole page as a
sound file.
Play controls (Play/Stop
can also be triggered by the space bar).
Playing begins at the
position of the movable start time indicator .
This playhead can be used
to monitor the sound in real time.
Double-clicking on stop
will rewind to the beginning (0 s.)
Record a sound, which is
added to the user sound library.
Operations / manipulations
LISTS
When a
gesture is created on the page, it is added to the list of
gestures on the left.
This place lists all the actions on the page and indicates their
start time.
It allows you to rename the gestures.
When selecting a gesture, the page scroll to its position.
A play button allows to solo monitor a selected gesture, or to
listen to a selected source-sound.
GROUPS
To create a
group of gestures, in selection mode, double-click on the first
gesture. Its color changes. To add more gestures to this group,
click on the additional gestures. To indicate the end of the
grouping operation, click on the page in an empty place. The group
thus formed is then movable. To remove a single gesture from a
group, double-click on that gesture, then click, and finally click
outside.
COPIES
To copy a
gesture, hold down the ALT key by dragging the mouse from the
gesture you want to copy.
The other possibility is to drag & drop the selected gesture
from the list of gestures on the left to the page.
This last way can be applied to a group of gestures as well.
ENVELOPE
To change the
envelope of a sound, i. e. its sound level, move or add points
by clicking on the blue line. To access the editing of the
curves of a gesture more easily when it is displayed mixed with
others, select it first from the list on the left.
VST PLUGINS
UPISketch supports VST3 and Audio Units
technologies.
It can host plugins and control their parameters using curves
drawn in the lower area of the page.
Plugin management: in the track window (accessible via the
"Plugins / Show Tracks" menu),
you can organize the path that the sound takes through the
plugins you have added.
Nota Bene: the default plugins can be useful for controlling
volume and stereo localisation in global way.
To edit the parameter of a plugin using a curve :
1. Display the list of its parameters:
2. Select it in this list:
3. The curve is then displayed in the lower area of the
UPISketch page, and can be modified (if you are in selection
mode):
click on the curve to add a point, CTL+click to remove it.
Drawn gestures and plugins tracks :
By default, all gestures are assigned to track 1.
To assign gestures to another track, click in the empty space of
this track to select it (it is then highlighted).
Select the gestures, CTL-click, and choose the option "Assign to
the currently selected track" :
You can choose to listen or not and to visualize or not the
gestures associated to a given track:
SOUND SYNTHESIS
As UPISketch develops, new types of sound synthesis will be
available.
In the area on the left of the page there are different tabs.
The first tab, "Sounds", is the first type of synthesis to be
implemented in UPISketch.
It is a resynthesis based on samples and on the analysis of
their fundamental pitch.
The second tab, "Synthesis", corresponds to other types of
synthesis.
For the moment we have in the "Basic" folder, a simple
oscillator with basic waveforms.
In the near future it will be possible to add your own functions
from a mathematical expression,
until then the experienced user can try to modify the file
"Expr.txt" by browsing the application package,
UPISketch/Contents/Resources/assets/Synthesis/Basic.
The expressions consider x as the phase between 0 and 2π, and must give results between -1. and 1.
Les modifications sur les autres fichiers (Sine.txt etc.)
seront sans effet.Changes to other files (Sine.txt
etc.) will have no effect.
EVENT GENERATION
The first type of automatic
event generation to be implemented is based on cellular automatas.
It is currently an
experimental feature.
Let us recall the principle
of cellular automata: starting from a group of ordered cells
containing values,
the automaton calculates a
new sequence from rules based generally on the content of
neighbouring cells.
The automata used here use
the following rules:
Si(n) = Si -1(n + 1) - Si -
1(n) (Vieru automaton, subtractive)
For example, the sequence
'1 5 8 2 5' in line i = 0, will give the following line (i = 1):
'4 3 6 3'.
(Differences are currently
calculated according to a modulo 12, which explains that 2 - 8 =
6)
Si(n) = Si -1(n + 1) + Si -
1(n) (Ledrappier automaton, additive)
For example, the sequence
'1 5 8 2 5' will give the following line: '6 13 10 7'.
A sequence of numbers
resulting from the calculation of the automaton is interpreted as
a sequence of semitone intervals, applied to a starting note,
creating a melody.
It is possible to calculate
the antecedents via the automaton. For example, line -1 is the
line which by calculation will give line 0.
In the case of the
antecedents calculation, since one of the values is missing due to
a greater number of elements, a value is specified at the location
of our choice.
Another function, intended
to vary the temporal entries of the elements of the suite, is
accessible at the bottom of the "Automaton Settings" window: it
exploits the properties of the Sturmian suites. An example of a
Sturmian suite is the Fibonacci words.
Quoting Wikipedia :
"Let S0 be "0" and S1 be
"01". Now Sn = Sn-1Sn-2 (the concatenation of the previous
sequence and the one before that).".
More precisely, here are
the controls available via the "Automaton
Settings" window:
All those settings can be
saved in a separate document (UPISketch menu/Automata/Save
Automata Settings).
operation type :
choice
between subtractive and additive.
suite type:
finite
gives the sequence once, periodic gives the sequence of intervals
in a loop, the size of which is defined by "how many elements".
exceeding the allowed registers is managed by a mirror effect.
enter continued :
enter a
sequence of numbers which will be processed by the automaton.
value constraint :
(is used
in the case of antecedent calculation (choosen line < 0))
specifies a value constraint for the cell located in the column
defined by "column constraint".
column constraint :
specifies the column in which the desired value is located in
order to completely define the antecedent.
starting note :
note
from which will be applied the sequence of intervals (60 = C3)
duration of each event :
- in the
case of the 'constant' option: duration in seconds of each event
generated
- in the
case of the 'sturmian' option: basic duration in seconds,
multiplied by the number of repetitions in the values of the
sturmian sequence.
choosen line :
choice
of the line resulting from the automaton calculation.
It is
possible to obtain both the successors and the antecedents ("back
in time").
how many elements :
number
of elements desired (in the case of the 'periodic' option).
this box
has no effect in the case of the 'finite' option.
first (and second) seed :
Allows
to define the words S0 and S1, and thus the subsequent iterations.
The
default setting corresponds to the Fibonacci word, with S0 = 0, S1
= 01.
start time :
Defines
the time from which the height sequence will be inserted.
constant / sturmian :
defines
the type of temporal deployment of the sequence.
Copyright (c)
2017-2022 Centre Iannis Xenakis
Manuel d’utilisation
UPISketch est un programme
d’aide à la composition sonore, par le dessin.
Le principe de base est de
pouvoir dessiner des gestes sonores, en définissant leur contour
mélodique, comme pour une partition classique.
La différence réside dans le fait que les hauteurs sont
directement dessinées, sans recourir aux symboles du solfège.
Il se veut simple
d’utilisation.
La zone de travail
principale est la page. C’est là que la composition est réalisée,
par l’agencement des différents gestes sonores qui vont la
constituer.
Un geste utilise comme
matériau un son existant, soit enregistré par l’utilisateur, soit
choisi dans la librairie de sons par défaut.
Pour créer un geste, on utilise le
mode dessin, qui permet d’imposer le contour mélodique au
son-source.
Il est recommandé
d’utiliser comme matériau de base des sons monophoniques, dont la
hauteur est clairement définie.
Dans le cas contraire, les résultats seront imprédictibles.
Les gestes créés sur la
page peuvent être manipulés : déplacés dans le temps, transposés,
et on peut les étirer ou les raccourcir en manipulant la barre
verticale située à leur droite.
LISTES
GROUPES
COPIES
ENVELOPPE
PLUGINS
VST
SYNTHESE SONORE
GENERATION
D'EVENEMENTS
Description des fonctions /
boutons :
Permet de basculer entre
les boutons de menu général (Ouvrir, Enregistrer, Réglages) et les
boutons-outils.
Permet de sélectionner un
geste dans la page, ou un geste ou un son-source dans les listes
de gauche.
Peut être utilisé pour réassigner un son-source à un geste ou
groupe de gestes déjà créé.
Dessine un geste à partir d'un son sélectionné.
Il s'agit d'un bouton avec des options : maintenez la souris
enfoncée jusqu'à ce qu'elles apparaissent, puis choisissez entre
le stylo et les lignes droites.
Pour les lignes droites , chaque clic sur la page
ajoute un point, la ligne est terminée en double-cliquant sur le
dernier point.
Les lignes horizontales peuvent être obtenues
en appuyant sur la touche "Maj" avant d'ajouter un point.
Navigation dans la page :
La translation s'effectue avec le glissé de la souris.
Le zoom, en glissant avec le bouton CTRL enfoncé,
ou simplement avec la molette de la souris si disponible.
Agrandissement en glissant vers la droite.
Rétrécissement en glissant vers la gauche.
Supprime le geste
sélectionné. Un
double-clic efface tout le contenu de la page. (raccourci clavier
: touche "retour arrière")
Annule la dernière action.
Rétablit la dernière action.
Rétablit la vue par défaut
(ensemble des sons visibles du premier au dernier)
Ouvrir un projet UPISketch.
Enregistrer un projet
UPISketch.
Recherche de sons sources,
divisé en trois sections :
Factory Sounds (sons d'usine), User Sounds (sons utilisateur), User Recorded
Sounds (sons enregistrés avec UPISketch).
Considérations générales
à propos des fichiers :
UPISketch OSX et Windows
créent leur fichiers dans votre dossier Documents.
Pour utiliser vos propres
sons :
Depuis le finder, vous
pouvez ajouter des sons dans le dossier UserSounds, qui se trouve
dans UPISketchDocuments.
Attention : si votre projet
UPISketch utilise l'un de ces sons, celui-ci devra être conservé
au même endroit afin d'assurer une réouverture correcte du projet.
Permet de modifier les
réglages d’affichage :
Options d'affichage :
- tous les graphismes, ou nu (seulement les courbes de hauteur,
pas de noms pour les gestes)
- afficher ou non la grille
Unités : en notation
anglo-saxonne (C4 = Do entre clé de sol et clé de fa), ou en
midics (60 = C4, 69 = A4 (= La3 en France)), ou en
Hertz (69 = 440 Hz).
Hauteurs minimale et
maximale affichées par défaut.
Domaine temporel affiché
par défaut.
Nombre de lignes verticales
par secondes : permet de régler la précision des repôres
temporels.
Nombre de lignes
horizontales par octave : permet de régler la précision des
repôres de hauteur.
Les contrôles affichés
comprennent aussi des réglages pour l'interface son.
Permet d’exporter la
totalité de la page sous la forme d’un fichier son.
Contrôles de lecture (Lecture et arrêt peuvent
aussi être activés par la barre d'espace).
La lecture commence
à l’emplacement du curseur de démarrage, positionnable
.
Cette tête de lecture
permet d'écouter en temps réel le résultat.
Un double-clic sur stop
fait revenir le curseur au début (0 s.)
Enregistre un son, qui se
rajoute à la liste des sons créés par l’utilisateur.
Opérations / manipulations
LISTES
Lorsqu'un geste est créé
sur la page, il s'ajoute à la liste de gestes située à gauche.
Cette liste répertorie tous les gestes de la page en indiquant
leur date de départ.
Elle permet de renommer les gestes.
Lorsqu'on sélectionne un geste dans cette liste, la page se
recentre sur la position de ce geste.
Un bouton play permet d'écouter en solo un geste sélectionné, ou
un son-source sélectionné.
GROUPES
Pour créer un groupe de
gestes, en mode sélection, double-cliquer sur le premier geste. Sa
couleur change. Pour ajouter d'autres gestes à ce groupe, cliquer
sur les gestes supplémentaires. Pour signifier la fin de
l'opération de groupage, cliquer dans la page en dehors de tout
geste. Le groupe ainsi formé est alors déplaçable. Pour enlever un
seul geste d'un groupe, double-cliquer sur ce geste, puis cliquer,
et enfin cliquer en dehors.
COPIES
Pour copier un geste,
maintenir la touche ALT appuyée en faisant coulisser la souris
depuis le geste que l'on souhaite copier.
L'autre possibilité est de glisser-déposer le geste sélectionné
dans la liste de gestes à gauche, vers la page.
Cette dernière manière permet aussi de dupliquer un groupe de
gestes.
ENVELOPPE
Pour modifier l'enveloppe
d'un son, c'est-à-dire son niveau sonore, déplacer ou ajouter des
points en cliquant sur la ligne bleue. Pour accéder plus
facilement à l'édition des courbes d'un geste lorsqu'il s'affiche
mélangé à d'autres, le sélectionner d'abord dans la liste de
gauche.
PLUGINS
VST
UPISketch prend en charge les technologies VST3
et Audio Units. Il peut accueillir des plugins et contrôler
leurs paramètres à l'aide de courbes situées dans la zone
inférieure de la page.
Gestion des plugins : dans la fenêtre de pistes (accessible via
le menu "Plugins / Afficher les Pistes", on organise le chemin
que prend le son, traversant les plugins qu'on a ajoutés.
Note Bene : les plugins par défaut peuvent être utiles pour
contrôler le volume et la localisation stéréo de manière
globale.
Pour éditer à l'aide
d'une courbe le paramètre d'un plugin :
1. Afficher la liste des
paramètres dont il est doté :
2. Le sélectionner dans cette liste :
3. La courbe s'affiche alors dans la zone inférieure de la page
UPISketch, et peut être modifiée (si l'on est en mode sélection ) :
un clic sur la courbe pour ajouter un point, un CTL+clic pour le
supprimer.
Gestes dessinés et
pistes de plugins :
Par défaut, tous les
gestes sont assignés à la piste 1.
Pour assigner des gestes à une autre piste, cliquer dans
l'espace vide de cette piste pour la sélectionner (elle est
alors en surbrillance).
Sélectionner les gestes, CTL-clic, et choisir l'option "Assigner
à la piste actuellement sélectionnée" :
On peut choisir d'écouter ou non et de visualiser ou non les
gestes associés à une piste donnée :
SYNTHESE
SONORE
Au fur et à mesure du
développement d'UPISketch, de nouveaux types de synthèse sonore
seront disponibles.
Dans la zone à gauche de la page se trouvent différents onglets.
Au premier onglet, "Sons", correspond le premier type de
synthèse à avoir été mis en place dans UPISketch.
Il s'agit d'une resynthèse basée sur des échantillons et sur
l'analyse de leur hauteur fondamentale.
Au deuxième onglet, "Synthèse", correspondent d'autres types de
synthèse.
Nous disposons pour l'instant dans le dossier "Basic", d'un
simple oscillateur avec des formes d'ondes basiques.
Il sera possible
dans un futur proche d'ajouter ses propres fonctions à partir
d'une expression mathématique.
D'ici-là, l'utilisateur·trice
expérimenté·e pourra tenter des modifications du fichier
"Expr.txt", en naviguant dans le paquet de l'application,
UPISketch/Contents/Resources/assets/Synthesis/Basic.
Les expressions considèrent x comme la phase entre 0 et 2π, et
doivent donner des résultats entre -1. et 1.
Les modifications sur les autres fichiers (Sine.txt etc.) seront
sans effet.
GENERATION D'EVENEMENTS
Le premier type de génération automatique
d'évènements à être implémenté se base sur les automates
cellulaires.
Il s'agit pour le moment d'une fonctionnalité expérimentale.
Rappelons le principe des automates cellulaires : partant d'un
groupe de cellules ordonnées contenant des valeurs,
l'automate calcule une nouvelle suite à partir de règles basées
généralement sur le contenu des cellules voisines.
Les automates utilisés ici ont pour règles :
Si(n) = Si -1(n + 1) -
Si - 1(n)
(Automate de
Vieru, soustractif)
Par exemple la suite '1 5 8
2 5' à la ligne i = 0, donnera à la ligne suivante (i = 1) : '4 3
6 3'
(Les différences sont calculées actuellement selon un modulo 12,
ce qui explique que 2 - 8 = 6)
Si(n) = Si -1(n + 1) +
Si - 1(n)
(Automate de
Ledrappier, additif)
Par exemple la suite '1 5 8
2 5' donnera à la ligne suivante : '6 13 10 7'
Une suite de nombres résultant du calcul de l'automate est
interprétée comme une suite d'intervalles en demi-tons, appliquée
à une note de départ, créant ainsi une mélodie.
Il est possible de calculer les antécédents via l'automate. Par
exemple la ligne -1 est celle qui par calcul donnera la ligne 0.
Dans le cas du calcul d'antécédents, étant donné qu'une des
valeurs est manquante (nombre d'éléments plus grand), on spécifie
une valeur à l'emplacement de notre choix.
Une autre fonction, destinée à varier les entrées temporelles des
éléments de la suite, se trouve accessible en bas de la fenêtre
"Automaton Settings" : elle exploite les propriétés des suites
sturmiennes. Un exemple de suite sturmienne est celle des mots de
Fibonacci.
Citant Wikipedia :
"La suite (Sn) des mots de Fibonacci, notamment, est
définie par S1 = 1 et S2 = 0, et pour n >
2, par :
Sn= Sn-1Sn-2
(le produit est la concaténation des deux précédents termes)."
Plus précisément, voici les contrôles disponibles via la fenêtre "Automaton Settings" :
Tous ces réglages
peuvent être enregistrés dans un document séparé, via le menu
UPISketch / Automata / Save Automata Settings.
operation type :
choix entre soustractif et additif.
suite type :
finite
donne une seule fois la séquence, periodic donne la séquence d'intervalles en
boucle, dont la taille et définie par
"how many elements".
le dépassement des registres autorisés est géré
par un effet de miroir.
enter suite :
entre une suite de nombres qui sera traitée par
l'automate
value constraint :
(s'utilise dans le cas du calcul d'antécédent
(choosen line < 0))
spécifie une contrainte de valeur pour la
cellule située à la colonne définie par "column constraint".
column constraint :
spécifie la colonne à laquelle se trouve la
valeur souhaitée afin de définir complètement l'antécédent.
starting note :
note à partir de laquelle sera appliquée la
suite d'intervalles (60 = C3)
duration of each event :
-
dans le cas de l'option 'constant' : durée en secondes de chaque
évènement généré
- dans le cas de l'option 'sturmian' : durée de
base en secondes, multipliée par le nombre de répétition dans les
valeurs de la suite sturmienne.
choosen line :
choix de la ligne résultant du calcul des
automates.
possibilité d'obtenir ainsi, aussi bien les successeurs que les
antécédents ("remontée dans le temps").
how many elements :
nombre d'éléments souhaités (dans le cas de
l'option 'periodic').
cette case n'a pas d'effet dans le cas de
l'option 'finite'.
first (and second) seed :
Permet de définir les mots S2 et S3, et ainsi les itérations
ultérieures.
Le réglage par défaut correspond au mot de
Fibonacci, avec S1 = 1, S2 = 0, S3
= 01.
start time :
définit le moment à partir duquel la suite de
hauteurs va être insérée.
constant / sturmian :
définit le type de déploiement temporel de la
suite.
Copyright (c)
2017-2022 Centre Iannis Xenakis