• Home
  • Jukebox
  • MP3 Store
  • Works
  • Articoli
  • Downloads
  • Links
  • Suggest this site
  • I'd joined to...
Un programma per la composizione musicale generativa
Written by Luigi Negretti Lanner   
Sunday, 04 May 2008 09:21

Che cos'è SY.MU.S.
SY.MU.S. è un programma che include due principali caratteristiche: la generazione di partiture musicali per Csound o per strumenti acustici, e l'interfaccia grafica per Csound. Alla base delle funzioni di generazione del codice score, vi è un sistema di regole logiche implementato nei sorgenti del programma. Questo sistema è stato derivato da una pratica compositiva reale, esso non è quindi il risultato di una formalizzazione astratta, bensì l'informatizzazione di un insieme di regole e procedure relative alla manipolazione di sequenze di valori musicali. I quattro parametri musicali (altezza, intensità timbro, durata) vengono qui trattati tramite serie musicali. L'uso della serie non è comunque qui riconducibile al concetto classico relativo al serialismo integrale. La serie è trattata, in questo caso, come una sequenza di dodici valori non necessariamente differenti tra loro. Per approfondimenti sul funzionamento dell'algoritmo del programma, vedi l'articolo "Un esempio di generazione musicale"

Le funzioni di generazione della score
Le funzioni di generazione della score Csound consentono la manipolazione di serie musicali tramite l'inserimento di limiti di valore e alcune procedure contrappuntistiche che il programma applica automaticamente o manualmente alle serie trattate.

Numero della versione
Il numero di versione del programma equivale alla sua data di compilazione (giorno - mese - anno).

L'aiuto per la sintassi di Csound
Nell'editor del programma è incluso un help per la sintassi di Csound.

L'interfaccia grafica Csound
L'interfaccia Csound è abbastanza semplice, ed include tutte le funzioni di base di una qualsiasi interfaccia grafica per Csound, consentendo l'apertura e il salvataggio dei files, l'impostazione dei flags, etc.

Contenuto del file di installazione
Il file di installazione di SY.MU.S. non installa alcuna libreria o file di sistema sulla macchina di destinazione, non scrive dati sul registro di Windows, e non copia files in directories di sistema (tipo c:\windows, c:\windows\system, etc.) . L'attuale file di installazione comprende:

* L'eseguibile del programma
* Una versione console di Csound ( DirectCsound4.65, di Gabriel Maldonado )
* I files di esempio try.orc e try.sco.
* Alcuni files dove sono memorizzate le serie di esempio di altezze e di durate.
* Il file di help del programma.

Al termine della procedura automatica di installazione, per provare una prima sessione di lavoro con Csound, lanciare il programma, premere F12 (per aprire la finestra Command Console) e premere in sequenza CTRL+X (lancia Csound).

Inserire una formula logica
Per inserire una formula logica procedere nel modo seguente:

1. Lanciare il programma
2. Premere F12
3. Nella lista "score format" presente nella finestra "Command Console", in basso sulla sinistra, selezionare il formato "sco.p5"
4. Cliccare sul quadratino bianco subito a destra della lista
5. Cliccare sulla scritta "Formula" posta in alto sulla destra dell'area di testo riservata all'impostazione dei flags di Csound
6. Nella finestra di interfaccia della formula, cliccare sul pulsante "Gen triple", quindi sul pulsante "Solve"

Serie di altezze e di durate
Inserire una serie di altezze o di durate
Per inserire nella finestra "Command Console", e quindi utilizzare nella procedura di generazione della score, una serie di altezze o una serie di durate, procedere nel modo seguente:

Inserire una serie di altezze

1. Nella finestra "Command Console" cliccare sul pulsante "insert pitch serie"
2. Nella finestra di memorizzazione delle serie cliccare sulla scritta "insert" posta alla destra della serie

Inserire una serie di durate

1. Nella finestra "Command Console" cliccare sul pulsante "insert durations serie"
2. Nella finestra di memorizzazione delle serie cliccare sulla scritta "insert" posta alla destra della serie


Impostazione dei limiti minimo e massimo delle serie di altezze e di durate
Per impostare i limiti minimo e massimo delle serie di altezze e di durate, inserire i valori desiderati nei controlli posti sulla destra della finestra "Command Console", sotto le scritte "Pitch limits" (per la serie di altezze), e "Dur limits" (per la serie di durate), tenendo conto che in Csound il valore di durata dur=1 equivale ad un quarto, dur=.5 ad una croma, e cosi' via, mentre pitch=8 equivale al do centrale, pitch=8.01al do diesisi centrale, etc.

Inserimento automatico delle serie durante la fase di generazione della score
Per programmare l'inserimento di una sequenza di serie di altezze o di durate precedentemente memorizzate, durante la fase di generazione del codice score procedere nel modo seguente:

1. Cliccare sul pulsante "insert pitch serie" (per la serie di altezze), o sul pulsante "insert durations serie" (per la serie di durate)
2. Nella finestra di memorizzazione delle serie, inserire i valori (interi) desiderati, nelle apposite aree di testo poste alla sinistra delle serie. In questo esempio, in cui programmeremo l'inserimento automatico di tre serie, inseriremo i valori 7, per la prima (dall'alto) serie, 14, per la seconda, e 21per la terza.
3. Chiudere la finestra di memorizzazione delle serie, cliccando sul pulsante "exit without save", posto in basso a destra nella finestra relativa alle serie di altezze, e in basso a sinistra nella finestra relativa alle serie di durate.
4. Nella finestra "Command Console", impostare il numero di serie da generare a 28, per compiere questa operazione, inserire il valore nella casella di testo posta in basso a destra, alla destra della scritta "Code size (integer, 2 to up)".

A questo punto è possibile generare la score, cliccando sul pulsante "Auto writing" posto all'incirca al centro della finestra "Command Console".

Spiegazione:
Seguendo la procedura appena illustrata, abbiamo indicato al programma di inserire in alcuni punti della partitura delle serie specifiche. Il programma in questo caso, procede scrivendo la prima serie che trova (quella costituita dai valori presenti nella finestra "Command Console"), poi la seconda, etc. Questa serie viene modificata (per default) dall'algoritmo del programma, che elabora la serie attuale, applica le modifiche, e rilascia la serie successiva. Nel nostro esempio, abbiamo indicato al programma di inserire la prima delle serie presenti come settima serie in partitura, la seconda come quattordicesima e la terza come ventunesima. Il programma scriverà una partitura elaborando la serie attuale fino all'inserimento della prima serie programmata, quindi elaborerà questa serie fino all'inserimento della seconda e così via, e si fermerà dopo aver raggiunto il numero di serie indicato dal valore "Code size".

Programmare una sequenza di limiti per le serie di altezze e di durate
Per indicare al programma di seguire differenti andamenti di registro e di densità ritmica durante la fase di generazione della score procedere nel modo seguente:

1. Nella finestra "Command Console", premere CTRL+E
2. Nella finestra di gestione dei limiti delle serie selezionare il numero di limiti da utilizzare, tramite la lista posta sotto la scritta "blocks number". E' possibile utilizzare fino a un massimo di sette blocchi di limiti.
3. Abilitare i controlli relativi ai valori di altezza o di durata selezionando i pulsanti di opzione "Pitch limits" o "Durations limits"
4. Inserire i valori minimo e massimo per ogni blocco (manualmente, o usando i controlli presenti), nelle apposite aree di testo poste sulla sinistra della finestra
5. Indicare il numero di serie da generare, inserendolo nelle caselle poste sotto la scritta "numbers of serie to generate"
6. Cliccare sui due pulsanti "OK" posti sotto le caselle di testo dei valori di limite
7. Cliccare sul pulsante "OK" posto sulla destra della finestra per confermare le impostazioni e chiudere la finestra.

Spiegazione
Impostando dei blocchi di limiti per i valori minimo e massimo delle serie di altezze e di durate abbiamo, in sostanza, programmato una sequenza di registri e di densità ritmiche. Il programma genererà la partitura, dividendo il numero delle serie per il numero dei blocchi di limiti indicato. Per esempio, se i blocchi di limiti sono 3 e il numero delle serie e' 30, le prime dieci serie verranno generate rispettando i limiti del primo blocco, le serie dall'undicesima alla ventesima, entro i limiti del secondo blocco, e così via.

Inserire una serie di valori instr
Per inserire una serie di valori instr di Csound procedere nel modo seguente:

1. Nella finestra "Command Console" selezionare la voce "insert instruments serie" dal menu' "serie functions"
2. Nella finestra che gestisce la serie di instr cliccare sulla scritta "Generate by formula" per generare una serie di valori compresi nei valori della formula, o inserire manualmente i valori desiderati (numeri interi).

Spiegazione
Usando le impostazioni di default, la serie cambierà ogni volta che il programma inserira' una nuova formula logica durante la fase di generazione del codice score. Disabilitando i valori della formula (cliccando sulla casella posta alla sinistra della scritta "Disable formula"), sara' usata la medesima serie per l'intera score.

Inserire una serie di valori db
Per inserire una serie di valori db procedere nel modo seguente:

1. Nella finestra "Command Console" selezionare la voce "insert expression serie" dal menu' "serie functions"
2. Nella finestra che gestisce la serie di valori db cliccare sulla scritta "Randomize" per generare una serie di valori casuali, o inserire manualmente i valori desiderati (numeri interi).


Gestione dei valori dB senza l'uso della serie
Per gestire la generazione dei valori db, in assenza della serie, procedere nel modo seguente:

1. Nella finestra "Command Console", selezionare la voce "set db limits" dal menu' "serie functions"
2. Nella finestra che gestisce i valori db, abilitare la casella posta alla sinistra della scritta "Apply formula values to db param" per consentire al programma di generare dei valori in relazione ai gruppi di dinamiche implementati nel programma e identificati dalla formula logica ad ogni inserimento di una nuova tripla, oppure lasciare disabilitata questa opzione, inserendo manualmente i limiti minimo e massimo per i valori generati casualmente durante la fase di scrittura automatica del codice.

Impostazione dei valori delle costanti ritmiche
Nel sistema di generazione della score implementato nel programma, sono presenti quattro valori costanti di durata. Questi valori servono all'algoritmo del programma, per incrementare o decrementare alcuni o tutti i valori della serie di durate, a seconda di un'istruzione che dipende dai valori attuali della tripla a,b,c corrispondente alla formula logica, e ad un valore dato in una tripla j,k,l (per approfondimenti vedere l'algoritmo del programma). Questi valori costanti di durata, chiamati w,x,y,,z sono inizializzati per default ai valori seguenti w=.125, x=.25, y=.5, z=1 rispettivamente equivalenti ai valori musicali biscroma, semicroma, croma e quarto. Per modificare i valori di queste costanti procedere nel modo seguente:

1. Nella finestra "Program Manager" (la prima che si apre all'avvio del programma) cliccare sul menu "Change constants values"
2. Nella finestra di gestione delle costanti, per inserire un nuovo valore per una delle costanti di durata inserire nella prima (da sinistra) delle due caselle di testo presenti in basso a destra nella finestra, il nome della costante (per esempio "w") e nella seconda il nuovo valore, quindi premere il pulsante "enter new value"

Download

 

 
Copyright © 2010 Luigi Negretti Lanner Home Page. All Rights Reserved.
Joomla! is Free Software released under the GNU/GPL License.
Support by JoomlaPanel